trellis 3.2.2 → 3.2.3

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.
Files changed (39) hide show
  1. package/dist/browser/index.js +4 -4
  2. package/dist/{chunk-2W3MHTMG.js → chunk-2AACZRII.js} +122 -3
  3. package/dist/{chunk-H6JB3PZ3.js → chunk-5KSGGKET.js} +1 -1
  4. package/dist/{chunk-J2TXUFCZ.js → chunk-6RWGFC3N.js} +134 -20
  5. package/dist/{chunk-7ZFRVCUE.js → chunk-NWSW5YNS.js} +28 -14
  6. package/dist/{deploy-cli-C35HTITO.js → cli/deploy-cli.js} +5 -5
  7. package/dist/cli/index.js +5 -5
  8. package/dist/client/index.browser.js +2 -2
  9. package/dist/client/index.js +1 -1
  10. package/dist/client/sdk.browser.d.ts +28 -1
  11. package/dist/client/sdk.browser.d.ts.map +1 -1
  12. package/dist/client/sdk.browser.js +1 -1
  13. package/dist/client/sdk.js +1 -1
  14. package/dist/core/index.js +6 -6
  15. package/dist/db/index.js +5 -5
  16. package/dist/react/index.js +2 -2
  17. package/dist/react/schema-hooks.js +2 -2
  18. package/dist/server/cors.d.ts +13 -0
  19. package/dist/server/cors.d.ts.map +1 -0
  20. package/dist/server/deploy.d.ts +1 -1
  21. package/dist/server/deploy.d.ts.map +1 -1
  22. package/dist/server/deploy.js +9 -0
  23. package/dist/server/index.js +9 -9
  24. package/dist/server/server.d.ts.map +1 -1
  25. package/dist/{server-ZVWGLLRF.js → server-OGVWNDNK.js} +1 -1
  26. package/package.json +2 -2
  27. package/dist/chunk-FF36CQHZ.js +0 -61
  28. package/dist/chunk-IZX2PLIB.js +0 -1240
  29. package/dist/chunk-KIJITUZB.js +0 -419
  30. package/dist/chunk-SGMDTWJJ.js +0 -149
  31. package/dist/chunk-UQISRW6T.js +0 -203
  32. package/dist/db/trellis.css +0 -1
  33. package/dist/deploy-LQ7GUGJ5.js +0 -9
  34. package/dist/deploy-YNVG5E4E.js +0 -9
  35. package/dist/deploy-cli-24BCHAXY.js +0 -67
  36. package/dist/server-MB3OPSPI.js +0 -18
  37. package/dist/sprites-RU3E4XQN.js +0 -15
  38. package/dist/tenancy-NBLLGCNJ.js +0 -14
  39. /package/dist/{chunk-QB5ISE47.js → chunk-7DUMWO5L.js} +0 -0
package/dist/db/index.js CHANGED
@@ -1,8 +1,5 @@
1
1
  import "../chunk-PZ4XYZ4J.js";
2
2
  import "../chunk-UZRUP7QW.js";
3
- import {
4
- deploy
5
- } from "../chunk-7ZFRVCUE.js";
6
3
  import {
7
4
  ADMIN_ONLY,
8
5
  ANONYMOUS,
@@ -20,7 +17,7 @@ import {
20
17
  signJwt,
21
18
  startServer,
22
19
  verifyJwt
23
- } from "../chunk-2W3MHTMG.js";
20
+ } from "../chunk-2AACZRII.js";
24
21
  import {
25
22
  DEFAULT_TENANT,
26
23
  TenantPool
@@ -29,6 +26,9 @@ import {
29
26
  importFile,
30
27
  importRecords
31
28
  } from "../chunk-MLC5BUYO.js";
29
+ import {
30
+ deploy
31
+ } from "../chunk-NWSW5YNS.js";
32
32
  import "../chunk-CAG4FULI.js";
33
33
  import "../chunk-6GEZ6DN5.js";
34
34
  import {
@@ -43,7 +43,7 @@ import {
43
43
  import {
44
44
  FetchError,
45
45
  TrellisDb
46
- } from "../chunk-QB5ISE47.js";
46
+ } from "../chunk-7DUMWO5L.js";
47
47
  import "../chunk-L5N5PR2S.js";
48
48
  import "../chunk-GU374KWZ.js";
49
49
  import "../chunk-J3WYZO3Q.js";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  TrellisProvider,
3
3
  useTrellis
4
- } from "../chunk-H6JB3PZ3.js";
4
+ } from "../chunk-5KSGGKET.js";
5
5
  import {
6
6
  usePresence,
7
7
  useRoom,
8
8
  useSignal
9
9
  } from "../chunk-O2AV5WMN.js";
