@supacloud/compiler 0.47.2 → 0.48.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.
@@ -1 +1 @@
1
- export declare const MIGRATION_APP_VERSION = "0.28.2";
1
+ export declare const MIGRATION_APP_VERSION = "0.29.0";
@@ -44,8 +44,10 @@ export interface MigrationAssessmentResult {
44
44
  sha256?: string;
45
45
  version?: number;
46
46
  commands?: number;
47
+ jobs?: number;
47
48
  routes?: number;
48
49
  permissions?: number;
50
+ features?: number;
49
51
  };
50
52
  openApi?: {
51
53
  baselinePath: string;
@@ -1 +1 @@
1
- export declare const MIGRATION_ELYSIA_VERSION = "0.33.4";
1
+ export declare const MIGRATION_ELYSIA_VERSION = "0.34.0";
package/dist/types.d.ts CHANGED
@@ -288,12 +288,14 @@ export interface ControllerNode {
288
288
  }
289
289
  export interface CommandNode {
290
290
  rpc?: string;
291
+ branches?: CommandBranchNode[];
291
292
  className: string;
292
293
  name: string;
293
294
  permission?: string;
294
295
  transaction: "required" | "none";
295
296
  audit?: string;
296
297
  idempotency: "required" | "none";
298
+ tenantScope?: "required" | "none";
297
299
  /** Automatically registered without manual module declaration. */
298
300
  standalone?: boolean;
299
301
  /** Infrastructure resources this command uses, with the declared operations. */
@@ -301,6 +303,14 @@ export interface CommandNode {
301
303
  /** Explicit aspects applied around this command. */
302
304
  aspects?: AspectRefNode[];
303
305
  }
306
+ export interface CommandBranchNode {
307
+ when: string;
308
+ rpc: string;
309
+ transaction: "required" | "none";
310
+ audit?: string;
311
+ idempotency: "required" | "none";
312
+ boundary?: "database" | "external";
313
+ }
304
314
  export interface JobNode {
305
315
  className: string;
306
316
  name: string;
@@ -322,6 +332,7 @@ export interface JobNode {
322
332
  maxAttempts?: number;
323
333
  /** Adapter-owned idempotency requirement. */
324
334
  idempotency?: JobIdempotency;
335
+ tenantScope?: "required" | "none";
325
336
  /** Infrastructure resources this job uses, with the declared operations. */
326
337
  uses?: InfraResourceUseRef[];
327
338
  aspects?: AspectRefNode[];
@@ -329,6 +340,7 @@ export interface JobNode {
329
340
  export interface QueryNode {
330
341
  className: string;
331
342
  name: string;
343
+ tenantScope?: "required" | "none";
332
344
  }
333
345
  export interface FeatureTransitionNode {
334
346
  name: string;
@@ -337,13 +349,27 @@ export interface FeatureTransitionNode {
337
349
  permission?: string;
338
350
  command?: string;
339
351
  route?: string;
352
+ routeBinding?: "command" | "controller";
340
353
  transaction?: "required" | "none";
341
354
  idempotency?: "required" | "none";
342
355
  audit?: string;
356
+ /** Job that continues the transition after the durable write is committed. */
357
+ job?: string;
358
+ persistence?: FeaturePersistenceNode;
359
+ }
360
+ export interface FeaturePersistenceNode {
361
+ boundary: "database" | "external";
362
+ optimisticLock: "required" | "none";
363
+ versionField?: string;
364
+ tenantField?: string;
365
+ stateField?: string;
366
+ receipt: "required" | "none";
367
+ reconciliation: "required" | "none";
343
368
  }
344
369
  export interface FeatureSpecNode {
345
370
  name: string;
346
371
  states: string[];
372
+ tenantField?: string;
347
373
  transitions: FeatureTransitionNode[];
348
374
  file?: string;
349
375
  line?: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supacloud/compiler",
3
- "version": "0.47.2",
3
+ "version": "0.48.0",
4
4
  "description": "Static compiler for @supacloud/app metadata: builds the application graph from AST, validates it, and generates reflection-free factory code",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -57,8 +57,8 @@
57
57
  "directory": "packages/compiler"
58
58
  },
59
59
  "dependencies": {
60
- "@supacloud/db": "0.18.3",
61
- "@supacloud/delivery": "0.19.3",
60
+ "@supacloud/db": "0.19.0",
61
+ "@supacloud/delivery": "0.20.0",
62
62
  "typebox": "1.3.37",
63
63
  "@graphql-codegen/core": "^6.2.2",
64
64
  "@graphql-codegen/typed-document-node": "^7.2.0",
@@ -68,7 +68,7 @@
68
68
  "graphql": "^16"
69
69
  },
70
70
  "overrides": {
71
- "@supacloud/contracts": "0.11.4",
71
+ "@supacloud/contracts": "0.12.0",
72
72
  "@graphql-tools/utils": "^12.0.4",
73
73
  "@whatwg-node/promise-helpers": "2.0.0"
74
74
  },