@nwire/store-file 0.9.2 → 0.10.1

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/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## What it does
6
6
 
7
- Persists actor state and projection rows to a single JSON file. Writes are debounced (50 ms) to coalesce bursts; tenant-partitioned. Not a production database — `@nwire/store-mongo` (or future `-postgres`, `-dynamodb`) for prod. Useful for dev/CI without infrastructure.
7
+ Persists actor state and projection rows to a single JSON file. Writes are debounced (50 ms) to coalesce bursts; tenant-partitioned. Not a production database — `@nwire/mongo` (or future `-postgres`, `-dynamodb`) for prod. Useful for dev/CI without infrastructure.
8
8
 
9
9
  ## Install
10
10
 
@@ -58,4 +58,3 @@ export declare class FileSnapshotProjectionView implements ProjectionStore {
58
58
  save<TState = unknown>(name: string, state: TState, tenant?: string): Promise<void>;
59
59
  }
60
60
  export {};
61
- //# sourceMappingURL=file-snapshot-store.d.ts.map
@@ -166,4 +166,3 @@ export class FileSnapshotProjectionView {
166
166
  return this.store.saveProjection(name, state, tenant);
167
167
  }
168
168
  }
169
- //# sourceMappingURL=file-snapshot-store.js.map
@@ -9,8 +9,7 @@
9
9
  * const app = createApp({ modules, actorStore: store, projectionStore: projView })
10
10
  *
11
11
  * Writes are debounced (50ms) to coalesce bursts; survives process restart;
