Commit Graph

491 Commits

Author SHA1 Message Date
Dotta 311f71954e Keep warm sandbox performance spans in the current run trace
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-10 00:00:48 -05:00
Dotta d619dd85b8 fix(sandbox): resume leases with their effective provider configuration
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 23:14:53 -05:00
Dotta 3f7cbb4f97 fix: fence finished run process identity against late native callbacks 2026-09-09 22:18:32 -05:00
Dotta a7108016b3 perf: overlap small repository checkpoint uploads within bounded lanes 2026-09-09 18:06:38 -05:00
Dotta f98fb8059e Fence sandbox cleanup across warm run ownership transfers
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 16:18:20 -05:00
Dotta 4cd6a81e4a Measure sandbox lifecycle and align qualification provider packs
Add opt-in bounded OpenTelemetry diagnostics across host preparation, scoped files, repository checkpoints, transport phases, and native execution. Preserve context parentage and stream cleanup, and retain diagnostic batches without per-file log writes.

Build qualification packs through the canonical frozen provider stage so lockfile, interpreter, and compiled bytes match the sandbox image. Keep ignored untracked repository files out of durable checkpoints.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 15:31:15 -05:00
Dotta 310d5e3627 fix: build provider packs from an immutable dependency lock 2026-09-09 14:40:27 -05:00
Dotta 8bbf888a71 fix: pin qualified runner dependencies for reproducible builds 2026-09-09 14:33:34 -05:00
Dotta 6fb569c0d0 fix: align legacy Codex ACP sandbox network mode
Match the native runner's approved external-sandbox mode so Codex tools can reach the loopback API and Git credential bridge. Preserve local and restricted permission modes; verify the serialized launch environment.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 14:08:28 -05:00
Dotta daf1d64b20 fix: recover transient sandbox file transfer failures safely
Retry bounded read-only transport failures and resolve uncertain bulk writes through atomic signed receipts without replaying claimed batches.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 13:17:11 -05:00
Dotta ffb01ff3d5 fix: tolerate transient sandbox Git credential transport delays
Honor the native duplex opt-in and align repeat-safe credential acquisition with the file bridge response budget, without retrying Git commands.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 12:19:39 -05:00
Dotta d3257a3340 fix: reuse verified provider packs across equivalent builds
Normalize the provider-pack layout independently of runnerd build order and compare verified content rather than revision provenance, avoiding unnecessary multi-gigabyte uploads.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 11:29:58 -05:00
Dotta 1e608d78fc fix: batch sandbox file transfers and reconcile interrupted hydration
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 10:38:21 -05:00
Dotta e511a1ce93 fix: retry interrupted work-folder uploads with verified fresh streams
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 08:40:44 -05:00
Dotta 34d274f6d3 fix: retain verified ACPX commands across recovered turns
Keep runtime-owned command snapshots reusable until cleanup and observe optional prompt-start rejection without hiding it from callers.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 06:37:56 -05:00
Dotta cb381c6a5f Fix sandbox command-session and lazy ACP model recovery 2026-09-09 04:44:59 -05:00
Dotta 17ddb89618 Preserve reusable sandboxes through failed resume and stop 2026-09-09 02:31:27 -05:00
Dotta de60e9f6c2 fix: claim sandbox ownership before resume and preserve legacy launch profiles
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 01:44:00 -05:00
Dotta 6382f4e8fa fix: wait for task sandbox release before follow-up acquisition
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 01:35:25 -05:00
Dotta b820a6d884 fix: stage the resolved server runner artifact for sandbox upgrades
Use the same controller-owned runner file for identity and remote staging, including packaged server vendor layouts.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 00:50:36 -05:00
Dotta 1ca638736a test: verify explicit native credential process rotations
Record controller-owned rotation events and require an exact run transition before accepting a new process fingerprint. Preserve stable sandbox, runner and provider-session checks.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 00:23:55 -05:00
Dotta a24d331c41 test: require explicit final checkpoints in warm qualification
Expose the existing finalization timestamp through the scoped sync API and reject periodic-only or out-of-run saves.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 00:06:05 -05:00
Dotta 1d6ee1a642 test: read full run context and compare exact warm file bytes
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 23:59:55 -05:00
Dotta 246a8edbdd test: verify scoped files in warm runner qualification
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 23:39:17 -05:00
Dotta 761ac12cc0 fix: preserve native warm attachment across runner upgrades
Accept bounded Codex deprecation notices after a settled turn and require that capability before reusing a sandbox image runner. Stage replacement artifacts atomically so existing launchers and image symlink targets survive interrupted uploads.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 23:20:23 -05:00
Dotta 73c07ae140 fix(runner): retain OpenCode completion authority through interruption
Bind validated OpenCode result notifications to the active provider process and turn, matching semantic tool responses. Reproduce the live shutdown failure and verify exact durable authority after interruption.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 22:18:42 -05:00
Dotta 777d891c25 test: stabilize startup checks and document shutdown drain requirements
Mock the native shutdown boundary in the startup unit test and wait for the persisted process identity before allowing the runtime readiness fixture to listen.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 22:02:28 -05:00
Dotta c7b68b52b0 fix: preserve sandbox credentials and Git state across restarts
Park idle native sandbox sessions before app shutdown, adopt retained legacy workspaces without restaging Git, and carry explicitly bound GitHub access through both OpenCode launch filters.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 21:49:19 -05:00
Dotta 816045d643 Keep finalization failures stable and recover valid older leases
Validate paginated legacy lease candidates before choosing a workspace, preserving Postgres timestamp precision. Recover failed saves through a new authorized run and cover post-save finalization failures without replaying terminal cleanup.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 20:25:41 -05:00
Dotta e60c6099c5 Preserve unbound legacy workspaces and contain failed final saves
Bundle the task disposition helper with the installed Paperclip skill. Retry transient read-only file transfers within a fixed deadline and retain sandbox RPC caller provenance for staging failure diagnosis.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 20:15:56 -05:00
Dotta 8787dab6f3 Use the external sandbox for approved native Codex ACP runs
Select Codex ACP's full-access initial mode only for host-validated external work-folder environments with approve-all authority. Keep local and restrictive permission modes unchanged. The regression failed before the fix; all 50 ACP environment and runtime tests pass.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 19:28:06 -05:00
Dotta fbf2494104 Preserve existing sandbox workspaces across work-folder upgrades
Keep established tasks on their original filesystem and session layout. Recover version-1 lease identity from host run records, preserve configuration checks, and retain old work when ownership or resume cannot be verified.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 19:27:56 -05:00
Dotta 14151ff69f fix: preserve sandbox tool environments and incoming file versions
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 18:02:00 -05:00
Dotta 97bf34eb60 Exclude private nested repositories before checkpoint path validation
Reproduce Codex plugin-cache repositories with real Git and preserve private-runtime exclusions before validating directory entries.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 17:24:04 -05:00
Dotta 0b9314cf3e Preserve managed Git launchers across legacy ACP startup
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 17:14:18 -05:00
Dotta b8d003baff fix: keep prior saves visible after interrupted sandbox runs
Report incomplete terminal saves without hiding the latest successful checkpoint, including same-sandbox continuation and replacement failures.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 16:41:32 -05:00
Dotta 62096fd335 fix: preserve native sessions and route Git credentials internally
Align durable journal validation with the transport bound, preserve authorization on cached storage clients, and avoid Cloud session gates for native Git callbacks.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 16:32:40 -05:00
Dotta 45eabf6563 fix(runner): carry Git credentials through the Rust ACP sidecar 2026-09-08 15:34:36 -05:00
Dotta 56daf4664d fix(runner): expose Pi semantic tools and preserve projected Git credentials 2026-09-08 15:05:28 -05:00
Dotta ebe1fc8b65 fix: show pending and unknown work folder save state
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 14:08:10 -05:00
Dotta 53e7067413 fix: preserve scoped sandbox home in legacy adapters
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 13:53:45 -05:00
Dotta 30b9cd8c00 fix: isolate GitHub launcher module format
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 13:40:19 -05:00
Dotta 1c48625115 fix: seed explicit Codex ACP sandbox credentials
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 13:35:39 -05:00
Dotta 0a9680a8b8 fix: preserve sandbox work folders through ACP launch boundaries
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 13:02:36 -05:00
Dotta cbdf95d053 fix(ui): identify failed sandbox saves in the cache inspector
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 12:53:29 -05:00
Dotta 0c4810ea7b test: verify staging actor and terminal run outcomes
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 12:20:08 -05:00
Dotta 56169f3e00 fix(storage): contain failed S3 checkpoint streams
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 12:10:32 -05:00
Dotta 630b002c75 fix(ui): select cached files and browse retained trash in tabs
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 10:01:39 -05:00
Dotta 427678bb5a feat(ui): add experimental cached task file inspection
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 09:45:37 -05:00
Dotta 71774a29ca fix(ui): remove stored-file browsing entry points
Defer cached-file debugging and live sandbox inspection as separate features. Keep the saved-file browser only as an unshipped Storybook prototype.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 09:17:07 -05:00