pi-oracle 0.7.10 → 0.7.11

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
@@ -2,6 +2,15 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.7.11 - 2026-06-15
6
+
7
+ ### Changed
8
+ - updated the local pi development and validation baseline to `@earendil-works/*` `0.79.4`
9
+ - refreshed oracle docs and sanity-check baselines for pi `0.79.4`
10
+
11
+ ### Validation
12
+ - ran the full `npm run verify:oracle` release gate under pi `0.79.4`
13
+
5
14
  ## 0.7.10 - 2026-06-13
6
15
 
7
16
  ### Added
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  `pi-oracle` lets a `pi` agent send hard, long-running work to ChatGPT.com or Grok through the web app, with repo archives, background execution, saved results, and a best-effort wake-up back into `pi` when the answer is ready.
4
4
 
5
- > Status: experimental public beta. Validated on macOS, Linux, and Windows native with Chromium-family browsers and pi `0.79.1`. Pi `0.79.1+` is the suggested tested floor for project-trust-aware package/runtime validation, but pi-bundled runtime packages remain optional wildcard peers so npm peer ranges do not block users from trying newer pi releases. Normal oracle jobs run in an isolated browser profile, not your active browser window.
5
+ > Status: experimental public beta. Validated on macOS, Linux, and Windows native with Chromium-family browsers and pi `0.79.4`. Pi `0.79.4+` is the suggested tested floor for project-trust-aware package/runtime validation, but pi-bundled runtime packages remain optional wildcard peers so npm peer ranges do not block users from trying newer pi releases. Normal oracle jobs run in an isolated browser profile, not your active browser window.
6
6
 
7
7
  ## What a successful run looks like
8
8
 
@@ -77,7 +77,7 @@ You need:
77
77
 
78
78
  - macOS, Linux, or Windows native
79
79
  - Node.js 22 or newer
80
- - Suggested tested floor: `pi` 0.79.1 or newer; older pi versions are not blocked by package metadata but are outside the current validation baseline
80
+ - Suggested tested floor: `pi` 0.79.4 or newer; older pi versions are not blocked by package metadata but are outside the current validation baseline
81
81
  - Google Chrome/Chromium or another Chromium-family browser
82
82
  - ChatGPT or Grok already signed in to the configured local browser profile for the provider you plan to use
83
83
  - `agent-browser`, `tar`, and `zstd` available on the machine
@@ -184,7 +184,7 @@ Agent-facing tools:
184
184
 
185
185
  Most users can start with defaults. Set an agent-level config only when you need a non-default provider, mode, preset, or browser profile.
186
186
 
187
- Pi 0.79.1 gates project-local inputs behind project trust. `pi-oracle` preserves its historical risk-on extension behavior for existing users: project-local `.pi/extensions/oracle.json` safe overrides still load by default for compatibility. They are ignored when you explicitly opt out of project-local inputs with `--no-approve` or save a “do not trust” decision for the project. Privileged browser/auth settings still come only from the agent-level config.
187
+ Pi 0.79.4 gates project-local inputs behind project trust. `pi-oracle` preserves its historical risk-on extension behavior for existing users: project-local `.pi/extensions/oracle.json` safe overrides still load by default for compatibility. They are ignored when you explicitly opt out of project-local inputs with `--no-approve` or save a “do not trust” decision for the project. Privileged browser/auth settings still come only from the agent-level config.
188
188
 
189
189
  `~/.pi/agent/extensions/oracle.json`
190
190
 
@@ -399,7 +399,7 @@ For macOS, Ubuntu, and Windows native package/build plus packed runtime validati
399
399
  npm run release:check
