Turns the approval-first boundary into a managed handoff: oldest-first review, shared 24h/72h aging states, digest escalation, and typed API parity. Current Zapier and Microsoft guidance confirms the market has moved from merely adding human approval to actively preventing that review step from becoming the workflow bottleneck.
Oldest-first approval triage + 24h/72h attention statesReady outputs now sort pinned-first and then oldest-first instead of inheriting newest-first database order. Every row carries a waiting-age chip: fresh under 24 hours, amber watch from 24 hours, and red overdue from 72 hours. A shared approval-aging helper owns classification and compact duration formatting so dashboard, digest, and API cannot drift.
Approval-aging summary + dense-queue visibilityThe approvals panel gains an at-a-glance summary naming the number past 24h or 72h and the oldest wait. Dashboard artifact coverage expands from 8 to 30 bounded rows so a noisy weekend does not hide aging work behind the newest outputs. New border accents and accessible status copy make urgency scannable without relying on colour alone.
Daily digest now carries review age and routes directly to the queueApproval rows in preview and production digests are fetched oldest-first, include per-output waiting age, elevate the oldest/overdue state into the section heading and preheader, and deep-link the primary CTA to #panel-approvals. The digest now answers what to review first, not merely how many outputs are waiting.
GET /api/v1/artifacts approval triage + OpenAPI 3.1 parityReady artifacts project approvalAgeHours and approvalAttention. Clients can query attention=fresh|watch|overdue and sort=oldest|recent; the response includes a bounded approvalAging aggregate. OpenAPI types every new query and response field, extending the typed-coverage cadence to its 113th unbroken rev. No schema changes.
Start free — there are no metered credits to run out.