WORK-072
ID:WORK-072Status:done

Add --resolve and --resolve-file flags to plan update

Extend the refrakt plan update command to accept resolution content and append a ## Resolution section to work item and bug files.

Priority:highComplexity:moderateMilestone:v0.9.0
claude/align-sidenav-styling-4MuxV View source

Criteria completion

No incremental history — criteria tracking started on Apr 17.

Branches 3
History 3
  1. 2637549
    Content editedby Björn Andersson
    chore(plan): create v1.0.0 milestone, complete v0.9.0, fix acceptance cr
  2. 6d13c51
    Content editedby Claude
    chore(plan): update v0.9.0 work item statuses after review
  3. 3e9d54e
    Created (done)by Claude
    Add work items WORK-071 through WORK-075 for SPEC-027

Acceptance Criteria

  • --resolve <text> flag appends a ## Resolution section before the closing rune tag
  • --resolve-file <path> reads resolution body from a file
  • Completed: <today's ISO date> is auto-prepended as the first line of the section
  • Resolution section is inserted before {% /work %} or {% /bug %} closing tag
  • If a ## Resolution section already exists, new content is appended with a --- separator
  • --resolve can be combined with --status done in a single command
  • --resolve can be used standalone (without changing status) for incremental updates
  • --resolve is only allowed on work and bug rune types (error for spec/decision/milestone)
  • Unit tests cover: new resolution, append to existing, combined with status change, standalone resolve, file input, type restriction

Approach

Extend UpdateOptions in runes/plan/src/commands/update.ts with resolve?: string and resolveFile?: string. After applying attribute and checkbox changes, if resolve content is provided, locate the closing rune tag and insert the formatted Resolution section. Parse --resolve and --resolve-file in the CLI plugin's argument handling.

References

  • SPEC-027
  • WORK-071 — scanner must understand resolution format (parallel, not blocking)

Resolution

Completed: 2026-03-30

Full implementation in runes/plan/src/commands/update.ts with 9 unit tests covering all acceptance criteria (new resolution, append to existing, combined with status change, standalone resolve, file input, type restriction). All criteria verified met.