10
- import "../chunk-J2TXUFCZ.js";
10
+ import "../chunk-6RWGFC3N.js";
11
11
  import "../chunk-KFQGP6VL.js";
12
12
 
13
13
  // src/react/hooks.ts
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  useTrellis
3
- } from "../chunk-H6JB3PZ3.js";
3
+ } from "../chunk-5KSGGKET.js";
4
4
  import {
5
5
  useSignal
6
6
  } from "../chunk-O2AV5WMN.js";
@@ -8,11 +8,11 @@ import {
8
8
  liveEntities,
9
9
  liveEntity
10
10
  } from "../chunk-J3WYZO3Q.js";
11
+ import "../chunk-6RWGFC3N.js";
11
12
  import {
12
13
  entityMutations
13
14
  } from "../chunk-USEINYUL.js";
14
15
  import "../chunk-JUEMDWLU.js";
15
- import "../chunk-J2TXUFCZ.js";
16
16
  import {
17
17
  Signal
18
18
  } from "../chunk-UBGUDMUV.js";
@@ -0,0 +1,13 @@
1
+ /**
2
+ * CORS for browser clients hitting a remote room node (TurtleDB Cloud C0 / deploy).
3
+ *
4
+ * Enabled when `TRELLIS_CORS_ORIGINS` is set, or when the server uses an API key
5
+ * (typical deployed Sprite). Set `TRELLIS_CORS_ORIGINS=*` to allow any origin.
6
+ *
7
+ * @module trellis/server
8
+ */
9
+ export declare function corsEnabledForConfig(apiKey?: string): boolean;
10
+ export declare function corsHeaders(req: Request): Record<string, string>;
11
+ export declare function withCors(req: Request, res: Response): Response;
12
+ export declare function corsPreflightResponse(req: Request): Response;
13
+ //# sourceMappingURL=cors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../../src/server/cors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAE7D;AAQD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBhE;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,QAAQ,CAU9D;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,QAAQ,CAK5D"}
@@ -10,7 +10,7 @@
10
10
  * 1. Bundle the server entrypoint with Bun
11
11
  * 2. Create or wake the target Sprite via `sprite exec`
12
12
  * 3. Upload the bundle + SQLite file (if seeding)
13
- * 4. Install dependencies and start the server as a detached session
13
+ * 4. Install Bun and register the server via `sprite-env services` (port 8080)
14
14
  * 5. Write the resulting URL + API key back to .trellis-db.json
15
15
  *
16
16
  * Prerequisites:
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/server/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAwBH,MAAM,WAAW,aAAa;IAC5B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAqFvE"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/server/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA0BH,MAAM,WAAW,aAAa;IAC5B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CA4FvE"}
@@ -0,0 +1,9 @@
1
+ import {
2
+ deploy
3
+ } from "../chunk-NWSW5YNS.js";
4
+ import "../chunk-CAG4FULI.js";
5
+ import "../chunk-JA7AIHRK.js";
6
+ import "../chunk-KFQGP6VL.js";
7
+ export {
8
+ deploy
9
+ };
@@ -12,14 +12,6 @@ import {
12
12
  trackSprite,
13
13
  untrackSprite
14
14
  } from "../chunk-UZRUP7QW.js";
