End-of-session checklist with confidence dashboard, data verification, commits, project state updates, and self-improvement. Use when user says "wrap up", "close session", "end session", "wrap things up", "close out this task", "I'm done", "that's it", "that's it for today", "ok I'm good", "nothing else", or invokes /wrap-up. NEVER pushes to remote. NEVER deploys.
Run seven phases in order. Each phase is conversational and inline. All phases auto-apply without asking; present a consolidated report at the end.
HARD RULES:
git push. Spencer pushes manually. Pushing triggers auto-deploy on Railway.Run /status to get the current project health dashboard.
WARNING: Project confidence is {score}/100. Address the issues below before wrapping up: {list failing signals from dashboard}
Proceed with remaining phases regardless — wrap-up should always complete, but the warning ensures Spencer sees the state clearly before the session ends.
Data verification MUST complete first — it writes to verification/history.log and updates PROJECT_STATE.md. Codex review needs a stable working tree to inspect. Run data-verify, then Codex review on the resulting state.
If this project has a database component (check for PROJECT_STATE.md, VERIFICATION.md, or database config files):
/data-verify — full verification suiteData regression detected: {test} was passing, now failing. This session may have introduced a data error.
If no database component: Skip this phase.
Pre-check: Run git status in the project directory. If there are no uncommitted
changes (nothing staged, unstaged, or untracked source files), skip this phase silently.
If uncommitted changes exist:
Invoke Codex adversarial review (read-only, structured JSON output):
bash ~/.claude/hooks/codex-delegate.sh adversarial-review "" --search --timeout 180 --cwd "$(pwd)"
For higher-risk work, run a dedicated Codex verifier flow after the review:
just codex_verify_artifacts "Summarize the end-to-end artifacts that prove this task works."
just codex_verify "Review the task outcome, current diff, and test evidence before wrap-up."
Triage each finding using structured JSON output: Parse the JSON response and apply these rules by severity + confidence:
critical or high with confidence >= 0.7 → Fix now, before committing.medium with confidence >= 0.8 → Fix if quick (under 2 minutes).low or confidence < 0.5 → Dismiss with one-line reasoning.Log the triage for the final report:
Codex Review: verdict={approve|needs-attention}, X findings — Y fixed, Z dismissed
- Fixed: {brief description of each fix}
- Dismissed: {severity}/{confidence} — {brief reason}
If Codex timed out or errored: Note it and proceed. The other phases (confidence check, data verification) already validated the work.
This phase is read-only from Codex's perspective. Codex analyzes; Claude decides and acts.
git status in each repo directory touched during the sessionTask cleanup: 8. Check the task list for in-progress or stale items 9. Mark completed tasks as done, flag orphaned ones
If PROJECT_STATE.md exists:
Update the following sections:
- {date} #{N}: {what was done}. {what's next}.If any architecture decisions were made this session, add them to Architecture Decisions with date and reasoning.
Commit the PROJECT_STATE.md update (separate commit). DO NOT PUSH.
If PROJECT_STATE.md doesn't exist: Mention:
No PROJECT_STATE.md found. Consider running
/project-initto set up structured project tracking.
Review what was learned during the session. Decide where each piece of knowledge belongs:
Memory placement guide:
save_memory) — Cross-session insights: debugging
patterns, API quirks, project behaviors needed in future sessions..claude/rules/ — Topic-specific instructions scoped to file types
(use paths: frontmatter)docs/MEMORY-BANK.md — Completed milestones, project context. Under 500 lines.docs/DECISION_LOG.md — Major decisions with reasoning.CLAUDE.local.md — Private per-project notes, sandbox credentials, WIP contextVERIFICATION.md — Newly confirmed ground-truth values (ONLY values the
user verified against source documents, never AI-generated)Auto-apply all actionable findings. Commit changes. DO NOT PUSH.
Analyze the conversation for self-improvement findings. If the session was short or routine, say "Nothing to improve" and finish.
Finding categories:
Action types:
.claude/rules/Present summary:
Findings (applied):
1. ✅ Skill gap: Cost estimates wrong → [CLAUDE.md] Added reference table
2. ✅ Knowledge: API retries on 429 → [Rules] Added error-handling rule
3. ✅ Data: User confirmed ANICO age 55 = $32.50 → [VERIFICATION.md] Test #6
No action needed:
4. Already documented in CLAUDE.md
Commit any changes. DO NOT PUSH.
## Session Wrap-Up Complete
### Confidence Dashboard
{Full /status output — score, signal table, unresolved items, recommendation}
### Data Verification
{X/Y passing, or "N/A — no database"}
### Codex Review
{X findings — Y fixed, Z dismissed / Skipped — no uncommitted changes / Timed out — proceeded without}
{If artifact-verifier ran: include what evidence Codex marked proven vs unproven}
### Smoke Test
{All pass / X failures / N/A — no smoke_test.sh}
### Commits (NOT PUSHED)
- {hash}: {message}
- {hash}: {message}
Push when you're ready.
### Project State
{Updated / Not found — run /project-init}
### Memory Updates
{List what was saved and where}
### Improvements
{List or "Nothing to improve"}
Control Philips Hue lights and scenes via the OpenHue CLI.