pi-oracle 0.7.11 → 0.7.12

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,20 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.7.12 - 2026-06-15
6
+
7
+ ### Changed
8
+ - switched Grok oracle submissions to gzip-compressed tar archives (`.tar.gz`) so Grok can extract uploaded context without `zstd`
9
+ - centralized provider archive policy for archive format, upload ceiling, and local compression prerequisites
10
+ - split oracle archive construction out of the agent-facing tool orchestration module
11
+
12
+ ### Fixed
13
+ - preserved ChatGPT `.tar.zst` submissions and `zstd` preflight requirements when ChatGPT is explicitly selected while Grok is the configured default provider
14
+
15
+ ### Validation
16
+ - ran the full `npm run verify:oracle` release gate
17
+ - verified isolated local `pi` submissions create extractable Grok `.tar.gz` and explicit ChatGPT `.tar.zst` archives
18
+
5
19
  ## 0.7.11 - 2026-06-15
6
20
 
7
21
  ### Changed
package/README.md CHANGED
@@ -11,7 +11,7 @@ You: /oracle Review the pending changes. Include the whole repo unless a narrowe
11
11
 
12
12
  pi-oracle:
13
13
  1. preflights local session/auth readiness
14
- 2. builds a context-rich `.tar.zst` repo archive
14
+ 2. builds a context-rich provider archive (`.tar.zst` for ChatGPT, `.tar.gz` for Grok)
15
15
  3. starts an isolated provider web runtime in the background
16
16
  4. uploads the archive and prompt to the selected provider
17
17
  5. saves the response/artifacts under /tmp/oracle-<job-id>/
@@ -80,7 +80,7 @@ You need:
80
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
- - `agent-browser`, `tar`, and `zstd` available on the machine
83
+ - `agent-browser` and `tar` available on the machine; `zstd` is also required when submitting ChatGPT `.tar.zst` archives
84
84
  - on macOS APFS clone mode, `cp` available on PATH or via `PI_ORACLE_CP_PATH`; Linux/Windows runtime profile copies use Node's recursive copy
85
85
  - a normal persisted `pi` session, not `pi --no-session`
86
86
  - on Linux, encrypted Chromium cookies may also require `secret-tool` (GNOME/libsecret) or `kwallet-query` + `dbus-send` (KDE), unless a Chrome/Brave safe-storage password override is set for the auth run
@@ -144,7 +144,7 @@ If the wake-up does not arrive, run:
144
144
  flowchart LR
145
145
  A["/oracle request"] --> B["Agent preflights, then gathers a context-rich relevant repo slice"]
146
146
  B --> C["Agent chooses context-rich archive inputs"]
147
- C --> D["oracle_submit builds .tar.zst archive"]
147
+ C --> D["oracle_submit builds provider-specific archive"]
148
148
  D --> E["Detached worker clones isolated auth seed profile"]
149
149
  E --> F["Selected provider receives archive + prompt"]
150
150
  F --> G["Response/artifacts saved under oracle job dir"]
@@ -260,12 +260,12 @@ If macOS prompts for Keychain access during `/oracle-auth`, allow access for the
260
260
 
261
261
  ## Available providers and presets
262
262
 
263
- | Provider | Mode / preset | Upload ceiling |
264
- | --- | --- | --- |
265
- | ChatGPT | Presets below | 250 MiB |
266
- | Grok | `heavy` only | 200 MiB |
263
+ | Provider | Mode / preset | Archive format | Upload ceiling |
264
+ | --- | --- | --- | --- |
265
+ | ChatGPT | Presets below | `.tar.zst` | 250 MiB |
266
+ | Grok | `heavy` only | `.tar.gz` | 200 MiB |
267
267
 
268
- Grok accepts the same `.tar.zst` archives that pi-oracle builds. Manual testing against `https://grok.com` found a 200 MiB file is accepted and a 200 MiB + 1 byte file is rejected, so pi-oracle caps Grok archives at 200 MiB.
268
+ Grok uploads now use `.tar.gz` archives. Grok may accept `.tar.zst` uploads, but its execution environment can lack `zstd` tooling to extract them; gzip-compressed tar keeps extraction on standard tools. Manual testing against `https://grok.com` found a 200 MiB upload is accepted and a 200 MiB + 1 byte upload is rejected, so pi-oracle caps Grok archives at 200 MiB.
269
269
 
270
270
  ## Available ChatGPT presets
271
271
 
@@ -355,7 +355,7 @@ This usually means the cookie import worked but the source cookies are not the a
355
355
 
356
356
  ### A local dependency like `agent-browser`, `tar`, or `zstd` is missing
357
357
 
358
- Install the missing local dependency and rerun the command. On macOS APFS clone mode, `cp` must also be available on PATH or configured with `PI_ORACLE_CP_PATH`; Linux and Windows profile copies use Node's recursive copy.
358
+ Install the missing local dependency and rerun the command. `zstd` is only needed for ChatGPT `.tar.zst` archive submissions; Grok submissions use `.tar.gz`. On macOS APFS clone mode, `cp` must also be available on PATH or configured with `PI_ORACLE_CP_PATH`; Linux and Windows profile copies use Node's recursive copy.
359
359
 
360
360
  ### Auto-detection picked the wrong browser profile
361
361
 
@@ -17,7 +17,7 @@ Create a `pi` extension that lets the user or agent consult ChatGPT.com or Grok
17
17
 
18
18
  - manual invocation via `/oracle ...`
19
19
  - automatic invocation by the agent in rare high-difficulty cases
20
- - mandatory project-context archive upload (`.tar.zst`)
20
+ - mandatory project-context archive upload (`.tar.zst` for ChatGPT, `.tar.gz` for Grok)
21
21
  - long-running execution in the background
22
22
  - durable response/artifact persistence plus best-effort wake-the-agent behavior when the oracle response is ready
23
23
  - oracle requires a persisted pi session identity; in-memory/no-session contexts are rejected instead of risking cross-session wake-up misdelivery
@@ -340,7 +340,8 @@ Default location: `${PI_ORACLE_JOBS_DIR:-/tmp}/oracle-<job-id>/`
340
340
  ${PI_ORACLE_JOBS_DIR:-/tmp}/oracle-<job-id>/
341
341
  job.json
342
342
  prompt.md
343
- context-<job-id>.tar.zst
343
+ context-<job-id>.tar.zst # ChatGPT
344
+ context-<job-id>.tar.gz # Grok
344
345
  response.md
345
346
  artifacts.json
346
347
  artifacts/
@@ -570,7 +571,7 @@ Retained from the earlier MVP:
570
571
  - `oracle_auth`, `oracle_submit`, `oracle_read`, `oracle_cancel`
571
572
  - detached background worker model
572
573
  - `${PI_ORACLE_JOBS_DIR:-/tmp}/oracle-<job-id>/...` state layout
573
- - shell-safe archive creation using `tar` piped to `zstd`
574
+ - shell-safe archive creation using tar streams: `zstd` compression for ChatGPT and gzip compression for Grok
574
575
  - private permissions and atomic writes
575
576
  - stale-worker reconciliation
576
577
  - upload ordering: attach → confirm → fill → send