@arnilo/prism 0.5.4 → 0.5.5

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.
Files changed (33) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +10 -10
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.js +1 -1
  5. package/dist/run-limits.js +7 -2
  6. package/docs/credential-storage.md +1 -1
  7. package/docs/graft.md +1 -1
  8. package/docs/{0.1.0-readiness.md → history/0.1.0-readiness.md} +6 -6
  9. package/docs/history/README.md +11 -0
  10. package/docs/{migrate-to-0.4.md → history/migrate-to-0.4.md} +4 -4
  11. package/docs/history/migration-0.0.md +738 -0
  12. package/docs/history/migration-0.1.md +151 -0
  13. package/docs/history/migration-0.2.md +173 -0
  14. package/docs/history/migration-0.3.md +39 -0
  15. package/docs/history/migration-0.4.md +6 -0
  16. package/docs/{persistence-credentials-multimodality-primitives.md → history/persistence-credentials-multimodality-primitives.md} +13 -13
  17. package/docs/history/release-handoffs.md +848 -0
  18. package/docs/{workflow-orchestration-primitives.md → history/workflow-orchestration-primitives.md} +11 -11
  19. package/docs/host-security.md +1 -1
  20. package/docs/index.md +157 -143
  21. package/docs/migrate-to-0.5.md +1 -1
  22. package/docs/migration.md +15 -1042
  23. package/docs/multimodal-content.md +1 -1
  24. package/docs/performance.md +1 -1
  25. package/docs/postgres-persistence.md +1 -1
  26. package/docs/provider-packages.md +20 -20
  27. package/docs/release-and-install.md +57 -842
  28. package/docs/runs-and-usage.md +2 -2
  29. package/docs/session-stores-and-branching.md +1 -122
  30. package/docs/sqlite-persistence.md +1 -1
  31. package/docs/workflows.md +1 -1
  32. package/package.json +1 -1
  33. /package/docs/{workflow-tui-primitives.md → history/workflow-tui-primitives.md} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## [0.5.5] - 2026-09-08
2
+
3
+ ### Fixed
4
+ - **Byte limits are per-frame, not cumulative.** `maxRequestBytes`/`maxResponseBytes` now compare each individual provider frame (request payload, streamed event) against the cap instead of a run-lifetime byte sum, so long autonomous coding runs (many megabyte-scale frames, each far under 64 MiB) no longer trip `Run limit exceeded: maxRequestBytes` after ~40 turns. HARD stays per-frame process safety — one giant frame still fails, 40 legal frames never do. Cumulative byte counters remain in snapshots/telemetry; token/turn/wall/cost axes stay cumulative.
5
+
1
6
  ## [0.5.4] - 2026-09-08 (plan 067)
2
7
 
3
8
  ### Changed
package/README.md CHANGED
@@ -162,16 +162,16 @@ printf '{"id":"1","command":"prompt","params":{"input":"Hi"}}\n' \
162
162
 
163
163
  | package | version | notes |
164
164
  | --- | --- | --- |
