# Global WIP Triage Skill

status: DONE
task IDs: session tasks #1–#5
source request: Owner requested creation of a global `/wip-triage` skill from the supplied classification and safety specification, installation into the live global Claude skills path, and landing on Overdeck `main`. Owner explicitly identified `~/Projects/overdeck` and required its `CLAUDE.md` to govern the work.

## Outcome

A tested global `/wip-triage` skill audits Git worktrees, branches, plans, stashes, and uncommitted state; classifies each workstream with evidence; preserves recoverable work; and permits only fail-closed safe retirements. Repository source, live installation, verification receipt, and `main` contain the same skill.

## Acceptance criteria

- Source exists at `modules/workstation/claude/skills/wip-triage/SKILL.md` with valid unique frontmatter.
- Default mode is read-only `--audit`; mutating modes are explicit.
- Classification uses one primary disposition plus independent flags.
- Landed/redundant proof requires recorded evidence and `HIGH` confidence before deletion.
- Dirty, staged, untracked, ignored-important, and stashed work receive distinct preservation handling.
- Canonical remote/default branch are fetched and verified before divergence assessment when network is available.
- Shared checkout mutation is forbidden.
- Reports provide executive recommendations, worktree ledger, recovery manifest, and execution receipt in plain language.
- RED baseline scenarios are captured before skill creation; GREEN scenarios demonstrate compliance after creation.
- Skill is installed at `~/.claude/skills/wip-triage/SKILL.md` and verified through the installed path.
- Changes are committed, pushed to Overdeck `main`, deployed through repository procedure, and reverified.

## Preserved WIP

- Canonical source specification is preserved in the owner transcript.
- Isolated branch: `wt/wip-triage-skill`.
- Isolated worktree: `/home/user/Projects/overdeck/.worktrees/wip-triage-skill`.
- No pre-existing Overdeck worktree changes were modified.

## Constraints

- Follow `/home/user/Projects/overdeck/CLAUDE.md`.
- Never edit the shared checkout.
- Follow skill-creator RED → GREEN → REFACTOR; no skill before failing baseline.
- Install runtime copy before landing repository changes.
- Use repository deployment and landing contract; never weaken gates or use force.
- Do not package secrets, dependencies, caches, logs, or generated output as ignored-file recovery.

## Execution steps

1. Capture durable plan and task chain.
2. Create pressure scenarios and record no-skill failures.
3. Author minimal skill addressing observed failures and owner contract.
4. Run with-skill scenarios and structural checks; refactor any loopholes.
5. Install repository source into live global skills path and invoke/read installed entrypoint.
6. Commit changes, refresh from `origin/main`, push to `main`, deploy locally, and verify installed source matches landed source.
7. Mark plan `DONE` with hashes and verification receipt.

## Current receipt

2026-08-11: Landed `ac1461925d8d51ca8e095a9babab74a01051a592` on `origin/main`. `packaging/deploy-local.sh` completed with exit 0 and receipt `{"stage":"deploy-local","status":"deployed","sha":"ac146192"}`. Deploy clone HEAD equals landed commit. Re-applied `claude:skills` from deploy clone; `/home/user/.claude/skills/wip-triage/SKILL.md` now resolves to `/home/user/.local/share/overdeck/deploy/modules/workstation/claude/skills/wip-triage/SKILL.md`. Installed contract test passes. RED contract test had failed before source creation; focused GREEN runner reports `pass=1 fail=0`. Three authorized model fixtures were unavailable: Codex/OpenCode exited nonzero and North reported canonical CCR missing; no raw-model fallback was used. Deploy also reported unrelated dirty shim copies in other worktrees, accepted by deploy policy as rc 3, plus disabled Overdeck web/collector services and `collector_http=000`; neither affects this static skill, and no unrelated worktree or service state was mutated.

## Next executable action

None. Skill is landed, deployed, globally installed from immutable deploy clone, and owner-visible.