15
- import {
16
- DeployNameError,
17
- SPRITE_PUBLIC_HTTP_PORT,
18
- buildDeployUrl,
19
- deploy,
20
- normalizeDeployName,
21
- validateDeployName
22
- } from "../chunk-7ZFRVCUE.js";
23
15
  import {
24
16
  ADMIN_ONLY,
25
17
  ANONYMOUS,
@@ -43,7 +35,7 @@ import {
43
35
  startServerCrossRuntime,
44
36
  verifyAdminKey,
45
37
  verifyJwt
46
- } from "../chunk-2W3MHTMG.js";
38
+ } from "../chunk-2AACZRII.js";
47
39
  import {
48
40
  DEFAULT_TENANT,
49
41
  TenantPool,
@@ -53,6 +45,14 @@ import {
53
45
  importFile,
54
46
  importRecords
55
47
  } from "../chunk-MLC5BUYO.js";
48
+ import {
49
+ DeployNameError,
50
+ SPRITE_PUBLIC_HTTP_PORT,
51
+ buildDeployUrl,
52
+ deploy,
53
+ normalizeDeployName,
54
+ validateDeployName
55
+ } from "../chunk-NWSW5YNS.js";
56
56
  import {
57
57
  SPRITE_ENSURE_BUN_SH,
58
58
  assertSpriteCli,
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAcH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAU/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAQ3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAM5D,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,EAAE,aAAa,CAAC,CAAC;CACpE;AAMD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,iBAAiB,CAAC,CAE5B;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,oBAAc,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAcH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAU/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAQ3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAW5D,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,EAAE,aAAa,CAAC,CAAC;CACpE;AAMD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,iBAAiB,CAAC,CAE5B;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,oBAAc,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  startServer,
3
3
  startServerCrossRuntime
4
- } from "./chunk-2W3MHTMG.js";
4
+ } from "./chunk-2AACZRII.js";
5
5
  import "./chunk-JHHEXEDM.js";
6
6
  import "./chunk-44FFQKQX.js";
7
7
  import "./chunk-JUEMDWLU.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trellis",
3
- "version": "3.2.2",
3
+ "version": "3.2.3",
4
4
  "description": "Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -213,7 +213,7 @@
213
213
  "cli": "tsx src/cli/index.ts",
214
214
  "mcp": "tsx src/mcp/index.ts",
215
215
  "mcp:docs": "tsx src/mcp/docs.ts",
216
- "build": "esbuild src/index.ts src/browser/index.ts src/core/index.ts src/vcs/index.ts src/sync/index.ts src/realtime/index.ts src/embeddings/index.ts src/links/index.ts src/decisions/index.ts src/server/index.ts src/client/index.ts src/client/index.browser.ts src/client/sdk.ts src/client/sdk.browser.ts src/schema/index.ts src/react/index.ts src/react/realtime.ts src/react/schema-hooks.ts src/vue/index.ts src/vue/schema-hooks.ts src/svelte/index.ts src/svelte/schema-hooks.ts src/db/index.ts src/cli/index.ts src/cms/index.ts src/core/persist/sqljs-backend.ts src/core/persist/factory.ts src/server/node-adapter.ts src/plugins/plan-approval/index.ts src/plugins/proactive-watcher/index.ts src/plugins/idea-garden/index.ts src/plugins/agent-memory/index.ts --bundle --outdir=dist --outbase=src --format=esm --splitting --platform=node --external:@xenova/transformers --external:@huggingface/transformers --external:react --external:vue --external:sql.js --external:ws --external:better-sqlite3 --external:bun:sqlite --external:commander --external:chalk --external:@inquirer/prompts --external:zod && npm run build:realtime-bundle && mkdir -p dist/ui && cp src/ui/client.html dist/ui/client.html && tsc -p tsconfig.build.json --emitDeclarationOnly --noEmit false --noEmitOnError false && npm run build:inspector",
216
+ "build": "esbuild src/index.ts src/browser/index.ts src/core/index.ts src/vcs/index.ts src/sync/index.ts src/realtime/index.ts src/embeddings/index.ts src/links/index.ts src/decisions/index.ts src/server/index.ts src/server/deploy.ts src/client/index.ts src/client/index.browser.ts src/client/sdk.ts src/client/sdk.browser.ts src/schema/index.ts src/react/index.ts src/react/realtime.ts src/react/schema-hooks.ts src/vue/index.ts src/vue/schema-hooks.ts src/svelte/index.ts src/svelte/schema-hooks.ts src/db/index.ts src/cli/index.ts src/cli/deploy-cli.ts src/cms/index.ts src/core/persist/sqljs-backend.ts src/core/persist/factory.ts src/server/node-adapter.ts src/plugins/plan-approval/index.ts src/plugins/proactive-watcher/index.ts src/plugins/idea-garden/index.ts src/plugins/agent-memory/index.ts --bundle --outdir=dist --outbase=src --format=esm --splitting --platform=node --external:@xenova/transformers --external:@huggingface/transformers --external:react --external:vue --external:sql.js --external:ws --external:better-sqlite3 --external:bun:sqlite --external:commander --external:chalk --external:@inquirer/prompts --external:zod && npm run build:realtime-bundle && mkdir -p dist/ui && cp src/ui/client.html dist/ui/client.html && tsc -p tsconfig.build.json --emitDeclarationOnly --noEmit false --noEmitOnError false && npm run build:inspector",
217
217
  "build:realtime-bundle": "esbuild src/realtime/index.ts --bundle --format=esm --platform=browser --outfile=dist/realtime.bundle.js && esbuild src/realtime/relay-persistence.ts --bundle --format=esm --platform=node --outfile=dist/realtime/relay-persistence.js",