165
- | `@arnilo/prism` | 0.5.4 | core — runtime, CLI/RPC, templates, docs |
166
- | `@arnilo/prism-coding-tools` | 0.5.4 | family — /agent, /security, /document-reader, /openapi, /computer-use-linux, /dev, /caveman, /ponytail, /impeccable subpaths |
167
- | `@arnilo/prism-core` | 0.5.4 | family — /runtime, /sessions, /governance, /credentials, /enterprise, /work, /validation subpaths |
168
- | `@arnilo/prism-providers` | 0.5.4 | family — all provider adapters as `/<adapter>` subpaths |
169
- | `@arnilo/prism-acp-agent` | 0.5.4 | capability — ACP adapter |
170
- | `@arnilo/prism-ag-ui` | 0.5.4 | capability — AG-UI/A2A/A2UI adapter |
171
- | `@arnilo/prism-mcp` | 0.5.4 | capability — MCP client/server/OAuth interop |
172
- | `@arnilo/prism-memory` | 0.5.4 | capability — memory plus /rag, /compaction/*, /graft, /wiki subpaths |
173
- | `@arnilo/prism-office` | 0.5.4 | capability — /documents, /sheets, /diagrams subpaths |
174
- | `@arnilo/prism-web-tools` | 0.5.4 | capability — Brave/Exa/Firecrawl plus peer-gated /browser and /obscura subpaths |
165
+ | `@arnilo/prism` | 0.5.5 | core — runtime, CLI/RPC, templates, docs |
166
+ | `@arnilo/prism-coding-tools` | 0.5.5 | family — /agent, /security, /document-reader, /openapi, /computer-use-linux, /dev, /caveman, /ponytail, /impeccable subpaths |
167
+ | `@arnilo/prism-core` | 0.5.5 | family — /runtime, /sessions, /governance, /credentials, /enterprise, /work, /validation subpaths |
168
+ | `@arnilo/prism-providers` | 0.5.5 | family — all provider adapters as `/<adapter>` subpaths |
169
+ | `@arnilo/prism-acp-agent` | 0.5.5 | capability — ACP adapter |
170
+ | `@arnilo/prism-ag-ui` | 0.5.5 | capability — AG-UI/A2A/A2UI adapter |
171
+ | `@arnilo/prism-mcp` | 0.5.5 | capability — MCP client/server/OAuth interop |
172
+ | `@arnilo/prism-memory` | 0.5.5 | capability — memory plus /rag, /compaction/*, /graft, /wiki subpaths |
173
+ | `@arnilo/prism-office` | 0.5.5 | capability — /documents, /sheets, /diagrams subpaths |
174
+ | `@arnilo/prism-web-tools` | 0.5.5 | capability — Brave/Exa/Firecrawl plus peer-gated /browser and /obscura subpaths |
175
175
  <!-- generated:package-truth:inventory end -->
176
176
 
177
177
  ## Scripts
package/dist/index.d.ts CHANGED
@@ -119,5 +119,5 @@ export { trimTrailingSlashes } from "./trim-trailing-slashes.js";
119
119
  export type { ResolvedUseCaseModel, ResolveUseCaseModelInput, UseCaseModelBinding, } from "./use-case-model.js";
120
120
  export { resolveUseCaseModel, resolveUseCaseModelBinding, useCaseCredentialProviderId, } from "./use-case-model.js";
121
121
  export declare const name = "prism";
122
- export declare const version = "0.5.4";
122
+ export declare const version = "0.5.5";
123
123
  export declare const description = "Agent harness for AI providers, agents, sessions, and tools.";
package/dist/index.js CHANGED
@@ -66,6 +66,6 @@ export { createToolParameterValidator, createToolRegistry, dispatchToolCall, fil
66
66
  export { trimTrailingSlashes } from "./trim-trailing-slashes.js";
67
67
  export { resolveUseCaseModel, resolveUseCaseModelBinding, useCaseCredentialProviderId, } from "./use-case-model.js";
68
68
  export const name = "prism";
69
- export const version = "0.5.4";
69
+ export const version = "0.5.5";
70
70
  export const description = "Agent harness for AI providers, agents, sessions, and tools.";
71
71
  //# sourceMappingURL=index.js.map
@@ -209,8 +209,13 @@ export class RunLimitTracker {
209
209
  this.exceed(limit, Number.MAX_SAFE_INTEGER + 1);
210
210
  this.counters[counter] = observed;
211
211
  const cap = this.limits[limit];
212
- if (cap !== null && observed > cap)
213
- this.exceed(limit, observed);
212
+ if (cap === null)
213
+ return;
214
+ // Byte caps are per-frame (HARD exists so one giant provider frame cannot OOM the host),
215
+ // not run-lifetime sums; every other axis stays cumulative.
216
+ const against = limit === "maxRequestBytes" || limit === "maxResponseBytes" ? delta : observed;
217
+ if (against > cap)
218
+ this.exceed(limit, against);
214
219
  }
215
220
  recordUsage(usage) {
216
221
  if (!usage) {
@@ -269,5 +269,5 @@ MCP credentials remain host inputs: resolve them before constructing client `req
269
269
  - [Azure OpenAI / Foundry](providers/azure.md) / [Amazon Bedrock](providers/bedrock.md) / [Google Vertex AI](providers/vertex.md): enterprise workload-identity credential callbacks
270
270
  - [Web search, fetch, and extraction](web-tools.md): late-bound Brave/Exa/Firecrawl credentials
271
271
  - [Security/auth/trust](settings-auth-trust-security.md): host-owned settings/credentials boundaries
272
- - [Persistence, credentials, and multimodality primitives](persistence-credentials-multimodality-primitives.md): Plan 056 threat model and conformance matrix rows 7–10
272
+ - [Persistence, credentials, and multimodality primitives](history/persistence-credentials-multimodality-primitives.md): Plan 056 threat model and conformance matrix rows 7–10
273
273
  - `@arnilo/prism`: `CredentialResolver`, `OAuthCredentialStore`, `createMemoryCredentialStore()`
package/docs/graft.md CHANGED
@@ -105,7 +105,7 @@ await kernel.load([
105
105
  - Import alone registers nothing (`sideEffects: false`); no timers, watchers, or network. The only child processes are budgeted graft CLI calls.
106
106
  - Retrieval happens in-process via Prism primitives (context provider, injector, tool_result middleware) — no external hook shims.
107
107
  - Ask result shape is parsed tolerantly (`nodes|results|matches|hits`) because graft is pre-1.0; formatters emit pointers (`title` + `file:line` + `[[wikilink]]`), never source bodies.
108
- - Not included in `@arnilo/prism-coding-tools`, `@arnilo/prism-core`, or the `prism-all` umbrella (deliberate opt-out, like Caveman/Ponytail) — opt-in install only.
108
+ - Deliberate opt-out from family/umbrella packaging (like Caveman/Ponytail) — opt-in install only.
109
109
  - Multi-repo layouts work as upstream graft defines them (workspaces, submodules with `--follow-submodules`, sibling repos); point `projectDir` at the graft root that owns the target repo.
110
110
 
111
111
  ## Security and performance notes
@@ -10,11 +10,11 @@ the release tree before cutting 1.0. The decision to cut 1.0 stays with the
10
10
  operator after operator-gated legs run in a protected environment and Phase
11
11
  12 demand evidence exists.
12
12
 
13
- Evidence trail: [`docs/_evidence/review-coverage-2026-07-26-phase-11.md`](./_evidence/review-coverage-2026-07-26-phase-11.md)
14
- (addenda 0–9), [`docs/release-and-install.md`](./release-and-install.md),
15
- [`docs/migration.md`](./migration.md), [`docs/performance.md`](./performance.md),
16
- [`docs/public-contracts.md`](./public-contracts.md) (frozen 0.1.x contract).
17
- The per-phase review-coverage evidence archive lives in [`docs/_evidence/`](./_evidence/)
13
+ Evidence trail: [`docs/_evidence/review-coverage-2026-07-26-phase-11.md`](.././_evidence/review-coverage-2026-07-26-phase-11.md)
14
+ (addenda 0–9), [`docs/release-and-install.md`](.././release-and-install.md),
15
+ [`docs/migration.md`](.././migration.md), [`docs/performance.md`](.././performance.md),
16
+ [`docs/public-contracts.md`](.././public-contracts.md) (frozen 0.1.x contract).
17
+ The per-phase review-coverage evidence archive lives in [`docs/_evidence/`](.././_evidence/)
18
18
  (plans 067–079, releases 0.0.4–0.0.16; tarball-excluded, kept in-repo for audit).
19
19
  Historical release lines (0.0.16 floor → 0.0.27 Phase 10 ACP interop → 0.1.0)
20
20
  keep their per-phase evidence in the pages above; this page records the 0.2.6
@@ -82,7 +82,7 @@ material in published artifacts) and exact version-range drift. A genuine break
82
82
  requires `--allow-break` **and** a `docs/migration.md` entry mentioning the
83
83
  version. The frozen 0.1.x contract (declaration/exports, events, protocol
84
84
  payloads, migration checksums, patch-release compatibility promise) is
85
- published in [docs/public-contracts.md](public-contracts.md).
85
+ published in [docs/public-contracts.md](../public-contracts.md).
86
86
 
87
87
  **Baseline maintenance:** `scripts/compat-baseline/` must stay committed.
88
88
  Regenerate only after review with `node scripts/release.mjs gate --update-baseline`,
@@ -0,0 +1,11 @@
1
+ # Documentation archive
2
+
3
+ Historical records kept verbatim for audit and freeze tests. Not read on the
4
+ hot path — do not link these pages from current-contract docs; link the live
5
+ page instead and note the archive where provenance matters.
6
+
7
+ - `migration-0.0.md` … `migration-0.4.md`: per-era release migrations (the live [migration guide](../migration.md) keeps 0.5.x only).
8
+ - `release-handoffs.md`: operator publish handoffs per release line (the live [release and install](../release-and-install.md) page keeps current install, inventory, gates, and peer policy).
9
+ - `migrate-to-0.4.md`: retired 0.3-era package reorganization guide (current line: [migrate-to-0.5.md](../migrate-to-0.5.md)).
10
+ - `0.1.0-readiness.md`: frozen 0.1.x readiness record.
11
+ - `persistence-credentials-multimodality-primitives.md`, `workflow-orchestration-primitives.md`, `workflow-tui-primitives.md`: plan-era primitive-review inventories.
@@ -306,7 +306,7 @@ API page says so.
306
306
 
307
307
  ## Related APIs
308
308
 
309
- - [Release and install](release-and-install.md): package contents, peer rules, and publication.
310
- - [Migration guide](migration.md): migration history for prior releases.
311
- - [Provider packages](provider-packages.md): provider adapter behavior.
312
- - [Host security guide](host-security.md): preserve host trust boundaries while upgrading.
309
+ - [Release and install](../release-and-install.md): package contents, peer rules, and publication.
310
+ - [Migration guide](../migration.md): migration history for prior releases.
311
+ - [Provider packages](../provider-packages.md): provider adapter behavior.
312
+ - [Host security guide](../host-security.md): preserve host trust boundaries while upgrading.