@plumbus/ai-bedrock 0.3.0-beta.1 → 0.3.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 +5 -15
- package/README.md +4 -2
- package/dist/.tsbuildinfo +1 -1
- package/dist/bedrock-adapter.d.ts.map +1 -1
- package/dist/bedrock-adapter.js +10 -84
- package/dist/bedrock-adapter.js.map +1 -1
- package/instructions/framework.md +5 -7
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,23 +1,13 @@
|
|
|
1
1
|
# @plumbus/ai-bedrock
|
|
2
2
|
|
|
3
|
-
## 0.3.0
|
|
3
|
+
## 0.3.0 — Stabilization compatibility family
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- Carry Converse/ConverseStream prompt caching from stable 0.2.2 into the beta family, preserving native structured-output schemas and per-call deadlines. Use with core 0.8.0-beta.10.
|
|
8
|
-
|
|
9
|
-
### Fixed
|
|
5
|
+
- Upgrade the framework test toolchain to **Vitest 5.0.4** and require Node 22.12+ on the 22.x line, Node 24.x, or Node 26+.
|
|
10
6
|
|
|
11
|
-
|
|
12
|
-
- **Embeddings honour a per-call timeout.** `embed()` gave every InvokeModel call the adapter's `requestTimeout`, ignoring the request, and a call it ended failed with a bare `AbortError`. `EmbeddingRequest.timeout` (core's RAG `ingest`/`retrieve` and `ctx.ai.retrieve` `timeoutMs`) now sets it, per InvokeModel call, and a call the timeout ends fails with the same `ProviderAPIError` shape as Converse (`Bedrock request timed out after <ms> ms`, `timeoutMs`), which core's `isProviderTimeoutError` recognises.
|
|
13
|
-
- **An unusable timeout is refused before anything is sent.** A `requestTimeout` or request `timeout` that was not a whole number of milliseconds from 1 to 2 147 483 647 went straight to `AbortSignal.timeout`, which threw a bare `RangeError` for `-1`, `1.5` or `NaN` (an `AI_BEDROCK_REQUEST_TIMEOUT` that is not a number), ended the request at once for `0`, and fired after 1 ms above the maximum. `complete()`, `stream()` and `embed()` now fail with core's `AIInvalidRequestError` (`reason: 'timeout_invalid'`) before loading pricing or calling Bedrock, as core's OpenAI and Anthropic adapters do.
|
|
14
|
-
- **Embeddings stop when the caller cancels.** `embed()` ignored the request's signal (core had none on `EmbeddingRequest`), so a cancelled `ctx.ai.retrieve` or RAG `ingest` kept every InvokeModel call running and sent the remaining texts. `embed()` now honours `EmbeddingRequest.signal` (core's new field): the calls in flight are aborted and fail as `complete()` does on a caller abort (the AWS SDK's `AbortError`, the caller's reason as its `cause`), no further text is sent once it fires between texts (rejecting with the caller's reason as raised), and an already-aborted signal rejects with its reason before pricing is loaded or Bedrock is called. Needs the `@plumbus/core` release that adds `EmbeddingRequest.signal`.
|
|
15
|
-
|
|
16
|
-
## 0.3.0-beta.0 — 2026-09-11 — core 0.8 beta family
|
|
17
|
-
|
|
18
|
-
### Upgrade boundary
|
|
7
|
+
Requires the coordinated core 0.8 family. Follow the [stabilization upgrade guide](../../docs/upgrading-stabilization.md) and the installed `node_modules/@plumbus/core/instructions/stabilization.md`; update installed Plumbus packages together.
|
|
19
8
|
|
|
20
|
-
-
|
|
9
|
+
- Update Plumbus peers to `@plumbus/core` `0.8.x`. This minor line makes the compatibility change an explicit upgrade.
|
|
10
|
+
- Refresh package instructions and compatibility guidance for core 0.8 and agent wiring v21. Runtime APIs in this add-on are unchanged.
|
|
21
11
|
|
|
22
12
|
## 0.2.2 — 2026-10-08
|
|
23
13
|
|
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# @plumbus/ai-bedrock
|
|
2
2
|
|
|
3
|
+
Release **0.3.0** belongs to the core 0.8 stabilization family. See the [changelog](./CHANGELOG.md) and [upgrade guide](../../docs/upgrading-stabilization.md) before updating an existing app.
|
|
4
|
+
|
|
3
5
|
> **Amazon Bedrock for [Plumbus](https://github.com/plumbus-framework/plumbus) AI.** Optional AWS SDK adapter for Converse chat, ConverseStream, Titan embeddings, and **package-owned USD cost** from the AWS Price List (or a mounted pricing file).
|
|
4
6
|
|
|
5
7
|
[](https://www.npmjs.com/package/@plumbus/ai-bedrock)
|
|
@@ -46,7 +48,7 @@ An opt-in peer keeps core lean while giving AWS shops a first-class `provider: '
|
|
|
46
48
|
|
|
47
49
|
## Status
|
|
48
50
|
|
|
49
|
-
Optional peer of `@plumbus/core` (
|
|
51
|
+
Optional peer of `@plumbus/core` (version-locked **`0.3.x`**; required peer `@plumbus/core` **`0.8.x`**). **Runtime floor:** `@plumbus/core` **≥ 0.7.0**; prompt caching through `ctx.ai` needs **≥ 0.7.9**. Install alone is not enough until the adapter is registered (env discovery or `createBedrockAdapter`).
|
|
50
52
|
|
|
51
53
|
## Install
|
|
52
54
|
|
|
@@ -134,7 +136,7 @@ Full curl, normalize script, ConfigMap sketch: **[instructions/pricing.md](./ins
|
|
|
134
136
|
- **Missing pricing file** — file mode throws on first call; auto-download failure warns, leaves cost unknown, and backs off 5 minutes before retrying.
|
|
135
137
|
- **Unmapped / unkeyed models** — inference works; **no `cost` field** is set until the pricing file has an explicit family-key row (auto-download is best-effort, not a complete AWS catalog). Core then falls back to its own catalog rather than recording the call as free.
|
|
136
138
|
- **IAM** — Converse itself requires `bedrock:InvokeModel`; do not scope that action to embedding models only.
|
|
137
|
-
- **Wiring** — after install, `plumbus init --patch` (wiring v13+, any core 0.
|
|
139
|
+
- **Wiring** — after install, `plumbus init --patch` (wiring v13+, any core 0.8.x) so agents see `instructions/`.
|
|
138
140
|
|
|
139
141
|
## Documentation / Agent recipes
|
|
140
142
|
|