Fix CliProjectConfigTest failures: test-command verification discards commands in bare tmpdir fixtures #208
Labels
No labels
P0
P1
P2
P3
bug
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
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#208
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
2 failures in plugins/os-sdlc/tests/cli_test.rb (CliProjectConfigTest), pre-existing on main:
Root cause
Commit
285ab82("Harden os-sdlc implement pipeline CLI") added execute-then-persist verification for--test-command:verified_test_command_options/test_command_clean_exit?in bin/os-sdlc (~lines 633-647) run the candidate command via Open3.capture3, and on non-zero exit silently discard it, falling back toProject::DEFAULT_ATTRS[:test_command]= "rake test".The tests (
run_project_config,create_then_update_test_command, cli_test.rb:945-997) run the CLI in a bare tmpdir containing onlygit init— no Gemfile, no Rakefile — sobundle exec rspecandrake test:unitgenuinely fail there and get discarded. The implementation is behaving as designed (documented at bin/os-sdlc:65-66, ADR-0074/ADR-0088); the fixtures were never updated in the same commit.Proposed fix (test-side)
Make the fixtures pass verification. Either:
--test-command "true"(assert it persists as "true"), orDo NOT relax the verification in bin/os-sdlc — that would reverse the ADR-0074/0088 hardening decision; if that path is taken instead, a superseding ADR is required.
Verify
cd plugins/os-sdlc && ruby -Itests -Ilib tests/cli_test.rb— the 2 CliProjectConfigTest failures go green; 3 CliAcLint* failures are a separate ticket.Fixed in worktree branch worktree-fix-cli-test-regressions (commit
33a0175): fixtures usetrueunder execute-then-persist verification; cli_test.rb added to LIVE_TEST_FILES. Full suite: 245 runs, only the 3 ticket-#209 failures remain (now also fixed). Awaiting merge.Merged to main (merge
c15cca4, commit33a0175). Suite green: 432 runs, 0 failures. Ready for sign-off.Confirmed fixed on main: cli_test.rb:914-936 (CliProjectConfigTest) uses --test-command "true" per ADR-0074/0088. Full suite green (830 runs, 0 failures in clean run). Closing.