Afternoon Brief

Tuesday, May 19, 2026 — 12:00 PM PT

Last Night’s Builds

Submittal Auto-Deadline Calculator Buildr+

Dominique shipped the Submittal Auto-Deadline Calculator (v3.16.0) — an engine that computes Submit By, Reviewer Due, and Approval Due dates by working backward from the Required On-Site Date using configurable lead times per submittal type. PMs set the on-site date and defaults; the system fills the rest and flags any submittal whose computed deadline has already passed. This was yesterday’s afternoon brief idea #1, making it a same-day competitive launch — Procore’s Dynamic Submittal Plan with nearly identical auto-deadline functionality also shipped today (May 19). Howard-1 followed up with bug fixes resolving a missing revisionImpact switch case and replacing deprecated withOpacity calls.

Branch: feature/nightly-20260519
Commits: 4490773 (stub) → 4101a4d (feat) → 578871a (merge) → 7bcf7b1 (bump) → d30f5bb (fix)
Version: v3.16.0 · TestFlight: Uploaded (42792deb)
Builder: Dominique + Howard-1 (review fixes)

Offline Sync Outbox DailyReportr+

Katey/Howard-3 shipped the Offline Sync Outbox (v2.23.0) — a persistent, visible queue showing every report, photo, and form waiting to sync when the device is offline or on poor connectivity. Each queued item shows type, size, timestamp, retry count, and status (pending/uploading/failed). A small banner on the main screen shows items waiting with a tap-to-expand gesture. This was yesterday’s afternoon brief idea #2 and the strongest cross-app theme from the last 5 morning briefs (appeared 3 times). It completes DailyReportr+’s offline reliability stack alongside the Offline Sync Receipt (v2.18.0) and Offline Conflict Review Queue (v2.16.0). Howard-1 followed up with withOpacity deprecation fixes.

Branch: feature/nightly2-20260519
Commits: 774e7f9 (feat) → bdfdfa3 (merge) → d27a445 (fix)
Version: v2.23.0 · TestFlight: Uploaded (7711ebd8)
Builder: Katey / Howard-3 + Howard-1 (review fixes)

Closeout Exposure Snapshot Closr+

Howard-1 shipped the Closeout Exposure Snapshot (v2.20.0) — a dashboard card that surfaces the total exposure of missing closeout deliverables across all trades: outstanding warranties, pending O&M manuals, unsigned training records, and missing commissioning documents. The snapshot gives project managers and owners a single at-a-glance view of closeout risk before the handover deadline. This was today’s morning brief idea #2 (Closeout Exposure Aging Buckets), and Howard-1 built the foundational snapshot layer overnight. The aging-bucket grouping is the natural next step.

Branch: feature/nightly-20260519-closeout-exposure-snapshot
Commits: d9ca23b (feat) → c9e1b86 (card) → b9eb2f2 (fix missing files) → 3d494ea (bump)
Version: v2.20.0 · TestFlight: Uploaded (3b0ac6ff)
Builder: Howard-1 (nightly review)

Inspectr+ — No Build

Inspectr+ received no nightly build. Last activity: May 18, Access Constraint Snapshot (v4.25.0) by Katey/Howard-3. With a 1-day gap and Dominique having never built Inspectr+ in the tracked period (14+ days), Inspectr+ is the top rotation priority for tonight.

Codebase Health

Flutter Analyze — All 4 Apps

Buildr+
0 errors · 61 warnings · 380 infos
Closr+
0 errors · 47 warnings · 205 infos
Inspectr+
0 errors · 90 warnings · 880 infos
DailyReportr+
0 errors · 70 warnings · 1,551 infos
Milestone: All 4 apps are now error-free. Buildr+’s 2 persistent errors (present since May 16) were resolved by tonight’s auto-deadline fix commit (d30f5bb), which added a missing revisionImpact switch case and replaced deprecated withOpacity calls. Warning counts remain stable across all apps. DailyReportr+’s assets/images/ directory warning persists. The bulk of issues across all apps are deprecated_member_use (withOpacity) and require_trailing_commas infos.
Recurring Themes from Morning Briefs

Shipped: 2 of 3 Yesterday’s Afternoon Brief Ideas Built Overnight

