WORK-023
ID:WORK-023Status:done

Build decision-log Rune

Priority:lowComplexity:moderateSource:SPEC-021
claude/file-naming-convention-LJdwR View source

Criteria completion

No incremental history — criteria tracking started on Apr 21.

Branches 3
claude/file-naming-convention-LJdwR current done
main donechangeset-release/main doneclaude/align-sidenav-styling-4MuxV done
History 1
  1. f2b3512
    Created (done)by Claude
    Add {ID}-{slug}.md filename convention + migrate filenames subcommand

Summary

Aggregation rune that renders a chronological view of all architecture decision records. Queries the entity registry for decision entities and displays them as a sortable, filterable list with date, status, and title.

Simpler than the backlog rune — no grouping, no card layout. Just a clean chronological list.

Attributes

NameTypeDefaultDescription
filterStringFilter by status or tags (same field:value syntax as backlog)
sortStringdateSort order: date (reverse chronological) or id

Example

{% decision-log sort="date" /%}
{% decision-log filter="status:accepted" sort="date" /%}

Acceptance Criteria

  • Rune schema in runes/plan/src/tags/decision-log.ts with filter/sort attributes
  • aggregate() pipeline hook queries entity registry for decision entities
  • Results sorted by date (reverse chronological by default) or id
  • Filter parsing reuses backlog filter syntax
  • Renders as a list with date, status badge, id, and title per entry
  • Engine config in runes/plan/src/config.ts
  • CSS in packages/lumina/styles/runes/decision-log.css
  • Tests for filtering, sorting, and rendering
  • Exported from runes/plan/src/index.ts

Dependencies

  • WORK-020 (entity registration) must be complete first
  • Filter parsing can be shared with backlog rune (WORK-022)