Metrics/MethodLength offense in runner/tea_tracker.rb:80 #449

Closed
opened 2026-08-20 15:30:35 +00:00 by jared · 4 comments
Owner

Context

Pre-existing offense, 6 lines against a max of 5, last touched in commit c2b23aa. Unrelated to #439 but blocks a clean zero-offense run over lib/os_sdlc/runner.

What to do

Extract or shorten the method at tea_tracker.rb:80 and confirm rubocop lib/os_sdlc/runner reports 0 offenses.

## Context Pre-existing offense, 6 lines against a max of 5, last touched in commit c2b23aa. Unrelated to #439 but blocks a clean zero-offense run over lib/os_sdlc/runner. ## What to do Extract or shorten the method at tea_tracker.rb:80 and confirm `rubocop lib/os_sdlc/runner` reports 0 offenses.
Author
Owner

Work started via /os-sdlc:implement on branch ticket-449 (worktree .claude/worktrees/ticket-449).

Work started via /os-sdlc:implement on branch ticket-449 (worktree .claude/worktrees/ticket-449).
Author
Owner

Blocked: /os-sdlc:implement run on branch ticket-449 stopped at programmer-repair.

Failed step: diff-test gate on dispatch 9 (node programmer), plus two programmer-repair rounds that reproduced the same failure.

Gate details: DiffedTestPaths maps lib/os_sdlc/runner/tea_tracker.rb to tests/os_sdlc/runner/tea_tracker_test.rb. That file does not exist. The existing test is tests/runner/tea_tracker_test.rb (the lib namespace directory os_sdlc/ is not mirrored under tests/). The gate exits 1 with LoadError before any test runs, so no production change can pass it for this target.

The production change (extract of a body_from_payload method in tea_tracker.rb, plus new test tests/tea_tracker_body_fetch_test.rb) is left uncommitted in the worktree. Resume after the gate mapping is fixed.

Second observation: the two programmer-repair dispatches created no dispatch rows in pipeline.db; both agents reported against dispatch 9. Not yet root-caused.

Blocked: /os-sdlc:implement run on branch ticket-449 stopped at programmer-repair. Failed step: diff-test gate on dispatch 9 (node programmer), plus two programmer-repair rounds that reproduced the same failure. Gate details: DiffedTestPaths maps lib/os_sdlc/runner/tea_tracker.rb to tests/os_sdlc/runner/tea_tracker_test.rb. That file does not exist. The existing test is tests/runner/tea_tracker_test.rb (the lib namespace directory os_sdlc/ is not mirrored under tests/). The gate exits 1 with LoadError before any test runs, so no production change can pass it for this target. The production change (extract of a body_from_payload method in tea_tracker.rb, plus new test tests/tea_tracker_body_fetch_test.rb) is left uncommitted in the worktree. Resume after the gate mapping is fixed. Second observation: the two programmer-repair dispatches created no dispatch rows in pipeline.db; both agents reported against dispatch 9. Not yet root-caused.
Author
Owner

Blocked by #532 (diff-test gate path mapping). Worktree ticket-449 kept with the uncommitted change; resume with a fresh implementation-open once #532 lands.

Blocked by #532 (diff-test gate path mapping). Worktree ticket-449 kept with the uncommitted change; resume with a fresh implementation-open once #532 lands.
Author
Owner

Resolution

Done: Extracted body_from_payload out of BodyFetch#extract in plugins/os-sdlc/lib/os_sdlc/runner/tea_tracker.rb; the Metrics/MethodLength offense at the old line 80 is gone. Added tests/runner/tea_tracker_method_length_test.rb pinning the file at zero MethodLength offenses (red without the change, green with it).

Evidence: Commit 5c82935 merged to main via worktree finish; os-sdlc-runner gate 9 green on diff-test and lint; suite 1021 runs 0 failures. Note: rubocop lib/os_sdlc/runner still reports 6 pre-existing offenses of other cops (FeatureEnvy x2, ParameterListSignalsMissingObject x2, LineLength, AbcSize), out of this ticket's scope; the count went 7 to 6. Pipeline run stalled on #532 (fixed, 356f102) and on a test-file load-order defect fixed in a3b9b0a; the tail of the run was hand-finished.

Follow-ups: none

## Resolution **Done:** Extracted body_from_payload out of BodyFetch#extract in plugins/os-sdlc/lib/os_sdlc/runner/tea_tracker.rb; the Metrics/MethodLength offense at the old line 80 is gone. Added tests/runner/tea_tracker_method_length_test.rb pinning the file at zero MethodLength offenses (red without the change, green with it). **Evidence:** Commit 5c82935 merged to main via worktree finish; os-sdlc-runner gate 9 green on diff-test and lint; suite 1021 runs 0 failures. Note: rubocop lib/os_sdlc/runner still reports 6 pre-existing offenses of other cops (FeatureEnvy x2, ParameterListSignalsMissingObject x2, LineLength, AbcSize), out of this ticket's scope; the count went 7 to 6. Pipeline run stalled on #532 (fixed, 356f102) and on a test-file load-order defect fixed in a3b9b0a; the tail of the run was hand-finished. **Follow-ups:** none
jared closed this issue 2026-09-04 17:41:28 +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#449
No description provided.