Open Human Gates before optional workspace hydration #1419

Closed
opened 2026-08-26 04:34:03 +00:00 by timmy · 0 comments
Owner

Problem

A cold mobile deep link to #/my-work/human-gates waits for both Today and Planning bundles because frontend/dashboard.js awaits workspaceLifecycle.optionalReady before wiring the already-core Human Gates controller. A failed optional feature can therefore block a release decision indefinitely.

User impact

Authenticated operators should be able to review and decide a release gate from a phone without downloading or recovering unrelated optional workspace tools.

Acceptance criteria

  • A cold Human Gates deep link loads and opens the gate queue while Today and Planning remain unresolved or fail.
  • Release/Hold remains online, identity-, revision-, and idempotency-bound.
  • Full dashboard hydration adopts the existing controller without a duplicate gate-list request or duplicate event handlers.
  • Account changes cannot expose the previous principal cache or in-memory queue.
  • Focused behavioral tests, full suite, and mobile layout validation pass.

Evidence / non-duplication

Current origin/main at 718f0d1 initializes Human Gates only at frontend/dashboard.js:639-685, after the await at line 3. All 712 historical issue titles were checked; Human Gates issues #1415 and #1417 delivered the inbox and Prepare Today integration, not pre-hydration deep-link availability. The sole open PR (#1282) is an unrelated latency panel.

## Problem A cold mobile deep link to `#/my-work/human-gates` waits for both Today and Planning bundles because `frontend/dashboard.js` awaits `workspaceLifecycle.optionalReady` before wiring the already-core Human Gates controller. A failed optional feature can therefore block a release decision indefinitely. ## User impact Authenticated operators should be able to review and decide a release gate from a phone without downloading or recovering unrelated optional workspace tools. ## Acceptance criteria - A cold Human Gates deep link loads and opens the gate queue while Today and Planning remain unresolved or fail. - Release/Hold remains online, identity-, revision-, and idempotency-bound. - Full dashboard hydration adopts the existing controller without a duplicate gate-list request or duplicate event handlers. - Account changes cannot expose the previous principal cache or in-memory queue. - Focused behavioral tests, full suite, and mobile layout validation pass. ## Evidence / non-duplication Current `origin/main` at `718f0d1` initializes Human Gates only at `frontend/dashboard.js:639-685`, after the await at line 3. All 712 historical issue titles were checked; Human Gates issues #1415 and #1417 delivered the inbox and Prepare Today integration, not pre-hydration deep-link availability. The sole open PR (#1282) is an unrelated latency panel.
timmy self-assigned this 2026-08-26 04:34:03 +00:00
timmy closed this issue 2026-08-26 05:05:10 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stackchain/stackchain-dashboard#1419
No description provided.