Board hook automation: session-start sync + post-merge done-move (Phase 11d+11e) #97
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/claude-custom#97
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Lineage
plan-pal-e-agency→ Phase 11 (Board Workflow Enforcement) → 11d + 11eRepo
forgejo_admin/claude-customUser Story
As Betty Sue
I want boards to auto-sync at session start and board items to auto-move to done after merge
So that board state stays accurate without manual intervention
Context
Phase 11 of the Agency plan connects board infrastructure into a continuous kanban workflow. The board SOP (
sop-board-workflow) defines sync cadence: session start + post-merge. Currently, session-start sync is manual (Betty Sue must remember to callsync_board), andremind-sprint-update.shonly reminds to move board items — it doesn't actually do it. This issue automates both.Also cleans up residual "sprint" terminology in hook files and settings.json (QA nit from PR #94).
The pal-e-docs API base URL is:
https://pal-e-docs.tail5b443a.ts.netFile Targets
Files to modify or create:
11d — Session-start auto-sync:
hooks/session-start-board-sync.sh— NEW. PostToolUse or SessionStart hook that callssync_boardon active project boards via the pal-e-docs API. Should callPOST /boards/{slug}/syncfor each active board. Active boards:board-pal-e-platform,board-pal-e-docs,board-pal-e-agency,board-westside-basketball,board-pal-e-pac. Use the same auth pattern as other hooks that call pal-e-docs (checkhooks/forgejo-helper.shor similar for URL/auth patterns).settings.json— Add the new hook to SessionStart event hooks array.11e — Post-merge auto-board-update + sprint terminology cleanup:
hooks/remind-sprint-update.sh→ rename tohooks/board-item-on-merge.sh. Change from Layer 4 (remind) to Layer 3 (auto) behavior: after a PR merge, identify the associated board item and move it to thedonecolumn viaPATCH /boards/{board_slug}/items/{item_id}with{"column": "done"}. The board item can be found by matching the Forgejo issue URL against board items.settings.json— Update the hook reference fromremind-sprint-update.shtoboard-item-on-merge.sh. Also clean any other residual "sprint" references in settings.json.hooks/remind-update-docs.sh— Clean any "sprint" terminology in comments/messages (non-functional change).Files NOT to touch:
skills/— already cleaned in PR #94commands/update-docs.md— already cleaned in PR #92Acceptance Criteria
hooks/session-start-board-sync.shexists and calls sync on 5+ active boardssettings.jsoninclude the new sync hookhooks/board-item-on-merge.shexists (renamed from remind-sprint-update.sh)hooks/remind-sprint-update.shis deletedsettings.jsonreferencesboard-item-on-merge.shgrep -r "sprint" hooks/ settings.jsonreturns zero matches (excluding git history)Test Expectations
bash hooks/session-start-board-sync.shruns without error (may need env vars)grep -r "sprint" hooks/ settings.jsonreturns no matcheschmod +x)Constraints
curlfor pal-e-docs API calls (no SDK dependency in hooks)~/secrets/pal-e-services/forgejo.envfor any Forgejo API callshttps://pal-e-docs.tail5b443a.ts.netChecklist
Related
project-pal-e-agency— projectphase-pal-e-agency-11-board-workflow-enforcement— parent phasesop-board-workflow— defines sync cadence and column semanticshook-catalog— enforcement surface map (Layer 3 + Layer 4 hooks)