Wayfinder map: os-backlog issue lifecycle & templates #239

Closed
opened 2026-08-03 14:42:18 +00:00 by jared · 1 comment
Owner

Destination

A decided design for the full os-backlog lifecycle — capture → refine → check-out → work → close — including issue templates (adopted from os-sdlc's spec-and-ticket layer) and how wayfinder-style map/child/assembly decomposition plugs in. Done when nothing is left to decide before implementing the changes.

Notes

Planning only: this map produces decisions, not plugin edits. Consult: plugins/os-sdlc/reference/spec-and-ticket-layer.md, plugins/os-backlog/skills/, docs/agents/issue-tracker.md, ADR-0042. Decided at charting: os-sdlc's spec/ticket templates are the starting authority (adopt/promote, not fresh design). Related open issue: #186 (deterministic ticket-filing CLI surface) — implementation dependency, not a decision here. The eventual autonomous loop's pane/worktree orchestration layer is herdr-cli (~/dev/ruby-gems/herdr-cli/).

Default skills for tickets: /grilling, /domain-modeling.

Decisions so far

  • Inventory backlog operations we may be overlooking — nine candidate operations os-backlog lacks (triage sweep, stale grooming, duplicate detection, dependency audit, size metrics, label hygiene, re-estimation, map rollup, PR intake); full detail in docs/research/backlog-operations-inventory.md on branch research/backlog-operations-inventory.

  • Define issue tiers: capture vs ticket vs map — three structural tiers, never asserted by labels; captures may rest indefinitely (refine only at intent-to-work); full template required only for handoff (ready-for-agent falsifiability test); maps triggered by refinement failure and stay HITL; no partial execution of mixed tickets — decision children with weighted recommendations, recommender-blind ≥85% sweep, all decisions close before assembly.

  • Choose the canonical home for shared issue templates — templates promoted to plugins/os-backlog/references/templates/ (spec/ticket/capture), os-sdlc links rather than inlines; capture tier is a minimal title + ## Context template, refine adds the rest.

  • Design the refine step: upgrading a capture to workable — agent end-to-end refine (enhanced triage skill) at pick-up or standalone; fills full template, adr-find, links, decision children + blind sweep; self-applies readiness labels, falsified downstream; may close duplicate/done captures with evidence.

  • Design the check-out process — claim = assignee + start comment (universal); staleness + falsifiability checkpoint before work on ready-for-agent pickups (bounce to refine on any clarifying question); fixed context-load: ticket + spec + linked ADRs + decision-children resolutions.

  • Design the close process and resolution comments — three-part resolution comment (done / evidence links / out-of-scope-or-captured) mandatory on agent closes; merge approval subsumes the review label for pipeline-worked tickets; recurring occurrences use the same comment shape without closing.

  • How wayfinder decomposition plugs into os-backlog — map spawn is flag + human charts (refine bounces, never auto-charts); wayfinder's labels/Map:/Blocked by conventions adopted as-is; assembly ticket created at charting and agent-maintained; wayfinder:<type> supersedes readiness labels, map children skipped in readiness sweeps.

  • Define the weighted-decision block format and threshold sweep — fenced YAML block (recommendation/confidence/reversal_cost/reasoning) below the prose memo; threshold hardcoded in a tested Ruby sweep CLI the recommender never loads; sweep auto-closes passers with the three-part resolution comment and routes failures to ready-for-human.

  • Should template/section compliance be linted? — yes: deterministic validator in os-backlog's Ruby CLI (tier computed, sections checked against canonical templates), run at refine-exit (gates self-applied ready-for-agent) and rerun at handoff pickup; never at capture.

  • Assemble the os-backlog lifecycle design — assembled into docs/os-backlog-lifecycle.md + ADR-0092..0096 on branch design/os-backlog-lifecycle; implementation work items enumerated; route complete.

Not yet specified

Out of scope

  • Executing the plugin changes themselves (planning-only map).
  • os-sdlc pipeline changes beyond referencing shared templates.
  • Client-channel intake (external request → autonomously scoped, worked on a worktree, presented for review) — beyond this map's destination; a future map of its own.
## Destination A decided design for the full os-backlog lifecycle — capture → refine → check-out → work → close — including issue templates (adopted from os-sdlc's spec-and-ticket layer) and how wayfinder-style map/child/assembly decomposition plugs in. Done when nothing is left to decide before implementing the changes. ## Notes Planning only: this map produces decisions, not plugin edits. Consult: plugins/os-sdlc/reference/spec-and-ticket-layer.md, plugins/os-backlog/skills/, docs/agents/issue-tracker.md, ADR-0042. Decided at charting: os-sdlc's spec/ticket templates are the starting authority (adopt/promote, not fresh design). Related open issue: #186 (deterministic ticket-filing CLI surface) — implementation dependency, not a decision here. The eventual autonomous loop's pane/worktree orchestration layer is herdr-cli (~/dev/ruby-gems/herdr-cli/). Default skills for tickets: /grilling, /domain-modeling. ## Decisions so far - [Inventory backlog operations we may be overlooking](https://forgejo.swansoncloud.com/jared/cc-os/issues/245) — nine candidate operations os-backlog lacks (triage sweep, stale grooming, duplicate detection, dependency audit, size metrics, label hygiene, re-estimation, map rollup, PR intake); full detail in docs/research/backlog-operations-inventory.md on branch research/backlog-operations-inventory. - [Define issue tiers: capture vs ticket vs map](https://forgejo.swansoncloud.com/jared/cc-os/issues/240) — three structural tiers, never asserted by labels; captures may rest indefinitely (refine only at intent-to-work); full template required only for handoff (ready-for-agent falsifiability test); maps triggered by refinement failure and stay HITL; no partial execution of mixed tickets — decision children with weighted recommendations, recommender-blind ≥85% sweep, all decisions close before assembly. - [Choose the canonical home for shared issue templates](https://forgejo.swansoncloud.com/jared/cc-os/issues/241) — templates promoted to `plugins/os-backlog/references/templates/` (spec/ticket/capture), os-sdlc links rather than inlines; capture tier is a minimal title + `## Context` template, refine adds the rest. - [Design the refine step: upgrading a capture to workable](https://forgejo.swansoncloud.com/jared/cc-os/issues/242) — agent end-to-end refine (enhanced triage skill) at pick-up or standalone; fills full template, adr-find, links, decision children + blind sweep; self-applies readiness labels, falsified downstream; may close duplicate/done captures with evidence. - [Design the check-out process](https://forgejo.swansoncloud.com/jared/cc-os/issues/243) — claim = assignee + start comment (universal); staleness + falsifiability checkpoint before work on ready-for-agent pickups (bounce to refine on any clarifying question); fixed context-load: ticket + spec + linked ADRs + decision-children resolutions. - [Design the close process and resolution comments](https://forgejo.swansoncloud.com/jared/cc-os/issues/244) — three-part resolution comment (done / evidence links / out-of-scope-or-captured) mandatory on agent closes; merge approval subsumes the review label for pipeline-worked tickets; recurring occurrences use the same comment shape without closing. - [How wayfinder decomposition plugs into os-backlog](https://forgejo.swansoncloud.com/jared/cc-os/issues/246) — map spawn is flag + human charts (refine bounces, never auto-charts); wayfinder's labels/`Map:`/`Blocked by` conventions adopted as-is; assembly ticket created at charting and agent-maintained; `wayfinder:<type>` supersedes readiness labels, map children skipped in readiness sweeps. - [Define the weighted-decision block format and threshold sweep](https://forgejo.swansoncloud.com/jared/cc-os/issues/248) — fenced YAML block (recommendation/confidence/reversal_cost/reasoning) below the prose memo; threshold hardcoded in a tested Ruby sweep CLI the recommender never loads; sweep auto-closes passers with the three-part resolution comment and routes failures to `ready-for-human`. - [Should template/section compliance be linted?](https://forgejo.swansoncloud.com/jared/cc-os/issues/249) — yes: deterministic validator in os-backlog's Ruby CLI (tier computed, sections checked against canonical templates), run at refine-exit (gates self-applied `ready-for-agent`) and rerun at handoff pickup; never at capture. - [Assemble the os-backlog lifecycle design](https://forgejo.swansoncloud.com/jared/cc-os/issues/247) — assembled into docs/os-backlog-lifecycle.md + ADR-0092..0096 on branch design/os-backlog-lifecycle; implementation work items enumerated; route complete. ## Not yet specified ## Out of scope - Executing the plugin changes themselves (planning-only map). - os-sdlc pipeline changes beyond referencing shared templates. - Client-channel intake (external request → autonomously scoped, worked on a worktree, presented for review) — beyond this map's destination; a future map of its own.
Author
Owner

All 10 child decisions (#240-249) closed; #247 assembled into docs/os-backlog-lifecycle.md + ADR-0092..0096 on branch design/os-backlog-lifecycle. Map's destination (a decided design) is reached; closing per its own done-criteria.

All 10 child decisions (#240-249) closed; #247 assembled into docs/os-backlog-lifecycle.md + ADR-0092..0096 on branch design/os-backlog-lifecycle. Map's destination (a decided design) is reached; closing per its own done-criteria.
jared closed this issue 2026-08-13 18:13:22 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jared/cc-os#239
No description provided.