@cognisphere-sh/cognisphere-harness 0.13.0 → 0.14.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
@@ -18,6 +18,17 @@ the harness directory, and applies it after user approval. See
18
18
  The format is based on [Keep a Changelog](https://keepachangelog.com/) and this
19
19
  project adheres to [Semantic Versioning](https://semver.org/).
20
20
 
21
+ ## [0.14.0]
22
+
23
+ ### Changed
24
+
25
+ - **Pi upgraded to 1.0.0** (`@earendil-works/pi-ai` and
26
+ `@earendil-works/pi-coding-agent`, pinned exactly; from 0.99.2). RPC mode,
27
+ the extension API and the session format are unchanged, and every curated
28
+ model ID still resolves. The Models page's Anthropic sign-in now asks for
29
+ browser or copy-code login; copy-code works when the browser is on another
30
+ machine.
31
+
21
32
  ## [0.13.0]
22
33
 
23
34
  ### Breaking changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cognisphere-sh/cognisphere-harness",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -27,8 +27,8 @@
27
27
  "access": "public"
28
28
  },
29
29
  "dependencies": {
30
- "@earendil-works/pi-ai": "0.99.2",
31
- "@earendil-works/pi-coding-agent": "0.99.2",
30
+ "@earendil-works/pi-ai": "1.0.0",
31
+ "@earendil-works/pi-coding-agent": "1.0.0",
32
32
  "@hono/node-server": "^1.13.7",
33
33
  "ajv": "^8.17.1",
34
34
  "better-sqlite3": "^11.7.0",
@@ -51,6 +51,7 @@
51
51
  "typecheck": "tsc --noEmit",
52
52
  "lint": "eslint src",
53
53
  "lint:fix": "eslint src --fix",
54
- "check": "tsc --noEmit && eslint src"
54
+ "check": "tsc --noEmit && eslint src test",
55
+ "test": "node scripts/test.mjs"
55
56
  }
56
57
  }
@@ -215,6 +215,9 @@ export interface RunnerOpts {
215
215
  /** The shared model check (`model-access.ts`); a thread override it
216
216
  * rejects falls back to the agent default at spawn. */
217
217
  modelUnavailableReason?: (providerId: string, modelId: string) => string | null;
218
+ /** Test-only: the command started instead of the bundled pi, with pi's
219
+ * arguments appended (e.g. `[process.execPath, "test/fake-pi.ts", script]`). */
220
+ piCommand?: string[];
218
221
  log: Logger;
219
222
  }
220
223
 
@@ -891,7 +894,8 @@ export class AgentRunner extends EventEmitter {
891
894
  },
892
895
  "spawn pi",
893
896
  );
894
- const child = spawn(process.execPath, [PI_CLI, ...args], {
897
+ const [cmd, ...cmdArgs] = this.opts.piCommand ?? [process.execPath, PI_CLI];
898
+ const child = spawn(cmd!, [...cmdArgs, ...args], {
895
899
  cwd: agentDir,
896
900
  env,
897
901
  stdio: ["pipe", "pipe", "pipe"],