From 7ff31c8b289d07ac041eadb4f3f70658fb235a64 Mon Sep 17 00:00:00 2001 From: dawn <90008@klbr.net> Date: Thu, 10 Sep 2026 23:00:35 +0300 Subject: [PATCH] README,src/{observer,schema},test: fix live observer requests --- README.md | 2 +- src/observer.ts | 2 +- src/schema.ts | 2 -- test/logic.test.ts | 7 ++++++- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 4b961b8..08f917f 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ The package manager records the checkout in `~/.prime/agent/settings.json`. Keep ```bash export PRIME_COMMITMENT_OBSERVER_PROVIDER=google -export PRIME_COMMITMENT_OBSERVER_MODEL=gemini-3-flash-preview +export PRIME_COMMITMENT_OBSERVER_MODEL=gemini-3.1-flash-lite export PRIME_COMMITMENT_OBSERVER_TIMEOUT_MS=60000 ``` diff --git a/src/observer.ts b/src/observer.ts index 6776be6..35b9827 100644 --- a/src/observer.ts +++ b/src/observer.ts @@ -24,7 +24,7 @@ export type ObserverResult = export function configFromEnv(env: NodeJS.ProcessEnv = process.env): ObserverConfig { return { provider: env.PRIME_COMMITMENT_OBSERVER_PROVIDER ?? "google", - modelId: env.PRIME_COMMITMENT_OBSERVER_MODEL ?? "gemini-3-flash-preview", + modelId: env.PRIME_COMMITMENT_OBSERVER_MODEL ?? "gemini-3.1-flash-lite", apiKey: env.PRIME_COMMITMENT_OBSERVER_API_KEY, baseUrl: env.PRIME_COMMITMENT_OBSERVER_BASE_URL, temperature: env.PRIME_COMMITMENT_OBSERVER_TEMPERATURE diff --git a/src/schema.ts b/src/schema.ts index 92ad29d..7461c56 100644 --- a/src/schema.ts +++ b/src/schema.ts @@ -15,7 +15,6 @@ export const OBSERVER_JSON_SCHEMA = { properties: { existing: { type: "array", - maxItems: MAX_THREADS, items: { type: "object", additionalProperties: false, @@ -25,7 +24,6 @@ export const OBSERVER_JSON_SCHEMA = { }, additions: { type: "array", - maxItems: MAX_THREADS, items: { type: "object", additionalProperties: false, diff --git a/test/logic.test.ts b/test/logic.test.ts index 315c89e..6d91b7f 100644 --- a/test/logic.test.ts +++ b/test/logic.test.ts @@ -4,7 +4,7 @@ import type { AgentMessage } from "@earendil-works/pi-agent-core"; import { buildContextBlock, CLEARED_CONTEXT } from "../src/inject.ts"; import { buildPacket } from "../src/packet.ts"; import { OBSERVER_SYSTEM_PROMPT } from "../src/prompt.ts"; -import { parseObserverOutput } from "../src/schema.ts"; +import { parseObserverOutput, OBSERVER_JSON_SCHEMA } from "../src/schema.ts"; import { isCommitmentEvent, liveThreads, observationChangesState, replay } from "../src/state.ts"; import type { CommitmentEvent, Registry } from "../src/types.ts"; @@ -81,6 +81,11 @@ test("final threads stay final until an explicit reopen", () => { assert.equal(reopened.threads[0].status, "open"); }); +test("schema leaves array bounds to local validation", () => { + assert.equal("maxItems" in OBSERVER_JSON_SCHEMA.properties.existing, false); + assert.equal("maxItems" in OBSERVER_JSON_SCHEMA.properties.additions, false); +}); + test("schema requires an exact existing-thread census", () => { const valid = JSON.stringify({ existing: [ -- 2.51.2