@qlever-llc/trellis 0.10.12 → 0.10.14

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 (101) hide show
  1. package/esm/auth/browser.js +0 -1
  2. package/esm/auth.js +0 -1
  3. package/esm/browser.d.ts +29 -2
  4. package/esm/browser.d.ts.map +1 -1
  5. package/esm/browser.js +14 -3
  6. package/esm/client_connect.d.ts.map +1 -1
  7. package/esm/client_connect.js +7 -3
  8. package/esm/contract_support/mod.d.ts +6 -10
  9. package/esm/contract_support/mod.d.ts.map +1 -1
  10. package/esm/contract_support/mod.js +42 -31
  11. package/esm/contract_support/protocol.d.ts +8 -13
  12. package/esm/contract_support/protocol.d.ts.map +1 -1
  13. package/esm/contract_support/protocol.js +4 -5
  14. package/esm/contract_support/schema_pointers.d.ts +6 -0
  15. package/esm/contract_support/schema_pointers.d.ts.map +1 -1
  16. package/esm/contract_support/schema_pointers.js +59 -7
  17. package/esm/contracts.js +0 -1
  18. package/esm/device.d.ts +0 -29
  19. package/esm/device.d.ts.map +1 -1
  20. package/esm/device.js +10 -1
  21. package/esm/errors/index.js +0 -1
  22. package/esm/index.d.ts +3 -4
  23. package/esm/index.d.ts.map +1 -1
  24. package/esm/index.js +3 -4
  25. package/esm/runtime_transport.d.ts.map +1 -1
  26. package/esm/runtime_transport.js +4 -2
  27. package/esm/server/health_rpc.d.ts +4 -2
  28. package/esm/server/health_rpc.d.ts.map +1 -1
  29. package/esm/server/health_rpc.js +6 -1
  30. package/esm/server/service.d.ts +12 -37
  31. package/esm/server/service.d.ts.map +1 -1
  32. package/esm/server/service.js +138 -103
  33. package/esm/server.js +3 -3
  34. package/esm/service/outbox_inbox.d.ts +1 -6
  35. package/esm/service/outbox_inbox.d.ts.map +1 -1
  36. package/esm/service/outbox_inbox.js +0 -21
  37. package/esm/telemetry/env.d.ts.map +1 -1
  38. package/esm/telemetry/env.js +5 -6
  39. package/esm/telemetry/metrics.d.ts +0 -7
  40. package/esm/telemetry/metrics.d.ts.map +1 -1
  41. package/esm/trellis.d.ts +1 -19
  42. package/esm/trellis.d.ts.map +1 -1
  43. package/esm/trellis.js +12 -8
  44. package/package.json +2 -2
  45. package/script/auth/browser.js +0 -1
  46. package/script/auth.js +0 -1
  47. package/script/browser.d.ts +29 -2
  48. package/script/browser.d.ts.map +1 -1
  49. package/script/browser.js +75 -17
  50. package/script/client_connect.d.ts.map +1 -1
  51. package/script/client_connect.js +7 -36
  52. package/script/contract_support/mod.d.ts +6 -10
  53. package/script/contract_support/mod.d.ts.map +1 -1
  54. package/script/contract_support/mod.js +46 -32
  55. package/script/contract_support/protocol.d.ts +8 -13
  56. package/script/contract_support/protocol.d.ts.map +1 -1
  57. package/script/contract_support/protocol.js +5 -6
  58. package/script/contract_support/schema_pointers.d.ts +6 -0
  59. package/script/contract_support/schema_pointers.d.ts.map +1 -1
  60. package/script/contract_support/schema_pointers.js +59 -7
  61. package/script/contracts.js +0 -1
  62. package/script/device.d.ts +0 -29
  63. package/script/device.d.ts.map +1 -1
  64. package/script/device.js +10 -1
  65. package/script/errors/index.js +0 -1
  66. package/script/index.d.ts +3 -4
  67. package/script/index.d.ts.map +1 -1
  68. package/script/index.js +1 -6
  69. package/script/runtime_transport.d.ts.map +1 -1
  70. package/script/runtime_transport.js +4 -2
  71. package/script/server/health_rpc.d.ts +4 -2
  72. package/script/server/health_rpc.d.ts.map +1 -1
  73. package/script/server/health_rpc.js +6 -1
  74. package/script/server/service.d.ts +12 -37
  75. package/script/server/service.d.ts.map +1 -1
  76. package/script/server/service.js +148 -112
  77. package/script/server.js +3 -3
  78. package/script/service/outbox_inbox.d.ts +1 -6
  79. package/script/service/outbox_inbox.d.ts.map +1 -1
  80. package/script/service/outbox_inbox.js +0 -21
  81. package/script/telemetry/env.d.ts.map +1 -1
  82. package/script/telemetry/env.js +5 -39
  83. package/script/telemetry/metrics.d.ts +0 -7
  84. package/script/telemetry/metrics.d.ts.map +1 -1
  85. package/script/trellis.d.ts +1 -19
  86. package/script/trellis.d.ts.map +1 -1
  87. package/script/trellis.js +12 -8
  88. package/src/browser.ts +200 -2
  89. package/src/client_connect.ts +10 -2
  90. package/src/contract_support/mod.ts +73 -45
  91. package/src/contract_support/protocol.ts +16 -7
  92. package/src/contract_support/schema_pointers.ts +80 -7
  93. package/src/device.ts +10 -2
  94. package/src/index.ts +3 -4
  95. package/src/runtime_transport.ts +6 -1
  96. package/src/server/health_rpc.ts +7 -2
  97. package/src/server/service.ts +177 -126
  98. package/src/server.ts +3 -3
  99. package/src/service/outbox_inbox.ts +1 -28
  100. package/src/telemetry/env.ts +10 -7
  101. package/src/trellis.ts +22 -13
@@ -61,12 +61,11 @@ export const ContractJobQueueSchema = Type.Object({
61
61
  docs: Type.Optional(ContractDocsSchema),
62
62
  });
63
63
  export const ContractJobsSchema = Type.Record(Type.String({ minLength: 1 }), ContractJobQueueSchema);
64
- export const ContractEventConsumerEventSchema = Type.Object({
65
- use: Type.String({ minLength: 1 }),
66
- event: Type.String({ minLength: 1 }),
67
- });
64
+ export const ContractEventConsumerUsesSchema = Type.Record(Type.String({ minLength: 1 }), Type.Array(Type.String({ minLength: 1 }), { minItems: 1 }));
65
+ export const ContractEventConsumerSelfSchema = Type.Array(Type.String({ minLength: 1 }));
68
66
  export const ContractEventConsumerGroupSchema = Type.Object({
69
- events: Type.Array(ContractEventConsumerEventSchema, { minItems: 1 }),
67
+ uses: Type.Optional(ContractEventConsumerUsesSchema),
68
+ self: Type.Optional(ContractEventConsumerSelfSchema),
70
69
  replay: Type.Optional(Type.Union([
71
70
  Type.Literal("new"),
72
71
  Type.Literal("all"),
@@ -12,7 +12,13 @@ type ScalarPointerPaths<T, Prefix extends string, Depth extends number> = Depth
12
12
  [K in Extract<keyof T, string>]-?: NonNullable<T[K]> extends TokenPrimitive ? JoinPointer<Prefix, K> : ScalarPointerPaths<NonNullable<T[K]>, JoinPointer<Prefix, K>, Dec[Depth]>;
13
13
  }[Extract<keyof T, string>] : never;
14
14
  export type ScalarJsonPointer<T> = ScalarPointerPaths<T, "", 6> extends infer P ? P extends SubjectParam ? P : never : never;
15
+ /**
16
+ * Returns the first schema node reachable by following a payload JSON Pointer.
17
+ */
15
18
  export declare function getSubschemaAtDataPointer(schema: unknown, pointer: string): unknown | undefined;
19
+ /**
20
+ * Verifies that event subject parameter pointers resolve to tokenable schemas.
21
+ */
16
22
  export declare function assertDataPointersExistAndAreTokenable(name: string, schema: unknown, pointers: readonly string[]): void;
17
23
  export {};
18
24
  //# sourceMappingURL=schema_pointers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema_pointers.d.ts","sourceRoot":"","sources":["../../src/contract_support/schema_pointers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema_pointers.d.ts","sourceRoot":"","sources":["../../src/contract_support/schema_pointers.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,53 @@ function isJsonObject(value) {
4
4
  function decodeJsonPointerSegment(segment) {
5
5
  return segment.replaceAll("~1", "/").replaceAll("~0", "~");
6
6
  }
7
- function resolveSubschema(schema, segments) {
7
+ function pointerResolution(found, schemas) {
8
+ return { found, schemas };
9
+ }
10
+ function collectSubschemas(schema, segments) {
11
+ if (segments.length === 0)
12
+ return pointerResolution(true, [schema]);
13
+ if (!isJsonObject(schema))
14
+ return pointerResolution(false, []);
15
+ const resolved = [];
16
+ let found = false;
17
+ const properties = schema.properties;
18
+ const segment = segments[0];
19
+ if (segment !== undefined && isJsonObject(properties) &&
20
+ Object.hasOwn(properties, segment)) {
21
+ const direct = collectSubschemas(properties[segment], segments.slice(1));
22
+ found = found || direct.found;
23
+ resolved.push(...direct.schemas);
24
+ }
25
+ const allOf = schema.allOf;
26
+ if (Array.isArray(allOf)) {
27
+ for (const branch of allOf) {
28
+ const branchResult = collectSubschemas(branch, segments);
29
+ found = found || branchResult.found;
30
+ resolved.push(...branchResult.schemas);
31
+ }
32
+ }
33
+ for (const key of ["anyOf", "oneOf"]) {
34
+ const variants = schema[key];
35
+ if (!Array.isArray(variants) || variants.length === 0)
36
+ continue;
37
+ const variantSchemas = [];
38
+ let everyVariantResolved = true;
39
+ for (const variant of variants) {
40
+ const variantResult = collectSubschemas(variant, segments);
41
+ if (!variantResult.found) {
42
+ everyVariantResolved = false;
43
+ break;
44
+ }
45
+ variantSchemas.push(...variantResult.schemas);
46
+ }
47
+ if (everyVariantResolved)
48
+ found = true;
49
+ resolved.push(...variantSchemas);
50
+ }
51
+ return pointerResolution(found, resolved);
52
+ }
53
+ function resolveFirstSubschema(schema, segments) {
8
54
  if (segments.length === 0)
9
55
  return schema;
10
56
  if (!isJsonObject(schema))
@@ -14,7 +60,7 @@ function resolveSubschema(schema, segments) {
14
60
  if (!Array.isArray(variants))
15
61
  continue;
16
62
  for (const variant of variants) {
17
- const resolved = resolveSubschema(variant, segments);
63
+ const resolved = resolveFirstSubschema(variant, segments);
18
64
  if (resolved !== undefined)
19
65
  return resolved;
20
66
  }
@@ -26,7 +72,7 @@ function resolveSubschema(schema, segments) {
26
72
  if (!isJsonObject(properties) || !Object.hasOwn(properties, segment)) {
27
73
  return undefined;
28
74
  }
29
- return resolveSubschema(properties[segment], segments.slice(1));
75
+ return resolveFirstSubschema(properties[segment], segments.slice(1));
30
76
  }
31
77
  function isTokenableSchema(schema) {
32
78
  if (schema === true || schema === false)
@@ -63,16 +109,22 @@ function isTokenableSchema(schema) {
63
109
  }
64
110
  return false;
65
111
  }
112
+ /**
113
+ * Returns the first schema node reachable by following a payload JSON Pointer.
114
+ */
66
115
  export function getSubschemaAtDataPointer(schema, pointer) {
67
- return resolveSubschema(schema, pointer.slice(1).split("/").map(decodeJsonPointerSegment));
116
+ return resolveFirstSubschema(schema, pointer.slice(1).split("/").map(decodeJsonPointerSegment));
68
117
  }
118
+ /**
119
+ * Verifies that event subject parameter pointers resolve to tokenable schemas.
120
+ */
69
121
  export function assertDataPointersExistAndAreTokenable(name, schema, pointers) {
70
122
  for (const pointer of pointers) {
71
- const node = getSubschemaAtDataPointer(schema, pointer);
72
- if (node === undefined) {
123
+ const resolved = collectSubschemas(schema, pointer.slice(1).split("/").map(decodeJsonPointerSegment));
124
+ if (!resolved.found) {
73
125
  throw new Error(`Invalid event subject param pointer '${pointer}' for event '${name}' (path not found in schema)`);
74
126
  }
75
- if (!isTokenableSchema(node)) {
127
+ if (!resolved.schemas.every(isTokenableSchema)) {
76
128
  throw new Error(`Invalid event subject param pointer '${pointer}' for event '${name}' (must resolve to string/number schema)`);
77
129
  }
78
130
  }
package/esm/contracts.js CHANGED
@@ -1,3 +1,2 @@
1
- import "./_dnt.polyfills.js";
2
1
  export * from "./contract_support/mod.js";
3
2
  export { defineAgentContract, defineAppContract, defineDeviceContract, defineServiceContract, } from "./contract.js";
package/esm/device.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import "./_dnt.polyfills.js";
2
- import { type NatsConnection } from "@nats-io/nats-core";
3
2
  import { AsyncResult, UnexpectedError } from "@qlever-llc/result";
4
3
  import { CONTRACT_STATE_METADATA, type ContractStateMetadata } from "./contract_support/mod.js";
5
4
  import type { TrellisAPI } from "./contracts.js";
@@ -49,22 +48,8 @@ export type TrellisDeviceConnection<TApi extends TrellisAPI = TrellisAPI, TState
49
48
  readonly stream: string;
50
49
  readonly api: TApi;
51
50
  readonly connection: TrellisConnection;
52
- readonly natsConnection: NatsConnection;
53
51
  readonly health: ServiceHealth;
54
52
  };
55
- type DeviceConnectTransport = {
56
- connect(options: {
57
- servers: string | string[];
58
- token?: string;
59
- authenticator?: unknown;
60
- inboxPrefix?: string;
61
- maxReconnectAttempts?: number;
62
- }): Promise<NatsConnection>;
63
- };
64
- type DeviceConnectDeps = {
65
- loadTransport(): Promise<DeviceConnectTransport>;
66
- now(): number;
67
- };
68
53
  export type TrellisDevicePendingActivationState = {
69
54
  status: "pending";
70
55
  contractDigest: string;
@@ -126,20 +111,6 @@ export type TrellisDeviceConnectArgs<TApi extends TrellisAPI = TrellisAPI, TCont
126
111
  rootSecret: Uint8Array | string;
127
112
  log?: LoggerLike | false;
128
113
  };
129
- export declare function startDeviceActivationWithDeps<TContract extends DeviceContract<TrellisAPI, {
130
- state?: Readonly<Record<string, unknown>>;
131
- schemas?: Readonly<Record<string, unknown>>;
132
- }>>(args: TrellisDeviceActivationArgs<DeviceContractApi<TContract>, TContract>, _deps: Pick<DeviceConnectDeps, "now">): Promise<TrellisDeviceActivationSession<TrellisDevicePendingActivationState>>;
133
- export declare function resumeDeviceActivationWithDeps<TLocalState extends TrellisDeviceLocalActivationState, TContract extends DeviceContract<TrellisAPI, {
134
- state?: Readonly<Record<string, unknown>>;
135
- schemas?: Readonly<Record<string, unknown>>;
136
- }>>(args: TrellisDeviceResumeActivationArgs<DeviceContractApi<TContract>, TContract> & {
137
- localState: TLocalState;
138
- }, _deps: Pick<DeviceConnectDeps, "now">): Promise<TrellisDeviceActivationSession<TLocalState>>;
139
- export declare function connectDeviceWithDeps<TContract extends DeviceContract<TrellisAPI, {
140
- state?: Readonly<Record<string, unknown>>;
141
- schemas?: Readonly<Record<string, unknown>>;
142
- }>>(args: TrellisDeviceConnectArgs<DeviceContractApi<TContract>, TContract>, deps: DeviceConnectDeps): Promise<TrellisDeviceConnection<DeviceContractApi<TContract>, RuntimeStateStoresForContract<TContract>>>;
143
114
  export declare const TrellisDevice: {
144
115
  connect<TContract extends DeviceContract<TrellisAPI, {
145
116
  state?: Readonly<Record<string, unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAM7B,OAAO,EACL,WAAW,EAGX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,uBAAuB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAwBnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMjD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,6BAA6B,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAwB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAiB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,KAAK,cAAc,CACjB,IAAI,SAAS,UAAU,GAAG,UAAU,EACpC,SAAS,SAAS;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,GAAG;IACF,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,IACC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,SAAS,GAAG;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,GAAG,EAAE;QACH,OAAO,EAAE,IAAI,CAAC;KACf,CAAC;IACF,QAAQ,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,qBAAqB,CAAC;CAC5D,CAAC;AAEF,KAAK,iBAAiB,CAAC,SAAS,SAAS,cAAc,IACrD,SAAS,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;AAE9B,KAAK,aAAa,CAChB,IAAI,SAAS,UAAU,EACvB,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,IACtE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAkCpC,MAAM,MAAM,uBAAuB,CACjC,IAAI,SAAS,UAAU,GAAG,UAAU,EACpC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,EAAE,IAC3E;IACF,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;IACzD,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7D,QAAQ,CAAC,QAAQ,EAAE;QACjB,CAAC,KAAK,EAAE,iBAAiB,GAAG,kBAAkB,CAAC;QAC/C,CAAC,KAAK,EAAE,oBAAoB,GAAG,qBAAqB,CAAC;KACtD,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC,CAAC;AA0BF,MAAM,MAAM,mCAAmC,GAAG;IAChD,MAAM,EAAE,SAAS,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GACzC,mCAAmC,GACnC,qCAAqC,CAAC;AAE1C,MAAM,MAAM,8BAA8B,CACxC,MAAM,SAAS,iCAAiC,GAC9C,iCAAiC,IACjC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,IAAI,CAAC,EAAE;QAC3B,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;IACnD,sBAAsB,CACpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,qCAAqC,CAAC,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,2BAA2B,CACrC,IAAI,SAAS,UAAU,GAAG,UAAU,EACpC,SAAS,SAAS,cAAc,CAAC,IAAI,EAAE;IACrC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE;IACxB,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,IACA;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iCAAiC,CAC3C,IAAI,SAAS,UAAU,GAAG,UAAU,EACpC,SAAS,SAAS,cAAc,CAAC,IAAI,EAAE;IACrC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE;IACxB,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,IACA,2BAA2B,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG;IACjD,UAAU,EAAE,iCAAiC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAClC,IAAI,SAAS,UAAU,GAAG,UAAU,EACpC,SAAS,SAAS,cAAc,CAAC,IAAI,EAAE;IACrC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE;IACxB,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC,IACA;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;IAChC,GAAG,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC;CAC1B,CAAC;AAytBF,eAAO,MAAM,aAAa;YAEtB,SAAS,SAAS,cAAc,CAAC,UAAU,EAAE;QAC3C,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KAC7C,CAAC,QAEI,wBAAwB,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,GACtE,WAAW,CACZ,uBAAuB,CACrB,iBAAiB,CAAC,SAAS,CAAC,EAC5B,6BAA6B,CAAC,SAAS,CAAC,CACzC,EACD,cAAc,GAAG,eAAe,CACjC;CAGF,CAAC"}
package/esm/device.js CHANGED
@@ -360,6 +360,9 @@ async function fetchDeviceBootstrap(args) {
360
360
  context: { trellisUrl: args.trellisUrl },
361
361
  });
362
362
  }
363
+ /**
364
+ * @internal Exported for focused tests and platform-specific wrappers.
365
+ */
363
366
  export async function startDeviceActivationWithDeps(args, _deps) {
364
367
  const rootSecret = normalizeRootSecret(args.rootSecret);
365
368
  const identity = await deriveDeviceIdentity(rootSecret);
@@ -389,6 +392,9 @@ export async function startDeviceActivationWithDeps(args, _deps) {
389
392
  },
390
393
  });
391
394
  }
395
+ /**
396
+ * @internal Exported for focused tests and platform-specific wrappers.
397
+ */
392
398
  export async function resumeDeviceActivationWithDeps(args, _deps) {
393
399
  const rootSecret = normalizeRootSecret(args.rootSecret);
394
400
  const identity = await deriveDeviceIdentity(rootSecret);
@@ -399,6 +405,10 @@ export async function resumeDeviceActivationWithDeps(args, _deps) {
399
405
  localState: args.localState,
400
406
  });
401
407
  }
408
+ /**
409
+ * @internal Exported for focused tests; applications should use
410
+ * `TrellisDevice.connect`.
411
+ */
402
412
  export async function connectDeviceWithDeps(args, deps) {
403
413
  const log = resolveDeviceLogger(args.log);
404
414
  const rootSecret = normalizeRootSecret(args.rootSecret);
@@ -538,7 +548,6 @@ export async function connectDeviceWithDeps(args, deps) {
538
548
  stream: trellis.stream,
539
549
  api: trellis.api,
540
550
  connection: trellis.connection,
541
- natsConnection: trellis.natsConnection,
542
551
  health,
543
552
  };
544
553
  }
@@ -1,4 +1,3 @@
1
- import "../_dnt.polyfills.js";
2
1
  import { UnexpectedError, UnexpectedErrorDataSchema, } from "@qlever-llc/result";
3
2
  import { schema } from "../contract_support/mod.js";
4
3
  import { AuthError } from "./AuthError.js";
package/esm/index.d.ts CHANGED
@@ -23,15 +23,14 @@ export type { TrellisErrorInstance } from "./errors/index.js";
23
23
  export { AuthError, KVError, OperationAlreadyTerminalError, OperationMismatchError, OperationNotFoundError, RemoteError, StoreError, TransferError, TransportError, TrellisError, UnexpectedError, ValidationError, } from "./errors/index.js";
24
24
  export { ActiveJob, JobLogEntrySchema, JobProgressSchema, JobQueue, JobRef, JobWorkerHostAdapter, } from "./jobs.js";
25
25
  export type { Job, JobFilter, JobIdentity, JobLogEntry, JobProgress, JobsFacade, JobsFacadeOf, JobsHealth, JobSnapshot, JobState, JobTypeMetadata, JobWorkerHost, ServiceInfo, TerminalJob, WorkerInfo, } from "./jobs.js";
26
- export { TypedKV, TypedKVEntry } from "./kv.js";
26
+ export { TypedKVEntry } from "./kv.js";
27
27
  export type { WatchEvent, WatchOptions } from "./kv.js";
28
- export { TypedStore, TypedStoreEntry } from "./store.js";
28
+ export { TypedStoreEntry } from "./store.js";
29
29
  export type { StoreBody, StoreInfo, StoreOpenOptions, StorePutOptions, StoreStatus, StoreWaitOptions, } from "./store.js";
30
- export { createTransferHandle, FileInfoSchema } from "./transfer.js";
30
+ export { FileInfoSchema } from "./transfer.js";
31
31
  export type { FileInfo, ReceiveTransferGrant, ReceiveTransferHandle, SendTransferGrant, SendTransferHandle, TransferBody, TransferGrant, } from "./transfer.js";
32
32
  export type { AcceptedOperationEvent, CancelledOperationEvent, CompletedOperationEvent, CompletedTransfer, FailedOperationEvent, OperationControlError, OperationEvent, OperationInputBuilder, OperationLifecycleError, OperationObserverCallbacks, OperationRef, OperationRefData, OperationSignalAck, OperationSnapshot, OperationState, OperationTransferProgress, ProgressOperationEvent, ProgressOperationSnapshot, StartedOperationEvent, StartedTransfer, TerminalOperation, TransferCapableOperationInputBuilder, TransferOperationBuilder, TransferOperationEvent, TransferOperationSnapshot, } from "./operations.js";
33
33
  export { controlSubject, OperationInvoker } from "./operations.js";
34
34
  export type { AcceptedOperation, ClientTrellis, ConnectedTrellisClient, EventHandler, EventListenerContext, EventName, EventOpts, EventPayload, EventType, FeedInputBuilder, FeedSubscribeOpts, FeedSubscription, HandlerJobQueue, HandlerJobsFacade, HandlerKvFacade, HandlerStoreHandle, HandlerTrellis, HandlerTrellisForContract, MapStateStoreClient, OperationHandlerContext, OperationRegistration, OperationRuntimeHandle, OperationTransferContextOf, OperationTransferHandle, PreparedTrellisEvent, RequestOpts, RpcArgs, RpcHandlerContext, RpcHandlerErrorOf, RpcHandlerFn, RpcInputOf, RpcMethodNameOf, RpcOutputOf, RpcRequestErrorOf, RpcResult, RuntimeStateStoresForContract, RuntimeStateStoreShape, StateFacade, TrellisFor, ValueStateStoreClient, } from "./trellis.js";
35
- export { Trellis } from "./trellis.js";
36
35
  export type { TrellisDeviceConnection } from "./device.js";
37
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js CHANGED
@@ -11,8 +11,7 @@ export { ClientAuthHandledError, TrellisClient } from "./client_connect.js";
11
11
  export { TrellisDevice } from "./device.js";
12
12
  export { AuthError, KVError, OperationAlreadyTerminalError, OperationMismatchError, OperationNotFoundError, RemoteError, StoreError, TransferError, TransportError, TrellisError, UnexpectedError, ValidationError, } from "./errors/index.js";
13
13
  export { ActiveJob, JobLogEntrySchema, JobProgressSchema, JobQueue, JobRef, JobWorkerHostAdapter, } from "./jobs.js";
14
- export { TypedKV, TypedKVEntry } from "./kv.js";
15
- export { TypedStore, TypedStoreEntry } from "./store.js";
16
- export { createTransferHandle, FileInfoSchema } from "./transfer.js";
14
+ export { TypedKVEntry } from "./kv.js";
15
+ export { TypedStoreEntry } from "./store.js";
16
+ export { FileInfoSchema } from "./transfer.js";
17
17
  export { controlSubject, OperationInvoker } from "./operations.js";
18
- export { Trellis } from "./trellis.js";
@@ -1 +1 @@
1
- {"version":3,"file":"runtime_transport.d.ts","sourceRoot":"","sources":["../src/runtime_transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAExE,KAAK,yBAAyB,GAAG;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,SAAS,CAAC,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,sCAAsC,KAAK,CAAC;AACzD,eAAO,MAAM,6CAA6C,OAAO,CAAC;AAElE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC3E,CAAC;AAMF,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,iBAAiB,GAC5B,MAAM,EAAE,CAkBV;AAoDD,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA0B7E"}
1
+ {"version":3,"file":"runtime_transport.d.ts","sourceRoot":"","sources":["../src/runtime_transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAExE,KAAK,yBAAyB,GAAG;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,SAAS,CAAC,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,sCAAsC,KAAK,CAAC;AACzD,eAAO,MAAM,6CAA6C,OAAO,CAAC;AAElE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC3E,CAAC;AAQF,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,iBAAiB,GAC5B,MAAM,EAAE,CAkBV;AAuDD,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA0B7E"}
@@ -1,4 +1,3 @@
1
- import * as dntShim from "./_dnt.shims.js";
2
1
  import { wsconnect } from "@nats-io/nats-core";
3
2
  export const DEFAULT_RUNTIME_MAX_RECONNECT_ATTEMPTS = -1;
4
3
  export const DEFAULT_SERVICE_RUNTIME_WAIT_ON_FIRST_CONNECT = true;
@@ -22,7 +21,10 @@ export function selectRuntimeTransportServers(transports) {
22
21
  throw new Error("No supported NATS transport endpoints available");
23
22
  }
24
23
  function isBrowserRuntime() {
25
- return typeof dntShim.dntGlobalThis !== "undefined" && typeof document !== "undefined";
24
+ const load = new Function("return globalThis");
25
+ const browserGlobal = load();
26
+ return typeof browserGlobal.window !== "undefined" &&
27
+ typeof browserGlobal.document !== "undefined";
26
28
  }
27
29
  function isDenoRuntime() {
28
30
  const load = new Function("return globalThis");
@@ -3,8 +3,10 @@ import { type HealthCheckFn, type HealthResponse } from "./health.js";
3
3
  type HealthRpcServer = {
4
4
  name: string;
5
5
  api: TrellisAPI;
6
- natsConnection: {
7
- isClosed(): boolean;
6
+ connection?: {
7
+ status: {
8
+ phase: string;
9
+ };
8
10
  };
9
11
  mount<M extends keyof TrellisAPI["rpc"] & string>(method: M, handler: (...args: unknown[]) => unknown): Promise<unknown>;
10
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"health_rpc.d.ts","sourceRoot":"","sources":["../../src/server/health_rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,EAAE;QAAE,QAAQ,IAAI,OAAO,CAAA;KAAE,CAAC;IACxC,KAAK,CAAC,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM,EAC9C,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACvC,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB,CAAC;AAUF,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,eAAe,EACvB,IAAI,CAAC,EAAE;IACL,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CAC1C,GACA,OAAO,CAAC,IAAI,CAAC,CAgBf"}
1
+ {"version":3,"file":"health_rpc.d.ts","sourceRoot":"","sources":["../../src/server/health_rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;IAChB,UAAU,CAAC,EAAE;QAAE,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAC3C,KAAK,CAAC,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM,EAC9C,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACvC,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB,CAAC;AAUF,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,eAAe,EACvB,IAAI,CAAC,EAAE;IACL,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CAC1C,GACA,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -14,10 +14,15 @@ export async function mountStandardHealthRpc(server, opts) {
14
14
  return;
15
15
  const method = rpcName;
16
16
  await server.mount(method, async () => {
17
+ const connection = server.connection;
17
18
  const response = opts?.response
18
19
  ? await opts.response()
19
20
  : await runAllHealthChecks(server.name, {
20
- nats: async () => Result.ok(!server.natsConnection.isClosed()),
21
+ ...(connection
22
+ ? {
23
+ nats: async () => Result.ok(connection.status.phase !== "closed"),
24
+ }
25
+ : {}),
21
26
  ...(opts?.checks ?? {}),
22
27
  });
23
28
  return Result.ok(response);
@@ -1,18 +1,17 @@
1
- import { type NatsConnection } from "@nats-io/nats-core";
2
- import { type StoreError, type StoreWaitOptions, TypedKV, TypedStore, TypedStoreEntry } from "../index.js";
3
- import { type TrellisServiceRuntimeFor } from "../server.js";
1
+ import type { StoreError } from "../errors/index.js";
2
+ import { TypedKV } from "../kv.js";
3
+ import { type StoreWaitOptions, TypedStore, TypedStoreEntry } from "../store.js";
4
4
  import { type TrellisAuth as SessionAuth } from "../auth.js";
5
5
  import { type InferSchemaType } from "../contracts.js";
6
6
  import type { TrellisAPI } from "../contracts.js";
7
7
  import type { TrellisContractV1 } from "../contract_support/mod.js";
8
- import type { ContractEventConsumers, ContractJobsMetadata, ContractKvMetadata } from "../contract_support/mod.js";
8
+ import type { ContractJobsMetadata, ContractKvMetadata } from "../contract_support/mod.js";
9
9
  import { CONTRACT_JOBS_METADATA, CONTRACT_KV_METADATA } from "../contract_support/mod.js";
10
10
  import { AsyncResult, type BaseError, type MaybeAsync, Result } from "@qlever-llc/result";
11
11
  import { type HealthCheckFn, ServiceHealth, type ServiceHealthCheck, type ServiceHealthInfo } from "./health.js";
12
12
  import type { EventDesc } from "../contracts.js";
13
13
  import type { AcceptedOperation, ActiveEventFacade, EventListenerContext, EventOpts, FeedEventOf, FeedInputOf, FeedRegistration as RootFeedRegistration, HandlerTrellis, OperationHandlerContext, OperationOutputOf, OperationProgressOf, OperationRuntimeHandle, OperationTransferContextOf, PreparedTrellisEvent, RpcHandlerContext, RpcHandlerErrorOf } from "../trellis.js";
14
- import type { NatsConnectOpts, TrellisServiceRuntimeDeps } from "./runtime.js";
15
- import { ServiceTransfer } from "./transfer.js";
14
+ import type { NatsConnectOpts } from "./runtime.js";
16
15
  import { type LoggerLike } from "../globals.js";
17
16
  import { TransferError, TransportError, UnexpectedError, ValidationError } from "../errors/index.js";
18
17
  import type { ReceiveTransferGrant } from "../transfer.js";
@@ -104,17 +103,13 @@ export type ResourceBindings = {
104
103
  jobs?: ResourceBindingJobs;
105
104
  eventConsumers?: Record<string, ResourceBindingEventConsumer>;
106
105
  };
107
- declare const storeHandleConstructorToken: unique symbol;
108
- declare const trellisServiceConstructorToken: unique symbol;
109
- export declare class StoreHandle {
110
- #private;
111
- readonly binding: ResourceBindingStore;
112
- constructor(nc: NatsConnection, binding: ResourceBindingStore, token: typeof storeHandleConstructorToken);
113
- open(): AsyncResult<TypedStore, StoreError>;
106
+ export declare abstract class StoreHandle {
107
+ abstract readonly binding: ResourceBindingStore;
108
+ abstract open(): AsyncResult<TypedStore, StoreError>;
114
109
  /**
115
110
  * Waits for a staged object to appear in the bound store and returns its entry.
116
111
  */
117
- waitFor(key: string, options?: StoreWaitOptions): AsyncResult<TypedStoreEntry, StoreError>;
112
+ abstract waitFor(key: string, options?: StoreWaitOptions): AsyncResult<TypedStoreEntry, StoreError>;
118
113
  }
119
114
  type TrellisServiceRuntimeConnectOpts<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi> = {
120
115
  /**
@@ -317,7 +312,7 @@ type BoundServiceHealth<TDeps> = Omit<ServiceHealth, "add" | "setInfo"> & {
317
312
  add(name: string, check: HealthCheckHandler<TDeps>): () => void;
318
313
  };
319
314
  /** Service wrapper returned by `TrellisService.with(deps)`. */
320
- export type BoundTrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi, TJobs extends ContractJobsMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata, TDeps = unknown> = Pick<TrellisService<TOwnedApi, TTrellisApi, TJobs, TKv>, "name" | "auth" | "nc" | "kv" | "store" | "connection" | "createTransfer" | "completeOperation" | "wait" | "stop"> & {
315
+ export type BoundTrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi, TJobs extends ContractJobsMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata, TDeps = unknown> = Pick<TrellisService<TOwnedApi, TTrellisApi, TJobs, TKv>, "name" | "auth" | "kv" | "store" | "connection" | "createTransfer" | "completeOperation" | "wait" | "stop"> & {
321
316
  readonly event: BoundActiveEventFacade<TTrellisApi, TTrellisApi, TKv, TJobs, TDeps>;
322
317
  readonly health: BoundServiceHealth<TDeps>;
323
318
  readonly jobs: BoundJobsFacadeOf<TJobs, TTrellisApi, TKv, TDeps>;
@@ -398,23 +393,10 @@ export type TrellisServiceInternalConnectArgs<TOwnedApi extends TrellisAPI = Tre
398
393
  contractDigest: string;
399
394
  contractKv?: TKv;
400
395
  };
401
- export declare function createConnectedService<TOwnedApi extends TrellisAPI, TTrellisApi extends TrellisAPI, TJobs extends ContractJobsMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata>(args: {
402
- name: string;
403
- auth: SessionAuth;
404
- nc: NatsConnection;
405
- contractId?: string;
406
- contractDigest?: string;
407
- contractJobs: TJobs;
408
- contractKv: TKv;
409
- contractEventConsumers?: ContractEventConsumers;
410
- server: TrellisServiceRuntimeCreateOpts<TOwnedApi, TTrellisApi>;
411
- bindings: ResourceBindings;
412
- }): Promise<TrellisService<TOwnedApi, TTrellisApi, TJobs, TKv>>;
413
396
  export declare class TrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi, TJobs extends ContractJobsMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata> {
414
397
  #private;
415
398
  readonly name: string;
416
399
  readonly auth: SessionAuth;
417
- readonly nc: NatsConnection;
418
400
  /** Event lifecycle surface for service startup listeners and publishers. */
419
401
  readonly event: ActiveEventFacade<TTrellisApi>;
420
402
  readonly kv: ServiceKvFacade<TKv>;
@@ -424,7 +406,7 @@ export declare class TrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, T
424
406
  readonly handle: TypedServiceHandleFacade<TOwnedApi, TTrellisApi, TKv, TJobs>;
425
407
  /** Framework-neutral lifecycle handle for the service runtime connection. */
426
408
  readonly connection: TrellisConnection;
427
- constructor(name: string, auth: SessionAuth, nc: NatsConnection, server: TrellisServiceRuntimeFor<TOwnedApi & TTrellisApi>, event: ActiveEventFacade<TTrellisApi>, handlerTrellis: Trellis<TTrellisApi, TKv, TJobs>, kv: ServiceKvFacade<TKv>, contractJobs: TJobs, bindings: ResourceBindings, operationTransfer: ServiceTransfer, health: ServiceHealth, stopHealthPublishing: () => Promise<void>, connection: TrellisConnection, token: typeof trellisServiceConstructorToken);
409
+ private constructor();
428
410
  /**
429
411
  * Returns a service wrapper that injects application dependencies into
430
412
  * service-owned handler argument objects as `args.deps`.
@@ -440,14 +422,7 @@ export declare class TrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, T
440
422
  sessionKey: string;
441
423
  expiresInMs?: number;
442
424
  }): AsyncResult<ReceiveTransferGrant, TransferError>;
443
- /**
444
- * Completes an operation from Trellis-owned control-plane code that resolves
445
- * an operation from a separate RPC handler.
446
- *
447
- * @internal
448
- */
449
- completeOperation(operationId: string, output: unknown): AsyncResult<unknown, BaseError>;
450
- static connect<const TContract extends ServiceContract<TrellisAPI, TrellisAPI | undefined, ContractJobsMetadata, ContractKvMetadata>>(args: TrellisServiceConnectArgs<TContract>, deps?: Partial<TrellisServiceRuntimeDeps>): AsyncResult<TrellisService<ContractOwnedApi<TContract>, ContractTrellisApi<TContract>, ContractJobsOf<TContract>, ContractKvOf<TContract>>, TransportError | UnexpectedError>;
425
+ static connect<const TContract extends ServiceContract<TrellisAPI, TrellisAPI | undefined, ContractJobsMetadata, ContractKvMetadata>>(args: TrellisServiceConnectArgs<TContract>): AsyncResult<TrellisService<ContractOwnedApi<TContract>, ContractTrellisApi<TContract>, ContractJobsOf<TContract>, ContractKvOf<TContract>>, TransportError | UnexpectedError>;
451
426
  wait(): Promise<void>;
452
427
  stop(): Promise<void>;
453
428
  }