WORK-073
ID:WORK-073Status:done

Add resolution validation checks to plan validate

Add three resolution-related checks to refrakt plan validate as specified in SPEC-027.

Priority:mediumComplexity:simpleMilestone:v0.9.0Source:SPEC-027

Criteria completion

Criteria completion: 5 of 5 (100%) checked; history from Mar 24 to Mar 300%25%50%75%100%Mar 24Mar 30
Branches 2
History 5
  1. e900a90
    Created (done)by bjornolofandersson
  2. f262d7b
    Content editedby Claude
  3. 2637549
    • ☑ Info-level check: work/bug items with status `done`/`fixed` but no `## Resolution` section
    • ☑ Warning-level check: items with a `## Resolution` section but status is not `done`/`fixed`
    • ☑ Warning-level check: files with multiple `## Resolution` headings
    • ☑ All three checks appear in `plan validate` output with correct severity levels
    • ☑ Unit tests cover each check
    by Björn Andersson
  4. 6d13c51
    statusreadydone
    by Claude
  5. 3e9d54e
    Created (ready)by Claude
    Add work items WORK-071 through WORK-075 for SPEC-027

Acceptance Criteria

  • Info-level check: work/bug items with status done/fixed but no ## Resolution section
  • Warning-level check: items with a ## Resolution section but status is not done/fixed
  • Warning-level check: files with multiple ## Resolution headings
  • All three checks appear in plan validate output with correct severity levels
  • Unit tests cover each check

Approach

Add a checkResolutions() function in runes/plan/src/commands/validate.ts. This depends on the scanner exposing resolution data (WORK-071), so the checks can use entity.resolution to determine presence. Alternatively, the validator could do its own raw-text scan of the file for ## Resolution headings to avoid depending on the scanner change — simpler but slightly redundant.

References

  • SPEC-027
  • WORK-071 — scanner resolution parsing (dependency)

Resolution

Completed: 2026-03-30

All three resolution checks implemented in runes/plan/src/commands/validate.ts with checkResolutions() function. Five unit tests cover each check type. All criteria verified met.