Skip to content

[Bug][Priority II] Close remaining dev-up fail-closed availability races #1898

Description

@Chris0Jeky

Follow-up from the one-time Codex review triage on PR #1896. These are valid nonblocking source-launcher hardening gaps; #1896 remains mergeable because each is bounded availability, narrow race, or test-reliability risk rather than a demonstrated wrong-instance mutation path.

Acceptance criteria

  • Bash treats a verified zombie launcher root as exited so Stop does not wait, KILL, or retain state solely for an unreaped process whose ports are already released.
  • Stale operation-lock reclamation is atomically bound to the inspected owner/directory instance; a third launcher cannot acquire and then have its lock removed by the reclaimer.
  • Both launchers set child-only DOTNET_ENVIRONMENT=Development as well as ASPNETCORE_ENVIRONMENT=Development, so ambient Staging/Production cannot suppress the run-identity response.
  • PowerShell termination stays identity-bound through the actual process-tree signal; a root exit and PID reuse between validation and taskkill cannot target a replacement process.
  • Multi-listener launcher tests reserve distinct ports through bind, preventing ephemeral-port reuse from manufacturing EADDRINUSE failures.
  • Focused Ubuntu/Windows launcher regressions cover each corrected seam without weakening fail-closed state retention or no-signal behavior.

Source review comments

Refs #1875. This issue does not reopen #1895 or the packaged/manual #1876 gates.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority IIThe active direction's next tranche: wedge capabilities, significant defects, near-term hardening.bugSomething isn't workinghardeningReliability, safety, operability, and production-readiness improvements.testingTest coverage, harnesses, regression prevention, and verification pipeline work.

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions