Tighten operator-facing diagnostics - #31
Conversation
Closes #29 Co-Authored-By: Codex GPT-5 <noreply@openai.com>
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c3d6143c43
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
`do_make_permanent/2` writes `releases/start_erl.data` through
`set_permanent_files/5` before `write_releases/3` updates the release
record, and a throw from that write - or from the Windows service
update or the `ok = init:make_permanent/2` after it - is caught by
`handle_call/3` and returned as `{:error, reason}`. So a returned error
can arrive with the file that decides what an ordinary restart boots
already naming the target.
Saying Castle "did not make it permanent" therefore asserted the
absence of an effect that may have happened, and told an operator the
rollback still held when it may not - which is the part they act on.
Report the commit as possibly partial instead, name the file that may
already select the version, and direct them to `bin/castle releases`.
The test's refutation is the discriminator: the previous wording keeps
every other assertion in that case green.
Claude-Session: https://claude.ai/code/session_01RotroiBdbidiCRX3KqE3Dy
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
@codex review |
|
Codex Review: Didn't find any major issues. Swish! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Release-management behavior is unchanged. The restart-marker race changes only carry observed
:removed | :absentstate into diagnostic rendering.Validation
mix precommitIndependent review
Claude adversarial review ran for the configured five-round cap. All 20 findings were fixed; the three findings raised in the final round were fixed after the cap and verified locally, but were not sent through an unbounded sixth Claude round. The PR is being sent for Codex review as the post-push review gate.
Closes #29