12
- * tenant-partitioned. Not a production database — `@nwire/store-mongo` (or
12
+ * tenant-partitioned. Not a production database — `@nwire/mongo` (or
13
13
  * `-postgres`, `-dynamodb`) for prod. Useful for dev/CI without infrastructure.
14
14
  */
15
15
  export { FileSnapshotStore, FileSnapshotProjectionView } from "./file-snapshot-store.js";
16
- //# sourceMappingURL=store-file.d.ts.map
@@ -9,8 +9,7 @@
9
9
  * const app = createApp({ modules, actorStore: store, projectionStore: projView })
10
10
  *
11
11
  * Writes are debounced (50ms) to coalesce bursts; survives process restart;
12
- * tenant-partitioned. Not a production database — `@nwire/store-mongo` (or
12
+ * tenant-partitioned. Not a production database — `@nwire/mongo` (or
13
13
  * `-postgres`, `-dynamodb`) for prod. Useful for dev/CI without infrastructure.
14
14
  */
15
15
  export { FileSnapshotStore, FileSnapshotProjectionView } from "./file-snapshot-store.js";
16
- //# sourceMappingURL=store-file.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nwire/store-file",
3
- "version": "0.9.2",
3
+ "version": "0.10.1",
4
4
  "description": "Nwire — file-snapshot ActorStore + ProjectionStore. JSON snapshot persisted to disk with debounced writes. Survives process restart; tenant-partitioned. Dev/CI use, not production.",
5
5
  "keywords": [
6
6
  "actor-store",
@@ -30,14 +30,14 @@
30
30
  "access": "public"
31
31
  },
32
32
  "dependencies": {
33
- "@nwire/forge": "0.9.2"
33
+ "@nwire/forge": "0.10.1"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/node": "^22.19.9",
37
37
  "typescript": "^5.9.3",
38
38
  "vitest": "^4.0.18",
39
39
  "zod": "^4.0.0",
40
- "@nwire/messages": "0.9.2"
40
+ "@nwire/messages": "0.10.1"
41
41
  },
42
42
  "scripts": {
43
43
  "build": "tsc && node ../../scripts/fix-dist-extensions.mjs dist",
@@ -1,6 +0,0 @@
1
- /**
2
- * File-snapshot store — persists actor + projection state to disk; survives
3
- * a "process restart" (re-instantiating the store from the same path).
4
- */
5
- export {};
6
- //# sourceMappingURL=store-file.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-file.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/store-file.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,109 +0,0 @@
1
- /**
2
- * File-snapshot store — persists actor + projection state to disk; survives
3
- * a "process restart" (re-instantiating the store from the same path).
4
- */
5
- import { describe, it, expect, beforeEach, afterEach } from "vitest";
6
- import { z } from "zod";
7
- import { tmpdir } from "node:os";
8
- import { join } from "node:path";
9
- import { mkdtemp, rm } from "node:fs/promises";
10
- import { defineEvent } from "@nwire/messages";
11
- import * as forge from "@nwire/forge";
12
- import { FileSnapshotStore, FileSnapshotProjectionView } from "../store-file.js";
13
- const { defineAction, defineActor, defineHandler, defineProjection, eventFactory, Runtime } = forge;
14
- const TodoCreatedEventDef = defineEvent({
15
- name: "todos.created",
16
- schema: z.object({ todoId: z.string(), title: z.string() }),
17
- });
18
- const TodoCreated = eventFactory(TodoCreatedEventDef);
19
- const TodoActorData = z.object({
20
- todoId: z.string(),
21
- title: z.string().optional(),
22
- });
23
- const Todo = defineActor("todo", {
24
- schema: TodoActorData,
25
- key: "todoId",
26
- initial: "open",
27
- states: {
28
- open: {
29
- on: {
30
- [TodoCreated.name]: {
31
- assign: (_, event) => {
32
- const e = event;
33
- return { todoId: e.todoId, title: e.title };
34
- },
35
- },
36
- },
37
- },
38
- },
39
- });
40
- const TodosByOwner = defineProjection("todos-by-owner", {
41
- listens: [TodoCreatedEventDef],
42
- initial: () => ({}),
43
- on: {
44
- [TodoCreatedEventDef.name]: (state, event) => {
45
- const e = event;
46
- return { ...state, [e.todoId]: { todoId: e.todoId, title: e.title } };
47
- },
48
- },
49
- });
50
- const createTodo = defineAction({
51
- name: "todos.create",
52
- schema: z.object({ todoId: z.string(), title: z.string() }),
53
- });
54
- const createTodoHandler = defineHandler(createTodo, async (input) => TodoCreated({ todoId: input.todoId, title: input.title }));
55
- describe("FileSnapshotStore — actor + projection state survives restart", () => {
56
- let tmpDir;
57
- let snapshotPath;
58
- beforeEach(async () => {
59
- tmpDir = await mkdtemp(join(tmpdir(), "amit-snapshot-"));
60
- snapshotPath = join(tmpDir, "snapshot.json");
61
- });
62
- afterEach(async () => {
63
- await rm(tmpDir, { recursive: true, force: true });
64
- });
65
- it("saves and reloads actor + projection state from the snapshot file", async () => {
66
- const store1 = new FileSnapshotStore(snapshotPath);
67
- const projView1 = new FileSnapshotProjectionView(store1);
68
- const r1 = new Runtime({ actorStore: store1, projectionStore: projView1 });
69
- r1.registerActor(Todo);
70
- r1.registerHandler(createTodoHandler);
71
- r1.registerProjection(TodosByOwner);
72
- await r1.dispatch(createTodo, { todoId: "t-1", title: "Buy milk" });
73
- await r1.dispatch(createTodo, { todoId: "t-2", title: "Walk dog" });
74
- await store1.flush();
75
- // "Restart" — fresh store + runtime against the same file.
76
- const store2 = new FileSnapshotStore(snapshotPath);
77
- const projView2 = new FileSnapshotProjectionView(store2);
78
- const r2 = new Runtime({ actorStore: store2, projectionStore: projView2 });
79
- r2.registerActor(Todo);
80
- r2.registerProjection(TodosByOwner);
81
- const t1 = await store2.load("todo", "t-1");
82
- const t2 = await store2.load("todo", "t-2");
83
- expect(t1).not.toBeNull();
84
- expect(t2).not.toBeNull();
85
- expect((t1?.data).title).toBe("Buy milk");
86
- expect((t2?.data).title).toBe("Walk dog");
87
- const proj = await projView2.load("todos-by-owner");
88
- expect(proj).not.toBeNull();
89
- expect(proj?.["t-1"]?.title).toBe("Buy milk");
90
- expect(proj?.["t-2"]?.title).toBe("Walk dog");
91
- });
92
- it("preserves tenant partitioning across restart", async () => {
93
- const store = new FileSnapshotStore(snapshotPath);
94
- const proj = new FileSnapshotProjectionView(store);
95
- const r = new Runtime({ actorStore: store, projectionStore: proj });
96
- r.registerActor(Todo);
97
- r.registerHandler(createTodoHandler);
98
- const { seedEnvelope } = await import("@nwire/forge");
99
- await r.dispatch(createTodo, { todoId: "t-1", title: "A" }, seedEnvelope({ tenant: "tlv" }));
100
- await r.dispatch(createTodo, { todoId: "t-1", title: "B" }, seedEnvelope({ tenant: "jlm" }));
101
- await store.flush();
102
- const store2 = new FileSnapshotStore(snapshotPath);
103
- const a = await store2.load("todo", "t-1", "tlv");
104
- const b = await store2.load("todo", "t-1", "jlm");
105
- expect((a?.data).title).toBe("A");
106
- expect((b?.data).title).toBe("B");
107
- });
108
- });
109
- //# sourceMappingURL=store-file.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-file.test.js","sourceRoot":"","sources":["../../src/__tests__/store-file.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-snapshot-store.d.ts","sourceRoot":"","sources":["../src/file-snapshot-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,KAAK,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;AACnC,KAAK,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;AAEzC,KAAK,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;AAU7C;;;;GAIG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,YAAY,CAAoC;gBAE5C,IAAI,EAAE,MAAM;IAIxB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;YAIZ,YAAY;IAe1B,OAAO,CAAC,aAAa;YAWP,UAAU;IAMxB;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAWtB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAMxF,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB5C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAK7E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAgBpF,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;IAM9B,cAAc,CAAC,MAAM,GAAG,OAAO,EACnC,cAAc,EAAE,MAAM,EACtB,MAAM,GAAE,MAAW,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOnB,cAAc,CAAC,MAAM,GAAG,OAAO,EACnC,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,MAAW,GAClB,OAAO,CAAC,IAAI,CAAC;CAWjB;AAED;;;;GAIG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,iBAAiB;IAErD,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAG7E,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-snapshot-store.js","sourceRoot":"","sources":["../src/file-snapshot-store.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-file.d.ts","sourceRoot":"","sources":["../src/store-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-file.js","sourceRoot":"","sources":["../src/store-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC"}