archive · git:20260801.9909032 · 2026-08-01 · sha256 399b1b49dec4947e

archive git:20260801.9909032B

Immutable. This exact content is served forever at /api/v1/blob/399b1b49dec4947e.

---
description: Move a completed change to .specclaw/changes/archive/ with a date prefix. Closes the GitHub Issue (if sync is enabled) and optionally creates a git tag. Use after a change is merged — the PR is complete and the change should leave the active list.
---

# specclaw archive

**First, run** `specclaw-ensure-init .specclaw` — idempotently creates `.specclaw/` if it doesn't exist (silent if already initialized; auto-inits using the current directory's basename as the project name).

Archive a completed change.

1. **Validate:** `specclaw-validate-change .specclaw <change> archive`. If it fails, report and stop.
2. Verify the change is complete (all tasks done, verification passed, PR merged).
3. Record the phase: `specclaw-set-phase .specclaw <change> archived done`. `specclaw-set-phase` is the only writer of phase state — it records `state.json` and upserts the Archived row in `status.md`. Never hand-edit those rows. Run it **before** the move, so the recorded state travels with the directory.
4. Move to `.specclaw/changes/archive/YYYY-MM-DD-<change>/`.
5. Update the dashboard: `specclaw-update-status .specclaw`.
6. **GitHub sync** (if enabled): `specclaw-gh-sync close .specclaw <change>` to close the issue.
7. **Azure Boards sync** (if `azdo.boards.sync: true`): `specclaw-azdo-issue close .specclaw <change>` to post a closing comment and add a `closed-by-specclaw` tag. (Does not transition Work Item state — humans drive state in ADO.)
8. Optionally create a git tag for the release.