WORK-022
ID:WORK-022Status:done

Build backlog Rune

Priority:mediumComplexity:complexSource:SPEC-021

Summary

Aggregation rune that queries the entity registry and renders a filtered, sorted, grouped view of work items and bugs. This is the first Phase 2 rune in the plan package — it requires the cross-page pipeline and entity registration (Add Entity Registration to @refrakt-md/plan) to function.

The backlog rune is also the rendering primitive used by the milestone auto-backlog feature (Milestone Auto-Backlog and Checklist Progress).

Attributes

NameTypeDefaultDescription
filterStringFilter expression: field:value pairs (e.g., status:ready priority:high)
sortStringprioritySort order: priority, status, id, assignee, complexity, milestone
groupStringGroup items by: status, priority, assignee, milestone, type, tags
showStringallEntity types to include: all, work, bug

Filter Syntax

Space-separated field:value pairs. Multiple values for the same field act as OR. Different fields act as AND.

{% backlog filter="status:ready priority:high" /%}
{% backlog filter="milestone:v0.5.0" sort="priority" group="status" /%}
{% backlog filter="assignee:bjorn status:in-progress" /%}
{% backlog filter="tags:tint" show="work" /%}

Card Layout

Each entity renders as a compact summary card showing id, status badge, priority badge, complexity dots, title, milestone, and checklist progress (if available).

Acceptance Criteria

  • Rune schema in runes/plan/src/tags/backlog.ts with filter/sort/group/show attributes
  • Filter parser handles field:value syntax with AND/OR semantics
  • aggregate() pipeline hook queries entity registry for work and bug entities
  • Results sorted by specified field
  • Results grouped into sections when group specified
  • Summary card rendering with BEM classes (rf-backlog, rf-backlog__card, etc.)
  • Engine config in runes/plan/src/config.ts
  • CSS in packages/lumina/styles/runes/backlog.css
  • Tests for filter parsing, sorting, grouping, and card rendering
  • Type definition in runes/plan/src/types.ts
  • Exported from runes/plan/src/index.ts

Dependencies

History

  1. f262d7b
    source+SPEC-021
  2. cf0cfc0
    Content edited
  3. 703b85a
    Content edited
  4. 28a3e49
    • ☑ CSS in `packages/lumina/styles/runes/backlog.css`
  5. bcb01d8
    statuspendingdone
    • ☑ Rune schema in `runes/plan/src/tags/backlog.ts` with filter/sort/group/show attributes
    • ☑ Filter parser handles `field:value` syntax with AND/OR semantics
    • ☑ `aggregate()` pipeline hook queries entity registry for work and bug entities
    • +7 more criteria
  6. ebe0c64
    Content edited
  7. 3fc7634
    Created (pending, medium, complex, runes, plan, pipeline)