Release devloop 0.9.3#9
Merged
Merged
Conversation
Context: The sibling-watch and restart-policy documentation clarifications need a versioned artifact release. Decision: Finalize the 0.9.3 changelog section and align the Cargo package and lockfile versions. Alternatives considered: Keeping the changes unreleased would leave installed devloop users without the updated reference documentation. Tradeoffs: This is a patch release that changes documentation and package metadata only; runtime behavior is unchanged. Architectural impact: No runtime boundaries, interfaces, or state flow change. The release pipeline continues to derive notes from CHANGELOG.md and verify the Cargo version against the tag.
Context: macOS CI repeatedly timed out waiting for the smoke fixture's HTTP server, while its suppressed child output hid the startup cause. Decision: Configure the fixture to restart the server after any exit and inherit its output into the devloop log. Alternatives considered: Increasing the readiness timeout would mask a failed child instead of exercising the supervisor recovery path. Tradeoffs: The fixture retries persistent startup failures until the smoke timeout, but its visible child output makes that condition diagnosable. Architectural impact: Production process behavior is unchanged. The CI fixture now validates the existing restart and output-observability boundaries under a transient startup failure.
Context: macOS CI repeatedly timed out waiting for the fixture-local HTTP server, blocking the 0.9.3 release despite passing unit and lint checks. Decision: Replace HTTP readiness with output-derived state readiness from a strict-mode helper process, and preserve the startup, workflow, watch, state-update, and shutdown assertions. Alternatives considered: Retrying the failing workflow and extending timeouts did not remove the external loopback dependency or make the smoke test deterministic. Tradeoffs: The smoke test no longer covers HTTP readiness end to end, but focused unit tests retain that coverage while the cross-platform smoke test exercises orchestration without a volatile socket boundary. Architectural impact: The fixture now demonstrates the documented process-output-to-state interface and state-key probe boundary. Production runtime interfaces remain unchanged.
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.
Release 0.9.3
Finalizes the patch release for the configuration and process-supervision documentation added in
c2afa66.root.restart = "never"default and theon_failurewrapper exit-status behavior.0.9.3and adds matching release notes.Runtime behavior is unchanged.
Validation:
cargo fmt --checkcargo testcargo clippy --all-targets --all-features -- -D warningscargo build --release./scripts/release-notes-from-changelog.sh 0.9.3 pasunboneleve/devloopgit diff --checkRoborev job 521: no findings.