@erichll/pi-sandbox 0.19.1 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.20.0 - 2026-09-23
4
+
5
+ - Require Pi `^0.87.1` (development and peer) for `@earendil-works/
6
+ pi-coding-agent`, and upgrade the development `@earendil-works/pi-ai` and
7
+ `@earendil-works/pi-server` baselines to 0.87.1 (validated against the
8
+ published packages; type surface unchanged from 0.86.x).
9
+ - Pin the development `pi-subagents` baseline to `^0.71.0`; the runtime peer
10
+ stays `>=0.66.0`. Revalidated protected native mode against published
11
+ 0.71.0: the ceiling implementation (`SUBAGENT_CAPABILITY_CEILING_VERSION` 1)
12
+ and the config loader are byte-identical to 0.70.0, and `discoverAgents` /
13
+ `resolveAgentName` keep their signatures (the new `applyRuntimeAgentSettings`
14
+ and `completionGuard` removal do not touch validated agent fields). The
15
+ package test suite passes (89 pass, 1 skipped) and the deterministic
16
+ `gate:pi-subagents` preflight passes with `piSubagentsModuleExtension
17
+ ".js"`; the model-backed gate phase was skipped locally for lack of a
18
+ model credential.
19
+ - Upgrade `@anthropic-ai/sandbox-runtime` from the exact `0.0.75` pin to
20
+ `^0.0.77` (adds `LinuxSandboxProfileError` exports and an `address` module;
21
+ `NetworkConfigSchema` surface unchanged).
22
+ - Move the development `typebox` to `^1.3.34` (peer stays `>=1.0.0`).
23
+ - Type checking and the full test suite pass on Pi 0.87.1; the development
24
+ `typescript` stays 6.0.3 (TS7 was evaluated and rejected, see the
25
+ pi-auto-review 0.20.0 notes).
26
+
3
27
  ## 0.19.1 - 2026-09-20
4
28
 
5
29
  - Pin the development `pi-subagents` baseline to `^0.70.0`. The runtime peer
package/README.md CHANGED
@@ -97,7 +97,7 @@ Supported modes:
97
97
  ### `pi-subagents` native-background tool boundary
98
98
 
99
99
  This provider supports the `pi-subagents >=0.66.0` line (validated through
100
- 0.70.0) and fails closed if its public ceiling API, module layout, or internal
100
+ 0.71.0) and fails closed if its public ceiling API, module layout, or internal
101
101
  discovery layout drifts. The peer dependency is a floor with no upper pin; the
102
102
  loader's explicit export and layout checks are the real gate.
103
103
  Configure both the protection mode and a non-empty canonical whitelist:
@@ -284,7 +284,8 @@ capability ceiling, and protected launch policy in an isolated temporary agent
284
284
  directory. It never reads or updates production Pi configuration. Model-backed
285
285
  acceptance requires `PI_SUBAGENTS_GATE_MODEL` and an already-exported matching
286
286
  credential; missing prerequisites are reported as `SKIP`. Protected mode with
287
- pi-subagents 0.68.0 or newer needs Pi 0.86.0 or newer.
287
+ pi-subagents 0.68.0 or newer needs Pi 0.86.0 or newer. The development
288
+ baseline is validated against Pi 0.87.1.
288
289
 
289
290
  The test suite covers real Linux Sandbox Runtime enforcement when its native
290
291
  dependencies are installed, plus deterministic broker, network approval,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@erichll/pi-sandbox",
3
- "version": "0.19.1",
3
+ "version": "0.20.0",
4
4
  "description": "Linux (bubblewrap) and macOS (Seatbelt) process sandbox for Pi backed by Anthropic's @anthropic-ai/sandbox-runtime. Fail-closed static filesystem policy plus per-connection network approval from pi-auto-review; sandboxes main-agent Bash and built-in subagent process trees.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -50,12 +50,11 @@
50
50
  "test": "node --experimental-strip-types --test test/*.test.ts"
51
51
  },
52
52
  "dependencies": {
53
- "@anthropic-ai/sandbox-runtime": "0.0.75",
54
- "@erichll/pi-auto-review": "^0.19.0",
53
+ "@erichll/pi-auto-review": "^0.20.0",
55
54
  "jiti": "2.7.0"
56
55
  },
57
56
  "peerDependencies": {
58
- "@earendil-works/pi-coding-agent": "^0.86.0",
57
+ "@earendil-works/pi-coding-agent": "^0.87.1",
59
58
  "pi-subagents": ">=0.66.0",
60
59
  "typebox": ">=1.0.0"
61
60
  },
@@ -65,10 +64,13 @@
65
64
  }
66
65
  },
67
66
  "devDependencies": {
68
- "@earendil-works/pi-coding-agent": "^0.86.0",
69
- "@earendil-works/pi-server": "^0.86.0",
67
+ "@anthropic-ai/sandbox-runtime": "^0.0.77",
68
+ "@earendil-works/pi-ai": "^0.87.1",
69
+ "@earendil-works/pi-coding-agent": "^0.87.1",
70
+ "@earendil-works/pi-server": "^0.87.1",
70
71
  "@types/node": "^26.2.0",
71
- "pi-subagents": "^0.70.0",
72
+ "pi-subagents": "^0.71.0",
73
+ "typebox": "^1.3.34",
72
74
  "typescript": "^6.0.3"
73
75
  }
74
76
  }
@@ -11,11 +11,14 @@ import { createJiti } from "jiti";
11
11
  * (`SUBAGENT_CAPABILITY_CEILING_VERSION` 1), the `./capability-ceiling` export,
12
12
  * discovery/canonical resolution, and the config loader with `scheduledRuns`
13
13
  * are unchanged since 0.66.0, and the published package now ships compiled
14
- * `.js`/`.d.ts` modules instead of the TypeScript source layout (verified
15
- * 2026-09-20 against the published 0.70.0 package). Protected mode needs Pi
16
- * 0.86.0 or newer (the package peer floor) with pi-subagents 0.68.0+: 0.85.0
17
- * does not ship `@earendil-works/pi-server`, so background children fail to
18
- * launch there.
14
+ * `.js`/`.d.ts` modules instead of the TypeScript source layout (revalidated
15
+ * 2026-09-23 against the published 0.71.0 package: the ceiling implementation
16
+ * and the config loader are byte-identical to 0.70.0, `discoverAgents` and
17
+ * `resolveAgentName` keep their signatures, and the `./capability-ceiling`
18
+ * export still resolves to `.js`). Protected mode needs Pi 0.86.0 or newer
19
+ * (the pi-subagents 0.68.0+ floor): 0.85.0 does not ship
20
+ * `@earendil-works/pi-server`, so background children fail to launch there.
21
+ * This package's own peer floor is Pi 0.87.1 (validated 2026-09-23).
19
22
  */
20
23
  export const PI_SUBAGENTS_COMPAT_RANGE = ">=0.66.0";
21
24
  export const NATIVE_CHILD_TOOLS = ["bash", "read", "grep", "find", "ls"] as const;