@rulvar/store-conformance 1.3.1 → 1.4.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/README.md ADDED
@@ -0,0 +1,29 @@
1
+ # @rulvar/store-conformance
2
+
3
+ The executable conformance kit for rulvar store adapters: append
4
+ atomicity, total per-run order, read-your-writes, payload opacity, lease
5
+ fencing, and golden fold-state fixtures. If you implement a custom
6
+ store, this suite is the contract your implementation must pass. Exports
7
+ `journalStoreConformance`, `leasableStoreConformance`, and
8
+ `registerConformance`.
9
+
10
+ Part of [rulvar](https://rulvar.com), an embeddable TypeScript engine
11
+ for durable, budget-bounded multi-agent LLM workflows, where a completed
12
+ LLM call is never paid for twice. Full documentation:
13
+ [docs.rulvar.com](https://docs.rulvar.com).
14
+
15
+ ## Install
16
+
17
+ ```bash
18
+ pnpm add -D @rulvar/store-conformance
19
+ ```
20
+
21
+ ## Documentation
22
+
23
+ - [Store authors](https://docs.rulvar.com/guide/store-authors)
24
+ - [Stores](https://docs.rulvar.com/guide/stores)
25
+ - [API reference](https://docs.rulvar.com/api/%40rulvar/store-conformance/)
26
+
27
+ ## License
28
+
29
+ [Apache-2.0](https://github.com/o-stepper/rulvar/blob/main/LICENSE)
package/dist/index.js CHANGED
@@ -362,6 +362,13 @@ function journalStoreConformance(mk) {
362
362
  ensure(byName.length === 1 && byName[0]?.runId === "other-run", "meta-separation", "listRuns must honor the name filter");
363
363
  const byTag = await store.listRuns({ tags: ["team:core"] });
364
364
  ensure(byTag.length === 1 && byTag[0]?.runId === RUN$1, "meta-separation", "listRuns must honor the tags filter");
365
+ await store.putMeta(meta(RUN$1, {
366
+ status: "suspended",
367
+ name: "wf-a",
368
+ tags: ["team:core"],
369
+ budgetUsd: 12.5
370
+ }));
371
+ ensure((await store.listRuns()).find((candidate) => candidate.runId === RUN$1)?.budgetUsd === 12.5, "meta-separation", "putMeta/listRuns must round-trip optional RunMeta fields (budgetUsd)");
365
372
  await store.delete(RUN$1);
366
373
  ensure((await store.load(RUN$1)).length === 0 && !(await store.listRuns()).some((candidate) => candidate.runId === RUN$1), "meta-separation", "delete must remove the journal and the meta record");
367
374
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rulvar/store-conformance",
3
- "version": "1.3.1",
3
+ "version": "1.4.0",
4
4
  "description": "rulvar executable store conformance kit (DEF-4).",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -22,7 +22,7 @@
22
22
  "access": "public"
23
23
  },
24
24
  "dependencies": {
25
- "@rulvar/core": "1.3.1"
25
+ "@rulvar/core": "1.4.0"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/node": "^22.20.0",