Open Questions — Client Meeting Agenda¶
Date: April 3, 2026 Attendees: Conor (CEO), Ivan Smirnov, Marko Purpose: Decisions needed to unblock upcoming cycles Total estimated time: ~50 minutes
Cycle 1 — Permissions & Core (~5 min)¶
-
"User" role (Id: 2): Code has 6 roles including a generic "User" role alongside the documented 5 (Admin, Project Manager, Compliance Officer, Field User, Viewer). Is "User" a real role or legacy? Should we remove it?
-
Compliance Officer scope: Is this role only for insurance/COI review, or does it also handle document management and incident review?
Cycle 2 — Compliance Backend & Bids (~10 min)¶
-
Bid status values: The Bid model currently uses a free-form string (default: "new"). We need a defined enum. Proposed:
new → qualifying → estimating → submitted → awarded → lost → no_bid. Any additions? What triggers each transition? -
Document.FileId nullable: The Document model currently requires a linked File record. In Cycle 2 we're building metadata-only documents (file upload comes in Cycle 3). We recommend making FileId optional so documents can exist without an uploaded file. Acceptable?
-
Compliance check trigger timing: Architecture says compliance checks run "on document upload" — but Cycle 2 has metadata-only documents. Should checks also run on manual metadata entry, or only when a file is actually uploaded in Cycle 3?
-
RiskTag values: The RiskTag model exists but we need to define the tag set. Proposed: "expired", "below_minimum", "missing_endorsement", "no_additional_insured". Are these system-generated only, or can users create custom tags?
-
CarrierRating scale: The model has a string Rating field. What scale? AM Best (A++/A+/A/B)? Numeric (1-5)? Something else?
Cycle 3 — File Upload & COI Frontend (~10 min)¶
-
Azure Blob vs MinIO: We need Azure credentials by Apr 27 to use Azure Blob Storage. Fallback is MinIO (S3-compatible, self-hosted). Which does the team prefer for production?
-
Google Places API key: Needed by Apr 27 for location autocomplete. Has this been set up? Fallback: plain text address input.
-
File constraints: What's the max file size? Accepted file types? (PDF, images, Word, Excel — or PDF-only for COIs?)
-
COI intake flow: Internal-only upload at first, or subcontractor self-service portal from day one? (Portal is currently scheduled for Cycle 6 — confirm that timeline works.)
-
Auto-trigger on upload: Should uploading a COI file automatically trigger a compliance check, or should users manually click "Run Check"?
Cycle 4 — Compliance Dashboard & Estimates (~5 min)¶
-
Dashboard KPIs: Planned: expiring-soon count, non-compliant vendor count, coverage gap alerts. What "expiring soon" threshold? What other metrics matter?
-
CSI codes: Currently free-form strings. Should we add a CSI MasterFormat lookup table (~1,700 codes) or keep free-form entry?
-
Estimate templates: Per trade? Per project type? Both? What fields go in a template?
Cycle 5 — Notifications & Bid Conversion (~5 min)¶
-
Email provider: SMTP vs SendGrid vs SES? We already have 3 email templates for auth flows — just need the sending infrastructure.
-
Renewal notification timing: How many days before COI expiration should we send reminders? 30/60/90?
-
Bid-to-project conversion: What data carries over? Our models share location and organization FKs — but what about bid vendors → project organizations? Cost codes?
-
Historical bid import: What's the Excel format? How many records? Which columns map to our Bid model?
Cycle 6 — Production-Ready (~5 min)¶
-
External upload portal: Anonymous link-based (signed URL) or login required?
-
UAT plan: Who tests? What scenarios? How long?
-
Go-live infrastructure: DNS, SSL, backups, monitoring — who provides what?
POC vs Implementation Mismatches (~10 min)¶
These are places where our implementation differs from the POC. Need confirmation we're on the right track.
-
Project form: POC uses free-text for vendors/GC. We built organization multiselect with real Organization records. Confirm this is correct.
-
Vendor form: POC has a simple form (name, trade, contact). Our Organization model is much richer (party roles, project relationships, insurance tracking). Will demo the difference — need buy-in.
-
Document folders: POC has 10 canonical bid folders. Do projects also get folders? Are they fixed or configurable?
-
Approval chains: POC shows PO approval routing. This isn't in any cycle. When does the team need PO/approval workflows?
-
Cost code flow: POC has cost codes in Budget.jsx but disconnected from POs/estimates. No CostCode model exists yet. Is this needed for compliance go-live or post-launch?
Not Scheduled — Feature Gaps¶
These features exist in the AI prototype but aren't in any cycle. Need priority decisions:
- PurchaseOrder system — when?
- ChangeOrders, Submittals, RFIs, Daily Logs — when?
- Executive dashboard — when?
- Data import tooling (Excel → DB for go-live seed data) — needed before Jun 22