os-backlog: global project→backlog index + cross-project issue filing convention #27
Labels
No Label
P0
P1
P2
P3
afk-ready
hitl
next
ready-for-agent
review
semi
waiting
wayfinder:grilling
wayfinder:map
wayfinder:research
wayfinder:task
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: jared/cc-os#27
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What to build
A cross-project filing capability so that when work in project A surfaces a change that belongs to project B, project A files an issue with B instead of making the change (each project owns its own work; an outside session doesn't know B's evolved rules, conventions, ADRs, and best practices — filing preserves B's ownership). First live example: jared/cc-os#26, filed from the servers repo.
Three parts:
Global project index. A machine-readable registry mapping project → repo path, tracker key (
planka:/forgejo:/github:/repo:), and git remote. Preferred approach: derive rather than hand-maintain —/os-backlog:routealready writes each project's.cc-os/configtracker key; extend it (andconfig-write) to also upsert the project's row in one global index file (location TBD in the ADR — e.g.~/.cc-os/projects). Add anos-backlog projectsCLI subcommand to query it (JSON out, fail-soft like the rest of the CLI).Filing metadata. Cross-project issues must carry a Discoverer block: filing project (repo/path), date, and the Claude Code session id of the discovering session, so the responsible project can audit the originating session for context if the issue is unclear. Define the issue-body template (and how the session id is obtained — hook-provided env, transcript path, or asked of the user if unavailable; fail-soft, never fabricate).
WHEN/HOW instructions. The policy and mechanics need to reach live sessions: extend the os-backlog SessionStart injection note (slice 7) with a CROSS-PROJECT rule — WHEN a needed change belongs to another project THEN query the index, file with that project's tracker using the Discoverer template, and do NOT edit the other project's code — plus a short skill or reference doc with the exact CLI/tea/gh mechanics. Routing within the target project still follows its own boundary rule (specs → git issues; if the target is planka-only, add a card).
Record the convention as an ADR (file-don't-fix policy, index location/format, metadata contract) via /os-adr:create.
Acceptance criteria
os-backlog projectsBlocked by
None - can start immediately
Discoverer: jared/cc-os session 5b0af6f9-ee11-4f48-b497-f971a7c7c298, 2026-07-13 (motivated by the servers-repo cross-filing of #26).
Codex review adopted (pre-implementation, 2026-07-13):
Implemented in
f9a81a1, ADR-0034 Accepted (human gate 2026-07-13). Global index live at ~/.cc-os/projects.json (cc-os row present from live smoke), 'os-backlog projects' subcommand, Discoverer template + mechanics in skills/route/references/cross-project-filing.md, CROSS-PROJECT rule in the SessionStart note. Suite 112 runs / 0 failures. All acceptance criteria met.