From 93ade5211b30e7e83bbe883dc888cf72be47914c Mon Sep 17 00:00:00 2001 From: Adam Zvada Date: Tue, 29 Sep 2026 13:32:50 +0200 Subject: [PATCH 1/2] Resolve npm release artifact as a local tarball --- .github/workflows/publish.yml | 2 +- docs/releasing.md | 6 +++++- packages/cli/package.json | 2 +- packages/client/package.json | 2 +- packages/core/package.json | 2 +- packages/eval/package.json | 2 +- packages/feedback/package.json | 2 +- packages/feedback/src/index.ts | 2 +- packages/firestore/package.json | 2 +- packages/fluiddb/package.json | 2 +- packages/mcp/package.json | 2 +- packages/mcp/src/server.ts | 2 +- packages/postgres/package.json | 2 +- packages/providers/package.json | 2 +- packages/schema/package.json | 2 +- packages/skills/package.json | 2 +- packages/sql/package.json | 2 +- packages/worker/package.json | 2 +- 18 files changed, 22 insertions(+), 18 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 672be22..1f4e8d1 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -38,7 +38,7 @@ jobs: shopt -s nullglob artifacts=(release/*.tgz) test "${#artifacts[@]}" -eq 1 - npm publish "${artifacts[0]}" --access public --tag next --ignore-scripts --registry=https://registry.npmjs.org/ + npm publish "./${artifacts[0]}" --access public --tag next --ignore-scripts --registry=https://registry.npmjs.org/ verify-registry: needs: publish diff --git a/docs/releasing.md b/docs/releasing.md index b68ee30..8d7b6cb 100644 --- a/docs/releasing.md +++ b/docs/releasing.md @@ -151,7 +151,11 @@ incomplete older chunk formats, and report source drift during read-only inspect against an unpublished version or a local tarball dependency. Preview publication and code merge do not deploy the API, migrate production accounts, or upload TestFlight. -## Batch-save release candidate: 1.0.0-next.5 +## Batch-save release candidate: 1.0.0-next.6 + +The `v1.0.0-next.5` tag passed verification but did not publish: npm interpreted the unprefixed artifact path +as a GitHub repository. The publishing command now prefixes local paths with `./`. The failed tag is retained; +`next.6` carries the same SDK implementation and is the next release attempt. This candidate adds bounded independent `rememberMany` saves across the SDK and HTTP service. A batch preserves individual source sessions, dates, pinning and retry identity while sharing embedding work and one atomic diff --git a/packages/cli/package.json b/packages/cli/package.json index 28cd7e0..6323f97 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/cli", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB feedback and portable memory skills from the command line", "type": "module", "exports": { diff --git a/packages/client/package.json b/packages/client/package.json index 5eebc43..66c92d1 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/client", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "A typed client for the FluidDB HTTP API", "type": "module", "exports": { diff --git a/packages/core/package.json b/packages/core/package.json index a88c37f..9a27010 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/core", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB core: the ports and the memory (windows, statements, links, dossier, picker, detector)", "type": "module", "exports": { diff --git a/packages/eval/package.json b/packages/eval/package.json index e347a7f..1713420 100644 --- a/packages/eval/package.json +++ b/packages/eval/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/eval", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Portable FluidDB SDK evaluation and paired component comparisons", "type": "module", "exports": { diff --git a/packages/feedback/package.json b/packages/feedback/package.json index dd1f1f2..d24a733 100644 --- a/packages/feedback/package.json +++ b/packages/feedback/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/feedback", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Explicit FluidDB feedback and failed-task reports through HiveNet", "type": "module", "exports": { diff --git a/packages/feedback/src/index.ts b/packages/feedback/src/index.ts index 08008a3..0e013e8 100644 --- a/packages/feedback/src/index.ts +++ b/packages/feedback/src/index.ts @@ -104,7 +104,7 @@ async function responseBody(response: Response) { export function create(options: Options = {}): Service { const client = z.strictObject({ name: text(64), version: text(32) }).parse({ name: options.clientName ?? "fluiddb-sdk", - version: options.clientVersion ?? "1.0.0-next.5", + version: options.clientVersion ?? "1.0.0-next.6", }) const timeoutMs = options.timeoutMs ?? 10_000 if (!Number.isSafeInteger(timeoutMs) || timeoutMs < 1) throw new Error("Feedback timeout must be a positive integer") diff --git a/packages/firestore/package.json b/packages/firestore/package.json index f9183bf..9f54e59 100644 --- a/packages/firestore/package.json +++ b/packages/firestore/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/firestore", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB firestore storage adapter", "type": "module", "exports": { diff --git a/packages/fluiddb/package.json b/packages/fluiddb/package.json index ae350c4..27c464c 100644 --- a/packages/fluiddb/package.json +++ b/packages/fluiddb/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/fluiddb", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Composable conversation memory for AI products and agents", "type": "module", "exports": { diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 93514f9..ee3c0bf 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/mcp", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Person-scoped FluidDB memory tools over MCP stdio and Streamable HTTP", "type": "module", "exports": { diff --git a/packages/mcp/src/server.ts b/packages/mcp/src/server.ts index 28b8ff9..014c48d 100644 --- a/packages/mcp/src/server.ts +++ b/packages/mcp/src/server.ts @@ -84,7 +84,7 @@ export function create(options: Options) { } return { content: [{ type: "text" as const, text }], structuredContent: data } } - const server = new McpServer({ name: "fluiddb", version: "1.0.0-next.5" }, { instructions: guide }) + const server = new McpServer({ name: "fluiddb", version: "1.0.0-next.6" }, { instructions: guide }) registerSkills(server) function tool( name: string, diff --git a/packages/postgres/package.json b/packages/postgres/package.json index 649bf01..58b690a 100644 --- a/packages/postgres/package.json +++ b/packages/postgres/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/postgres", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB postgres storage adapter", "type": "module", "exports": { diff --git a/packages/providers/package.json b/packages/providers/package.json index 951dc33..c8063d3 100644 --- a/packages/providers/package.json +++ b/packages/providers/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/providers", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB providers over fetch: OpenAI-compatible models and embeddings, Jev, and a model in Jev's place", "type": "module", "exports": { diff --git a/packages/schema/package.json b/packages/schema/package.json index ccaff90..bc04037 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/schema", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Contracts for FluidDB: turns, windows, statements, groups, dossiers, recall, API requests", "type": "module", "exports": { diff --git a/packages/skills/package.json b/packages/skills/package.json index 8e1d97b..2758bfd 100644 --- a/packages/skills/package.json +++ b/packages/skills/package.json @@ -1,6 +1,6 @@ { "name": "@fluiddb/skills", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "Portable FluidDB memory and feedback skills with verified MCP manifests", "type": "module", "exports": { diff --git a/packages/sql/package.json b/packages/sql/package.json index 3623c5f..3e272e6 100644 --- a/packages/sql/package.json +++ b/packages/sql/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/sql", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "description": "FluidDB storage on SQLite: rows and vectors in one database, for Durable Objects and bun:sqlite", "type": "module", "exports": { diff --git a/packages/worker/package.json b/packages/worker/package.json index c42e899..3ee533b 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@fluiddb/worker", - "version": "1.0.0-next.5", + "version": "1.0.0-next.6", "private": true, "description": "FluidDB on Cloudflare: the HTTP API, and a Durable Object per person holding their memory", "type": "module", From 6d7d95ac569e0114b7fee2cde1ecc7034246b958 Mon Sep 17 00:00:00 2001 From: Adam Zvada Date: Tue, 29 Sep 2026 13:33:44 +0200 Subject: [PATCH 2/2] Keep release installation guidance independent of preview tags --- docs/releasing.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/docs/releasing.md b/docs/releasing.md index 8d7b6cb..46aaf69 100644 --- a/docs/releasing.md +++ b/docs/releasing.md @@ -1,16 +1,13 @@ # npm release and backend integration -The newest published preview is **one public package, @fluiddb/fluiddb at 1.0.0-next.4**. SDK, adapters, MCP, evaluation, +The public distribution is **one package, @fluiddb/fluiddb**. SDK, adapters, MCP, evaluation, feedback and skills are entry points of that package. The internal workspaces stay private. The maintainer selected this name on 2026-09-28. Local tests do not publish or reserve names. -Install the newest complete preview with `npm install @fluiddb/fluiddb@next`, or pin `1.0.0-next.4` as the backend -does. `next` resolves to `1.0.0-next.4`; `latest` remains `1.0.0-next.1`. Publication succeeded after the maintainer's -fresh passkey check. Registry tarball integrity matches the verified artifact, and a fresh install -with an empty npm cache passed the external Node/NodeNext, MCP/CLI and workerd consumer checks. The backend also -passes its API checks with the exact registry dependency. Receipts and consumer checks are in -`.context/releases/1.0.0-next.4/`; backend evidence is in its `.context/next4-registry-api.log`. Initial registry metadata delays cleared -after processing. +Install the newest complete preview with `npm install @fluiddb/fluiddb@next`, or pin the exact preview your +backend has verified. Check current tags with `npm view @fluiddb/fluiddb dist-tags`. Prereleases are published +to `next`; do not assume `latest` points to the newest preview. Every release must pass the external +Node/NodeNext, MCP/CLI and workerd consumer checks against its actual registry artifact before a backend pins it. ## Names and existing previews @@ -151,13 +148,13 @@ incomplete older chunk formats, and report source drift during read-only inspect against an unpublished version or a local tarball dependency. Preview publication and code merge do not deploy the API, migrate production accounts, or upload TestFlight. -## Batch-save release candidate: 1.0.0-next.6 +## Batch-save preview: 1.0.0-next.6 The `v1.0.0-next.5` tag passed verification but did not publish: npm interpreted the unprefixed artifact path as a GitHub repository. The publishing command now prefixes local paths with `./`. The failed tag is retained; `next.6` carries the same SDK implementation and is the next release attempt. -This candidate adds bounded independent `rememberMany` saves across the SDK and HTTP service. A batch preserves +This preview adds bounded independent `rememberMany` saves across the SDK and HTTP service. A batch preserves individual source sessions, dates, pinning and retry identity while sharing embedding work and one atomic revision-guarded commit. Built-in stores support processed-ID batches; custom Store implementations must support the `Changes.turns` list form before using this API. Corrections continue to use single-save `remember`.