Lab Architect / Ellsworth

Afternoon Brief

Saturday, August 1, 2026 — Dominique shipped a Today Setup Dashboard Card for DailyReportr+. Katey was quiet tonight. All 4 apps hold at 0 analyzer issues. Buildr+ is at 7+ weeks without a nightly feature build — the longest gap in the fleet.

Last Night's Builds

Dominique → DailyReportr+: Today Setup Dashboard Card shipped

Branch feature/nightly-20260801 — on main. Commit 0303c71 (5:46 AM PT). Adds a proactive start-of-day card to the app dashboard: a TodaySetupService evaluates the active project’s readiness state (TodaySetupLevel.ready / watch / blocked) and renders a matching TodaySetupCard with a green/blue/orange accent. Includes test/today_setup_service_test.dart with 75 lines of coverage. 4 files, 281 insertions.

Katey (Howard-3) → Quiet night no build

No feature/nightly2-20260801 branch found in any repo. Last Howard-3 builds: Inspectr+ on Jun 7 (nightly2-20260607), DailyReportr+ on May 11 (nightly2-20260511), BuildrPlus on May 17 (nightly2-20260517), Closr+ on May 4 (nightly2-20260504).

Idle Apps

Buildr+ — last nightly feature build: Jun 13, 2026 (Lookahead Schedule Strip merge). 7+ week gap — longest in the fleet.

Closr+ — last nightly feature build from Howard 1: Jul 14 (Evidence Chase Plan, merged). Howard 3: May 4. 2.5 week Howard-1 gap; nearly 3 months for Howard-3.

Inspectr+ — last nightly feature build from Howard 1: May 3. Howard 3: Jun 7. Nearly 3 months for Howard-1.

Codebase Health

App Issues Last 3 Commits
Buildr+ 0 5408360 prepare 4.4.0 App Store release • ad4d317 merge profile-pdf-theme-persistence PR • 2bf2eaa mirror verified StoreKit ownership
Closr+ 0 9624acf bump TestFlight 2.32.53 • d9ad9e5 bump 2.32.52 • 45d842f bump 2.32.51
Inspectr+ 0 2ac303b bump TestFlight 4.67.1 • 8041cc5 restore inspection item access for subscribers • a133897 merge punch photo restoration
DailyReportr+ 0 0303c71 Add today setup dashboard card (tonight) • d8946f3 bump 2.34.49 • 5dbcf2e bump 2.34.48

Fourth consecutive brief with 0 issues across all 4 apps. The morning brief also confirmed clean state. Tonight’s DailyReportr+ build (today_setup_card.dart) uses .withValues(alpha:...) correctly — no new deprecations introduced. Buildr+’s 0-issue state persists since the 4.4.0 App Store release cleanup. No build should ship that moves any counter above zero.

Recurring Themes from Morning Briefs

Patterns across the Jul 13, Jul 14, and Aug 1 morning briefs that remain unbuilt or partially addressed:

Feature Ideas + UI/Code Health Recommendations

3 ideas (2 features, 1 UI/code health). Each verified against codebase and git history.

1. Drawing Delta Review Queue Buildr+ — Feature

When a document set is updated, field users have no active signal showing which drawing sheets changed and need review. Build a “Delta Review Queue”: a badge-driven entry point on the Documents tab that counts pending reviews, opening a DeltaReviewQueuePage listing each changed sheet with its previous and new revision label, the update date, and a per-item “Mark reviewed” action. Items are seeded from existing document_revisions metadata. This is the queue-level companion to the already-present DrawingRevisionBadge, which badges individual sheets on detail pages but cannot surface a summary of all pending changes at once.

Why now: Jul 13 brief named this directly. Aug 1 brief echoed it as the Document Version Clarity theme. DrawingDelta, DeltaReview, ReviewQueue — none found in lib/. Buildr+ is at a 7+ week nightly gap. Autodesk Forma just launched Handover Export History; Procore tied Submittals to the project schedule. Field teams need document accountability to match.

Sketch: DocumentDeltaQueueProvider reads document_revisions rows where reviewed_at is null. DeltaReviewQueuePageListView of DeltaReviewItem tiles (sheet title, old rev → new rev, date). Badge count on the Documents tab. markReviewed(revisionId) writes reviewed_at. ~3 new files, ~200 LOC.

2. Finding Card Density Pass Inspectr+ — UI/Code Health

Inspection finding cards pack location strings, status chips, photo counts, and contractor badges into a fixed row. On sub-6” phones and at large text scale, this layout risks overflow or truncation without any consistent width constraint. Add a shared InspectionCardMetrics const class that codifies maxChipWidth, iconSize, and avatarRadius once, then update FindingCard, InspectionListTile, and any repeat-finding comparison widgets to use Flexible or Expanded wrappers driven by those constants. Back with snapshot widget tests at 320 px (SE-size) and 430 px at both 1.0× and 1.4× text scale. This is a polish-and-safety pass that makes card layouts testable and consistent before the next feature build lands on top of them.

Why now: Jul 13 brief named this directly; InspectionCardMetrics and inspection_card_metrics not found anywhere in lib/. With all analyzer counts at zero, layout quality is the next debt. Inspectr+’s inspector audience is field-heavy, uses a wide range of device sizes, and reads cards at a glance. Fieldwire continues to emphasize field-first mobile UX — card readability is table stakes.

Sketch: New lib/widgets/inspection_card_metrics.dart with static const values. Update 3–4 existing card widgets to import it. Widget test file with pumpWidget at each device size, asserting no overflow. ~1 new file, ~60 LOC of metrics, ~80 LOC of tests.

3. Evidence Chase Board Widget Closr+ — Feature

The EvidenceChasePlan model (added Jul 14 nightly) lives in evidence_matrix_cell.dart and is never imported by any widget. The evidenceChasePlan getter on EvidenceMatrixCell computes the next-missing-evidence action list — but users have no screen that shows it. Build an EvidenceChaseBoard widget that maps each EvidenceChasePlanItem to a row with a responsible-party chip, a due-date color band (green/yellow/red by days-remaining), and a one-tap “Copy reminder” button that formats the chase note as plain text for email or Slack. Embed the board in the closeout detail flow alongside the existing evidence_matrix_card.dart.

Why now: Jul 14 brief prompted the model build, but the UI never shipped. EvidenceChaseBoard and evidence_chase_board not found anywhere in lib/. Closr+ Howard-3 last touched the app May 4 (nearly 3 months). Autodesk Forma’s Handover Export History and As-Built Export with photo albums both raise the close-out accountability bar this week — Closr+ should match with a leaner, mobile-first version of the same tracking concept.

Sketch: New lib/widgets/evidence_chase_board.dart. Import EvidenceChasePlan from evidence_matrix_cell.dart. Render each item as a ListTile with a colored left border (days-remaining), a Chip for the owner, and an icon button that calls Clipboard.setData with formatted text. Inject into closeout detail section. ~1 new file, ~130 LOC.

UI Inconsistencies

Competitive Intel

Tomorrow’s Build Suggestion

Builder App Feature Rationale
Dominique Buildr+ Drawing Delta Review Queue Buildr+ last nightly feature build: Jun 13 — 7+ weeks, longest gap in the fleet. Two morning briefs (Jul 13, Aug 1) flag document revision awareness as the top unbuilt Buildr+ theme. After DailyReportr+ tonight, Buildr+ is the natural rotation. Idea #1 above.
Katey Inspectr+ Finding Card Density Pass Katey last built Inspectr+ Jun 7 (nightly2-20260607) — nearly 2 months ago. Inspectr+ is due for rotation; no Howard-1 nightly feature build since May 3. The Finding Card Density Pass is a focused, testable, single-session task. Idea #2 above.

Idle after tomorrow: Closr+ (Evidence Chase Board, idea #3) is the natural follow-on the night after — model is ready, widget isn’t. Assign to either builder once Buildr+ and Inspectr+ are addressed.