Project.load sites outside runner/ after ADR-0169 #545

Open
opened 2026-09-09 15:10:37 +00:00 by jared · 0 comments
Owner

Context

Follow-up from #539 probe (2026-09-09). ADR-0169 restricts Project.load to open_implementation.rb (entry point, before any bound row exists). #539 enforces this rule for lib/os_sdlc/runner/ files via regression test. Five Project.load sites sit outside runner/ and need caller-chain probe to determine whether each is pre-implementation (explicit target: exemption) or can read the bound row.

Tasks

  • Probe autocorrect_prepass.rb:95 caller chain; determine whether implementation row exists; if yes, thread it in or pass implementation.project(root); if pre-implementation, keep as exemption with one-line comment citing ADR-0169
  • Probe lint_command_support.rb caller chain; same decision as autocorrect_prepass.rb
  • Probe lint_worklist_target.rb caller chain; same decision
  • Probe project_config_command.rb caller chain; same decision
  • Probe scope_policy.rb:15 (class method, bare call, no target keyword); note that #537 made this raise ArgumentError if reached without target; determine whether this is dead code or pre-implementation; if pre-implementation, keep as exemption with one-line comment citing ADR-0169 and note #537 context

Acceptance criteria

  • each of the five files is probed for caller chain and exemption determination recorded in JIRA/Forgejo or a follow-up ticket
  • any refactored Project.load call passes implementation.project(root) or keeps explicit exemption with citation

Blocking edges

Blocked by: #539

Origin

• Trigger: Agent-initiated from #539 probe findings (code-probe 2026-09-09)
• Improvised this session: none
• Chain: DESIGN ← ADR-0169 ← #534
• Root candidate: #534
• Where: plugins/os-sdlc/lib/os_sdlc/runner and related files
• Session: d233a2f7-977a-419d-99ea-011b6e1e66f8
• Transcript: (from session context)
• Judge: none (agent-filed discovery, skeptic pending)

## Context Follow-up from #539 probe (2026-09-09). ADR-0169 restricts Project.load to open_implementation.rb (entry point, before any bound row exists). #539 enforces this rule for lib/os_sdlc/runner/ files via regression test. Five Project.load sites sit outside runner/ and need caller-chain probe to determine whether each is pre-implementation (explicit target: exemption) or can read the bound row. ## Tasks - [ ] Probe autocorrect_prepass.rb:95 caller chain; determine whether implementation row exists; if yes, thread it in or pass implementation.project(root); if pre-implementation, keep as exemption with one-line comment citing ADR-0169 - [ ] Probe lint_command_support.rb caller chain; same decision as autocorrect_prepass.rb - [ ] Probe lint_worklist_target.rb caller chain; same decision - [ ] Probe project_config_command.rb caller chain; same decision - [ ] Probe scope_policy.rb:15 (class method, bare call, no target keyword); note that #537 made this raise ArgumentError if reached without target; determine whether this is dead code or pre-implementation; if pre-implementation, keep as exemption with one-line comment citing ADR-0169 and note #537 context ## Acceptance criteria - [ ] each of the five files is probed for caller chain and exemption determination recorded in JIRA/Forgejo or a follow-up ticket - [ ] any refactored Project.load call passes implementation.project(root) or keeps explicit exemption with citation ## Blocking edges Blocked by: #539 ## Origin • Trigger: Agent-initiated from #539 probe findings (code-probe 2026-09-09) • Improvised this session: none • Chain: DESIGN ← ADR-0169 ← #534 • Root candidate: #534 • Where: plugins/os-sdlc/lib/os_sdlc/runner and related files • Session: d233a2f7-977a-419d-99ea-011b6e1e66f8 • Transcript: (from session context) • Judge: none (agent-filed discovery, skeptic pending)
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#545
No description provided.