Skip to content

[codex] security runtime followups#99

Merged
NathanFlurry merged 1 commit into
mainfrom
codex/security-runtime-followups
Jun 20, 2026
Merged

[codex] security runtime followups#99
NathanFlurry merged 1 commit into
mainfrom
codex/security-runtime-followups

Conversation

@NathanFlurry

Copy link
Copy Markdown
Member

What changed

Implements the secure-exec security-review followups for the runtime layer:

  • enforces WASM execution deadlines from the production poll paths, not only wait()
  • defaults JS CPU, JS heap, and WASM memory to bounded values
  • clears V8 sticky termination state before reused executions and after terminated runs
  • adds regression coverage for WASM poll timeout, sidecar command timeout, runtime defaults, and reused-session execution after termination

Why

The post-merge review found that several earlier protections were either default-off or not enforced on the sidecar production path. These gaps left CPU/memory runaways possible and could poison reused V8 isolates after termination.

Validation

  • pnpm --dir /home/nathan/secure-exec-followups/packages/core build
  • cargo test -p secure-exec-sidecar defaults_match_struct_default --test limits -- --exact --nocapture
  • cargo test -p secure-exec-v8-runtime embedded_runtime_session_consolidated_behaviors --test embedded_runtime_session -- --exact --nocapture
  • cargo test -p secure-exec-execution wasm_suite --test wasm -- --exact --nocapture
  • cargo test -p secure-exec-sidecar service::tests::aab_wasm_command_timeout_is_enforced_by_sidecar_poll_path --test service -- --exact --nocapture
  • cargo test -p secure-exec-execution javascript_v8_suite --test javascript_v8 -- --exact --nocapture

Notes

The TODO suggested one finding per PR. I grouped the three secure-exec runtime findings here because the tests and behavior overlap in the execution timeout/limit surface; split is possible if preferred.

@railway-app

railway-app Bot commented Jun 20, 2026

Copy link
Copy Markdown

🚅 Environment secure-exec-pr-99 in rivet-frontend has no services deployed.

@NathanFlurry NathanFlurry force-pushed the codex/security-runtime-followups branch 7 times, most recently from 342b83f to f408cfb Compare June 20, 2026 06:29
@NathanFlurry NathanFlurry force-pushed the codex/security-runtime-followups branch from f408cfb to 5c7b16c Compare June 20, 2026 06:36
@NathanFlurry NathanFlurry marked this pull request as ready for review June 20, 2026 07:19
@NathanFlurry NathanFlurry merged commit 90fe77a into main Jun 20, 2026
1 of 2 checks passed
@NathanFlurry NathanFlurry deleted the codex/security-runtime-followups branch June 20, 2026 07:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant