Move the nested Crc filing and sweep errors to their own files #1259

Closed
opened 2026-10-23 17:06:49 +00:00 by jared · 1 comment
Owner

Problem

Crc::Filing::Failure is nested in crc/filing.rb:10 and Crc::Sweep::Files::ListingFailed is nested in crc/sweep/files.rb:9. Structure ruling S46-S47 moves the error to its own file so that the path spells the constant (lens A15) and the concept file holds one class.

Reproduce

n/a: structure-only move; no defect to reproduce.

Approach

Move the class body unchanged. Update each holder to the new constant. The existing suite, green, is the proof; add no test.

Required work:

  1. Define Crc::Filing::Failure in its own file — check: present class Failure < StandardError in plugins/os-sdlc/lib/os_sdlc/crc/filing/failure.rb
  2. Define Crc::Sweep::ListingFailed in its own file and update files.rb:48 and sweep/run.rb:24 — check: present class ListingFailed < StandardError in plugins/os-sdlc/lib/os_sdlc/crc/sweep/listing_failed.rb

Rejected: keep the nested class — the ruling is recorded and the error lineage design (S31) puts each error in its own file.

Acceptance criteria

  1. Given a filing that fails, when crc-file runs, then it reports the same failure as before.
  2. Given a git listing that fails, when crc-sweep runs, then it reports the same failure as before.

Origin

  • Trigger: CRC run 4, phase 1b step 4 (errors), bin/detector error-lineage --target os-sdlc
  • Improvised this session: none
  • Chain: nested error class ← run 3 ruled S46-S47 but wave 2 kept the concept file ← DESIGN (docs/crc/os-sdlc/wave0/structure-rulings.tsv S46-S47)
  • Root candidate: none found; searched Crc filing error, sweep error, nested error, own file
  • Where: plugins/os-sdlc/lib/os_sdlc/crc/filing.rb, plugins/os-sdlc/lib/os_sdlc/crc/sweep/files.rb
  • Ledger: docs/crc/os-sdlc/ledger.tsv
  • Rulings: docs/crc/os-sdlc/wave0/structure-rulings.tsv
  • Session: c1bedec6-7e01-45ab-b9db-22d63652c19f
  • Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os--claude-worktrees-crc-os-sdlc-run-4/c1bedec6-7e01-45ab-b9db-22d63652c19f.jsonl

VERDICT: CREATE

## Problem `Crc::Filing::Failure` is nested in `crc/filing.rb:10` and `Crc::Sweep::Files::ListingFailed` is nested in `crc/sweep/files.rb:9`. Structure ruling S46-S47 moves the error to its own file so that the path spells the constant (lens A15) and the concept file holds one class. ## Reproduce n/a: structure-only move; no defect to reproduce. ## Approach Move the class body unchanged. Update each holder to the new constant. The existing suite, green, is the proof; add no test. Required work: 1. Define `Crc::Filing::Failure` in its own file — check: present `class Failure < StandardError` in `plugins/os-sdlc/lib/os_sdlc/crc/filing/failure.rb` 2. Define `Crc::Sweep::ListingFailed` in its own file and update `files.rb:48` and `sweep/run.rb:24` — check: present `class ListingFailed < StandardError` in `plugins/os-sdlc/lib/os_sdlc/crc/sweep/listing_failed.rb` Rejected: keep the nested class — the ruling is recorded and the error lineage design (S31) puts each error in its own file. ## Acceptance criteria 1. Given a filing that fails, when crc-file runs, then it reports the same failure as before. 2. Given a git listing that fails, when crc-sweep runs, then it reports the same failure as before. ## Origin - Trigger: CRC run 4, phase 1b step 4 (errors), `bin/detector error-lineage --target os-sdlc` - Improvised this session: none - Chain: nested error class ← run 3 ruled S46-S47 but wave 2 kept the concept file ← DESIGN (docs/crc/os-sdlc/wave0/structure-rulings.tsv S46-S47) - Root candidate: none found; searched Crc filing error, sweep error, nested error, own file - Where: plugins/os-sdlc/lib/os_sdlc/crc/filing.rb, plugins/os-sdlc/lib/os_sdlc/crc/sweep/files.rb - Ledger: docs/crc/os-sdlc/ledger.tsv - Rulings: docs/crc/os-sdlc/wave0/structure-rulings.tsv - Session: c1bedec6-7e01-45ab-b9db-22d63652c19f - Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os--claude-worktrees-crc-os-sdlc-run-4/c1bedec6-7e01-45ab-b9db-22d63652c19f.jsonl VERDICT: CREATE
Author
Owner

Resolution

Done: Moved Crc::Filing::Failure and Crc::Sweep::ListingFailed to their own files (S46, S47, fast-batch-13).

Evidence: 29a0f9af, 846bc626; suite 2458 runs, 0 failures, 0 errors (82 s); eager load silent; fast-gate PASS, rubocop 0 new offenses; merged to main 6cb38456

Follow-ups: none; the error-suffix naming question goes to CRC run 4 wave 3

## Resolution **Done:** Moved Crc::Filing::Failure and Crc::Sweep::ListingFailed to their own files (S46, S47, fast-batch-13). **Evidence:** 29a0f9af, 846bc626; suite 2458 runs, 0 failures, 0 errors (82 s); eager load silent; fast-gate PASS, rubocop 0 new offenses; merged to main 6cb38456 **Follow-ups:** none; the error-suffix naming question goes to CRC run 4 wave 3
jared closed this issue 2026-10-23 17:20:07 +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#1259
No description provided.