Skip to content

impl(fleet/project): adopt native GitHub sub-issues + blocked-by for epic children (16 epics) instead of text-derived links #1166

Open

Description

@dezren39

Finding

Dependency and parentage across the fleet are still mostly text-derived (issue bodies, backlog prose) - the orchestrator derives blockedBy hourly from text + classification (documented in #910 design Q&A), while GitHub offers native sub-issues and blocked-by relations that render in the UI, survive edits, and are API-clean for the collector to consume (see epic-rollups issue).

Proposal

Migration pass for the 16 pool epics: children become native sub-issues of their epic; known dependency pairs become native blocked-by. Orchestrator reconciliation prefers native relations, falling back to text derivation. Record per-epic completion on this issue; the lifecycle protocol doc gets the "new epics use native relations at filing" rule.

Acceptance

Acceptance criteria

  • All 16 pool epics have their children as native GitHub sub-issues (or a recorded exception per epic on this issue) — restating the body's Acceptance section as the criteria section.
  • Known dependency pairs across the 16 epics are recorded as native blocked-by relations.
  • One orchestrator run's blockedBy output is shown to match the native relations on a sampled chain, with text derivation kept only as fallback.
  • Per-epic completion is recorded on this issue, and the lifecycle protocol doc gains the "new epics use native relations at filing" rule.

Activity

  1. added
    kind/choreRoutine maintenance, housekeeping, dependency hygiene
    app/pm-stackpm-stack (Pad/Grist) in developing-today/code
    on Oct 27, 2026
  2. developing-today commented on Oct 27, 2026

    @developing-today
    Contributor
  3. added
    priority/normalOrdinary priority (the default)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    source/humanFiled directly by a human
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 28, 2026
  4. dezren39 commented on Oct 28, 2026

    @dezren39
    MemberAuthor

    Intake review

    • Related: design+impl: org-level GitHub Project as the conceptual-project layer — orchestrator-synced, dashboard-read #910 (design Q&A documenting the text-derived blockedBy derivation this replaces); the epic-rollups work named in the body; parent/dependency data is also consumed by the fleet orchestrator and the collector.
    • Still live: a merged-PR search found no PR explicitly resolving this issue (no native sub-issues migration has landed); the issue remains open with only kind/chore + app/pm-stack before this pass.
    • Notes: the body carries an ## Acceptance section; an ## Acceptance criteria section restating it has been appended (original body preserved verbatim above it).
    • Risks: 16 epics is a wide migration — partial adoption (some epics native, some text-derived) is worse than either alone unless the orchestrator's preference order (native first, text fallback) is verified on the sampled chain before the pass is declared done.
    • Suggested approach: script the migration per epic (children + blocked-by pairs from the current text derivation), record per-epic completion here as each lands, and finish with the protocol-doc rule so new epics are born native.
    • Labels normalized by fleet monitor: priority/normal, effort/l (16-epic migration + verification), source/human, status/needs-triage, meta/enriched.
  5. added
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    and removed on Nov 1, 2026
  6. 79 remaining items

  7. added
    queue/queuedHas a queued task in the Supabase agent queue
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 5, 2026
  8. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

    • Agent: fleet monitor
    • Session / ID: repo-fleet-monitor run 2026-11-05 12:12 CST
    • Found via: monitor reconciliation
    • Task: Claim-evaporation repair: this issue carried queue/claimed + work/assigned + status/in-progress, but a fresh queue read this run found NO live task for it in any non-terminal state, and the last activity was 2026-11-03T23:00:32Z. The claim evaporated with no terminal verb. Labels reset to the truth (queue/queued + status/needs-triage) and a fresh triage packet was enqueued as task 10712 — the item is queued, unclaimed.
    • Expectation: triage (s) by the next claiming lane; checkpoint stage at evaporation: none recorded.
    • Links: task 10712 (repo-health-code-pilot)
  9. 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 5, 2026
  10. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · triaged — CONFIRMED, substantially complete; remainder blocked on Project access

    Fresh verification (2026-11-05, this triage):

    Sole remainder — BLOCKED on access only Drew can grant:

    Verdict: issue #1166 stays OPEN as the tracker for the #1149/#1723 exceptions, exactly as task 4897 left it; everything actionable from the repo side is done. Task 10712 completes as triaged.

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/codeeffort/lLarge: multi-day or open-ended; expect staged check-inskind/choreRoutine maintenance, housekeeping, dependency hygienemeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)source/humanFiled directly by a humantask/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