The Submittal Auto-Deadline Calculator (Buildr+, idea #1) and Offline Sync Outbox (DailyReportr+, idea #2) were both built overnight by Dominique and Katey respectively. The Closeout Warranty QR Tags (idea #3) was not built, but Howard-1 built the related Closeout Exposure Snapshot instead. The afternoon-brief-to-nightly conversion streak now stands at 7 consecutive days (May 13–19), with at least one suggested idea shipping every night.

Active: Submittal Intelligence Arc — Explainability Next

Buildr+ has shipped 6 submittal-related features in the last 11 days: Submittal Aging Tracker (v3.8.0), Submittal Aging Escalation Rules (v3.9.0), Submittal Exception Digest (v3.13.0), Drawing Revision Impact Flag (v3.12.0), RFI Answer Impact Tracker (v3.14.0), and now the Auto-Deadline Calculator (v3.16.0). Today’s morning brief proposed Submittal Deadline Explainability as the next layer — making each computed date tappable so PMs can see the rule, review duration, holidays skipped, and revision impact. This is the natural maturation path: calculate → explain → defend.

Active: Closeout Warranty QR Tags — 2 Days Unbuilt

First proposed in the May 18 morning brief and featured as yesterday’s afternoon brief idea #3, the Closeout Warranty QR Tags concept — scannable codes linking equipment to warranty docs, O&M sheets, and training videos — remains the longest-unbuilt Closr+ idea in the current cycle. With the Exposure Snapshot now shipped, the QR Tags would complete the “premium handover” trifecta: Training Evidence Packet → Exposure Snapshot → QR Tags.

Feature Ideas

1. Submittal Deadline Explainability Buildr+

Make each auto-calculated deadline in the Submittal Auto-Deadline Calculator tappable so project managers can see the full computation trail: source rule, base lead time, review buffer, holidays and weekends skipped, revision impact adjustment, and final date. This turns “the app picked a date” into defensible contract logic that PMs can reference in owner meetings and dispute scenarios. Procore’s new Dynamic Submittal Plan shows calculated dates but does not expose the computation — our explainability layer would be a clear differentiator.

Why now: Today’s morning brief proposed this as the immediate follow-up to the just-shipped Auto-Deadline Calculator. The feature is already in production; adding the explainability layer while the code is fresh is the most efficient path. Procore launched their version today without computation transparency — shipping this gives Buildr+ a defensibility edge.

Sketch: Add deadline_calculation_events JSONB column to the existing deadline settings table in Supabase (fields: step_type, input_date, adjustment_reason, days_adjusted, output_date). Create DeadlineExplainerSheet Flutter bottom sheet that renders the calculation as a vertical timeline: base date → lead time → review buffer → holiday skip → revision impact → final date. Wire into the existing AutoDeadlineCard widget with a tap handler. Add a “Copy as PDF” action for export to owner correspondence.

2. Closeout Exposure Aging Buckets Closr+

Extend the just-shipped Closeout Exposure Snapshot by grouping missing closeout items into aging buckets: 0–7 days (fresh), 8–14 days (aging), 15–30 days (stale), and 30+ days (critical) by responsible party. Owners and GCs can immediately see which trade is creating handover risk and how long items have been outstanding. The existing PunchAgingBucket pattern in Closr+ (Fresh/Aging/Stale for punch items) provides a proven template to follow.

Why now: Today’s morning brief proposed this. The Closeout Exposure Snapshot just shipped tonight — adding aging buckets while the data model is fresh requires minimal new infrastructure. The pattern already exists in punch_aging_provider.dart, so the builder can follow the same enum/extension/widget pattern. ACC’s new Data Connector Schedule Power BI template shows the industry is moving toward time-based risk visualization; our in-app aging buckets are more actionable than an external BI dashboard.

Sketch: Add exposure_aging_bucket enum following the existing PunchAgingBucket pattern (fresh/aging/stale/critical with 0-7/8-14/15-30/30+ thresholds). Create exposure_aging_provider.dart (Riverpod AsyncNotifier) that queries open closeout requirements grouped by responsible_party and computed age bucket. Build ExposureAgingCard widget with colored bucket chips (green/yellow/orange/red) and tap-to-filter showing the specific items per trade per bucket. Wire into the existing exposure snapshot page as a secondary view toggle.

3. Inspector Route Pack Inspectr+

Bundle today’s assigned inspections into a downloadable route-style pack: site list ordered by location, priority items flagged, offline drawings and photos prefetched, and last unresolved access constraints from the Access Constraint Snapshot (v4.25.0) surfaced per location. Field inspectors start the day faster by tapping “Download today’s route” on the home screen and going offline with everything they need. Especially valuable for transit, utility, and multi-site projects where inspectors move between facilities.

Why now: Today’s morning brief proposed this. Inspectr+ has a 1-day build gap (last: May 18, Access Constraint Snapshot by Katey) and Dominique has never built Inspectr+ in the tracked 14-day period — making this the biggest rotation gap to fill. The Access Constraint Snapshot provides the constraint data; the route pack wraps it into a daily workflow. Fieldwire’s BIM Tasks in 3D shows competitors investing in spatial context; our route pack differentiates by optimizing for field logistics rather than 3D visualization.

Sketch: Add inspection_route_pack SQLite/Brick local table (id, date, inspections JSON, prefetched_assets JSON, constraint_warnings JSON, downloaded_at, total_bytes). Create route_pack_provider.dart (Riverpod AsyncNotifier) that queries today’s assigned inspections from Supabase, fetches related drawing thumbnails and photos from Supabase Storage, and pulls unresolved access constraints per location. Build RoutePackCard on the home screen with download progress indicator and “Go Offline” button. Add RoutePackDetailPage showing the day’s inspection list with location grouping, constraint warnings per site, and offline-available status badges.
Competitive Intel

Industry Moves — Last 7 Days

Procore — May 19 launch (today): Submittal Plan with Automated Date Calculations — computes Submit By, Open By, and Workflow Due Dates backward from Required On-Site Date. Also shipped: Modernized Submittals List View (open beta) with column configurability, inline attachment review, and in-list workflow responses. We shipped our Submittal Auto-Deadline Calculator the same day — feature parity on day one. (source)

Autodesk Construction Cloud — 40+ features in May: Bridge for Design Collaboration (secure cross-project design sharing), Forms enhancements (more dropdown options, increased character limits), RFI Report Links in email notifications, Data Connector Schedule Power BI template, and Packages in Files on mobile (beta). Incremental refinement strategy with bimonthly releases. (source)

Bluebeam — Max launched Q1 2026 with Claude-powered AI Chat for natural language commands on project documents. Task Link integration between Revu and GoCanvas assigns field tasks and tracks progress from markups. Revu runs 30% faster on ARM (Surface tablets, Apple M-series via Parallels). (source)

Fieldwire — No new feature announcements found for May 2026. BIM Tasks in 3D Models and Cross-project Dashboard Tab continue their rollout. Fieldwire remains focused on task-centric field execution rather than document management. (source)

Takeaway: Three signals: (1) Same-day submittal parity — Procore’s Dynamic Submittal Plan and our Auto-Deadline Calculator both launched May 19; our next move (Deadline Explainability) gives us a transparency edge Procore doesn’t have. (2) AI in document workflows — Bluebeam Max with Claude shows the industry adopting AI for markup and project document tasks; our apps differentiate with structured data capture and automated intelligence rather than chat-over-documents. (3) Time-based risk dashboards — ACC’s Power BI schedule template and our Closeout Exposure Aging Buckets idea both target the same need; our in-app version is more actionable for field teams than an external BI tool.
Tomorrow’s Build Suggestion

Dominique → Inspectr+

Build the Inspector Route Pack. This is the biggest rotation gap in the system: Dominique has never built Inspectr+ in the entire 14-day tracked period. Inspectr+ last received a build May 18 (Access Constraint Snapshot by Katey), giving it a 1-day gap. The Route Pack builds on the Access Constraint Snapshot by bundling today’s inspections, offline assets, and constraint warnings into a downloadable daily pack. This is also today’s morning brief’s Inspectr+ suggestion.

Katey → Closr+

Build the Closeout Exposure Aging Buckets. This is the other major rotation gap: Katey/Howard-3 has never built Closr+ in the tracked period. Closr+ just received the Exposure Snapshot tonight (Howard-1), so the data model is fresh — adding aging buckets extends it naturally. The existing PunchAgingBucket pattern provides a proven template. This continues the “premium handover” arc that has driven Closr+’s last 4 features.