Review: Validate claude-custom (9 PRs, session restart)
Verdict: READY
Template Completeness
- [x] Type -- Task
- [x] Scope -- well-described, replaces File Targets per Task convention
- [x] Lineage -- "Validation audit -- session 2026-03-28 pipeline gap"
- [x] User Story -- "As a platform operator, I want to verify that merged code is deployed and working, so that done means done."
- [ ] Context -- embedded in Scope rather than a separate section (acceptable for Task)
- [x] Acceptance Criteria -- 6 criteria listed
- [x] Test Expectations -- "Session restart, hooks load cleanly, test suites pass"
- [x] Constraints -- "No CI pipeline exists for this repo"
- [ ] Checklist -- missing, but not meaningful for a validation task (no PR to open)
- [x] Related -- present, references project-pal-e-platform
Traceability
- [x] story:pm-scope label -- present on board item #511
- [x] arch:hooks label -- present on board item #511
- [x] Forgejo issue -- forgejo_admin/claude-custom#208, open
- [ ] Forgejo issue labels -- issue has no labels (board item has them, Forgejo does not)
File Targets
N/A -- Task type. No file targets expected. Validation is session-based, not code-change-based.
Repo Placement
OK. Issue filed on forgejo_admin/claude-custom. All 9 PRs are in the same repo. No cross-repo work.
Minor note: Related section says
project-pal-e-platform but the board item lives on board-pal-e-agency and the repo is claude-custom. Should likely reference pal-e-agency instead.Dependencies
No blocking dependencies found. Two sibling validation items exist on the same board (board items #516 and #517 for linkedin-scheduler-remote and gcal-mcp-remote) but they are independent. No items in in_progress or next_up block this work.
Acceptance Criteria
6 criteria. Assessment:
- AC 1 (hooks load without errors) -- verifiable: restart session, check stderr
- AC 2 (test suites pass) -- verifiable: run test scripts in tests/ directory
- AC 3 (no regressions in agent behavior) -- subjective, hard to verify mechanically. Could be tightened to specific hook behaviors.
- AC 4 (pipeline verified N/A) -- explicitly N/A, fine
- AC 5 (deployment confirmed = session restart) -- verifiable
- AC 6 (features validated) -- overlaps with AC 1+2, redundant but not harmful
Blast Radius
All 9 PRs are confined to claude-custom. Files touched:
- Hooks: cleanup-worktrees.sh, pre-spawn-freshness.sh, forgejo-helper.sh, post-mcp-merge-rebase.sh, post-merge-rebase.sh, check-note-template.sh, board-item-on-merge.sh, remind-update-docs.sh, check-branch-freshness.sh
- Settings: settings.json (2 PRs)
- Agent profiles: betty-sue.md, penny.md
- Tests: test_check_note_template.sh, test_parse_merged_status.sh
- Docs: commands/update-docs.md, spikes/133-penny-mcp-inventory.md
No downstream consumers outside claude-custom. Hooks are hardlinked to ~/.claude/hooks/ so a session restart is the deployment mechanism.
Decomposition
Single repo, single-pass validation. No code changes to write. Estimated agent time: 2-3 minutes (restart + run tests + report). No decomposition needed.
Recommendation
No action needed. Ticket is ready for execution.
Optional nits (non-blocking):
[BODY]Fix Related:project-pal-e-platformshould beproject-pal-e-agency(repo is claude-custom, board is board-pal-e-agency)[BODY]AC 3 could be tightened: "No regressions" is subjective -- could specify "hooks produce expected output for known inputs"