Skip to content

feat(aggregator): add a responsive per-epic dependency graph #3973

Closed

Description

@dezren39

Part of epic #1184; implements the graph view requested by design issue #1257. Design note: doc/2026-11-01T21-05-00Z_design_aggregator_dependency_graph_1257.md (proposed by the linked design PR).

Goal

Expose the existing native Project-pool hierarchy and dependency relations as a navigable graph for one selected epic at a time. Keep dependency edges distinct from parent/sub-issue edges; do not infer relations from prose blockedBy strings.

Acceptance criteria

  • An epic selector lists eligible epics and each selection shows that epic's pool items and one-hop dependency references, with clear counts and an honest truncation notice when capped.
  • Desktop presents the graph with a ranked-work/summary area; at 390px the summary and a vertical, keyboard-readable dependency list remain usable without horizontal scrolling. Any secondary SVG may scroll horizontally.
  • Links identify the canonical GitHub issue/PR; graph edges are distinguishable from hierarchy edges, and text alternatives communicate node state without relying on color.
  • Empty/unavailable graph data is described as unavailable/not yet graphed rather than a fabricated empty success state.
  • Add focused rendering/layout tests for epic selection, edge distinction, truncation, mobile list fallback, and empty data.

Activity

  1. added
    kind/featureNew feature or capability request
    priority/normalOrdinary priority (the default)
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    app/pm-stackpm-stack (Pad/Grist) in developing-today/code
    source/agentCreated by an agent worker
    on Nov 1, 2026
  2. added
    queue/queuedHas a queued task in the Supabase agent queue
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 3, 2026
  3. developing-today commented on Nov 3, 2026

    @developing-today
    Contributor

    agent-note:v1
    state: triaged (coverage pass)
    Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as triage at priority 40 (priority/normal). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
    Found via: coverage pass 2026-11-03

  4. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 3, 2026
  5. 70 remaining items

  6. added
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    status/parkedDeliberately paused with a recorded resume condition
    and removed
    queue/claimedQueue worker lifecycle state
    on Nov 4, 2026
  7. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  8. added
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Nov 4, 2026
  9. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    event: done
    task: 8059
    lane: code-j
    worker: repo-worker-code
    execution_lane: direct
    issue: #3973
    pr: #5307
    result: PR #5307 squash-merged — merge commit 0ab6873; issue #3973 auto-closed.
    verification: all 9 Codex findings dispositioned with fix replies; Codex head review (2f67cac) reports no unresolved findings. CI: contract corpus PASS; aggregator suite 1591/1593 pass — the 2 failures are the pre-existing #1282 health-inbox tests, proven identical on clean main (run 41820663530, main 25f4f09, 2026-11-04T11:24Z) and unrelated to this PR's diff (epic-graph.ts, render.ts, epic-graph.test.ts only).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

app/pm-stackpm-stack (Pad/Grist) in developing-today/codekind/featureNew feature or capability requestmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)source/agentCreated by an agent workertask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions