Delete the ADR-0066 lint installer per ADR-0298 #1320
Labels
No labels
P0
P1
P2
P3
bug
category/code-change
category/cross-repo
category/eval-run
category/investigation
category/no-test-target
category/owner-ruling
category/prose-artifact
category/recurring-chore
category/structure
category/umbrella
crc-refactor
create
delete
enhancement
filed-by/agent
filed-by/user
frozen
lint-rule
needs-info
needs-triage
next
plugin/cc-architect
plugin/os
plugin/os-adr
plugin/os-aidd-lint
plugin/os-backlog
plugin/os-context
plugin/os-doc-hygiene
plugin/os-sdlc
plugin/os-vault
project/cc-os
ready-for-agent
ready-for-human
recurring
review
rule-proposal
update
waiting
wayfinder:grilling
wayfinder:map
wayfinder:map
wayfinder:research
wayfinder:task
wayfinder:task
wontfix
worklist/deviations
worklist/lint-rule
worklist/new-implement-build
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jared/cc-os#1320
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
ADR-0298 (commit
09da348a) supersedes ADR-0066. os-sdlc now layers its rubocop config at run time and installs nothing into target repos. The ADR-0066 installer is still in the code.Reproduce
n/a: dead code after a decision. Run
grep -rn "Lint::SetupCommand" plugins/os-sdlc/lib.Approach
Delete the installer, its tests, and its onboarding wiring.
Files to delete: plugins/os-sdlc/lib/os_sdlc/lint/setup.rb, lint/setup/target_ruby_version.rb, lint/setup_command.rb, lint/rubocop_delta_header.rb, lint/rubocop_delta_header/inherit_from.rb, lint/rubocop_delta_header/inherit_mode.rb, and plugins/os-sdlc/tests/support/lint_setup_scenario.rb.
Remove the call to
OsSdlc::Lint::SetupCommandin lib/os_sdlc/boot/onboarding.rb:41.Also delete (only lint/setup.rb uses them): lib/os_sdlc/lint/rubocop_delta_classification.rb, lint/rubocop_delta_classification/cop_classification.rb, lint/rubocop_delta_classification/delta_cop_check.rb, lint/rubocop_delta_classification/stock_cop_defaults.rb, and plugins/os-sdlc/templates/rubocop-base.yml (read only by
Lint::Setup::TEMPLATE_PATH).The
lint-initcommand in boot/onboarding.rb is lines 39-42 (desc "lint-init ..."anddef lint_init). Delete the whole command, and change the line-18 message "expected lint-init or project-config" to name only project-config.skills/fix-lints/references/lint-exemption-ladder.md lines 34-36 describe
bin/os-sdlc lint-initand.rubocop-sdlc.yml. Remove that description.Leave tests/fixtures/crc_shares/** and eval/ticket-takedown/** as they are. They are frozen records that name the old files.
Required work:
RubocopDeltaHeaderinplugins/os-sdlc/lib/**/*.rbLint::SetupCommandinplugins/os-sdlc/lib/os_sdlc/boot/*.rbRubocopDeltaClassificationinplugins/os-sdlc/lib/**/*.rblint-initinplugins/os-sdlc/lib/os_sdlc/boot/onboarding.rblint-initinplugins/os-sdlc/skills/fix-lints/references/lint-exemption-ladder.mdlint-initentries in docs/implementation-status/os-sdlc.md and docs/implementation-status.md to say ADR-0298 deleted it — check: absentADR-0066 (lint-init)in docs/implementation-status/os-sdlc.mdAcceptance criteria
bin/os-sdlc lint-init <dir>runs, then it fails as an unknown subcommand and writes no file into the directory.Lint::Setup,RubocopDeltaHeader, orRubocopDeltaClassification, then no match exists.Retired tests
plugins/os-sdlc/tests/lint/setup_classification_test.rb
plugins/os-sdlc/tests/lint/setup_generated_base_test.rb
plugins/os-sdlc/tests/lint/setup_delta_merge_test.rb
plugins/os-sdlc/tests/lint/setup_delta_header_test.rb
plugins/os-sdlc/tests/lint/rubocop_delta_header_test.rb
plugins/os-sdlc/tests/controller/project/cli_lint_init_seam_test.rb
plugins/os-sdlc/tests/adapter/yaml_readers_test.rb#test_delta_report_failure_names_the_file
Owner sketch
Deletion. No object takes over.
OsSdlc::Boot::Onboardingkeepsproject-configas its only subcommand. Run-time layering already exists inOsSdlc::Lint::WorklistRubocopConfig#write(lib/os_sdlc/lint/worklist_rubocop_config.rb); #1319 routes every rubocop call through it.Deleted constants:
OsSdlc::Lint::Setup,Lint::Setup::TargetRubyVersion,Lint::SetupCommand,Lint::RubocopDeltaHeader(andInheritFrom,InheritMode),Lint::RubocopDeltaClassification(andCopClassification,DeltaCopCheck,StockCopDefaults).Origin
VERDICT: CREATE
Work started on branch ticket-1320 (os-sdlc implement, AFK run approved 2026-10-25).
Resolution
Done: Deleted the ADR-0066 lint installer: lint-init subcommand, Lint::Setup, Lint::SetupCommand, RubocopDeltaHeader, RubocopDeltaClassification, YamlMappingKey, YamlSequenceKey, templates/rubocop-base.yml, 6 retired tests and their support file. Exemption ladder and implementation-status docs now state the ADR-0298 run-time layering.
Evidence: main
e2731626. os-sdlc suite 2545 runs, 0 failures, 0 errors. rubocop: no offenses on changed files. All 3 ACs and required-work checks 1-7 pass. Hand-finished after pipeline escalation 72 (deletion ticket, no red round); one design audit, no must-fix findings.Follow-ups: none: external gems n8n-api#8 and caldotcom-api#5 already filed; stale lint-init mentions in docs/plans/os-sdlc-prune-set.md and plugins/os-sdlc/docs/plan-first-real-run.md are historical plans, dropped.