WORK-023
ID:WORK-023Status:done

Build decision-log Rune

Priority:lowComplexity:moderateSource:SPEC-021

Criteria completion

Criteria completion: 9 of 9 (100%) checked; history from Mar 22 to Mar 230%25%50%75%100%Mar 22Mar 23
Branches 3
History 8
  1. f2b3512
    Content editedby Claude
    Add {ID}-{slug}.md filename convention + migrate filenames subcommand
  2. f262d7b
    Content editedby Claude
  3. cf0cfc0
    Content editedby Claude
    Revert "Fix plan site truncation by escaping Markdoc tags in code fences
  4. 703b85a
    Content editedby Claude
    Fix plan site truncation by escaping Markdoc tags in code fences
  5. 28a3e49
    • ☑ CSS in `packages/lumina/styles/runes/decision-log.css`
    by Claude
  6. bcb01d8
    • ☑ 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`
    • ☑ Tests for filtering, sorting, and rendering
    • ☑ Exported from `runes/plan/src/index.ts`
    by Claude
  7. ebe0c64
    Content editedby Claude
    Migrate plan files to {% ref %} xref syntax (WORK-021)
  8. 3fc7634
    Created (pending)by Claude
    Add work items for remaining SPEC-021 plan runes gaps

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)