Remove interactive-debugger remnants and stale rspec-puppet scaffolding - #69
Merged
Conversation
Follow-up to simp#52 (binding.pry removal), sweeping out the remaining hazards that could hang unattended runs: - debug::break() at the end of the puppetsync::batch plan (ran on every batch invocation) - debug::break() in record_stage_results' default case, replaced with a hard failure: unrecorded results would let failed targets pass later stages' ok-so-far filters, same reasoning as simp#64 - The nwops/debug module dependency in bolt-project.yaml (no callers remain) Also removes dist/puppetsync/spec/ (rspec-puppet scaffolding whose only spec tested puppetsync::parse_puppetfile, a function that no longer exists; the live test suite is the top-level spec/ run by CI). Verified: parser validation, bolt plan show, list_pipeline_stages dry run, the idempotency e2e (which exercises record_stage_results on every stage), rspec (154 examples), and a grep confirming no debug:: references remain. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
silug
marked this pull request as draft
July 30, 2026 16:13
CHANGELOG.md is frozen (see simp#71); the squash-merge PR title carries this change's history. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
silug
marked this pull request as ready for review
July 30, 2026 16:39
nick-markowski
approved these changes
Jul 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Housekeeping follow-up to #52: sweeps out the remaining interactive-debugger hazards and dead test scaffolding noted during the recent PRs.
Removed
debug::break()at the end ofpuppetsync::batch— ran unconditionally on every batch invocation, so any unattended batch run would hang at the finish line.debug::break()inpuppetsync::record_stage_results' default case — replaced with a hardfail()naming the stage and offending type. Same reasoning as thepipeline_stagefix in Fail fast on unrecordable stage results instead of binding.pry #64: silently unrecorded results would let failed targets pass later stages' ok-so-far filters. (The branch is nearly unreachable given the function'sVariantsignature, but if it's ever hit, hanging or continuing are both wrong answers.)nwops/debugmodule dependency frombolt-project.yaml— nodebug::callers remain (verified by grep).dist/puppetsync/spec/— rspec-puppet scaffolding whose only spec testedpuppetsync::parse_puppetfile, a function that no longer exists (noted in Add internal CI: task unit tests and Bolt plan smoke test #57). The living test suite is the top-levelspec/that CI runs.Verification
puppet parser validateon both edited files,bolt plan show puppetsync, thelist_pipeline_stagesdry run, the idempotency e2e script (which exercisesrecord_stage_resultson every stage), and rspec (154 examples, 0 failures) — all green.grep -r "debug::"acrossdist/,modules/, andbolt-project.yamlconfirms nothing references the removed module.With this merged, there are no interactive debugger entry points left anywhere in the run path — the last prerequisite noise before scheduled/unattended runs (#56) is gone.
🤖 Generated with Claude Code