Completion Report: ANU-20 - Repository-change CLI and canonical workflow
Status
Implementation, local verification, and draft PR delivery are complete. This report does not authorize PR readiness, merge, branch cleanup, or Linear completion; the review skill requires separate approval.
Product Main documentation disposition
- Planned disposition:
Required - Completion revalidation: Confirmed. ANU-20 changed Product Main-owned CLI, skills, policy, prompts, templates, and engineering workflow documentation.
- Bounded delivery: this ANU-20 implementation PR itself owns the Product Main code and documentation because ANU-20 is a Product Main-created child, not a standalone issue. No companion PR applies.
Acceptance evidence
| Acceptance check | Evidence | Result |
|---|---|---|
Preflight precedes mutation and Escalate has no mutating shape |
repositoryChangeIntakeSchema accepts only not-required/required; skill returns the exact escalation proposal before invoking CLI |
Passed |
| One confirmed intake creates/reuses a marked In Progress issue and branch | Linear SDK marker lookup/create plus reconcileRepositoryChangeBranch; integration covers create/reuse/restore and dirty refusal |
Passed |
| Product parent, child, and standalone kinds remain isolated | Versioned classifier and command-family guards; kind matrix tests | Passed |
| Existing child delivery remains compatible | ANU-20 live read normalized parent, repository label, kind, source path, and Markdown preview; child PR gates consume those fields | Passed |
| Plan and completion approvals remain explicit | Canonical implementation and review skills preserve the post-plan turn boundary and independent completion pause | Passed |
| Common repository PR creation supports child and standalone issues | Exact kind, repository label, branch, state, clean worktree, duplicate-PR recovery, and Linear submit validation | Passed |
| Required Product Main docs delivery is bounded | Deterministic docs branch, approved-plan check, exact path allowlist, configured preview, one linked draft PR | Passed |
| Implementation merges before docs and Done is last | Completion effect seam drives merge/inspect/cleanup for implementation, then docs, then evidence and Linear; exact-order test | Passed |
| Partial completion is truthful and retryable | Identical retry recovery plus test proving docs failure suppresses evidence/Done | Passed |
| Removed workflow is absent without alias | Both skill folders, CLI module/group, old tests, help entry, and active guidance removed; unknown-command test and active-reference search pass | Passed |
| Canonical skills and Product Main docs are aligned | Four new skill folders validated; policy, CLI, workflow, prompt, template, index, and navigation pages updated | Passed |
Verification evidence
bun run typecheck: passed.bun test: 74 passed, 0 failed, 241 assertions across 18 test files.git diff --check: passed.anuva docs validate-indexes --repository current: valid; no missing indexes, empty indexes, or empty directories.- Skill-creator quick validation: all four new/updated skill folders passed.
- Live
anuva linear issue get ANU-20 --json:implementation-child,In Review, exact Product Main repository label, linked PR #20, source path, and normalized review preview. - CLI help/removal:
repository-changeexposes only start/docs/complete; invoking the removed command family is rejected as unknown. - Active-reference search: no removed skill, command, branch namespace, or issue-bypass authorization outside the ANU-19/ANU-20 removal records.
- Strict Product Main preview and link checks: passed for all changed pages.
Delivery evidence
- Linear issue: ANU-20
- Branch:
codex/anu-20-implement-repository-change-cli-and-canonical-wo - Pull request: PR #20 (open draft)
- Initial implementation commit:
34f2c073cc03d81429fdf3260259a37de42f9c74 - PR creation receipt:
20260728T124651Z-pr-create-c2e5 - Linear state after delivery:
In Review
Documentation changed
Product Main policy, CLI architecture/catalog, Linear workflow, skill catalog, implementation/review/product-change workflows, prompts, templates, change registry/progress, navigation, and ANU-20 plan/log/report.
Integration and compatibility
- Existing Product Main parents retain phase-specific commands and remain In Progress until product completion.
- Existing implementation children retain Ready-to-In Progress start, Product Main source/preview validation, child-only merge, and completion.
- Standalone issues are top-level but require the versioned marker, exact current repository label, and direct In Progress intake.
- ANU-21 through ANU-24 remain blocked until ANU-20 is merged and Done.
Recovery and known limitations
- Linear SDK issue creation has no caller idempotency token; the versioned marker plus exact contract verification supplies deterministic reuse.
- A partial intake retries the identical JSON/idempotency key.
- A partial standalone completion retries the identical issue/report command and resumes after verified effects.
- The CLI validates a companion preview against the configured Product Main URL; the skill and docs commands supply strict generation/hash verification.
Ready-for-review declaration
The implementation is available in linked draft PR #20 and is ready for independent completion review. PR readiness, merge, branch cleanup, base synchronization, and Linear Done remain behind the review-and-completion approval.