fix: keep docker stub publishing silent during install [sc-636] - #25
Conversation
Command::call() only disables interactivity when --no-interaction is passed, so delegating to docker:publish would have prompted the user to overwrite existing Docker files on a re-install. The install flow has always skipped existing files silently — force non-interactive mode and cover it with a regression test. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughDocker stub publishing now forces non-interactive execution. Existing files remain unchanged without prompts. The no-SSL copy failure warning includes a hint to publish Docker stubs first. A feature test verifies the delegated command options. ChangesDocker stub publishing
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: 🟡 Moderate · up to Docker stub publishing is intended to remain silent during reinstalls, but the new regression test appears to use a differently spelled interaction option than the implementation. Resolve the test/implementation mismatch before merging so the non-interactive behavior is reliably covered. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Follow-up to #24 — this commit was pushed to the branch after that PR merged, so it never landed on
main.The bug
Command::call()builds anArrayInput, which defaults to interactive, and Illuminate only flips it viacreateInputFromArguments()when a--no-interactionkey is present. Symfony'sCommand::run()does not parse that flag itself.So after #24,
DockerEnvironment::publishStubs()delegating todocker:publishwould have prompteddocker-compose.yml already exists. Overwrite it?on a re-install in a real terminal. The install flow has always skipped existing files silently.The test suite could not catch this:
TestCase::artisan()always callssetInteractive(false), socontext()propagated--no-interactiondown and the prompt never fired under test.The fix
Pass
'--no-interaction' => trueexplicitly frompublishStubs(), plus a regression test asserting the flag is set. Also restores the full no-SSL warn message that was truncated in #24.203 tests / 400 assertions passing.
Story: https://app.shortcut.com/saucebase/story/636
🤖 Generated with Claude Code
Summary by CodeRabbit