pbl/skills/sync/SKILL.md
Use when archiving specs to detect drift between spec artifacts and actual code changes. Called by the lodge skill at Step 1 — not invoked directly by users.
npx skillsauth add tim-hub/powerball syncInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Detect drift between spec artifacts (tasks, checklist, plan) and actual code changes before archiving. Surface discrepancies so the user can choose to update specs or revert code.
.powerball/specs/YYYY-MM-DD-{{name}}/plan.md, tasks.md, and checklist.md from the directoryFrom tasks.md, extract:
[x]) — what files they claim to have created or modifiedFrom plan.md, extract:
From checklist.md, extract:
[x]) — what observable outcomes they verifyRun git diff against the branch or commits associated with this spec's work:
If the spec work was done in a worktree that has been merged, diff the merge commit range instead.
If no git history is available (no associated branch, no commits, or the spec was created without any code changes), skip drift detection entirely. Tell the user: "No git history found for this spec — skipping sync." Return to lodge and proceed directly to the move step.
Check for discrepancies in both directions:
Spec claims work not reflected in code:
src/auth.ts" but file has no changesCode changes not captured in specs:
If no drift detected, report clean and proceed (return to lodge).
If drift detected, present each discrepancy clearly:
Drift detected between specs and code:
Specs claim work not in code:
- Task #3 says "add validation to user.ts" — file unchanged
Code changes not in specs:
- src/utils/helpers.ts was modified — no task mentions this file
- New file src/config/defaults.ts created — not in any task
Options:
1. Update specs to match code (add missing tasks/checkpoints)
2. Revert code changes that aren't in specs
3. Lodge anyway (accept drift as-is)
Wait for user's choice before proceeding:
tasks.md and checklist.md to reflect actual changes, then return to lodgetesting
Picks the right Kubernetes Deployment update strategy (RollingUpdate / Recreate / Blue-Green / Canary) for the situation. Use when configuring a new Deployment, changing rollout config, or deciding how to ship a risky change.
tools
Translates a markdown file to a target language, preserving structure. Use when the user needs a markdown file translated.
development
Translates text between any two languages while preserving source format. Use when the user needs to translate plain text, code, or markdown content.
testing
Generates written content — blog posts, social posts, emails, and marketing copy — matched to the project's existing voice. Use when the user needs written material.