Review the dispatch_refusing_bad_switches effect added by #860 #920
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#920
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
Ticket #860 added an effect that its acceptance criteria did not require.
Onboarding.startcallsdispatch_refusing_bad_switches. That method runs Thorstartwithconfig.merge(debug: true)and rescuesThor::ErrorintoLoudFailure(exit 3). No test covers a Thor error other than an unknown switch. The user asks why the effect exists, what purpose it serves, and whether it weakens or hardens the code.Reproduce
n/a: design review of existing code; read
Onboarding.startin plugins/os-sdlc/lib/os_sdlc/controller/project/onboarding.rb.Approach
Answer three questions: why was the effect created, what purpose does it serve, does it weaken or harden the code. Check the effect of
debug: trueon other Thor failures (missing arguments, bad option values). Then either replace it with a better solution, or add tests that confirm the current one.Required work: none beyond the acceptance criteria.
Acceptance criteria
dispatch_refusing_bad_switches.Onboarding.startruns, then a test pins the observed result and exit code.Origin
dispatch_refusing_bad_switches← DESIGN (plugins/os-sdlc/lib/os_sdlc/controller/project/onboarding.rb, commit5d0a1cd6).os-sdlc project-config --helptreats --help as a project name and writes .sdlc/project.yaml #860Related finding, recorded 2026-10-03 so that it is not lost. The unknown-switch error line reads
os-sdlc-Unknown switches "--bogus"(exit 3).LoudFailure#stderr_lineadds theos-sdlc-prefix, and the line does not name the command. A separate ticket for this got a ticket-skeptic verdict of DROP, because the line comes from the same code path that this ticket reviews. Include the wording of this line in the review. Jared called the current text "a really bad name".