400
400
  ```
401
401
 
402
- The real runtime suite defaults to deterministic installed-tool execution so platform proof stays bounded. Provider/model defaults remain `zai/glm-5.1` for doctor/config and for optional model-agent debugging; override with `PI_ORACLE_REAL_TEST_PROVIDER` and `PI_ORACLE_REAL_TEST_MODEL` when needed. For inner-loop source loading only, use `npm run smoke:real:source`; it is not release proof. Set `PI_ORACLE_REAL_TEST_MODEL_AGENT=1` only when debugging the slower model-agent path. The optional second real-agent negative symlink check is opt-in via `PI_ORACLE_REAL_TEST_NEGATIVE_SYMLINK=1`; `npm run sanity:oracle` covers archive/symlink rejection by default without adding another model-agent turn to the platform release gate.
402
+ The real runtime suite defaults to deterministic installed-tool execution so platform proof stays bounded. Provider/model defaults remain `zai/glm-5.2` for doctor/config and for optional model-agent debugging; override with `PI_ORACLE_REAL_TEST_PROVIDER` and `PI_ORACLE_REAL_TEST_MODEL` when needed. For inner-loop source loading only, use `npm run smoke:real:source`; it is not release proof. Set `PI_ORACLE_REAL_TEST_MODEL_AGENT=1` only when debugging the slower model-agent path. The optional second real-agent negative symlink check is opt-in via `PI_ORACLE_REAL_TEST_NEGATIVE_SYMLINK=1`; `npm run sanity:oracle` covers archive/symlink rejection by default without adding another model-agent turn to the platform release gate.
403
403
 
404
404
  For manual end-to-end local-extension smoke testing, use [`docs/ORACLE_ISOLATED_PI_VALIDATION.md`](docs/ORACLE_ISOLATED_PI_VALIDATION.md). That workflow launches isolated `pi` coding-agent sessions against this checkout and uses `instant` or `thinking_light`, as required by the project validation policy.
405
405
 
@@ -7,7 +7,7 @@ Companion doc:
7
7
  - `docs/ORACLE_RECOVERY_DRILL.md` — safe expired-auth recovery validation drill
8
8
 
9
9
  Compatibility target:
10
- - `pi` 0.79.1+ is the suggested tested floor for current project-trust-aware package/runtime validation
10
+ - `pi` 0.79.4+ is the suggested tested floor for current project-trust-aware package/runtime validation
11
11
  - package metadata keeps pi runtime packages as optional wildcard peers, so this suggested floor is not enforced as a hard npm install requirement
12
12
  - current extension lifecycle only; no backward-compatibility shims for removed `session_switch` / `session_fork` events
13
13
 
@@ -234,7 +234,7 @@ Merged config locations:
234
234
  - global: `~/.pi/agent/extensions/oracle.json`
235
235
  - project: `.pi/extensions/oracle.json`
236
236
 
237
- Project config remains restricted to safe overrides only. On Pi 0.79.1+, pi itself gates project-local inputs behind project trust, but `pi-oracle` keeps its historical risk-on extension behavior for this package-specific safe override file: `.pi/extensions/oracle.json` loads by default for compatibility, and is ignored when Pi reports the project is untrusted, including `--no-approve` or saved “do not trust” decisions. This preserves the existing extension experience while still honoring explicit opt-out/distrust decisions. Browser/auth settings remain global-only because they control local privileged browser state.
237
+ Project config remains restricted to safe overrides only. On Pi 0.79.4+, pi itself gates project-local inputs behind project trust, but `pi-oracle` keeps its historical risk-on extension behavior for this package-specific safe override file: `.pi/extensions/oracle.json` loads by default for compatibility, and is ignored when Pi reports the project is untrusted, including `--no-approve` or saved “do not trust” decisions. This preserves the existing extension experience while still honoring explicit opt-out/distrust decisions. Browser/auth settings remain global-only because they control local privileged browser state.
238
238
 
239
239
  ### Current config shape
240
240
 
@@ -27,7 +27,7 @@ The extension is loaded from the local checkout with:
27
27
  pi --approve --no-extensions -e "$REPO/extensions/oracle/index.ts"
28
28
  ```
29
29
 
30
- That ensures the session is exercising the in-repo code, not a globally installed package. `--approve` is intentional for this isolated workflow on Pi 0.79.1+: the test fixture is this trusted checkout, and non-interactive/scripted validation must not block on the project-trust prompt.
30
+ That ensures the session is exercising the in-repo code, not a globally installed package. `--approve` is intentional for this isolated workflow on Pi 0.79.4+: the test fixture is this trusted checkout, and non-interactive/scripted validation must not block on the project-trust prompt.
31
31
 
32
32
  The local extension now intercepts TUI `/oracle` and `/oracle-followup` before prompt-template expansion, re-injects the compact slash request as the visible user message for prompt-history/up-arrow recall, and reads the in-repo prompt files as hidden dispatch instructions, so do not pass `--prompt-template` for normal local-extension validation. In print/json/rpc modes, the extension contributes the prompt templates itself.
33
33
 
@@ -36,7 +36,7 @@ Target setup:
36
36
  Real runtime suite auth:
37
37
 
38
38
  - Default deterministic installed-tool smoke does not require provider API keys.
39
- - Provider/model defaults remain `zai/glm-5.1` for optional model-agent debugging.
39
+ - Provider/model defaults remain `zai/glm-5.2` for optional model-agent debugging.
40
40
  - Set `PI_ORACLE_REAL_TEST_MODEL_AGENT=1` to run the slower model-agent path; then the provider auth env is required (`ZAI_API_KEY` by default, reported only as present/redacted).
41
41
  - Override with `PI_ORACLE_REAL_TEST_PROVIDER` and `PI_ORACLE_REAL_TEST_MODEL`; auth variable names live in `platform-smoke.config.mjs`.
42
42
 
@@ -90,7 +90,7 @@ On each required target, `platform-build`:
90
90
  5. runs `npm pack`;
91
91
  6. creates a fresh target-local pi project;
92
92
  7. runs `npm install --no-save <packed tarball>`;
