Move dependency-window constants from Inspector::IssueShape into Inspector::ReferenceMatch #1043

Open
opened 2026-10-16 19:24:38 +00:00 by jared · 0 comments
Owner

Problem

Inspector::IssueShape builds ReferenceMatch, and ReferenceMatch reads two constants that IssueShape defines, so the two depend on each other.

Observed

Evidence: lib/backlog/inspector/issue_shape.rb:7-8 (DEPENDENCY_LANGUAGE, CROSS_REF_WINDOW), :48 (ReferenceMatch.new); lib/backlog/inspector/reference_match.rb:14, 32, 33 read them via IssueShape::; no other users. Ruling R43, follow-up 13.

Reproduce

n/a: dependency cycle found in a crc-refactor tuning run; no runtime command reproduces it.

Acceptance criteria

  1. Both constants defined in ReferenceMatch; ReferenceMatch no longer references IssueShape; inspector tests pass; lint clean.

Skeptic: VERDICT: CREATE — the dependency cycle is real; ruling R43.

Origin

  • Trigger: crc-refactor tuning run on plugins/os-backlog, branch crc-os-backlog-2026-10-16 (ledger docs/crc/os-backlog/ledger.tsv, rulings docs/crc/os-backlog/rulings.md).
  • Improvised this session: none
  • Chain: dependency cycle between Inspector::IssueShape and Inspector::ReferenceMatch in plugins/os-backlog ← ruling R43 (docs/crc/os-backlog/rulings.md) ← DESIGN
  • Root candidate: none beyond this ticket
  • Where: plugins/os-backlog/lib/backlog/inspector/issue_shape.rb
  • Session: a5e278ab-89aa-4ed6-adb4-b70820788f0c
  • Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os--claude-worktrees-crc-os-backlog-2026-10-16/a5e278ab-89aa-4ed6-adb4-b70820788f0c.jsonl
## Problem `Inspector::IssueShape` builds `ReferenceMatch`, and `ReferenceMatch` reads two constants that `IssueShape` defines, so the two depend on each other. ## Observed Evidence: lib/backlog/inspector/issue_shape.rb:7-8 (`DEPENDENCY_LANGUAGE`, `CROSS_REF_WINDOW`), :48 (`ReferenceMatch.new`); lib/backlog/inspector/reference_match.rb:14, 32, 33 read them via `IssueShape::`; no other users. Ruling R43, follow-up 13. ## Reproduce n/a: dependency cycle found in a crc-refactor tuning run; no runtime command reproduces it. ## Acceptance criteria 1. Both constants defined in ReferenceMatch; ReferenceMatch no longer references IssueShape; inspector tests pass; lint clean. Skeptic: VERDICT: CREATE — the dependency cycle is real; ruling R43. ## Origin - Trigger: crc-refactor tuning run on plugins/os-backlog, branch crc-os-backlog-2026-10-16 (ledger docs/crc/os-backlog/ledger.tsv, rulings docs/crc/os-backlog/rulings.md). - Improvised this session: none - Chain: dependency cycle between Inspector::IssueShape and Inspector::ReferenceMatch in plugins/os-backlog ← ruling R43 (docs/crc/os-backlog/rulings.md) ← DESIGN - Root candidate: none beyond this ticket - Where: plugins/os-backlog/lib/backlog/inspector/issue_shape.rb - Session: a5e278ab-89aa-4ed6-adb4-b70820788f0c - Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os--claude-worktrees-crc-os-backlog-2026-10-16/a5e278ab-89aa-4ed6-adb4-b70820788f0c.jsonl
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#1043
No description provided.