Commit Graph

4351 Commits

Author SHA1 Message Date
Dotta bad9d3f9d2 Preserve remote process identity in legacy adapter dispatch
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-10 00:05:51 -05:00
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 bc4e39d2f7 Make provider pack metadata and nested launchers reproducible 2026-09-09 17:17:33 -05:00
Dotta a1d0ebbb0e test(runner): validate nested provider-pack export layout 2026-09-09 16:40:55 -05:00
Dotta 56cf3dbb69 fix(runner): preserve provider root mode across Docker export 2026-09-09 16:35:37 -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 3497dec88b Verify complete canonical provider exports offline
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 16:18:01 -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 2d95eef2ba test: use a valid OpenCode provider model in pack reuse coverage
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 11:34:27 -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 a31eba2381 fix: retain legacy plugin login output during session binding
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 11:29:49 -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 7508f1b6a0 test: distinguish recovered cache saves from unresolved failures
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 06:38:02 -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 90cad7196b fix: label file selections and distinguish pending trash
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 06:09:06 -05:00
Dotta a72fd32191 test: isolate workspace eligibility fixtures from clock precision
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 05:19:03 -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 6fee0c3b4c fix: use the new run deadline while claiming a retained sandbox
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-09 01:47:49 -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 fb7914651b test: use explicit scoped paths in every warm shell call
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 23:44:00 -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 f4a4916216 Preserve existing sandbox work after failed runs
Recognize dispatched pre-folder runs and v1 leases while excluding new scoped preparation failures from the compatibility path.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 19:32:16 -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 7fb72800ab fix: show loading while retrying cached file previews
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 18:58:02 -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 36f8d69931 Restore managed Git PATH after remote login initialization
Keep custom profile-provided runtimes available while restoring the projected Git launcher before agent startup.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-08 17:22:37 -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