feat(gateway): add fail-closed OCI launcher seam #127

Merged
jwilger merged 1 commit from issue-117-embedded-youki-oci-launcher into main 2026-05-06 15:26:55 -07:00
Owner

Summary

  • Adds the gateway launcher decision seam with fail-closed default direct-binary OCI startup and explicit --bare / AR_GATEWAY_BARE=true opt-out warnings.
  • Wires auto-review gateway --bare through ar_gateway::StartupOptions and marks packaged container startup with AR_GATEWAY_EXTERNAL_ISOLATION=container.
  • Updates rollout docs/runbooks for temporary direct-binary bare opt-out while issue #118 supplies the embedded rootfs bundle.

Verification

  • nix develop -c cargo fmt --all -- --check
  • nix develop -c cargo nextest run -p ar-gateway external_container explicit_bare launcher startup_options run_from_env_wires
  • nix develop -c cargo test -p ar-cli gateway -- --nocapture
  • nix develop -c cargo test -p ar-cli flake_publishes_auto_review_as_the_only_operator_binary -- --nocapture
  • nix develop -c cargo clippy --workspace --all-targets -- -D warnings
  • nix develop -c cargo nextest run --workspace --no-tests=pass

Notes

  • This is a fail-closed launcher foundation for #117. The actual embedded OCI/rootfs launcher remains blocked on the rootfs bundle work tracked by #118; direct binary startup requires explicit bare opt-out until then.

Closes #117

## Summary - Adds the gateway launcher decision seam with fail-closed default direct-binary OCI startup and explicit `--bare` / `AR_GATEWAY_BARE=true` opt-out warnings. - Wires `auto-review gateway --bare` through `ar_gateway::StartupOptions` and marks packaged container startup with `AR_GATEWAY_EXTERNAL_ISOLATION=container`. - Updates rollout docs/runbooks for temporary direct-binary bare opt-out while issue #118 supplies the embedded rootfs bundle. ## Verification - `nix develop -c cargo fmt --all -- --check` - `nix develop -c cargo nextest run -p ar-gateway external_container explicit_bare launcher startup_options run_from_env_wires` - `nix develop -c cargo test -p ar-cli gateway -- --nocapture` - `nix develop -c cargo test -p ar-cli flake_publishes_auto_review_as_the_only_operator_binary -- --nocapture` - `nix develop -c cargo clippy --workspace --all-targets -- -D warnings` - `nix develop -c cargo nextest run --workspace --no-tests=pass` ## Notes - This is a fail-closed launcher foundation for #117. The actual embedded OCI/rootfs launcher remains blocked on the rootfs bundle work tracked by #118; direct binary startup requires explicit bare opt-out until then. Closes #117
feat(gateway): add fail-closed OCI launcher seam
All checks were successful
CI / Nix flake check (pull_request) Successful in 3m3s
CI / auto_review semantic review (pull_request) Successful in 1s
auto_review auto_review: no findings
Publish release / release-publish (pull_request) Has been skipped
e234add9bf
auto-review left a comment

This PR introduces a fail-closed OCI launcher seam with a default direct-binary startup and an explicit --bare opt-out. The changes appear well-structured and include updates to documentation and tests. Ensure that the implications of using the --bare option are clearly communicated to users.

Walkthrough

  • QUICKSTART.md: Updated to use auto-review gateway --bare, indicating a change in default behavior.
  • crates/ar-cli/README.md: Added a section on gateway isolation rollout, explaining the --bare option.
  • crates/ar-cli/src/cli.rs: Introduced GatewayArgs to handle the --bare option, and updated tests to cover this new behavior.
  • crates/ar-gateway/src/startup.rs: Added StartupOptions struct and updated run_from_env to accept these options, ensuring the gateway launcher decision is based on the provided options.
This PR introduces a fail-closed OCI launcher seam with a default direct-binary startup and an explicit `--bare` opt-out. The changes appear well-structured and include updates to documentation and tests. Ensure that the implications of using the `--bare` option are clearly communicated to users. ## Walkthrough - **QUICKSTART.md**: Updated to use `auto-review gateway --bare`, indicating a change in default behavior. - **crates/ar-cli/README.md**: Added a section on gateway isolation rollout, explaining the `--bare` option. - **crates/ar-cli/src/cli.rs**: Introduced `GatewayArgs` to handle the `--bare` option, and updated tests to cover this new behavior. - **crates/ar-gateway/src/startup.rs**: Added `StartupOptions` struct and updated `run_from_env` to accept these options, ensuring the gateway launcher decision is based on the provided options.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Slipstream/auto_review!127
No description provided.