@cerefox/memory 1.0.7 → 1.0.8

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.
@@ -7184,7 +7184,7 @@ var exports_meta = {};
7184
7184
  __export(exports_meta, {
7185
7185
  PKG_VERSION: () => PKG_VERSION
7186
7186
  });
7187
- var PKG_VERSION = "1.0.7";
7187
+ var PKG_VERSION = "1.0.8";
7188
7188
  var init_meta = () => {};
7189
7189
 
7190
7190
  // ../../node_modules/.bun/tslib@2.8.1/node_modules/tslib/tslib.js
@@ -75039,7 +75039,7 @@ import { homedir as homedir6 } from "node:os";
75039
75039
  import { join as join9 } from "node:path";
75040
75040
 
75041
75041
  // ../../_shared/ef-meta/index.ts
75042
- var EF_VERSION = "1.0.7";
75042
+ var EF_VERSION = "1.0.8";
75043
75043
  var EF_LAST_CHANGED = "1.0.6";
75044
75044
 
75045
75045
  // src/cli/util/checks.ts
@@ -18,7 +18,7 @@
18
18
  * doesn't touch `supabase/functions/` leaves it alone).
19
19
  */
20
20
 
21
- export const EF_VERSION = "1.0.7";
21
+ export const EF_VERSION = "1.0.8";
22
22
 
23
23
  /**
24
24
  * The most recent version whose EF-side SOURCE actually changed (#127).
@@ -544,6 +544,42 @@ Detects fresh vs. existing databases: a fresh DB gets schema + RPCs + migration
544
544
  | `--all` | flag | off | Reindex every chunk regardless of embedder. |
545
545
  | `--dry-run` | flag | off | Count what would be re-embedded; do nothing. |
546
546
 
547
+ > **Reindex refreshes embeddings only.** It rewrites `embedding_primary` on
548
+ > existing chunk rows and never re-chunks, so it cannot change a document's
549
+ > stored `content_format`. Use `server migrate-format` for that (#164).
550
+
551
+ ---
552
+
553
+ ### `cerefox server migrate-format`
554
+
555
+ **Purpose**: convert documents still stored under the legacy chunk-reconstruction
556
+ format to the current one, by re-ingesting them through the normal pipeline
557
+ (re-chunk → re-embed → stamp the current format). `cerefox doctor` reports how
558
+ many documents are affected.
559
+
560
+ **Synopsis**: `cerefox server migrate-format [OPTIONS]`
561
+
562
+ **Options**:
563
+
564
+ | Flag | Type | Default | Description |
565
+ |---|---|---|---|
566
+ | `--dry-run` | flag | off | Report how many documents would convert; write nothing. |
567
+ | `-l, --limit <n>` | int | all | Convert at most N documents (re-run to continue). |
568
+ | `--document-id <uuid>` | string | — | Convert a single document. |
569
+ | `--author <name>` | string | `CEREFOX_AUTHOR_NAME` | Recorded in the audit log per conversion. |
570
+
571
+ **This costs embedding spend** — every converted document is re-embedded — so it
572
+ is opt-in and never runs automatically. Legacy-format documents are *not*
573
+ broken: they reconstruct exactly as they always have, and convert on their own
574
+ the next time they are edited. Each conversion runs under optimistic
575
+ concurrency, so a document edited mid-run is skipped rather than overwritten,
576
+ and documents whose content is byte-identical to another document cannot be
577
+ converted (the ingestion pipeline's dedup check rejects them) — those are
578
+ reported rather than failing the run.
579
+
580
+ **Take a backup first** (`cerefox backup create`). The previous chunks are
581
+ archived as a document version, but version retention defaults to 48 hours.
582
+
547
583
  ---
548
584
 
549
585
  ### `cerefox token generate` / `cerefox token rotate` / `cerefox token list`
@@ -61,7 +61,9 @@ The migration is **lazy and safe**:
61
61
  - Existing documents keep the legacy format and reconstruct **exactly as before** — nothing
62
62
  re-processes, nothing re-embeds.
63
63
  - A document moves to the new format automatically the next time it is edited/saved. To
64
- convert everything now instead, run `cerefox server reindex`.
64
+ convert everything now instead, run `cerefox server migrate-format` (it re-chunks and
65
+ re-embeds, so try `--dry-run` first). **Not `server reindex`** — that refreshes
66
+ embeddings on existing chunks and cannot change the stored format (#164).
65
67
  - `cerefox doctor` shows how many documents still use the legacy format.
66
68
 
67
69
  Details: `cerefox guides show content-format` (or [`content-format.md`](content-format.md)).
@@ -126,7 +126,7 @@ bun scripts/backup_create.ts && bun scripts/db_migrate.ts
126
126
 
127
127
  ## backup_create.ts — Create a backup
128
128
 
129
- Exports all documents, chunks, and metadata to a JSON file in the backup directory. (End users use `cerefox backup create`.)
129
+ Exports all documents, chunks, metadata, **projects and project memberships** to a JSON file in the backup directory. (End users use `cerefox backup create`.)
130
130
 
131
131
  ```bash
132
132
  bun scripts/backup_create.ts [OPTIONS]
@@ -153,7 +153,7 @@ Output: `backup-data/cerefox-20260308T143022Z-before-v2-migration.json`
153
153
 
154
154
  ## backup_restore.ts — Restore from a backup
155
155
 
156
- Restores documents and chunks from a previously created backup file. Idempotent — documents with the same content hash are skipped. (End users use `cerefox backup restore`.)
156
+ Restores documents, chunks, projects and project memberships from a previously created backup file. Idempotent — documents with the same content hash are skipped, and projects/memberships are upserted. Snapshots taken before v1.0.7 contain no memberships; restoring one warns and recreates documents only. (End users use `cerefox backup restore`.)
157
157
 
158
158
  ```bash
159
159
  bun scripts/backup_restore.ts BACKUP_FILE [OPTIONS]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cerefox/memory",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "Cerefox — user-owned shared memory for AI agents. CLI + stdio MCP server + web UI + ingestion for a knowledge base on your own Supabase project (or fully self-hosted with Cerefox Local).",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/fstamatelopoulos/cerefox",