@arnilo/prism 0.0.23 → 0.0.25
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 +39 -3
- package/dist/agent-event-source.d.ts +11 -0
- package/dist/agent-event-source.js +512 -0
- package/dist/agent-loops.js +37 -5
- package/dist/agent-run-state.d.ts +27 -1
- package/dist/agent-run-state.js +86 -5
- package/dist/agents.js +890 -78
- package/dist/contracts.d.ts +338 -4
- package/dist/contracts.js +53 -0
- package/dist/index.d.ts +9 -4
- package/dist/index.js +5 -2
- package/dist/testing/agent-event-source-conformance.d.ts +4 -0
- package/dist/testing/agent-event-source-conformance.js +54 -0
- package/dist/testing/persistence-schema.d.ts +2 -2
- package/dist/testing/persistence-schema.js +58 -21
- package/dist/testing/tool-effect-store-conformance.d.ts +9 -0
- package/dist/testing/tool-effect-store-conformance.js +85 -0
- package/dist/tool-effects.d.ts +15 -0
- package/dist/tool-effects.js +338 -0
- package/dist/tools.d.ts +4 -1
- package/dist/tools.js +219 -9
- package/docs/0.1.0-readiness.md +10 -9
- package/docs/a2a.md +6 -2
- package/docs/ag-ui-adoption.md +77 -0
- package/docs/ag-ui.md +77 -42
- package/docs/agent-events.md +5 -1
- package/docs/agent-loops.md +9 -1
- package/docs/agent-session-runtime.md +9 -2
- package/docs/browser-automation.md +2 -0
- package/docs/coding-agent-tools.md +2 -0
- package/docs/coding-security.md +1 -1
- package/docs/database-persistence.md +2 -0
- package/docs/enterprise-postgres-state.md +5 -1
- package/docs/host-security.md +8 -1
- package/docs/index.md +13 -11
- package/docs/mcp-tools.md +19 -2
- package/docs/migration.md +46 -0
- package/docs/performance.md +25 -0
- package/docs/postgres-persistence.md +5 -2
- package/docs/public-contracts.md +2 -0
- package/docs/release-and-install.md +70 -690
- package/docs/server.md +10 -6
- package/docs/sqlite-persistence.md +10 -2
- package/docs/supervisors.md +6 -0
- package/docs/tool-effects.md +95 -0
- package/docs/tools.md +4 -0
- package/docs/work-tools.md +4 -0
- package/docs/workflows.md +1 -1
- package/package.json +11 -3
|
@@ -4,56 +4,20 @@
|
|
|
4
4
|
|
|
5
5
|
Prism is published as one core package, forty first-party capability packages, and six pure-manifest family/profile packages (**47** publishable manifests total). This page describes how they are packed, what each tarball contains, how to install them, the required `@arnilo/prism` peer dependency, the release workflow, and the offline test budget. The measurable 1.0 readiness gates (command-per-gate) live in [`0.1.0-readiness.md`](./0.1.0-readiness.md).
|
|
6
6
|
|
|
7
|
-
Core package
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
- `@arnilo/prism-
|
|
15
|
-
- `@arnilo/prism-
|
|
16
|
-
- `@arnilo/prism-
|
|
17
|
-
- `@arnilo/prism-
|
|
18
|
-
- `@arnilo/prism-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
- `@arnilo/prism-observability-opentelemetry` — optional OpenTelemetry adapter for `AgentEvent` streams.
|
|
22
|
-
- `@arnilo/prism-tool-validator-json-schema` — bounded JSON Schema tool argument validation.
|
|
23
|
-
- `@arnilo/prism-mcp` — MCP transport/client bridge plus explicit authorized Prism tool/command server exposure.
|
|
24
|
-
- `@arnilo/prism-coding-agent` / `@arnilo/prism-coding-security` — optional host shell/filesystem tools plus approval, containment, and sandbox policy.
|
|
25
|
-
- `@arnilo/prism-session-store-sqlite` / `@arnilo/prism-session-store-postgres` — production session/run persistence, checkpoints, and leases.
|
|
26
|
-
- `@arnilo/prism-enterprise-postgres` — optional PostgreSQL policy/evaluation/work-idempotency/model-router composition; separate checksum migration and explicit cleanup.
|
|
27
|
-
- `@arnilo/prism-credentials-node` — encrypted-file and keychain credential storage.
|
|
28
|
-
- `@arnilo/prism-workflows` — typed bounded DAG orchestration with durable approval, schedules/background runs, composition/state/replay, and multi-process coordination.
|
|
29
|
-
- `@arnilo/prism-evals` — optional deterministic scorers, immutable datasets, and bounded batch experiments over `AgentRunResult`.
|
|
30
|
-
- `@arnilo/prism-memory` — optional working memory, semantic recall, Embedder/VectorStore contracts, and PostgreSQL/pgvector adapter.
|
|
31
|
-
- `@arnilo/prism-rag` — optional bounded text/Markdown chunking, vector indexing/retrieval, stable citations, and ContextProvider integration (peers on memory).
|
|
32
|
-
- `@arnilo/prism-server` — optional framework-free authorized Web agent/workflow routes (peers on workflows).
|
|
33
|
-
- `@arnilo/prism-supervisor` — optional bounded child delegation and A2A 1.0 card/server/client interoperability.
|
|
34
|
-
- `@arnilo/prism-web-tools` — optional bounded host-selected Brave/Exa search and Firecrawl Markdown/schema extraction; native fetch, no vendor SDK/browser.
|
|
35
|
-
- `@arnilo/prism-browser` — optional host-supplied Playwright browser tools (`browser_open`/`browser_snapshot`/`browser_act`/`browser_close`); import launches nothing; `playwright-core@1.61.0` optional peer.
|
|
36
|
-
- `@arnilo/prism-ag-ui` — optional bounded AG-UI mapper/authorized Web handler/replay plus stable `./acp` sibling; root and ACP imports are inert.
|
|
37
|
-
- `@arnilo/prism-caveman` — optional upstream Caveman behavior integration (`upstreamPath` required; not in code/sdk/all profiles).
|
|
38
|
-
- `@arnilo/prism-ponytail` — optional upstream Ponytail behavior integration (peer `@dietrichgebert/ponytail` or `upstreamPath`; not in code/sdk/all profiles).
|
|
39
|
-
|
|
40
|
-
### 0.0.12 AG-UI package boundary
|
|
41
|
-
|
|
42
|
-
`@arnilo/prism-ag-ui` is a publishable optional code package with root AG-UI exports and stable `./acp` sibling, peer `@arnilo/prism@0.0.23`, pinned `@ag-ui/core@0.0.57` / `@agentclientprotocol/sdk@1.3.0`, and no import-time network/listener/run. It is included by `@arnilo/prism-all` only—not `@arnilo/prism-code` or `@arnilo/prism-sdk`—so coding and SDK profiles stay free of UI protocol dependencies.
|
|
43
|
-
|
|
44
|
-
Family/profile packages (pure manifests, no code or `dist`; ship `README.md` and `CHANGELOG.md`; use exact hard `dependencies`):
|
|
45
|
-
|
|
46
|
-
- `@arnilo/prism-providers` — all eleven `@arnilo/prism-provider-*` packages: ten HTTP adapters plus AI SDK interoperability.
|
|
47
|
-
- `@arnilo/prism-compaction` — both `@arnilo/prism-compaction-*` packages.
|
|
48
|
-
- `@arnilo/prism-base` — core + compaction family + JSON Schema validator; excludes providers, MCP, native credentials/storage, and coding tools.
|
|
49
|
-
- `@arnilo/prism-code` — base + coding-agent + coding-security + MCP; providers and persistence remain explicit choices.
|
|
50
|
-
- `@arnilo/prism-sdk` — base + workflows + MCP + Node credentials + OpenTelemetry; providers and persistence remain explicit choices.
|
|
51
|
-
- `@arnilo/prism-evals` remains optional and network-free by default; model judges are host callbacks and live credentialed gates run separately. `examples/evaluation-gate.ts` demonstrates non-zero threshold gating.
|
|
52
|
-
- `@arnilo/prism-all` — every first-party package: code + SDK + providers + session and enterprise PostgreSQL persistence + evals + memory/RAG + server + supervisor + web tools + browser + optional policy/router/enterprise providers/work-tools. Installation activates nothing. **0.0.13** enrolls `@arnilo/prism-policy`, `@arnilo/prism-model-router`, `@arnilo/prism-provider-azure`, `@arnilo/prism-provider-bedrock`, `@arnilo/prism-provider-vertex`, and `@arnilo/prism-work-tools` in the umbrella only. Installation alone activates no network/listener, telemetry, database, memory, evaluation, delegation, MCP, shell, filesystem, or browser capability.
|
|
53
|
-
|
|
54
|
-
Profile footprint snapshot (Node 24/npm 11, lockfile graph, 2026-07-19): `base` reaches 6 first-party packages and one external dependency root (Ajv); `code` reaches 10 and three (Ajv, MCP SDK, diff); `sdk` reaches 11 and three (Ajv, MCP SDK, keyring); `all` reaches **41** first-party manifests after Phase 8 optional packages ship (graph bump Task 10); AG-UI adds only its protocol SDK dependencies while native database drivers remain all-profile-only. Native database drivers stay out of base/code/sdk; both appear only in all.
|
|
55
|
-
|
|
56
|
-
Each code package's `files` array is `["dist", "!dist/__tests__", "!dist/**/*.map", "README.md", "CHANGELOG.md"]`; `README.md`, `LICENSE`, and `CHANGELOG.md` ship in every code-package tarball, the core tarball also ships the `docs/` directory, and family/profile tarballs ship `README.md` + `CHANGELOG.md` + `package.json`.
|
|
7
|
+
Core `@arnilo/prism` ships runtime, CLI, templates, and docs. Every code package has a required `@arnilo/prism@0.0.25` peer; profiles are pure manifests. Installation activates no provider, listener, database, browser, credential, or tool capability.
|
|
8
|
+
|
|
9
|
+
Current **47** publishable manifests:
|
|
10
|
+
|
|
11
|
+
`@arnilo/prism`, `@arnilo/prism-ag-ui`, `@arnilo/prism-browser`, `@arnilo/prism-coding-agent`, `@arnilo/prism-coding-security`, `@arnilo/prism-compaction-llm`
|
|
12
|
+
`@arnilo/prism-compaction-observational-memory`, `@arnilo/prism-credentials-node`, `@arnilo/prism-enterprise-postgres`, `@arnilo/prism-evals`, `@arnilo/prism-mcp`, `@arnilo/prism-memory`
|
|
13
|
+
`@arnilo/prism-model-router`, `@arnilo/prism-observability-opentelemetry`, `@arnilo/prism-policy`, `@arnilo/prism-all`, `@arnilo/prism-base`, `@arnilo/prism-caveman`
|
|
14
|
+
`@arnilo/prism-code`, `@arnilo/prism-compaction`, `@arnilo/prism-ponytail`, `@arnilo/prism-providers`, `@arnilo/prism-sdk`, `@arnilo/prism-provider-ai-sdk`
|
|
15
|
+
`@arnilo/prism-provider-alibaba`, `@arnilo/prism-provider-anthropic`, `@arnilo/prism-provider-azure`, `@arnilo/prism-provider-bedrock`, `@arnilo/prism-provider-google`, `@arnilo/prism-provider-kimi`
|
|
16
|
+
`@arnilo/prism-provider-neuralwatt`, `@arnilo/prism-provider-ollama`, `@arnilo/prism-provider-openai`, `@arnilo/prism-provider-opencode-go`, `@arnilo/prism-provider-openrouter`, `@arnilo/prism-provider-vertex`
|
|
17
|
+
`@arnilo/prism-provider-zai`, `@arnilo/prism-rag`, `@arnilo/prism-server`, `@arnilo/prism-session-store-codecs`, `@arnilo/prism-session-store-postgres`, `@arnilo/prism-session-store-sqlite`
|
|
18
|
+
`@arnilo/prism-supervisor`, `@arnilo/prism-tool-validator-json-schema`, `@arnilo/prism-web-tools`, `@arnilo/prism-work-tools`, `@arnilo/prism-workflows`
|
|
19
|
+
|
|
20
|
+
Core ships `dist`, docs, templates, and `CHANGELOG.md`; code packages ship compiled output, README, license, and changelog. Family/profile packages ship manifest, README, and changelog. `@arnilo/prism-providers` includes all eleven `@arnilo/prism-provider-*` packages.
|
|
57
21
|
|
|
58
22
|
## When to use it
|
|
59
23
|
|
|
@@ -81,9 +45,9 @@ Consumers install the core package for the runtime and add first-party packages
|
|
|
81
45
|
| Run the default (network-free) test suite | `npm test` |
|
|
82
46
|
| Dry-run pack core + every package | `npm run pack:dry-run` |
|
|
83
47
|
| Local mirror of the release verify gate | `npm run release:dry-run` |
|
|
84
|
-
| Validate clean tag/version/ranges and reject registry collisions | `npm run release:check -- --version 0.0.
|
|
85
|
-
| Preview deterministic publish order | `npm run release:publish -- --version 0.0.
|
|
86
|
-
| Resume interrupted tagged publication | `npm run release:publish -- --version 0.0.
|
|
48
|
+
| Validate clean tag/version/ranges and reject registry collisions | `npm run release:check -- --version 0.0.25` |
|
|
49
|
+
| Preview deterministic publish order | `npm run release:publish -- --version 0.0.25 --dry-run --allow-dirty --allow-untagged` |
|
|
50
|
+
| Resume interrupted tagged publication | `npm run release:publish -- --version 0.0.25 --resume --report release-artifacts/publish-report.json` |
|
|
87
51
|
| Protected PostgreSQL enterprise suite | `PRISM_TEST_POSTGRES_URL="$DATABASE_URL" npm run test:postgres` |
|
|
88
52
|
| Full SDK readiness gate (typecheck + offline tests + pack) | `npm run sdk:ready` |
|
|
89
53
|
|
|
@@ -97,9 +61,11 @@ Public core import specifiers (from the root `exports` map):
|
|
|
97
61
|
| `@arnilo/prism/providers/openai` | `dist/providers/openai-primitives.{js,d.ts}` |
|
|
98
62
|
| `@arnilo/prism/providers/media` | `dist/providers/media.{js,d.ts}` |
|
|
99
63
|
| `@arnilo/prism/testing/provider-conformance` | `dist/testing/provider-conformance.{js,d.ts}` |
|
|
64
|
+
| `@arnilo/prism/testing/agent-event-source-conformance` | `dist/testing/agent-event-source-conformance.{js,d.ts}` |
|
|
100
65
|
| `@arnilo/prism/testing/session-store-conformance` | `dist/testing/session-store-conformance.{js,d.ts}` |
|
|
101
66
|
| `@arnilo/prism/testing/compaction-conformance` | `dist/testing/compaction-conformance.{js,d.ts}` |
|
|
102
67
|
| `@arnilo/prism/testing/tool-conformance` | `dist/testing/tool-conformance.{js,d.ts}` |
|
|
68
|
+
| `@arnilo/prism/testing/tool-effect-store-conformance` | `dist/testing/tool-effect-store-conformance.{js,d.ts}` |
|
|
103
69
|
| `@arnilo/prism/testing/extension-conformance` | `dist/testing/extension-conformance.{js,d.ts}` |
|
|
104
70
|
| `@arnilo/prism/testing/persistence-schema` | `dist/testing/persistence-schema.{js,d.ts}` |
|
|
105
71
|
| `@arnilo/prism/testing/run-ledger-conformance` | `dist/testing/run-ledger-conformance.{js,d.ts}` |
|
|
@@ -121,7 +87,7 @@ A packed tarball contains only public compiled output and release files:
|
|
|
121
87
|
- Code packages ship `README.md`, `LICENSE`, and `CHANGELOG.md`; family/profile packages ship `README.md` and `CHANGELOG.md`.
|
|
122
88
|
- The core tarball additionally ships the full `docs/` directory (the docs hub) and `templates/init/` used by `prism init`.
|
|
123
89
|
- `dist/cli.js` and the `bin` link in core.
|
|
124
|
-
- **Tarball filenames.** npm strips the `@scope/` prefix, so the core package `@arnilo/prism` produces a tarball named `arnilo-prism-0.0.
|
|
90
|
+
- **Tarball filenames.** npm strips the `@scope/` prefix, so the core package `@arnilo/prism` produces a tarball named `arnilo-prism-0.0.25.tgz`; first-party packages produce `arnilo-prism-provider-<name>-0.0.25.tgz` / `arnilo-prism-compaction-<name>-0.0.25.tgz` / `arnilo-prism-coding-agent-0.0.25.tgz`; family/profile packages produce `arnilo-prism-{providers,compaction,base,code,sdk,all}-0.0.25.tgz`. The CLI bin name `prism` is unaffected by the package name (`npx prism` still works; npm allows the bin field to differ from the package name).
|
|
125
91
|
|
|
126
92
|
Excluded from every tarball by `files` negation:
|
|
127
93
|
|
|
@@ -140,9 +106,9 @@ Excluded from every tarball by `files` negation:
|
|
|
140
106
|
"name": "host-app",
|
|
141
107
|
"type": "module",
|
|
142
108
|
"dependencies": {
|
|
143
|
-
"@arnilo/prism": "0.0.
|
|
144
|
-
"@arnilo/prism-enterprise-postgres": "0.0.
|
|
145
|
-
"@arnilo/prism-provider-openai": "0.0.
|
|
109
|
+
"@arnilo/prism": "0.0.25",
|
|
110
|
+
"@arnilo/prism-enterprise-postgres": "0.0.25",
|
|
111
|
+
"@arnilo/prism-provider-openai": "0.0.25"
|
|
146
112
|
}
|
|
147
113
|
}
|
|
148
114
|
```
|
|
@@ -185,11 +151,11 @@ For SDK readiness, run the same one-command gate directly. It composes existing
|
|
|
185
151
|
npm run sdk:ready
|
|
186
152
|
```
|
|
187
153
|
|
|
188
|
-
Release publication derives all **47** manifests from the workspace once, validates exact `0.0.
|
|
154
|
+
Release publication derives all **47** manifests from the workspace once, validates exact `0.0.25` manifest/lockfile/internal ranges, then uses deterministic dependency order. `release:check` requires a clean commit tagged `v0.0.25` and rejects any existing registry version. `release:publish --resume` skips only registry versions whose internal dependency fingerprint matches the local manifest; conflicting versions fail closed. Each attempted package is written immediately to the JSON report, so a failed job can rerun safely. `--dry-run` performs registry availability checks and invokes `npm publish --dry-run` with explicit public access, provenance, and `latest` tag, but does not publish.
|
|
189
155
|
|
|
190
156
|
```bash
|
|
191
|
-
npm run release:check -- --version 0.0.
|
|
192
|
-
npm run release:publish -- --version 0.0.
|
|
157
|
+
npm run release:check -- --version 0.0.25
|
|
158
|
+
npm run release:publish -- --version 0.0.25 --dry-run --allow-dirty --allow-untagged
|
|
193
159
|
```
|
|
194
160
|
|
|
195
161
|
`--allow-dirty` and `--allow-untagged` exist only for local preview; real publication and CI never pass them. npm registry calls occur only in these release preflight/publication commands, never build/test/package discovery.
|
|
@@ -200,116 +166,76 @@ Optional live smoke tests stay separate from SDK readiness because they require
|
|
|
200
166
|
PRISM_LIVE_PROVIDER_TESTS=1 npm run test --workspaces --if-present
|
|
201
167
|
```
|
|
202
168
|
|
|
203
|
-
### 0.0.
|
|
169
|
+
### 0.0.25 publish handoff
|
|
204
170
|
|
|
205
|
-
**Decision: GO after protected operator prerequisites below.** Release **0.0.
|
|
206
|
-
|
|
207
|
-
Intentional pre-1.0 migration points: work idempotency now uses `begin`/CAS transitions and never automatically replays `unknown`; durable router state requires awaited methods plus verified identity and disables `providerSource`. Policy/evaluation/work/router data remain opt-in. No Redis, queue, event delivery, exactly-once effect claim, worker, migration CLI, ORM, or new core API ships.
|
|
171
|
+
**Decision: GO after protected operator prerequisites below.** Release **0.0.25** (Phase 8, plan 008) ships durable custom-loop snapshot/restore, shared pending-decision / sticky HITL, nested supervisor attributions, protocol batch resume, opt-in A2UI painting, and standard AG-UI projectors. Publishable graph stays **47** manifests. See [migration](migration.md) `0.0.24 → 0.0.25`, [agent loops](agent-loops.md), and [AG-UI](ag-ui.md).
|
|
208
172
|
|
|
209
173
|
```bash
|
|
210
174
|
git diff --check
|
|
211
175
|
npm ci
|
|
212
176
|
npm run sdk:ready
|
|
213
|
-
|
|
214
|
-
|
|
177
|
+
node --test scripts/phase8-conformance.test.mjs
|
|
178
|
+
node scripts/benchmark-0.0.25.mjs > scripts/benchmark-0.0.25.json
|
|
215
179
|
node --test scripts/budget-gate.test.mjs scripts/tooling-gate.test.mjs
|
|
216
180
|
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
217
181
|
npm audit --audit-level=moderate
|
|
218
|
-
npm run release:gate
|
|
219
|
-
npm run release:check -- --version 0.0.
|
|
220
|
-
npm run release:publish -- --version 0.0.
|
|
221
|
-
git tag -s v0.0.
|
|
222
|
-
git verify-tag v0.0.
|
|
223
|
-
git push origin v0.0.
|
|
182
|
+
npm run release:gate -- --version 0.0.25 --allow-break --allow-dirty --allow-untagged
|
|
183
|
+
npm run release:check -- --version 0.0.25 --allow-dirty --allow-untagged --report /tmp/prism-0.0.25-preflight.json
|
|
184
|
+
npm run release:publish -- --version 0.0.25 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.25-dry-run.json
|
|
185
|
+
git tag -s v0.0.25 -m "Prism 0.0.25"
|
|
186
|
+
git verify-tag v0.0.25
|
|
187
|
+
git push origin v0.0.25
|
|
224
188
|
```
|
|
225
189
|
|
|
226
|
-
|
|
190
|
+
### 0.0.24 publish handoff
|
|
227
191
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
**Decision: GO after protected operator prerequisites below.** Release **0.0.22** (Phase 5 third-party behavior integrations, plan 005) ships `@arnilo/prism-caveman` and `@arnilo/prism-ponytail` as opt-in behavior packages (upstream Caveman/Ponytail wiring, session mode persistence, progressive disclosure + injector split). Core `@arnilo/prism` runtime is unchanged. The publish graph is **46 manifests** (+2). No intentional pre-1.0 breaks for hosts that do not install the new packages — see [migration](migration.md) under `0.0.21 → 0.0.22 third-party behavior integrations`.
|
|
192
|
+
**Decision: GO after protected operator prerequisites below.** Release **0.0.24** (Phase 7, plan 007) ships durable `AgentEventSource`, recoverable `ToolEffectStore`, AG-UI 0.0.57 compatibility, and AG-UI MCP/MCP Apps/A2A fronting. Publishable graph stays **47** manifests. Core remains dependency-free; PostgreSQL event source and enterprise `toolEffects` stay opt-in. Delivery is at-least-once — not exactly-once. See [migration](migration.md) `0.0.23 → 0.0.24` and [tool effects](tool-effects.md).
|
|
231
193
|
|
|
232
194
|
```bash
|
|
233
195
|
git diff --check
|
|
234
196
|
npm ci
|
|
235
197
|
npm run sdk:ready
|
|
236
|
-
|
|
237
|
-
node scripts/
|
|
238
|
-
|
|
239
|
-
npm run release:gate
|
|
240
|
-
npm run release:check -- --version 0.0.22 --allow-dirty --allow-untagged --report /tmp/prism-0.0.22-preflight.json
|
|
241
|
-
npm run release:publish -- --version 0.0.22 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.22-dry-run.json
|
|
242
|
-
git tag -s v0.0.22 -m "Prism 0.0.22"
|
|
243
|
-
git verify-tag v0.0.22
|
|
244
|
-
git push origin v0.0.22
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
### 0.0.21 publish handoff
|
|
248
|
-
|
|
249
|
-
**Decision: GO after protected operator prerequisites below.** Release **0.0.21** (Phase 4 coding-tool capability gaps, plan 004) ships `repo_search` `outputMode`, bounded `glob`, optional session-scoped read-before-write, bounded `delete`/`move`, and coding-security approval/sandbox wiring. The exact graph stays **44 publishable manifests**; no package added or retired. Intentional pre-1.0 breaks are documented in [migration](migration.md) under `0.0.20 → 0.0.21 coding-tool capability gaps`.
|
|
250
|
-
|
|
251
|
-
```bash
|
|
252
|
-
git diff --check
|
|
253
|
-
npm ci
|
|
254
|
-
npm run sdk:ready
|
|
255
|
-
node --test scripts/budget-gate.test.mjs
|
|
256
|
-
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
257
|
-
npm audit --audit-level=moderate
|
|
258
|
-
npm run release:gate
|
|
259
|
-
npm run release:check -- --version 0.0.21 --allow-dirty --allow-untagged --report /tmp/prism-0.0.21-preflight.json
|
|
260
|
-
npm run release:publish -- --version 0.0.21 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.21-dry-run.json
|
|
261
|
-
git tag -s v0.0.21 -m "Prism 0.0.21"
|
|
262
|
-
git verify-tag v0.0.21
|
|
263
|
-
git push origin v0.0.21
|
|
264
|
-
```
|
|
265
|
-
|
|
266
|
-
The dry-run checks every registry collision and executes npm's non-publishing tarball validation for each dependency-ordered manifest. The protected tag workflow alone publishes through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`; re-run a failed job for the same tag. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish checks.
|
|
267
|
-
|
|
268
|
-
### 0.0.20 publish handoff
|
|
269
|
-
|
|
270
|
-
**Decision: GO after protected operator prerequisites below.** Release **0.0.20** (Phase 3 skills and context progressive disclosure, plan 003) ships progressive skill catalog assembly (`skillsDisclosure`), session `load_skill`, empty `SkillRegistry` default with `activateAllSkills` migration opt-in, priority-aware context budget demotion, and optional `toolResultFold`. The exact graph stays **44 publishable manifests**; no package added or retired. Intentional pre-1.0 breaks are documented in [migration](migration.md) under `0.0.19 → 0.0.20 skills and context progressive disclosure`.
|
|
271
|
-
|
|
272
|
-
```bash
|
|
273
|
-
git diff --check
|
|
274
|
-
npm ci
|
|
275
|
-
npm run sdk:ready
|
|
276
|
-
node --test scripts/budget-gate.test.mjs
|
|
198
|
+
PRISM_TEST_POSTGRES_URL="$DATABASE_URL" npm run test:postgres
|
|
199
|
+
PRISM_TEST_POSTGRES_URL="$DATABASE_URL" node scripts/benchmark-0.0.24.mjs > scripts/benchmark-0.0.24.json
|
|
200
|
+
node --test scripts/budget-gate.test.mjs scripts/tooling-gate.test.mjs
|
|
277
201
|
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
278
202
|
npm audit --audit-level=moderate
|
|
279
203
|
npm run release:gate
|
|
280
|
-
npm run release:check -- --version 0.0.
|
|
281
|
-
npm run release:publish -- --version 0.0.
|
|
282
|
-
git tag -s v0.0.
|
|
283
|
-
git verify-tag v0.0.
|
|
284
|
-
git push origin v0.0.
|
|
204
|
+
npm run release:check -- --version 0.0.24 --allow-dirty --allow-untagged --report /tmp/prism-0.0.24-preflight.json
|
|
205
|
+
npm run release:publish -- --version 0.0.24 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.24-dry-run.json
|
|
206
|
+
git tag -s v0.0.24 -m "Prism 0.0.24"
|
|
207
|
+
git verify-tag v0.0.24
|
|
208
|
+
git push origin v0.0.24
|
|
285
209
|
```
|
|
286
210
|
|
|
287
|
-
|
|
211
|
+
### 0.0.23 publish handoff
|
|
288
212
|
|
|
289
|
-
|
|
213
|
+
**Decision: GO after protected operator prerequisites below.** Release **0.0.23** (Phase 6, plan 006) adds `@arnilo/prism-enterprise-postgres`, the optional PostgreSQL composition for policy decisions, evaluation records, work-mutation claim/CAS state, and cross-replica model-router rate/budget/circuit state. The publish graph is **47 manifests** (41 code + 6 family/profile; +1 package). `@arnilo/prism-all` includes it; core remains dependency-free. See [migration](migration.md#0022--0023-production-enterprise-state-adapters-intentional-pre-10-contract-changes) and [enterprise PostgreSQL state](enterprise-postgres-state.md).
|
|
290
214
|
|
|
291
|
-
|
|
215
|
+
Intentional pre-1.0 migration points: work idempotency now uses `begin`/CAS transitions and never automatically replays `unknown`; durable router state requires awaited methods plus verified identity and disables `providerSource`. Policy/evaluation/work/router data remain opt-in. No Redis, queue, event delivery, exactly-once effect claim, worker, migration CLI, ORM, or new core API ships.
|
|
292
216
|
|
|
293
217
|
```bash
|
|
294
218
|
git diff --check
|
|
295
219
|
npm ci
|
|
296
220
|
npm run sdk:ready
|
|
297
|
-
|
|
221
|
+
PRISM_TEST_POSTGRES_URL="$DATABASE_URL" npm run test:postgres
|
|
222
|
+
PRISM_TEST_POSTGRES_URL="$DATABASE_URL" node scripts/benchmark-0.0.23.mjs
|
|
223
|
+
node --test scripts/budget-gate.test.mjs scripts/tooling-gate.test.mjs
|
|
298
224
|
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
299
225
|
npm audit --audit-level=moderate
|
|
300
226
|
npm run release:gate
|
|
301
|
-
npm run release:check -- --version 0.0.
|
|
302
|
-
npm run release:publish -- --version 0.0.
|
|
303
|
-
git tag -s v0.0.
|
|
304
|
-
git verify-tag v0.0.
|
|
305
|
-
git push origin v0.0.
|
|
227
|
+
npm run release:check -- --version 0.0.23 --allow-dirty --allow-untagged --report /tmp/prism-0.0.23-preflight.json
|
|
228
|
+
npm run release:publish -- --version 0.0.23 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.23-dry-run.json
|
|
229
|
+
git tag -s v0.0.23 -m "Prism 0.0.23"
|
|
230
|
+
git verify-tag v0.0.23
|
|
231
|
+
git push origin v0.0.23
|
|
306
232
|
```
|
|
307
233
|
|
|
308
|
-
|
|
234
|
+
`npm publish --dry-run` is non-publishing and applies `publishConfig.access`; the real protected tag workflow is the only publication path, with provenance and resume report. It must run the PostgreSQL suite using a protected, disposable database URL. The recorded benchmark is local/CI comparison evidence, not a portable SLO. npm publication is immutable: a partial publish resumes from the same tag; a confirmed defect requires deprecation plus a fixed version.
|
|
309
235
|
|
|
310
|
-
### 0.0.
|
|
236
|
+
### 0.0.22 publish handoff
|
|
311
237
|
|
|
312
|
-
**Decision: GO after protected operator prerequisites below.** Release **0.0.
|
|
238
|
+
**Decision: GO after protected operator prerequisites below.** Release **0.0.22** (Phase 5 third-party behavior integrations, plan 005) ships `@arnilo/prism-caveman` and `@arnilo/prism-ponytail` as opt-in behavior packages (upstream Caveman/Ponytail wiring, session mode persistence, progressive disclosure + injector split). Core `@arnilo/prism` runtime is unchanged. The publish graph is **46 manifests** (+2). No intentional pre-1.0 breaks for hosts that do not install the new packages — see [migration](migration.md) under `0.0.21 → 0.0.22 third-party behavior integrations`.
|
|
313
239
|
|
|
314
240
|
```bash
|
|
315
241
|
git diff --check
|
|
@@ -319,63 +245,16 @@ node --test scripts/budget-gate.test.mjs
|
|
|
319
245
|
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
320
246
|
npm audit --audit-level=moderate
|
|
321
247
|
npm run release:gate
|
|
322
|
-
npm run release:check -- --version 0.0.
|
|
323
|
-
npm run release:publish -- --version 0.0.
|
|
324
|
-
git tag -s v0.0.
|
|
325
|
-
git verify-tag v0.0.
|
|
326
|
-
git push origin v0.0.
|
|
327
|
-
```
|
|
328
|
-
|
|
329
|
-
The dry-run checks every registry collision and executes npm's non-publishing tarball validation for each dependency-ordered manifest. The protected tag workflow alone publishes through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`; re-run a failed job for the same tag. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish checks.
|
|
330
|
-
|
|
331
|
-
### 0.0.17 publish handoff
|
|
332
|
-
|
|
333
|
-
**Decision: GO after protected operator prerequisites below.** Release 0.0.17 implements the 2026-07-29 full implementation review (plan 081, twenty fixes): durable run-state load bound, explicit resume-as-approval, unconditional `input_assembly` middleware, same-session parent enforcement, jitter + `Retry-After`-aware retries with provider error wiring, O(n) context-budget eviction, fingerprint coverage of instructions/system prompt/skills, stage-named guardrail interrupts with `metadata.error`, `steer_rejected`, middleware double-`next()` detection, parked-consumer sorted multiplexer delivery, checkpoint-store bounds, strict credential opt-in, extension `unregister`/dispose handles with failed-setup unwind, loud CLI rejection of inert flags, capability-conditional tool listing, and the C8 nit bundle. The exact graph stays **44 publishable manifests**; no package added or retired. Intentional pre-1.0 breaks are documented in [migration](migration.md): inert CLI flags rejected (`CliOptions` dead fields removed) and `ExtensionKernel.load()` now resolves to `LoadedExtension[]`. The compat baseline was refreshed with `--allow-break` + migration note. Provider HTTP errors now carry numeric codes and `Retry-After` hints across anthropic/google/kimi/openai/opencode-go and the shared OpenAI-compatible transport — wire behavior is additive (more retries of genuinely transient failures), so the 0.0.15 protected live-canary matrix below still applies and no new live row is introduced.
|
|
334
|
-
|
|
335
|
-
```bash
|
|
336
|
-
git diff --check
|
|
337
|
-
npm ci
|
|
338
|
-
npm run sdk:ready
|
|
339
|
-
node --test scripts/budget-gate.test.mjs
|
|
340
|
-
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
341
|
-
npm audit --audit-level=high
|
|
342
|
-
npm run release:gate
|
|
343
|
-
npm run release:check -- --version 0.0.17 --allow-dirty --allow-untagged --report /tmp/prism-0.0.17-preflight.json
|
|
344
|
-
npm run release:publish -- --version 0.0.17 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.17-dry-run.json
|
|
345
|
-
git tag -s v0.0.17 -m "Prism 0.0.17"
|
|
346
|
-
git verify-tag v0.0.17
|
|
347
|
-
git push origin v0.0.17
|
|
348
|
-
```
|
|
349
|
-
|
|
350
|
-
The dry-run checks every registry collision and executes npm's non-publishing tarball validation for each dependency-ordered manifest. The protected tag workflow alone publishes through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`; re-run a failed job for the same tag. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish checks.
|
|
351
|
-
|
|
352
|
-
### 0.0.16 publish handoff
|
|
353
|
-
|
|
354
|
-
**Decision: GO after protected operator prerequisites below.** Phase 11 (plan 079) is a simplification/readiness release: no runtime behavior changes and no package retired. The exact graph is **44 publishable manifests** — Phase 11 Task 3 added one internal implementation package, `@arnilo/prism-session-store-codecs` (shared SQLite/Postgres row codecs, not enrolled in any profile family). The only public-surface change is the additive `resolveRedactor` export from `@arnilo/prism`; provider `cleanJson` was deliberately left per-package (wire-shape variants). All six profiles (`prism-all`, `prism-base`, `prism-code`, `prism-compaction`, `prism-providers`, `prism-sdk`) are retained on adoption evidence (zero retirements). The root tarball dropped the historical `docs/review-coverage-*.md` (659,478 → ≈575,680 packed bytes, 281 → 270 files). New offline release gates (`npm run release:gate`: API-surface `.d.ts` diff, tarball deny-list, exact ranges) run inside `sdk:ready`, and performance budgets (`scripts/budgets.json`) are enforced by `scripts/budget-gate.test.mjs` + `scripts/benchmark-0.0.16.mjs`. No Studio, Office, remote-browser vendor, additional vector-store, Slack/Teams, voice/desktop-control, internal-auth, or queue package ships. Protected CI, signed tag, npm authentication, OIDC attestation, and protected live-canary evidence remain operator/workflow prerequisites; no package is published by this handoff.
|
|
355
|
-
|
|
356
|
-
```bash
|
|
357
|
-
git diff --check
|
|
358
|
-
npm ci
|
|
359
|
-
npm run sdk:ready
|
|
360
|
-
node scripts/benchmark-0.0.16.mjs
|
|
361
|
-
node --test scripts/budget-gate.test.mjs
|
|
362
|
-
node scripts/scan-secrets.mjs && node scripts/verify-sbom.mjs
|
|
363
|
-
npm audit --audit-level=high
|
|
364
|
-
npm run release:gate
|
|
365
|
-
npm run release:check -- --version 0.0.17 --allow-dirty --allow-untagged --report /tmp/prism-0.0.16-preflight.json
|
|
366
|
-
npm run release:publish -- --version 0.0.17 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.16-dry-run.json
|
|
367
|
-
git tag -s v0.0.16 -m "Prism 0.0.16"
|
|
368
|
-
git verify-tag v0.0.16
|
|
369
|
-
git push origin v0.0.16
|
|
248
|
+
npm run release:check -- --version 0.0.22 --allow-dirty --allow-untagged --report /tmp/prism-0.0.22-preflight.json
|
|
249
|
+
npm run release:publish -- --version 0.0.22 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.22-dry-run.json
|
|
250
|
+
git tag -s v0.0.22 -m "Prism 0.0.22"
|
|
251
|
+
git verify-tag v0.0.22
|
|
252
|
+
git push origin v0.0.22
|
|
370
253
|
```
|
|
371
254
|
|
|
372
|
-
|
|
255
|
+
### Historical release handoffs
|
|
373
256
|
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
npm publication is immutable: partial publication is a resume case, and a confirmed defect requires deprecation plus a fixed version rather than rollback.
|
|
377
|
-
|
|
378
|
-
The 0.0.16 package set is the canonical **44-package** list below (the 0.0.15 set plus `@arnilo/prism-session-store-codecs`); `release:check` derives it from the workspace and rejects missing, private, version-skewed, or internally mismatched manifests.
|
|
257
|
+
Release-specific migration detail lives in [migration](migration.md). The current handoff plus the retained protected matrix below supersede 0.0.16–0.0.21 command transcripts.
|
|
379
258
|
|
|
380
259
|
### 0.0.15 protected live-canary matrix
|
|
381
260
|
|
|
@@ -399,512 +278,13 @@ Default `npm test`, `npm run sdk:ready`, and `benchmark-0.0.15` are network-free
|
|
|
399
278
|
|
|
400
279
|
The scheduled/manual `live-canaries` workflow uses protected environment `live-canaries`; release validation uses its protected release environment. Neither workflow receives a broad workspace key. A successful offline benchmark is never evidence that a live row ran; each protected invocation must record its enabled matrix rows and skipped/missing prerequisites.
|
|
401
280
|
|
|
402
|
-
###
|
|
403
|
-
|
|
404
|
-
**Decision: GO after protected operator prerequisites below.** Phase 10 closes provider, memory, and RAG ecosystem parity without changing the Task 0 package freeze: the exact graph remains **43 publishable manifests**. It adds OpenAI hosted-tool attribution, bounded Responses continuation and Realtime; exact AI SDK V4 mapping; bounded RAG source lifecycle/document adapters/reranking/provenance/trust/status; and memory export/rebuild production conformance. No Studio, Office, remote-browser vendor, additional vector-store, Slack/Teams, voice/desktop-control, internal-auth, or queue package ships. Phase 11 (plan 079, Task 3) adds one internal implementation package, `@arnilo/prism-session-store-codecs` (shared session-store row codecs, not enrolled in any family), bringing the exact graph to **44 publishable manifests**. Protected CI, signed tag, npm authentication, OIDC attestation, and protected live-canary evidence remain operator/workflow prerequisites; no package is published by this handoff.
|
|
405
|
-
|
|
406
|
-
```bash
|
|
407
|
-
git diff --check
|
|
408
|
-
npm ci
|
|
409
|
-
npm run sdk:ready
|
|
410
|
-
node scripts/benchmark-0.0.15.mjs
|
|
411
|
-
node --test scripts/benchmark-0.0.15.test.mjs
|
|
412
|
-
npm audit --audit-level=high
|
|
413
|
-
npm run release:check -- --version 0.0.15 --allow-dirty --allow-untagged --report /tmp/prism-0.0.15-preflight.json
|
|
414
|
-
npm run release:publish -- --version 0.0.15 --dry-run --allow-dirty --allow-untagged --report /tmp/prism-0.0.15-dry-run.json
|
|
415
|
-
git tag -s v0.0.15 -m "Prism 0.0.15"
|
|
416
|
-
git verify-tag v0.0.15
|
|
417
|
-
git push origin v0.0.15
|
|
418
|
-
```
|
|
419
|
-
|
|
420
|
-
The dry-run checks every registry collision and executes npm's non-publishing tarball validation for each dependency-ordered manifest. The protected tag workflow alone publishes through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`; re-run a failed job for the same tag. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish checks.
|
|
421
|
-
|
|
422
|
-
#### Rollback limitations
|
|
423
|
-
|
|
424
|
-
npm publication is immutable: partial publication is a resume case, and a confirmed defect requires deprecation plus a fixed version rather than rollback.
|
|
425
|
-
|
|
426
|
-
The 0.0.15 package set is unchanged from the canonical **43-package** list below; `release:check` derives it from the workspace and rejects missing, private, version-skewed, or internally mismatched manifests.
|
|
427
|
-
|
|
428
|
-
### 0.0.14 publish handoff
|
|
429
|
-
|
|
430
|
-
**Decision: GO after operator prerequisites below.** Phase 9 personal/work-agent conversations, memory consent/lifecycle, durable artifact review + authorized delivery, AG-UI co-work events, scoped M365/GWS OAuth connectors, browser verified-state checkpoints, a deny-by-default device adapter contract, and two new optional provider packages (`@arnilo/prism-provider-alibaba`, `@arnilo/prism-provider-ollama`). The exact 0.0.14 graph has **43 manifests** (41 → 43; only the two provider packages are new, enrolled via `@arnilo/prism-providers`). `@arnilo/prism-code` and `@arnilo/prism-sdk` stay lean; browser/ag-ui/work-tools remain optional. no Office package, Slack/Teams channel package, voice/desktop-control vendor package, internal auth DB, or Redis/SQS queue adapter ships. Clean protected-branch CI, signed commit/tag, npm authentication, OIDC attestation, protected live canaries, and actual publication remain operator/workflow prerequisites.
|
|
431
|
-
|
|
432
|
-
```bash
|
|
433
|
-
git diff --check
|
|
434
|
-
npm ci
|
|
435
|
-
npm run sdk:ready
|
|
436
|
-
node scripts/benchmark-0.0.14.mjs
|
|
437
|
-
node --test scripts/benchmark-0.0.14.test.mjs
|
|
438
|
-
npm run release:check -- --version 0.0.14 --allow-untagged --report /tmp/prism-0.0.14-preflight.json
|
|
439
|
-
git tag -s v0.0.14 -m "Prism 0.0.14"
|
|
440
|
-
git verify-tag v0.0.14
|
|
441
|
-
git push origin v0.0.14
|
|
442
|
-
```
|
|
443
|
-
|
|
444
|
-
The tag workflow publishes only through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`. Re-run failed jobs for the same tag; registry state is the resumable journal. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish operator checks.
|
|
445
|
-
|
|
446
|
-
#### Rollback limitations
|
|
447
|
-
|
|
448
|
-
npm publication is immutable: partial publication is a resume case, and confirmed defects require deprecation plus a fixed version rather than rollback.
|
|
449
|
-
|
|
450
|
-
Package set (43):
|
|
451
|
-
|
|
452
|
-
```text
|
|
453
|
-
@arnilo/prism
|
|
454
|
-
@arnilo/prism-ag-ui
|
|
455
|
-
@arnilo/prism-browser
|
|
456
|
-
@arnilo/prism-coding-agent
|
|
457
|
-
@arnilo/prism-coding-security
|
|
458
|
-
@arnilo/prism-compaction-llm
|
|
459
|
-
@arnilo/prism-compaction-observational-memory
|
|
460
|
-
@arnilo/prism-credentials-node
|
|
461
|
-
@arnilo/prism-evals
|
|
462
|
-
@arnilo/prism-mcp
|
|
463
|
-
@arnilo/prism-memory
|
|
464
|
-
@arnilo/prism-model-router
|
|
465
|
-
@arnilo/prism-observability-opentelemetry
|
|
466
|
-
@arnilo/prism-policy
|
|
467
|
-
@arnilo/prism-all
|
|
468
|
-
@arnilo/prism-base
|
|
469
|
-
@arnilo/prism-code
|
|
470
|
-
@arnilo/prism-compaction
|
|
471
|
-
@arnilo/prism-providers
|
|
472
|
-
@arnilo/prism-sdk
|
|
473
|
-
@arnilo/prism-provider-ai-sdk
|
|
474
|
-
@arnilo/prism-provider-alibaba
|
|
475
|
-
@arnilo/prism-provider-anthropic
|
|
476
|
-
@arnilo/prism-provider-azure
|
|
477
|
-
@arnilo/prism-provider-bedrock
|
|
478
|
-
@arnilo/prism-provider-google
|
|
479
|
-
@arnilo/prism-provider-kimi
|
|
480
|
-
@arnilo/prism-provider-neuralwatt
|
|
481
|
-
@arnilo/prism-provider-ollama
|
|
482
|
-
@arnilo/prism-provider-openai
|
|
483
|
-
@arnilo/prism-provider-opencode-go
|
|
484
|
-
@arnilo/prism-provider-openrouter
|
|
485
|
-
@arnilo/prism-provider-vertex
|
|
486
|
-
@arnilo/prism-provider-zai
|
|
487
|
-
@arnilo/prism-rag
|
|
488
|
-
@arnilo/prism-server
|
|
489
|
-
@arnilo/prism-session-store-codecs
|
|
490
|
-
@arnilo/prism-session-store-postgres
|
|
491
|
-
@arnilo/prism-session-store-sqlite
|
|
492
|
-
@arnilo/prism-supervisor
|
|
493
|
-
@arnilo/prism-tool-validator-json-schema
|
|
494
|
-
@arnilo/prism-web-tools
|
|
495
|
-
@arnilo/prism-work-tools
|
|
496
|
-
@arnilo/prism-workflows
|
|
497
|
-
```
|
|
498
|
-
|
|
499
|
-
### 0.0.13 publish handoff
|
|
500
|
-
|
|
501
|
-
**Decision: GO after operator prerequisites below.** Phase 8 enterprise identity, policy/audit, model governance, Azure/Bedrock/Vertex providers, server deployment seams, persistence schema v5 lifecycle hooks, and M365/GWS work connectors. The exact 0.0.13 graph has **41 manifests**. Phase 8 optional packages (`@arnilo/prism-policy`, `@arnilo/prism-model-router`, enterprise providers, `@arnilo/prism-work-tools`) enroll in `@arnilo/prism-all` only; `@arnilo/prism-code` and `@arnilo/prism-sdk` stay lean. no Office package, 0.0.14 conversation/artifact services, internal auth DB, or Redis/SQS queue adapter ships. Clean protected-branch CI, signed commit/tag, npm authentication, OIDC attestation, protected live canaries, and actual publication remain operator/workflow prerequisites.
|
|
502
|
-
|
|
503
|
-
```bash
|
|
504
|
-
git diff --check
|
|
505
|
-
npm ci
|
|
506
|
-
npm run sdk:ready
|
|
507
|
-
node scripts/benchmark-0.0.13.mjs
|
|
508
|
-
node --test scripts/benchmark-0.0.13.test.mjs
|
|
509
|
-
npm run release:check -- --version 0.0.13 --allow-untagged --report /tmp/prism-0.0.13-preflight.json
|
|
510
|
-
git tag -s v0.0.13 -m "Prism 0.0.13"
|
|
511
|
-
git verify-tag v0.0.13
|
|
512
|
-
git push origin v0.0.13
|
|
513
|
-
```
|
|
514
|
-
|
|
515
|
-
The tag workflow publishes only through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`. Re-run failed jobs for the same tag; registry state is the resumable journal. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish operator checks.
|
|
516
|
-
|
|
517
|
-
#### Rollback limitations
|
|
518
|
-
|
|
519
|
-
npm publication is immutable: partial publication is a resume case, and confirmed defects require deprecation plus a fixed version rather than rollback.
|
|
520
|
-
|
|
521
|
-
Package set (41):
|
|
522
|
-
|
|
523
|
-
```text
|
|
524
|
-
@arnilo/prism
|
|
525
|
-
@arnilo/prism-ag-ui
|
|
526
|
-
@arnilo/prism-browser
|
|
527
|
-
@arnilo/prism-coding-agent
|
|
528
|
-
@arnilo/prism-coding-security
|
|
529
|
-
@arnilo/prism-compaction-llm
|
|
530
|
-
@arnilo/prism-compaction-observational-memory
|
|
531
|
-
@arnilo/prism-credentials-node
|
|
532
|
-
@arnilo/prism-evals
|
|
533
|
-
@arnilo/prism-mcp
|
|
534
|
-
@arnilo/prism-memory
|
|
535
|
-
@arnilo/prism-model-router
|
|
536
|
-
@arnilo/prism-observability-opentelemetry
|
|
537
|
-
@arnilo/prism-policy
|
|
538
|
-
@arnilo/prism-all
|
|
539
|
-
@arnilo/prism-base
|
|
540
|
-
@arnilo/prism-code
|
|
541
|
-
@arnilo/prism-compaction
|
|
542
|
-
@arnilo/prism-providers
|
|
543
|
-
@arnilo/prism-sdk
|
|
544
|
-
@arnilo/prism-provider-ai-sdk
|
|
545
|
-
@arnilo/prism-provider-anthropic
|
|
546
|
-
@arnilo/prism-provider-azure
|
|
547
|
-
@arnilo/prism-provider-bedrock
|
|
548
|
-
@arnilo/prism-provider-google
|
|
549
|
-
@arnilo/prism-provider-kimi
|
|
550
|
-
@arnilo/prism-provider-neuralwatt
|
|
551
|
-
@arnilo/prism-provider-openai
|
|
552
|
-
@arnilo/prism-provider-opencode-go
|
|
553
|
-
@arnilo/prism-provider-openrouter
|
|
554
|
-
@arnilo/prism-provider-vertex
|
|
555
|
-
@arnilo/prism-provider-zai
|
|
556
|
-
@arnilo/prism-rag
|
|
557
|
-
@arnilo/prism-server
|
|
558
|
-
@arnilo/prism-session-store-postgres
|
|
559
|
-
@arnilo/prism-session-store-sqlite
|
|
560
|
-
@arnilo/prism-supervisor
|
|
561
|
-
@arnilo/prism-tool-validator-json-schema
|
|
562
|
-
@arnilo/prism-web-tools
|
|
563
|
-
@arnilo/prism-work-tools
|
|
564
|
-
@arnilo/prism-workflows
|
|
565
|
-
```
|
|
566
|
-
|
|
567
|
-
### 0.0.12 publish handoff
|
|
568
|
-
|
|
569
|
-
**Decision: GO after operator prerequisites below.** Phase 7 coding-harness interoperability ships the optional `@arnilo/prism-ag-ui` root/`./acp` adapter, shared durable resume stream, coding compaction preset, and provider-authorized OAuth boundary. The exact 0.0.12 graph has 35 manifests. `@arnilo/prism-ag-ui` is included by `@arnilo/prism-all` only; `@arnilo/prism-code` and `@arnilo/prism-sdk` remain free of AG-UI/ACP dependencies. no Office package, 0.0.13 conversations/artifacts/enterprise identity APIs, or Anthropic/Gemini subscription OAuth adapter ships. Clean protected-branch CI, signed commit/tag, npm authentication, OIDC attestation, protected live provider/Docker/Playwright/PostgreSQL/keychain gates, and actual publication remain operator/workflow prerequisites.
|
|
570
|
-
|
|
571
|
-
```bash
|
|
572
|
-
git diff --check
|
|
573
|
-
npm ci
|
|
574
|
-
npm run sdk:ready
|
|
575
|
-
npm run release:check -- --version 0.0.12 --allow-untagged --report /tmp/prism-0.0.12-preflight.json
|
|
576
|
-
git tag -s v0.0.12 -m "Prism 0.0.12"
|
|
577
|
-
git verify-tag v0.0.12
|
|
578
|
-
git push origin v0.0.12
|
|
579
|
-
```
|
|
580
|
-
|
|
581
|
-
The tag workflow publishes only through `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`. Re-run failed jobs for the same tag; registry state is the resumable journal. `npm audit signatures --json --include-attestations` and artifact checksums remain post-publish operator checks.
|
|
582
|
-
|
|
583
|
-
#### Rollback limitations
|
|
584
|
-
|
|
585
|
-
npm publication is immutable: partial publication is a resume case, and confirmed defects require deprecation plus a fixed version rather than rollback.
|
|
586
|
-
|
|
587
|
-
Package set (35):
|
|
588
|
-
|
|
589
|
-
```text
|
|
590
|
-
@arnilo/prism
|
|
591
|
-
@arnilo/prism-ag-ui
|
|
592
|
-
@arnilo/prism-browser
|
|
593
|
-
@arnilo/prism-coding-agent
|
|
594
|
-
@arnilo/prism-coding-security
|
|
595
|
-
@arnilo/prism-compaction-llm
|
|
596
|
-
@arnilo/prism-compaction-observational-memory
|
|
597
|
-
@arnilo/prism-credentials-node
|
|
598
|
-
@arnilo/prism-evals
|
|
599
|
-
@arnilo/prism-mcp
|
|
600
|
-
@arnilo/prism-memory
|
|
601
|
-
@arnilo/prism-observability-opentelemetry
|
|
602
|
-
@arnilo/prism-all
|
|
603
|
-
@arnilo/prism-base
|
|
604
|
-
@arnilo/prism-code
|
|
605
|
-
@arnilo/prism-compaction
|
|
606
|
-
@arnilo/prism-providers
|
|
607
|
-
@arnilo/prism-sdk
|
|
608
|
-
@arnilo/prism-provider-ai-sdk
|
|
609
|
-
@arnilo/prism-provider-anthropic
|
|
610
|
-
@arnilo/prism-provider-google
|
|
611
|
-
@arnilo/prism-provider-kimi
|
|
612
|
-
@arnilo/prism-provider-neuralwatt
|
|
613
|
-
@arnilo/prism-provider-openai
|
|
614
|
-
@arnilo/prism-provider-opencode-go
|
|
615
|
-
@arnilo/prism-provider-openrouter
|
|
616
|
-
@arnilo/prism-provider-zai
|
|
617
|
-
@arnilo/prism-rag
|
|
618
|
-
@arnilo/prism-server
|
|
619
|
-
@arnilo/prism-session-store-postgres
|
|
620
|
-
@arnilo/prism-session-store-sqlite
|
|
621
|
-
@arnilo/prism-supervisor
|
|
622
|
-
@arnilo/prism-tool-validator-json-schema
|
|
623
|
-
@arnilo/prism-web-tools
|
|
624
|
-
@arnilo/prism-workflows
|
|
625
|
-
```
|
|
626
|
-
|
|
627
|
-
### 0.0.11 publish handoff
|
|
628
|
-
|
|
629
|
-
**Decision: GO after operator prerequisites below.** Phase 6 coding-harness fundamentals: `SessionIndex`/`searchSessions`, assembler `contextBudget`, `@arnilo/prism-provider-anthropic` + `@arnilo/prism-provider-google`, mid-run `steer`, coding-agent `runCodingGoalVerify` + opt-in `ask_user_decision`, and `scripts/benchmark-0.0.11.mjs` search/budget evidence. Code, tests, exact `0.0.11` package graph (34 manifests), packed artifacts, security gates, and dependency-ordered publication dry-run passed from the Phase 6 release-candidate tree. Clean protected-branch CI, signed commit/tag, npm authentication, OIDC attestation, protected Anthropic/Google live canaries + Docker/Playwright/PostgreSQL gates (when host-provisioned), and actual publication remain operator/workflow prerequisites. No package was published during readiness work. Scope is coding-harness P1 only; **no Office** package, binary, SDK, wrapper, docs page, test, or release gate exists. Host mode never claims disposable containment. `@arnilo/prism-browser` remains optional via `@arnilo/prism-all` only.
|
|
630
|
-
|
|
631
|
-
#### npm authentication prerequisite
|
|
632
|
-
|
|
633
|
-
The existing GitHub Actions secret `NPM_TOKEN` is used only by the publish step as `NODE_AUTH_TOKEN`, matching previous Prism releases. Confirm that token remains valid and can publish existing and new public packages under `@arnilo`; no additional secret or manual npm publish is required. The workflow also requests OIDC and always passes `--provenance`.
|
|
634
|
-
|
|
635
|
-
#### Release commit and tag
|
|
636
|
-
|
|
637
|
-
Merge through the protected release branch, then run these commands from a clean checkout of the protected merge commit. `git push origin v0.0.11` is the workflow dispatch; there is no manual publish command.
|
|
638
|
-
|
|
639
|
-
```bash
|
|
640
|
-
# Prepare and push the release commit.
|
|
641
|
-
git diff --check
|
|
642
|
-
npm ci
|
|
643
|
-
npm run sdk:ready
|
|
644
|
-
git add -A
|
|
645
|
-
git diff --cached --check
|
|
646
|
-
git commit -S -m "Release 0.0.11"
|
|
647
|
-
git push origin HEAD
|
|
648
|
-
|
|
649
|
-
# Merge/confirm protected branch CI, then check out that exact clean merge commit.
|
|
650
|
-
test -z "$(git status --porcelain)"
|
|
651
|
-
npm ci
|
|
652
|
-
npm run release:check -- --version 0.0.11 --allow-untagged --report /tmp/prism-0.0.11-preflight.json
|
|
653
|
-
|
|
654
|
-
git tag -s v0.0.11 -m "Prism 0.0.11"
|
|
655
|
-
git verify-tag v0.0.11
|
|
656
|
-
test "$(git rev-parse HEAD)" = "$(git rev-list -n 1 v0.0.11)"
|
|
657
|
-
npm run release:check -- --version 0.0.11 --report /tmp/prism-0.0.11-tagged-preflight.json
|
|
658
|
-
git push origin v0.0.11
|
|
659
|
-
```
|
|
660
|
-
|
|
661
|
-
The tag workflow's only publication command is `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`. Latest registry preflight returned `available` for all 34 `0.0.11` versions at handoff. Publisher order is stable and dependency-safe (run `node -e` via `release:check` for the live order). Package set:
|
|
662
|
-
|
|
663
|
-
```text
|
|
664
|
-
@arnilo/prism
|
|
665
|
-
@arnilo/prism-coding-agent
|
|
666
|
-
@arnilo/prism-coding-security
|
|
667
|
-
@arnilo/prism-compaction-llm
|
|
668
|
-
@arnilo/prism-compaction-observational-memory
|
|
669
|
-
@arnilo/prism-credentials-node
|
|
670
|
-
@arnilo/prism-evals
|
|
671
|
-
@arnilo/prism-mcp
|
|
672
|
-
@arnilo/prism-memory
|
|
673
|
-
@arnilo/prism-observability-opentelemetry
|
|
674
|
-
@arnilo/prism-provider-ai-sdk
|
|
675
|
-
@arnilo/prism-provider-anthropic
|
|
676
|
-
@arnilo/prism-provider-google
|
|
677
|
-
@arnilo/prism-provider-kimi
|
|
678
|
-
@arnilo/prism-provider-neuralwatt
|
|
679
|
-
@arnilo/prism-provider-openai
|
|
680
|
-
@arnilo/prism-provider-opencode-go
|
|
681
|
-
@arnilo/prism-provider-openrouter
|
|
682
|
-
@arnilo/prism-provider-zai
|
|
683
|
-
@arnilo/prism-session-store-postgres
|
|
684
|
-
@arnilo/prism-session-store-sqlite
|
|
685
|
-
@arnilo/prism-supervisor
|
|
686
|
-
@arnilo/prism-tool-validator-json-schema
|
|
687
|
-
@arnilo/prism-web-tools
|
|
688
|
-
@arnilo/prism-browser
|
|
689
|
-
@arnilo/prism-workflows
|
|
690
|
-
@arnilo/prism-compaction
|
|
691
|
-
@arnilo/prism-providers
|
|
692
|
-
@arnilo/prism-rag
|
|
693
|
-
@arnilo/prism-server
|
|
694
|
-
@arnilo/prism-base
|
|
695
|
-
@arnilo/prism-code
|
|
696
|
-
@arnilo/prism-sdk
|
|
697
|
-
@arnilo/prism-all
|
|
698
|
-
```
|
|
699
|
-
|
|
700
|
-
#### Interruption and resume
|
|
701
|
-
|
|
702
|
-
Do not create another tag or rerun packages manually. Re-run failed jobs for the same tag in GitHub Actions. The workflow invokes `release:publish --resume`: registry versions with matching names, versions, and internal dependency fingerprints are skipped; any mismatch stops the job. Retain `release-artifacts-v0.0.11` and `publish-report-v0.0.11` for audit.
|
|
703
|
-
|
|
704
|
-
#### Bounded post-publish smoke
|
|
705
|
-
|
|
706
|
-
Download the workflow artifact and run `sha256sum -c SHA256SUMS`. Then verify all registry versions/tags/integrity and install the complete profile in a fresh directory:
|
|
707
|
-
|
|
708
|
-
```bash
|
|
709
|
-
while read -r package; do
|
|
710
|
-
test "$(npm view "$package@0.0.11" version)" = "0.0.11"
|
|
711
|
-
test "$(npm view "$package" dist-tags.latest)" = "0.0.11"
|
|
712
|
-
npm view "$package@0.0.11" dist.integrity >/dev/null
|
|
713
|
-
done <<'PACKAGES'
|
|
714
|
-
@arnilo/prism
|
|
715
|
-
@arnilo/prism-coding-agent
|
|
716
|
-
@arnilo/prism-coding-security
|
|
717
|
-
@arnilo/prism-compaction-llm
|
|
718
|
-
@arnilo/prism-compaction-observational-memory
|
|
719
|
-
@arnilo/prism-credentials-node
|
|
720
|
-
@arnilo/prism-evals
|
|
721
|
-
@arnilo/prism-mcp
|
|
722
|
-
@arnilo/prism-memory
|
|
723
|
-
@arnilo/prism-observability-opentelemetry
|
|
724
|
-
@arnilo/prism-provider-ai-sdk
|
|
725
|
-
@arnilo/prism-provider-anthropic
|
|
726
|
-
@arnilo/prism-provider-google
|
|
727
|
-
@arnilo/prism-provider-kimi
|
|
728
|
-
@arnilo/prism-provider-neuralwatt
|
|
729
|
-
@arnilo/prism-provider-openai
|
|
730
|
-
@arnilo/prism-provider-opencode-go
|
|
731
|
-
@arnilo/prism-provider-openrouter
|
|
732
|
-
@arnilo/prism-provider-zai
|
|
733
|
-
@arnilo/prism-session-store-postgres
|
|
734
|
-
@arnilo/prism-session-store-sqlite
|
|
735
|
-
@arnilo/prism-supervisor
|
|
736
|
-
@arnilo/prism-tool-validator-json-schema
|
|
737
|
-
@arnilo/prism-web-tools
|
|
738
|
-
@arnilo/prism-browser
|
|
739
|
-
@arnilo/prism-workflows
|
|
740
|
-
@arnilo/prism-compaction
|
|
741
|
-
@arnilo/prism-providers
|
|
742
|
-
@arnilo/prism-rag
|
|
743
|
-
@arnilo/prism-server
|
|
744
|
-
@arnilo/prism-base
|
|
745
|
-
@arnilo/prism-code
|
|
746
|
-
@arnilo/prism-sdk
|
|
747
|
-
@arnilo/prism-all
|
|
748
|
-
PACKAGES
|
|
749
|
-
|
|
750
|
-
npm audit signatures --json --include-attestations
|
|
751
|
-
npm install --no-audit --no-fund @arnilo/prism-all@0.0.11
|
|
752
|
-
```
|
|
753
|
-
|
|
754
|
-
#### Rollback limitations
|
|
755
|
-
|
|
756
|
-
npm publication is not transactional and published versions are immutable. Partial publication is a resume case, not rollback. For a confirmed systemic defect after completion, deprecate every affected `@0.0.11`; restore `latest` to the previous good release only where that tag already existed. Exact `0.0.11` installs remain possible, so publish a fixed version promptly. Do not unpublish except for a security/legal emergency under npm policy.
|
|
757
|
-
|
|
758
|
-
### 0.0.10 publish handoff (historical)
|
|
759
|
-
|
|
760
|
-
**Decision: GO after operator prerequisites below.** Phase 5 coding-harness unified workspace: required `workspaceMode`, fail-closed mixed wiring, sandbox FS auto-wire, tree identity, adversarial consistency tests, and `scripts/benchmark-0.0.10.mjs` evidence. Code, tests, exact `0.0.10` package graph (retargeted from post-ship `0.0.96`), packed artifacts, security gates, and dependency-ordered publication dry-run passed from the Phase 5 release-candidate tree. Clean protected-branch CI, signed commit/tag, npm authentication, OIDC attestation, protected Docker/Playwright live gates (when host-provisioned), and actual publication remain operator/workflow prerequisites. No package was published during readiness work. Scope is coding-harness P0 only; **no Office** package, binary, SDK, wrapper, docs page, test, or release gate exists. Host mode never claims disposable containment.
|
|
761
|
-
|
|
762
|
-
#### npm authentication prerequisite
|
|
763
|
-
|
|
764
|
-
The existing GitHub Actions secret `NPM_TOKEN` is used only by the publish step as `NODE_AUTH_TOKEN`, matching previous Prism releases. Confirm that token remains valid and can publish existing and new public packages under `@arnilo`; no additional secret or manual npm publish is required. The workflow also requests OIDC and always passes `--provenance`.
|
|
765
|
-
|
|
766
|
-
#### Release commit and tag
|
|
767
|
-
|
|
768
|
-
Merge through the protected release branch, then run these commands from a clean checkout of the protected merge commit. `git push origin v0.0.10` is the workflow dispatch; there is no manual publish command.
|
|
769
|
-
|
|
770
|
-
```bash
|
|
771
|
-
# Prepare and push the release commit.
|
|
772
|
-
git diff --check
|
|
773
|
-
npm ci
|
|
774
|
-
npm run sdk:ready
|
|
775
|
-
git add -A
|
|
776
|
-
git diff --cached --check
|
|
777
|
-
git commit -S -m "Release 0.0.10"
|
|
778
|
-
git push origin HEAD
|
|
779
|
-
|
|
780
|
-
# Merge/confirm protected branch CI, then check out that exact clean merge commit.
|
|
781
|
-
test -z "$(git status --porcelain)"
|
|
782
|
-
npm ci
|
|
783
|
-
npm run release:check -- --version 0.0.10 --allow-untagged --report /tmp/prism-0.0.10-preflight.json
|
|
784
|
-
|
|
785
|
-
git tag -s v0.0.10 -m "Prism 0.0.10"
|
|
786
|
-
git verify-tag v0.0.10
|
|
787
|
-
test "$(git rev-parse HEAD)" = "$(git rev-list -n 1 v0.0.10)"
|
|
788
|
-
npm run release:check -- --version 0.0.10 --report /tmp/prism-0.0.10-tagged-preflight.json
|
|
789
|
-
git push origin v0.0.10
|
|
790
|
-
```
|
|
791
|
-
|
|
792
|
-
The tag workflow's only publication command is `npm run release:publish -- --version "${GITHUB_REF_NAME#v}" --resume --report release-artifacts/publish-report.json`. Latest registry preflight returned `available` for all 32 `0.0.10` versions at handoff. Publisher order is stable and dependency-safe:
|
|
793
|
-
|
|
794
|
-
```text
|
|
795
|
-
1 @arnilo/prism
|
|
796
|
-
2 @arnilo/prism-coding-agent
|
|
797
|
-
3 @arnilo/prism-compaction-llm
|
|
798
|
-
4 @arnilo/prism-compaction-observational-memory
|
|
799
|
-
5 @arnilo/prism-credentials-node
|
|
800
|
-
6 @arnilo/prism-evals
|
|
801
|
-
7 @arnilo/prism-mcp
|
|
802
|
-
8 @arnilo/prism-memory
|
|
803
|
-
9 @arnilo/prism-observability-opentelemetry
|
|
804
|
-
10 @arnilo/prism-provider-ai-sdk
|
|
805
|
-
11 @arnilo/prism-provider-kimi
|
|
806
|
-
12 @arnilo/prism-provider-neuralwatt
|
|
807
|
-
13 @arnilo/prism-provider-openai
|
|
808
|
-
14 @arnilo/prism-provider-opencode-go
|
|
809
|
-
15 @arnilo/prism-provider-openrouter
|
|
810
|
-
16 @arnilo/prism-provider-zai
|
|
811
|
-
17 @arnilo/prism-session-store-postgres
|
|
812
|
-
18 @arnilo/prism-session-store-sqlite
|
|
813
|
-
19 @arnilo/prism-supervisor
|
|
814
|
-
20 @arnilo/prism-tool-validator-json-schema
|
|
815
|
-
21 @arnilo/prism-web-tools
|
|
816
|
-
22 @arnilo/prism-browser
|
|
817
|
-
23 @arnilo/prism-workflows
|
|
818
|
-
24 @arnilo/prism-coding-security
|
|
819
|
-
25 @arnilo/prism-compaction
|
|
820
|
-
26 @arnilo/prism-providers
|
|
821
|
-
27 @arnilo/prism-rag
|
|
822
|
-
28 @arnilo/prism-server
|
|
823
|
-
29 @arnilo/prism-base
|
|
824
|
-
30 @arnilo/prism-code
|
|
825
|
-
31 @arnilo/prism-sdk
|
|
826
|
-
32 @arnilo/prism-all
|
|
827
|
-
```
|
|
828
|
-
|
|
829
|
-
#### Interruption and resume
|
|
830
|
-
|
|
831
|
-
Do not create another tag or rerun packages manually. Re-run failed jobs for the same tag in GitHub Actions. The workflow invokes `release:publish --resume`: registry versions with matching names, versions, and internal dependency fingerprints are skipped; any mismatch stops the job. Retain `release-artifacts-v0.0.10` and `publish-report-v0.0.10` for audit.
|
|
832
|
-
|
|
833
|
-
#### Bounded post-publish smoke
|
|
834
|
-
|
|
835
|
-
Download the workflow artifact and run `sha256sum -c SHA256SUMS`. Then verify all registry versions/tags/integrity and install the complete profile in a fresh directory:
|
|
836
|
-
|
|
837
|
-
```bash
|
|
838
|
-
while read -r package; do
|
|
839
|
-
test "$(npm view "$package@0.0.10" version)" = "0.0.10"
|
|
840
|
-
test "$(npm view "$package" dist-tags.latest)" = "0.0.10"
|
|
841
|
-
npm view "$package@0.0.10" dist.integrity >/dev/null
|
|
842
|
-
done <<'PACKAGES'
|
|
843
|
-
@arnilo/prism
|
|
844
|
-
@arnilo/prism-coding-agent
|
|
845
|
-
@arnilo/prism-compaction-llm
|
|
846
|
-
@arnilo/prism-compaction-observational-memory
|
|
847
|
-
@arnilo/prism-credentials-node
|
|
848
|
-
@arnilo/prism-evals
|
|
849
|
-
@arnilo/prism-mcp
|
|
850
|
-
@arnilo/prism-memory
|
|
851
|
-
@arnilo/prism-rag
|
|
852
|
-
@arnilo/prism-server
|
|
853
|
-
@arnilo/prism-supervisor
|
|
854
|
-
@arnilo/prism-observability-opentelemetry
|
|
855
|
-
@arnilo/prism-provider-ai-sdk
|
|
856
|
-
@arnilo/prism-provider-kimi
|
|
857
|
-
@arnilo/prism-provider-neuralwatt
|
|
858
|
-
@arnilo/prism-provider-openai
|
|
859
|
-
@arnilo/prism-provider-opencode-go
|
|
860
|
-
@arnilo/prism-provider-openrouter
|
|
861
|
-
@arnilo/prism-provider-zai
|
|
862
|
-
@arnilo/prism-session-store-postgres
|
|
863
|
-
@arnilo/prism-session-store-sqlite
|
|
864
|
-
@arnilo/prism-tool-validator-json-schema
|
|
865
|
-
@arnilo/prism-web-tools
|
|
866
|
-
@arnilo/prism-browser
|
|
867
|
-
@arnilo/prism-workflows
|
|
868
|
-
@arnilo/prism-coding-security
|
|
869
|
-
@arnilo/prism-compaction
|
|
870
|
-
@arnilo/prism-providers
|
|
871
|
-
@arnilo/prism-base
|
|
872
|
-
@arnilo/prism-code
|
|
873
|
-
@arnilo/prism-sdk
|
|
874
|
-
@arnilo/prism-all
|
|
875
|
-
PACKAGES
|
|
876
|
-
|
|
877
|
-
consumer="$(mktemp -d)"
|
|
878
|
-
cd "$consumer"
|
|
879
|
-
npm init -y >/dev/null
|
|
880
|
-
npm install --no-audit --no-fund @arnilo/prism-all@0.0.10
|
|
881
|
-
node --input-type=module <<'NODE'
|
|
882
|
-
for (const name of [
|
|
883
|
-
"@arnilo/prism", "@arnilo/prism-coding-agent", "@arnilo/prism-coding-security",
|
|
884
|
-
"@arnilo/prism-compaction-llm", "@arnilo/prism-compaction-observational-memory",
|
|
885
|
-
"@arnilo/prism-credentials-node", "@arnilo/prism-mcp", "@arnilo/prism-observability-opentelemetry",
|
|
886
|
-
"@arnilo/prism-provider-kimi", "@arnilo/prism-provider-neuralwatt", "@arnilo/prism-provider-openai",
|
|
887
|
-
"@arnilo/prism-provider-opencode-go", "@arnilo/prism-provider-openrouter", "@arnilo/prism-provider-zai",
|
|
888
|
-
"@arnilo/prism-session-store-postgres", "@arnilo/prism-session-store-sqlite",
|
|
889
|
-
"@arnilo/prism-tool-validator-json-schema", "@arnilo/prism-workflows", "@arnilo/prism-evals",
|
|
890
|
-
"@arnilo/prism-provider-ai-sdk", "@arnilo/prism-memory", "@arnilo/prism-rag",
|
|
891
|
-
"@arnilo/prism-server", "@arnilo/prism-supervisor", "@arnilo/prism-web-tools",
|
|
892
|
-
"@arnilo/prism-browser",
|
|
893
|
-
]) await import(name);
|
|
894
|
-
NODE
|
|
895
|
-
./node_modules/.bin/prism --help >/dev/null
|
|
896
|
-
npm audit signatures --json --include-attestations > npm-signatures.json
|
|
897
|
-
```
|
|
898
|
-
|
|
899
|
-
This smoke is bounded to registry metadata, imports, CLI startup, checksums, signatures, and provenance; do not rerun the full release suite after immutable publication.
|
|
900
|
-
|
|
901
|
-
#### Rollback limitations
|
|
281
|
+
### Historical release notes
|
|
902
282
|
|
|
903
|
-
|
|
283
|
+
Older 0.0.10–0.0.15 handoffs are summarized in [migration](migration.md); historical 43-package evidence remains there. The publishable package catalog includes `@arnilo/prism-provider-alibaba`, `@arnilo/prism-provider-ollama`, and `@arnilo/prism-session-store-codecs`; current publication uses the 47-manifest handoff above.
|
|
904
284
|
|
|
905
285
|
## Extension and configuration notes
|
|
906
286
|
|
|
907
|
-
- **Required `@arnilo/prism` peer.** Every first-party code package declares a non-optional `@arnilo/prism@0.0.
|
|
287
|
+
- **Required `@arnilo/prism` peer.** Every first-party code package declares a non-optional `@arnilo/prism@0.0.25` peer (`peerDependenciesMeta` must not mark `@arnilo/prism` optional; other peers such as `playwright-core` may be optional). The range stays pinned to `0.0.25` for the current 0.x release and will widen to `^1.0.0` at the 1.x stable release. Inside the workspace each package also declares `"@arnilo/prism": "file:../.."` in `devDependencies` so `npm install` resolves the peer locally; that devDependency is stripped from consumer installs and is not a runtime dependency.
|
|
908
288
|
- **Public access.** All 47 manifests (41 code packages + 6 family/profile packages) declare `"publishConfig": { "access": "public" }`; the publisher also passes `--access public` explicitly because scoped packages otherwise default to restricted on first publish.
|
|
909
289
|
- **Map retention knob.** Source maps are emitted locally but stripped from tarballs by `!dist/**/*.map`. Removing that `files` negation ships maps in releases (larger tarballs, better consumer stack traces).
|
|
910
290
|
- **Release workflow.** `.github/workflows/release.yml` has six jobs. `verify` runs network-free SDK readiness on Node 24; `node20-compat` builds/imports every public root `exports` default target on Node 20 for declared `engines.node >=20` (docs examples need Node >=22.6 native TypeScript stripping); `postgres-integration` uses `pgvector/pgvector:pg16`; `supply-chain` runs high-severity audit, SPDX/license policy, and tracked-source secret scanning; and tag-only `codeql-release` runs SAST. Tag-only `publish` needs all five gates, preserves clean exact-tag/version/topological publication, and alone receives `NPM_TOKEN`, `id-token: write`, and `attestations: write`. Before npm publish it packs all current tarballs, generates checksums plus SPDX, scans unpacked public artifacts, creates GitHub attestations for tarballs and SBOM, then retains artifacts for 30 days. Registry state remains the resumable journal. Local `npm run release:dry-run` remains network-free SDK readiness; local PostgreSQL coverage is `PRISM_TEST_POSTGRES_URL=... npm run test:postgres`.
|