WIN · LAUNCH WORKBOOK pre-UAT → production · mined from Codex session 019f25cc · snapshot 2026-07-06 · origin/main 734eff41

Lane 4 · Salvage & finish

Orphaned, discarded & unfinished work worth shipping

A full sweep of 727 remote branches, the followups ledger, spec index, and Program-3 status surfaces. The large majority of “open” branches are already squash-merged (pure git hygiene); the genuinely orphaned items below are few, specific, and several are cheap wins that directly affect UAT.

727
remote branches swept
2
branches with real unmerged value
4
high-value followup bugs, ownerless
1
landmine PR to close (deletes CLAUDE.md)

Top salvage targets (ordered by value ÷ effort)

#ItemWhereWhy it mattersEffort
1PR #519 draft-autosave fix — autosave PUT clobbers canvas_state/suggestions; committed-prompt replay missorigin/codex/workflow-draft-suggest-race-20260629 (commits be6c54dc, 8e856793, with tests)Both bugs verified still live on main (workflow-session-store.ts:1330–1348, useWorkflowCanvasPage.ts:509–521). Users lose suggester output to an autosave tick.S — cherry-pick 2 commits
2Employee blank-page routing gapdocs/followups/2026-06-13-my-dashboard-routing-gap.mdNon-admin login hits a blank page — directly blocks UAT of the employee role, i.e. the actual audience.S–M
3Workflow-chat persistence P0 — configured-but-unlaunched sessions silently lost on reloaddocs/followups/2026-05-22-workflow-chat-persistence-no-job-spawned.mdData-loss-feeling bug in the flagship flow.M
4Suggester clobbers manual composer edits (3-track fix plan already written)docs/followups/2026-05-22-workflow-part-ui-overhaul-spec.mdTrust-killer for the compose flow; zero regression coverage today.M
5Cross-tenant read risk — owner UI reads cross-employee admin endpointsdocs/followups/2026-06-13-api-surface-audit.mdSecurity/scoping issue you don’t want discovered during UAT.M
6Program-3 master plan docs (GOAL.md, INITIAL.md, QUEUE-1..5)origin/codex/pre-uat-and-prod-ready-plan — never mergedSTATUS/HANDOFF/implementation notes on main cite GOAL.md by path dozens of times; unresolvable for anyone auditing main.S — docs-only merge
7Spec 104 windx ADR — see Channel Spine tab (SPN-7)Uncommitted in the dirty coordinator checkout: /workspace/win/docs/specs/104-surface-unification-windx.md (285 lines) + slice-4a-ratification-package-20260703.mdBlocks launch decision D10 / PROD-4 — and the finished draft is sitting on disk, one git add from safety.S — commit + index
8Slice 1e Slack copy/cards — see Slack tab (SLK-3)storyboard onlyHalf-day of visible UAT polish once beta is deployed.S once unblocked
Landmine — close, don’t merge PR #102 / track/20260604-json-persistence-spec looks like a legitimate persistence refactor but deletes CLAUDE.md, AGENTS.md, two skills, and the very followup doc describing this risk (docs/followups/2026-06-04-102-json-persistence-reconciliation.md). Close it explicitly so a future branch-cleanup pass can’t merge it by momentum.
RESTORE-DECISION is probably already done The CPO’s Runs/Workflows UX regression “restore” ask maps to PRs #552/#553/#628/#646 — verified code-complete on main (live duration ticker, thinking toggle, running-detail clarity in JobStatusSection.tsx, EventBlocks.tsx, JobDetailUnified.tsx). What’s missing is deploy + hosted proof, not engineering. Answer the RESTORE-DECISION by deploying and demoing, not by rebuilding.

Also ready-to-build (researched, never started)

From the repo’s own roadmap (CLAUDE.md “Research Completed, Ready to Build”) — not Program-3 orphans, but high-leverage candidates for this push, especially for Slack UX and ops:

Discard / defer explicitly (so they stop haunting the backlog)

Plan of attack

Salvage worksheet0/7
The ownership-baseline gate keeps new orphans out but the legacy 69 need one triage sweep — an hour with the followups index, not a program.
git status in /workspace/win shows the whole Program-3 coordination history exists only on one machine’s disk. The session lost artifacts to stale worktrees twice; don’t let the disk be the only copy of the program record. Fixes the gh-pr-merge-breaking main-checkout worktree while you’re there.

Agent handoff prompt

prompt · ORP-1 cherry-pick #519
Salvage the unmerged PR #519 fix in the WIN repo (bigwinai/win). Branch
origin/codex/workflow-draft-suggest-race-20260629 holds commits be6c54dc and 8e856793
(fix + tests) for two bugs verified still live on main: (a) the workflow-session draft
autosave PUT merge-and-overwrites canvas_state/title on every tick, silently reverting
applied composer suggestions (packages/server/src/services/workflow-session-store.ts:1330-1348);
(b) committedPromptReplay() misses the case where the next prompt equals the committed
prompt (packages/ui/src/components/workflows/hooks/useWorkflowCanvasPage.ts:509-521).

Do: create a fresh worktree from origin/main; cherry-pick both commits, resolving drift
against the current files (the surrounding code has moved since 06-29 — preserve the fix
semantics, not the exact hunks); run bun test on useComposerSuggestion.test.ts,
useWorkflowCanvasPage.test.ts, and the server workflow-session-store suite plus full
cross-package typecheck; red-first proof: confirm each test fails when its fix is reverted.
Open a PR per repo rails (PR record file, proven-vs-deferred in body), then close PR #519
as superseded with a link.