218
218
  "build:state-demo-bundle": "esbuild demo/state-demo/entry.ts --bundle --format=esm --platform=browser --outfile=dist/state-demo.bundle.js",
219
219
  "build:inspector": "vite build --config vite.inspector.config.ts",
@@ -1,61 +0,0 @@
1
- // src/server/sprites.ts
2
- import { execFile, spawn } from "child_process";
3
- import { promisify } from "util";
4
- var execFileAsync = promisify(execFile);
5
- async function runSpriteCmd(args) {
6
- try {
7
- const { stdout } = await execFileAsync("sprite", args);
8
- return stdout.trim();
9
- } catch (err) {
10
- throw new Error(
11
- `sprite ${args[0]} failed (exit ${err.code ?? "?"}): ${err.stderr ?? err.message}`
12
- );
13
- }
14
- }
15
- async function runSpriteCopy(localPath, spriteName, remotePath) {
16
- try {
17
- await execFileAsync("sprite", [
18
- "cp",
19
- localPath,
20
- `${spriteName}:${remotePath}`
21
- ]);
22
- } catch (err) {
23
- throw new Error(
24
- `sprite cp failed (exit ${err.code ?? "?"}): ${err.stderr ?? err.message}`
25
- );
26
- }
27
- }
28
- async function runSpriteInteractive(args) {
29
- return new Promise((resolve, reject) => {
30
- const proc = spawn("sprite", args, { stdio: "inherit" });
31
- proc.on("close", (code) => {
32
- if (code !== 0)
33
- reject(new Error(`sprite ${args[0]} failed (exit ${code})`));
34
- else resolve();
35
- });
36
- proc.on("error", reject);
37
- });
38
- }
39
- async function assertSpriteCli() {
40
- await runSpriteCmd(["--version"]).catch(() => {
41
- throw new Error(
42
- "`sprite` CLI not found. Install it from https://docs.sprites.dev and authenticate."
43
- );
44
- });
45
- }
46
- function resolveSprite(explicitName) {
47
- if (explicitName) {
48
- return explicitName;
49
- }
50
- throw new Error(
51
- "No sprite specified. Use --sprite <name> or set an active sprite with `trellis vm use <name>`"
52
- );
53
- }
54
-
55
- export {
56
- runSpriteCmd,
57
- runSpriteCopy,
58
- runSpriteInteractive,
59
- assertSpriteCli,
60
- resolveSprite
61
- };