GITHUB-ISSUES-2026-03-22-v011-scope.md
GITHUB-ISSUES-2026-03-22-v011-scope.md
Section titled “GITHUB-ISSUES-2026-03-22-v011-scope.md”Created: 2026-03-22 Purpose: v0.11.0 release prep — close duplicates, label unlabeled issues, fix bugs and cleanup.
Context
Section titled “Context”v0.11.0 is a stabilization release. The documentation feature (Tasks 1–12) and everything after it depends on the engine being solid first.
The big item is #340 (untrack operator root files). It’s on dev already but needs to flow through staging → main. Each merge WILL delete the 4 operator root files from disk. Restore from backup after each merge:
cp /mnt/d/scaffolder-engine/_system/backups/operator-root-files/* /mnt/d/scaffolder-engine/After all three branches have the untrack commit, this never happens again.
Rules for Harley
Section titled “Rules for Harley”- Run operations one at a time in the order listed
- Confirm each result before moving to the next
- Do not modify operation content
- Report any failures to operator immediately
- Stop after all operations are complete — no other work
Part 1 — Close duplicate issue
Section titled “Part 1 — Close duplicate issue”Operation 1 — Close #326 (duplicate of #340)
Section titled “Operation 1 — Close #326 (duplicate of #340)”gh issue close 326 --reason "not planned" --comment "Closing as duplicate of #340. Same problem, same fix — #340 is the correct approach (gitignore + git rm --cached through normal release flow)."Part 2 — Label unlabeled open issues
Section titled “Part 2 — Label unlabeled open issues”Operation 2 — Label #325
Section titled “Operation 2 — Label #325”gh issue edit 325 --add-label "bug"Operation 3 — Label #326 (before it closes, ensure it has a label for the record)
Section titled “Operation 3 — Label #326 (before it closes, ensure it has a label for the record)”gh issue edit 326 --add-label "bug"Operation 4 — Label #330
Section titled “Operation 4 — Label #330”gh issue edit 330 --add-label "enhancement"Operation 5 — Label #331
Section titled “Operation 5 — Label #331”gh issue edit 331 --add-label "enhancement"Operation 6 — Label #338
Section titled “Operation 6 — Label #338”gh issue edit 338 --add-label "enhancement"Part 3 — Build fixes on dev (branch per fix, PR to dev)
Section titled “Part 3 — Build fixes on dev (branch per fix, PR to dev)”All work below happens on dev. Each fix gets its own branch, its own PR. Do NOT merge any PRs — operator merges.
Operation 7 — Fix #325 (README mentions Plane as shipped)
Section titled “Operation 7 — Fix #325 (README mentions Plane as shipped)”Branch: fix/readme-plane-references
git checkout dev && git pull origin devgit checkout -b fix/readme-plane-references- Edit README.md:
- Remove or reword any language that says Plane integration is shipped
- Keep the “Plane Integrated” tier name if it exists, but clarify it’s a future/planned integration — OR rename the tier if Plane references no longer make sense
- Remove any Plane-specific setup instructions or references
- Commit:
fix: remove references to Plane integration as shipped (closes #325) - Push and create PR to dev
Operation 8 — Fix #331 (remove approval enforcement from templates)
Section titled “Operation 8 — Fix #331 (remove approval enforcement from templates)”Branch: fix/remove-approval-enforcement
git checkout dev && git pull origin devgit checkout -b fix/remove-approval-enforcement- Edit these files — remove all references to scaffolder “requiring” or “enforcing” approvals:
- STANDARDS.md template (
templates/docs/STANDARDS.md) — remove approvals row from scale tier table, remove any approval language - CLAUDE.md template (
templates/CLAUDE.md) — remove any approval enforcement references - README.md — remove approvals row from scale tier table if present
- Any other template files that reference required approvals
- STANDARDS.md template (
- Scaffolder provides workflow structure; the operator decides their own approval rules at the project level. That’s the principle.
- Commit:
refactor: remove approval enforcement references from templates (closes #331) - Push and create PR to dev
Operation 9 — Fix #342 (session-end hook never built)
Section titled “Operation 9 — Fix #342 (session-end hook never built)”Branch: fix/session-end-hook
git checkout dev && git pull origin devgit checkout -b fix/session-end-hook- Read the full issue body for #342 — it has detailed specs
- Build the SessionEnd hook in
.claude/settings.json(in templates sosc creategenerates it) - The hook must:
- Fire automatically on
/exit, sigint, and error - Ensure all work is committed on the current branch
- Write
ai-sessions/CURRENT-CODE.mdwith real session state - Write an immutable log to
ai-sessions/logs/with correct filename format - Commit both files
- Fire automatically on
- Test by running
harleyin a test project, doing a small change, and/exit - Commit:
fix: add session-end hook for automatic state persistence (closes #342) - Push and create PR to dev
Part 4 — Release v0.11.0
Section titled “Part 4 — Release v0.11.0”Do NOT start Part 4 until operator has merged all PRs from Part 3.
Operation 10 — Create release branch and bump version
Section titled “Operation 10 — Create release branch and bump version”git checkout dev && git pull origin devgit checkout -b release/v0.11.0 dev- Bump version in
package.jsonto0.11.0 - Add CHANGELOG.md entry for v0.11.0 listing all fixes
npm run build— must be cleansc --version— must show 0.11.0- Commit:
chore: bump version to v0.11.0 - Push and create PR: release/v0.11.0 → staging
Operation 11 — After staging merge, restore operator files
Section titled “Operation 11 — After staging merge, restore operator files”WAIT for operator to merge the staging PR before proceeding.
cp /mnt/d/scaffolder-engine/_system/backups/operator-root-files/* /mnt/d/scaffolder-engine/Confirm all 4 files are restored: CLAUDE.md, STANDARDS.md, PROJECT-INSTRUCTIONS.md, RELEASE-CHECKLIST.md
Then create PR: staging → main
Operation 12 — After main merge, tag and restore
Section titled “Operation 12 — After main merge, tag and restore”WAIT for operator to merge the main PR before proceeding.
cp /mnt/d/scaffolder-engine/_system/backups/operator-root-files/* /mnt/d/scaffolder-engine/Confirm all 4 files restored.
Then:
git checkout main && git pull origin maingit tag v0.11.0 && git push origin v0.11.0Create PR: main → dev (required by ruleset)
Operation 13 — After dev sync merge, final restore
Section titled “Operation 13 — After dev sync merge, final restore”WAIT for operator to merge the main → dev PR before proceeding.
cp /mnt/d/scaffolder-engine/_system/backups/operator-root-files/* /mnt/d/scaffolder-engine/Confirm all 4 files restored. Run sc --version — should show 0.11.0.
Smoke test: sc create "test-project" --dry-run
v0.11.0 is done. Report results to operator.