Phase 21: Polish & Integration - 6 plans in 3 waves - 3 parallel (Wave 1), 2 parallel (Wave 2), 1 sequential (Wave 3) - Ready for execution
5.0 KiB
phase, plan, type, wave, depends_on, files_modified, autonomous
| phase | plan | type | wave | depends_on | files_modified | autonomous | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 21-polish-integration | 03 | execute | 1 |
|
true |
Purpose: Pages are currently isolated — the inbox doesn't link to initiatives, the detail page doesn't link to inbox, and there's no way for users to navigate between related resources. Additionally, the detail panel on inbox and initiative detail pages is completely hidden on mobile with no way to access it. Output: Cross-screen navigation between related resources and responsive mobile access to detail panels.
<execution_context>
@/.claude/get-shit-done/workflows/execute-plan.md
@/.claude/get-shit-done/templates/summary.md
</execution_context>
@packages/web/src/layouts/AppLayout.tsx @packages/web/src/routes/inbox.tsx @packages/web/src/routes/initiatives/$id.tsx @packages/web/src/components/InboxList.tsx @packages/web/src/components/InitiativeHeader.tsx @packages/web/src/components/TaskRow.tsx
Task 1: Add cross-screen navigation links packages/web/src/layouts/AppLayout.tsx, packages/web/src/components/TaskRow.tsx, packages/web/src/routes/inbox.tsx 1. In `AppLayout.tsx`: - Remove the three disabled nav items (Agents, Tasks, Settings). They're stubs that will never be implemented in v2.0 — they create false promises and visual clutter. Keep only Initiatives and Inbox.-
In
TaskRow.tsx:- If the task has a non-null agentName prop, make it a clickable link. Use
<Link to="/inbox">from @tanstack/react-router. Style astext-primary hover:underline(clickable look). This lets users jump from a task's agent assignment to the inbox to see agent questions.
- If the task has a non-null agentName prop, make it a clickable link. Use
-
In
inbox.tsx:- In the detail panel header, where it shows
Task: {selectedAgent.taskId}, make the taskId a link. If taskId is available, link to/initiatives(since we don't have a direct task→initiative mapping on the frontend, link to the dashboard — the user can find it from there). Use<Link>withtext-primary hover:underlinestyling. - Below the agent name header, add a small "View in context →" Link to
/initiativeswhen the agent has a taskId.
- In the detail panel header, where it shows
npx tsc --noEmit -p packages/web/tsconfig.app.jsonpassesnpm run --workspace=packages/web buildsucceeds Users can navigate between inbox and initiative detail via contextual links. Disabled nav stubs removed.
- In
initiatives/$id.tsx:- The right column (ProgressPanel + DecisionList) currently stacks below phases on mobile, which is acceptable.
- The TaskDetailModal already uses Dialog which is responsive.
- No changes needed for detail page — its layout already works on mobile (single-column stacking).
npx tsc --noEmit -p packages/web/tsconfig.app.jsonpassesnpm run --workspace=packages/web buildsucceeds Inbox detail panel accessible on mobile via drill-down pattern. Back button returns to list view.
<success_criteria>
- All tasks completed
- All verification checks pass
- Cross-screen navigation present between inbox and initiative detail
- Mobile users can access inbox detail panel </success_criteria>