☀️ Morning Brief

Friday, July 10, 2026

Closeout Action Queue Smoke Tests DailyReportr+

The new closeout action queue is useful, but it should get a tight code-health pass before more workflow layers land. Make sure empty states, long project names, dismissed actions, and offline reloads behave cleanly on small phones.

💡 How: Add focused widget tests around the queue list/detail widgets, seed 3-4 Supabase-style fixture states, and verify dark-mode contrast plus no overflow at 375px width.

Shareable Review Link Expiration Warnings Buildr+

Add a small feature that warns when an RFI, submittal, transmittal, or closeout share link is about to expire or has already expired. This protects field collaboration without turning Buildr+ into a heavy permissions console.

💡 How: Store expires_at and last_opened_at on share-link records, show a compact warning chip in the document detail and share sheet, and offer one-tap extend/revoke actions through Supabase RPCs.

Owner Packet Summary Polish Closr+

Closr+ just added owner packet status summary work; today's cleanup should make that summary feel finished: consistent copy, stable chip widths, readable rejected/missing states, and no jitter as counts update.

💡 How: Extract the summary status row into one shared widget, add sample states for Missing/Submitted/Rejected/Approved, and cover long packet names plus zero-count states in widget tests.

Competitive Intel

Code Health