Repository navigation
fix(cli): report incomplete stops and bound port inspection - #3847
Conversation
Request changesThis bounds the port-listing subprocesses at five seconds and makes a partial stop report every killed / refused / failed process instead of claiming success — both good fixes, and the new platform-shaped test fixtures are the strongest part of the PR. Two behaviour questions should be settled before merge.
Worth noting too: the hang this closes is only in the listing half. The kill itself still runs without a timeout, so a wedged Real-world evidenceNo evidence bundle was produced for this PR, and the description's test plan lists unit tests only — there's no captured 🔍 Technical details🟡 ImportantEmpty port now exits nonzero (
A related edge falls out of the same
Both fallback blocks print the failure and fall through to The same two added lines are needed in the 🟢 Minor
If you take this, widen the handler at Second Kill section in the CLI reference wasn't updated ( Singular wording on a multi-pid failure ( Strengths
|
|
Addressed the stop-path feedback. Empty ports remain successful no-ops, while refusals, partial stops, and termination timeouts exit nonzero; both Lemonade fallback paths propagate failure. The helper and existing CLI exit-contract suites pass together: 64 tests. A real owned-listener smoke test also confirmed successful termination. The CI-reported empty-port regression is corrected in e78a40f. |
|
Verdict: Approve with suggestion The 🟡 CLI evidence missing from PR description. The changed surface is Everything else checks out:
🔍 Technical details
|
|
Here is real
🔍 Technical details
|
|
Merged 🔍 Technical detailsMerge commit only — no hand resolution. Net vs main: Tests on the merge result: |
Port discovery and forceful termination are bounded, and partial stops report every killed, refused, and failed listener. Both CLI stop paths return failure when the stop fails; an already-free port remains a successful no-op.
Fixes #3565, fixes #3564, fixes #3570.
Test plan: