os-backlog slice 2: tracker config key + os-status check #11

Closed
opened 2026-07-10 17:22:33 +00:00 by jared · 1 comment
Owner

Type: AFK · Triage: ready

Parent

PRD: issue #9 (os-backlog plugin). State pointer: Planka card https://planka.hyperthrive.io/cards/1816234194716592051

What to build

The tracker key in the existing per-project .cc-os/config, and a new os-status check that reads it. Value grammar: planka:<board> | forgejo:<owner>/<repo> | github:<owner>/<repo> | repo:<path>.

Check behavior: key present → ok/one-line note (configured projects cost nothing at session start); key absent in a git project → daily-snoozed warn pointing at the os-backlog routing/migration skill; outside git projects → silent. Registered in the existing os-status check registry, honoring the existing snooze/suppress markers and os-status invariants (always exit 0, state only in .cc-os/).

Acceptance criteria

  • Grammar parsed and validated; malformed values produce a clear one-line warn, never a crash
  • Present key → silent or one-line note; absent in git project → daily-snoozed nudge; non-git → silent
  • Snooze/suppress markers honored, exit code always 0
  • Covered in the existing model-free hook_test.py suite (env-var fixture paths, same pattern as sibling checks)

Blocked by

None - can start immediately

**Type:** AFK · **Triage:** ready ## Parent PRD: issue #9 (os-backlog plugin). State pointer: Planka card https://planka.hyperthrive.io/cards/1816234194716592051 ## What to build The `tracker` key in the existing per-project `.cc-os/config`, and a new os-status check that reads it. Value grammar: `planka:<board>` | `forgejo:<owner>/<repo>` | `github:<owner>/<repo>` | `repo:<path>`. Check behavior: key present → ok/one-line note (configured projects cost nothing at session start); key absent in a git project → daily-snoozed warn pointing at the os-backlog routing/migration skill; outside git projects → silent. Registered in the existing os-status check registry, honoring the existing snooze/suppress markers and os-status invariants (always exit 0, state only in `.cc-os/`). ## Acceptance criteria - [ ] Grammar parsed and validated; malformed values produce a clear one-line warn, never a crash - [ ] Present key → silent or one-line note; absent in git project → daily-snoozed nudge; non-git → silent - [ ] Snooze/suppress markers honored, exit code always 0 - [ ] Covered in the existing model-free `hook_test.py` suite (env-var fixture paths, same pattern as sibling checks) ## Blocked by None - can start immediately
jared added the
ready-for-agent
label 2026-07-10 17:22:33 +00:00
Author
Owner

Implemented in commit 3c5a17c (local main, tests green). Closing.

Implemented in commit 3c5a17c (local main, tests green). Closing.
jared closed this issue 2026-07-10 17:46:31 +00:00
Sign in to join this conversation.
No description provided.