WORK-130
ID:WORK-130Status:done

Support attribute clearing in plan CLI update command

The update command can set or replace attribute values but cannot remove them. Once you set --assignee claude or --milestone v1.0.0, there's no way to unset it. Support empty string as "clear": --assignee "" removes the attribute from the tag.

Priority:lowComplexity:simpleSource:SPEC-037
claude/file-naming-convention-LJdwR View source

Criteria completion

No incremental history — criteria tracking started on Apr 21.

Branches 2
claude/file-naming-convention-LJdwR current done
main donechangeset-release/main done
History 2
  1. bbbb94c
    Created (done)by bjornolofandersson
  2. f2b3512
    Content editedby Claude
    Add {ID}-{slug}.md filename convention + migrate filenames subcommand

Acceptance Criteria

  • --assignee "" removes the assignee attribute from the rune tag
  • --milestone "" removes the milestone attribute from the rune tag
  • Works for any optional attribute (assignee, milestone, source, tags, complexity)
  • Change summary shows "removed" for cleared attributes (e.g., assignee: claude → (removed))
  • Tests for attribute clearing

References

  • SPEC-037 — Plan Package Hardening (Part 4: Missing CLI Capability)

Resolution

Completed: 2026-04-12

Branch: claude/spec-037-breakdown-docs-Whj40

What was done

  • Added removeAttr() helper to update.ts
  • Empty string values trigger attribute removal instead of setting empty
  • Skip enum validation for empty strings
  • 4 new tests for attribute clearing