93
- 8. runs `pi install -l ./node_modules/pi-oracle --approve` so Pi 0.79.1 project-trust gating intentionally trusts the temporary fixture;
93
+ 8. runs `pi install -l ./node_modules/pi-oracle --approve` so Pi 0.79.4 project-trust gating intentionally trusts the temporary fixture;
94
94
  9. runs `pi list --approve`;
95
95
  10. asserts the installed package came from `node_modules/pi-oracle` and did not use `pi -e` / source-extension shortcuts.
96
96
 
@@ -6,7 +6,7 @@
6
6
  import { execFileSync } from "node:child_process";
7
7
  import { existsSync, readFileSync } from "node:fs";
8
8
  import { homedir } from "node:os";
9
- import { getAgentDir, hasProjectTrustInputs, ProjectTrustStore } from "@earendil-works/pi-coding-agent";
9
+ import { getAgentDir, hasTrustRequiringProjectResources, ProjectTrustStore } from "@earendil-works/pi-coding-agent";
10
10
  import { isAbsolute, join, normalize } from "node:path";
11
11
  import {
12
12
  assertNotKnownBrowserUserDataPath,
@@ -351,7 +351,7 @@ function isProjectConfigTrusted(cwd: string, agentDir: string, projectConfigExis
351
351
  const trustCwd = options?.projectConfigTrustCwd ?? cwd;
352
352
  const cliOverride = getProjectTrustCliOverride();
353
353
  if (cliOverride !== undefined) return cliOverride;
354
- if (!projectConfigExists && !hasProjectTrustInputs(trustCwd)) return true;
354
+ if (!projectConfigExists && !hasTrustRequiringProjectResources(trustCwd)) return true;
355
355
  try {
356
356
  const trustStore = new ProjectTrustStore(agentDir);
357
357
  const trustDecision = trustStore.get(trustCwd);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-oracle",
3
- "version": "0.7.10",
3
+ "version": "0.7.11",
4
4
  "description": "ChatGPT and Grok web-oracle extension for pi with isolated browser auth, async jobs, and project-context archives.",
5
5
  "private": false,
6
6
  "license": "MIT",
@@ -80,8 +80,8 @@
80
80
  "protobufjs": "7.6.1"
81
81
  },
82
82
  "devDependencies": {
83
- "@earendil-works/pi-ai": "0.79.1",
84
- "@earendil-works/pi-coding-agent": "0.79.1",
83
+ "@earendil-works/pi-ai": "0.79.4",
84
+ "@earendil-works/pi-coding-agent": "0.79.4",
85
85
  "@types/node": "^22.19.19",
86
86
  "esbuild": "^0.28.0",
87
87
  "tsx": "^4.22.3",
@@ -40,7 +40,7 @@ export default {
40
40
  nodeValidationMajor: 24,
41
41
  realSmoke: {
42
42
  defaultProvider: "zai",
43
- defaultModel: "glm-5.1",
43
+ defaultModel: "glm-5.2",
44
44
  authEnvByProvider: {
45
45
  zai: ["ZAI_API_KEY"],
46
46
  openai: ["OPENAI_API_KEY"],
@@ -14,7 +14,7 @@ const require = createRequire(import.meta.url);
14
14
  const tsxCli = require.resolve("tsx/cli");
15
15
 
16
16
  const DEFAULT_PROVIDER = "zai";
17
- const DEFAULT_MODEL = "glm-5.1";
17
+ const DEFAULT_MODEL = "glm-5.2";
18
18
  const DEFAULT_TIMEOUT_MS = 180_000;
19
19
  const PACKAGE_NAME = "pi-oracle";
20
20
 
@@ -54,7 +54,7 @@ function realSmokeProvider(config = {}) {
54
54
  }
55
55
 
56
56
  function realSmokeModel(config = {}) {
57
- return process.env.PI_ORACLE_REAL_TEST_MODEL || config.realSmoke?.defaultModel || "glm-5.1";
57
+ return process.env.PI_ORACLE_REAL_TEST_MODEL || config.realSmoke?.defaultModel || "glm-5.2";
58
58
  }
59
59
 
60
60
  function truthy(value) {
@@ -57,7 +57,7 @@ Environment:
57
57
  PLATFORM_SMOKE_WINDOWS_WORK_ROOT Windows work root
58
58
  PI_ORACLE_SMOKE_* Project-specific aliases for the PLATFORM_SMOKE_* knobs above
59
59
  PI_ORACLE_REAL_TEST_PROVIDER Real smoke provider (default: zai)
60
- PI_ORACLE_REAL_TEST_MODEL Real smoke model (default: glm-5.1)
60
+ PI_ORACLE_REAL_TEST_MODEL Real smoke model (default: glm-5.2)
61
61
  ZAI_API_KEY Default real-smoke provider API key for optional model-agent debugging
62
62
  `);
63
63
  }