Feature Matrix - Aug/Sep Roadmap¶
Historical — August 2026 snapshot
This is a frozen 2026-08-06 snapshot (its cycle model still refers to the now-past C10/C11). The live scope, priority, and status are the Project Timeline (Gantt) + 8-Week Lock Status and the reconciled feature pages. Kept for context.
Purpose: The single red/yellow/green plan for the first production launch and the August/September waves - the single source of truth for scope, priority, and status (see Feature Intake & Single Source of Truth). This is the tracker the team and Conor burn through. It sequences the Launch Gap Register into waves and folds in the Cara-AI-design forward modules. Companion page: Launch Readiness overview.
Last updated: 2026-08-06 (post deep-dive workshop; launch framing corrected).
Live queue: filter Linear by the roadmap-epic label - each module row is a labeled epic.
Legend
🔴 not built, 🟡 partial / foundations done, 🟢 built (may still need UI polish), ⛔ deferred (post-pilot)
Launch framing (corrected)¶
The pilot is not live yet - the earlier "September launch / pilot go-live ~Jul 31" framing did not happen. The first production launch is an internal stealth pilot for two users - Jim (estimator) + Alex (PM) - scoped to the core Bid-to-Project workflow plus importing their existing data. It is gated on Smart Import stability (data corruption is the one true blocker) and a BC-sourced bid tested end-to-end (docs, takeoff, budget). Launch success = Jim and Alex import their real data with no corruption and run a bid end to end into a project without data loss.
Cycle model¶
- C10 (2026-07-27 to 2026-08-09) = pre-launch lockdown / bug-fix (now closed). Focus was Smart Import hardening + BC E2E + the LAUNCH-critical gaps.
- C11 (2026-08-09 to 2026-08-17) = current. Launch happens on QA happy-path sign-off (target the Tuesday 2026-08-11 QA sync + Conor demo), then production for Jim/Alex. Remaining bugs fixed in production while feature work resumes.
- C12+ = Aug Wave-1 stabilization, September wave (Cara-AI-design forward modules), hardening. Mateo is out ~3 weeks in August, so the visual re-skin build lands on his return; the design review runs during August.
Estimation cadence
A major feature now spans multiple cycles (4+ weeks) with a QA loop - Marijana returns a feature 1-N times before it's done. No more mid-cycle scope changes. Estimates on the September wave reflect this; single-cycle "done" is the exception, not the rule.
Wave 0 - Launch (pre-pilot; go-live on QA sign-off)¶
The release scope. Everything here is BLOCKER or LAUNCH-critical; details + owners in the Gap Register. Go/no-go criteria are in the Launch Checklist.
| Item | Status | Owner | Launch-critical | Epic / ref |
|---|---|---|---|---|
| Seed Jim & Alex accounts + their data | 🔴 not done | Marko + Marijana | Yes (gate) | - |
| Smart Import writes correct data | 🟡 in flight | Ivan B | Yes (gate) | PIN-678 (679-685), PIN-731, PIN-787 |
| BC-sourced bid E2E (docs, takeoff, budget) | 🔴 untested | Marijana + Artem | Yes (gate) | - |
| Financial margin leak (a PM sees profit) | 🔴 leak | Marko | Yes (gate) | PIN-151 |
| Proposal template rebuild (by-scope only) | 🟡 mismatch | Ivan B | Yes | PIN-134 |
| Vendor RFP email stealth flags | 🔴 not wired | Marko + Artem | Yes | - |
| Delete confirmations app-wide | 🔴 | Frontend | Yes | - |
| Disabled-looking-but-clickable buttons | 🔴 | Frontend | Yes | - |
| AI takeoff symbol-group overlay bug | 🟡 bug | Artem | Yes | PIN-694 |
fail to fetch retries + cluster correlation |
🔴 | Marko | Yes | - |
| Bid-invite "Acknowledge" flow | 🔴 | Product / Ivan B | Confirm w/ Conor | - |
Wave 1 - August stabilization + finish Daily Logs (C11)¶
| Module | Status | Owner | Epic | Notes |
|---|---|---|---|---|
| Daily Logs - new design (HIGH) | 🟡 in QA | Mateo / Luka | PIN-688 | New design built (~85% by Mateo), now in QA. "Waiting on Conor's design" blocker cleared. |
| Daily Logs - interactive progress drawing | 🟡 in progress | Artem | PIN-720 | In progress today. Bring Conor A/B: A = mark progress in the log; B = full interactive CAD/PDF earned-value markup. Lock choice, then finish. |
| Vendor portal flow (role scoping) | 🟡 partial | Ivan B | - | Vendor sees too much today; full flow. |
| Competitors: conditional display + BC source | 🟡 partial | Ivan B | - | Show post-loss; investigate BC webhooks. |
| Bid-invite expiration alerts (QA + handoff) | 🟢 exists | Marijana | - | Dashboard + email exist; formalize. |
| Self-hosted error monitoring + AWS logs | 🟡 partial | Marko | - | Slack pod-crash alerts already live. |
| PO approval workflow retest | 🟡 base done | Artem | PIN-137 (254/255/303) | "Worked at some point"; retest+fix. |
| Apply-template zero-revision bug | 🔴 bug | Ivan B | - | Base revision with zeros appears. |
| UI consistency: bid vs project | 🟡 partial | Frontend | PIN-687 (513/514/669) | Toward the visual system. |
| Docs/drawings lifecycle diagram | 🔴 | Marko / Marijana | - | UML-ish map to avoid missing-link bugs. |
| Automated RFP + IMAP reply parser | 🔴 | Artem / Marko | - | Codilas has reusable code (~few days). |
| Long-running AI UX (streaming/bg notifications) | 🟡 spinner only | Marko / Mateo | - | White-label-critical; Redis queue for large files. |
Wave 2 - September (Cara-AI-design forward modules)¶
Cloud Design is the visual reference for these. Each carries a dependency / Conor-blocked flag; visual
tokens = navy #1C3340 / copper #C4956A / Nunito Sans + DM Mono numerals.
Top forward priority: Takeoff Engine (Conor's #1)
The base AI auto-takeoff pipeline is already shipped (PIN-295 spike Done + Phase-1 children: scale read, system detection, symbol groups, training-feedback tab). The September push is accuracy + the AI-first-measure-then-verify workflow. Priority is locked as #1 of the forward wave; velocity is gated on two Conor items - the clean drawing corpus (PIN-591, client-action) and sign-off on the self-hosted vision-model strategy (PIN-590 spike). This is not a fixed-date one-shot ship; it matures through the pilot into September+.
| Module | Priority | Status | Owner | Effort | Epic | Dependency / Conor-blocked |
|---|---|---|---|---|---|---|
| Takeoff Engine - accuracy + AI-first verify | #1 | 🟡 base shipped, accuracy push | Artem | XL | PIN-694 (295/439-442/589) | Gated: PIN-591 drawing corpus + PIN-590 VLM spike. |
| Visual system re-skin (page-by-page) | High | 🟡 partial | Mateo | M-L | PIN-687 (513/514/669) | Decision: pilot requirement or post-pilot? Mateo return; design review in Aug. |
| Compliance R1 (COI + rule engine + renewals) | Med | 🔴 not built | Marko | L+ | PIN-7 (91/96/97/99/100/104/105) | Confirm timing w/ Conor (was first priority, now Sep+). |
| Executive Dashboard (empty-state first) | Med | 🔴 stub | - | L | PIN-60 / PIN-371 | PIN-371 reactivation + financial adapter. |
| Master CO Log (analytics rollup) | Med | 🔴 not built | - | L | PIN-61 / PIN-326 | Spec PIN-326 owed by Conor. |
| WIP Report | Low | 🔴 not built | - | M | PIN-690 | Sage/Foundation job-cost sync. |
| Bid Targeting (4-factor score + relationship graph) | Low | 🔴 stub | Ivan B | XL | PIN-14 / PIN-325 | Spec PIN-325; external signal pipelines + legal review. |
Daily Logs (new design + interactive progress drawing PIN-720) is not here - it is in Wave 1, finishing now. Floating Cara button is done (shipped). Sequencing note: within the Executive suite, ship Exec Dashboard empty-state + Master CO Log first (least blocked). The review-first Cara action pattern recurs across modules - build once, reuse. Field-level financial masking is a prerequisite for Exec Dashboard / WIP / Master CO Log.
Already built (pilot QA verifies)¶
| Module | Status | Epic |
|---|---|---|
| Award, Project conversion | 🟢 Done | PIN-274 |
| Proposal generation (PDF, markup, base-bid) | 🟢 Done (template rebuild pending) | PIN-134 (+631/665/609) |
| Bid list / Bid invites / Estimate sheet | 🟢 Done (UI updates pending) | PIN-6 stack |
| SharePoint bulk import + project pipeline | 🟡 base done, Smart Import still writes wrong data (PIN-787) - launch gate, not "done" | PIN-501/508/509/647/648, PIN-678, PIN-787 |
| SOV (Schedule of Values) - separate AIA G702/G703 module | 🟡 built but unreachable (line items only via broken Cara; needs manual add) | - |
| Takeoff - base AI auto-takeoff pipeline (scale, system detect, symbol groups, training tab) | 🟢 Done (accuracy push = Wave 2) | PIN-295 (+439-442/589) |
| Floating Cara button | 🟢 Done | - |
Deferred - post-pilot / Future¶
| Module | Reason | Ref |
|---|---|---|
| ⛔ Financials / Foundation integration | Adapter limited until later; ship empty states now | PIN-33 / PIN-373 |
| ⛔ Marketing / Bid-targeting live signals | Lower priority; external pipelines need legal review | PIN-518 / PIN-325 |
| ⛔ Full self-hosted takeoff vision model (custom-trained) | GPU box; base pipeline shipped + accuracy push is Wave 2; full custom model is post-pilot | PIN-694 (590/591) |
| ⛔ Outbound bids | Needs estimates dialed in; Sep/Oct | - |
| ⛔ Lead vs junior estimator perms + margin visibility | White-label; Wave 2+ | - |
| ⛔ Dynamic per-tenant field schema | White-label; no rebuild/redeploy per field | - |
| ⛔ AI Hub (tenant-specific AI training) | Done outside the app for now | - |
Open decisions for Conor¶
The full list with our recommendations is in the Conor Briefing (§ What we need from you). Headline items on this roadmap:
- Takeoff Engine (his #1): deliver the drawing corpus (PIN-591) + sign off on the VLM model strategy (PIN-590) - these gate velocity, priority is already locked.
- Daily Logs progress drawing (PIN-720): pick A (mark progress in the log) or B (full interactive earned-value markup). Artem brings options.
- Proposal template (Wave 0), visual-system timing (Wave 2), compliance timing (Sep), specs PIN-325/326, Exec Dashboard PIN-371, Azure Sites.Selected PIN-732, financial-integration timing PIN-33.
- Process: adopt the single source of truth + capture, review, lock, build intake gate (Feature Intake).