@plurnk/plurnk-execs 1.6.0 → 1.7.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/SPEC.md CHANGED
@@ -42,6 +42,7 @@ abstract class BaseExecutor {
42
42
  abstract run(args: ExecArgs): Promise<ExecResult>;
43
43
  probe(signal?: AbortSignal): Promise<RuntimeAvailability>;
44
44
  effect(target: string | null): Effect;
45
+ toolRegistry?(): RuntimeToolRegistry;
45
46
  }
46
47
 
47
48
  interface ChannelDecl {
@@ -59,6 +60,7 @@ interface ExecArgs {
59
60
  write(channel: string, chunk: string, mimetype?: string): void;
60
61
  setState(channel: string, state: ChannelState): void;
61
62
  emit(notice: Notice): void;
63
+ interact(request: ClientInteractionRequest): Promise<ClientInteractionResolution>;
62
64
  entry?(
63
65
  path: string,
64
66
  content: string | null,
@@ -95,6 +97,7 @@ surface.
95
97
  | `write` | Append to a declared channel. An optional mimetype replaces that channel's per-call output type. |
96
98
  | `setState` | Move a declared channel from `active` to terminal `closed` or `errored`. |
97
99
  | `emit` | Publish a transient, nonterminal Notice. |
100
+ | §executor-interaction-sink `interact` | Await one contracts-owned client interaction ({§client-interaction-wire}). Core owns identity, pending-state durability, client presentation, and cancellation; the executor owns the request and returned payload's meaning. |
98
101
  | `entry` | Optionally request consumer-owned entry materialization and receive its canonical model-facing address. |
99
102
 
100
103
  The executor receives callbacks, never a database, subscription registry,
@@ -276,9 +279,10 @@ at boot; changing package membership or configuration requires a restart.
276
279
  | `packageName` | Package that owns and default-exports the executor implementation. |
277
280
 
278
281
  The framework carries invocation metadata and documentation content unchanged
279
- after validating the invocation. The consumer derives its complete always-on
280
- tools directory, including one concise invocation example per selector, from
281
- that metadata; detailed instruction remains in on-demand documentation. A
282
+ after validation. The consumer derives its complete always-on tools directory
283
+ from either the static invocation or the executor's exact
284
+ {§executor-tool-registry}; detailed instruction remains in on-demand
285
+ documentation. A
282
286
  multi-tag package appears at most once in `Discovery.packageAttributions`, and
283
287
  only when at least one of its tags survives discovery policy. An instantiated
284
288
  executor may add attempt-time tags through the shared runtime hook
@@ -296,7 +300,8 @@ executor may add attempt-time tags through the shared runtime hook
296
300
  | `target.kind` | One of the structural realization modes below. |
297
301
  | `target.directory` | Optional `"cwd"`: only a local directory becomes `cwd`; every non-directory remains the declared target. |
298
302
  | `exclusive` | Optional `true`: body and target are alternative inputs and supplying both is refused. |
299
- | `example` | Required concise invocation witness with a one-line `body`, `target`, or both as the declared shape permits. |
303
+ | `example` | Concise executable witness with a one-line `body`, `target`, or both as the declared shape permits. |
304
+ | `signature` | One-line structural body signature for a schema-backed invocation; no fabricated argument values. |
300
305
 
301
306
  | Target kind | Consumer realization |
302
307
  | ----------- | ------------------------------------------------------------------------------------------------------------------------------ |
@@ -307,9 +312,11 @@ executor may add attempt-time tags through the shared runtime hook
307
312
  Every EXEC must supply at least a body or target even when neither field is
308
313
  independently required. A target's meaning never changes because the body is
309
314
  empty or non-empty. `exclusive` requires a target declaration; `directory` is
310
- valid only for `path` and `resource` target kinds. The example must satisfy the
311
- same required, refused, and exclusive buckets and parse as exactly one EXEC
312
- section for the runtime. An invocation declaration
315
+ valid only for `path` and `resource` target kinds. Exactly one of `example` or
316
+ `signature` is present. An example must satisfy the same required, refused,
317
+ and exclusive buckets and parse as exactly one EXEC section for the runtime. A
318
+ signature is presentation, not an executable example; dispatch still enforces
319
+ the invocation's body and target declarations. An invocation declaration
313
320
  with a missing field, unknown field, invalid combination, multiline role, or
314
321
  wrong primitive type is a fail-hard plugin contract violation before
315
322
  registration. Static, dynamic-hook, and module-owned runtimes use this same
@@ -317,6 +324,36 @@ validation path. The enclosing runtime declaration is closed to `name`,
317
324
  `glyph`, `invocation`, and `documentation`; unknown or mistyped metadata is a
318
325
  contract violation rather than silently ignored teaching.
319
326
 
327
+ §executor-tool-registry A runtime representing a finite family of exact tools
328
+ may implement `toolRegistry()` and return one immutable snapshot:
329
+
330
+ ```ts
331
+ interface RuntimeToolRegistry {
332
+ tools: readonly {
333
+ target: string;
334
+ invocation: RuntimeInvocation;
335
+ }[];
336
+ documentation: string;
337
+ }
338
+ ```
339
+
340
+ Each entry owns one canonical literal target and its complete invocation
341
+ contract. Its invocation declares that target bucket as required and
342
+ `literal`; duplicate targets, divergent example targets, or malformed
343
+ invocations fail the plugin boundary. The exact target must round-trip through
344
+ the language's canonical target-slot escaping. The closed `tools` set replaces the
345
+ runtime's generic declaration for model presentation and dispatch admission:
346
+ an empty set exposes and admits no target, with no generic fallback. Core uses
347
+ the selected entry's invocation for bucket validation before calling
348
+ `effect()`.
349
+
350
+ The same snapshot owns the runtime's generated pull document. Its
351
+ `documentation` replaces static runtime documentation, so enabled Registry
352
+ rows, admitted targets, effect classification inputs, and detailed contracts
353
+ cannot describe different tool sets. The hook is synchronous and
354
+ side-effect-free; a protocol executor refreshes its cached snapshot at its own
355
+ I/O boundary rather than making packet assembly perform network discovery.
356
+
320
357
  Runtime-name admission is one identity contract:
321
358
 
322
359
  | Constraint | Contract |
@@ -1,5 +1,6 @@
1
- import type { RuntimeInvocation as RuntimeInvocationDecl } from "./types.ts";
1
+ import type { RuntimeInvocation as RuntimeInvocationDecl, RuntimeToolRegistry } from "./types.ts";
2
2
  export default class RuntimeInvocation {
3
3
  static assert(value: unknown, packageName: string, runtime: string): RuntimeInvocationDecl;
4
+ static assertToolRegistry(value: unknown, packageName: string, runtime: string): RuntimeToolRegistry;
4
5
  }
5
6
  //# sourceMappingURL=RuntimeInvocation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeInvocation.d.ts","sourceRoot":"","sources":["../src/RuntimeInvocation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGR,iBAAiB,IAAI,qBAAqB,EAG7C,MAAM,YAAY,CAAC;AAwDpB,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,CA0EzF;CACJ"}
1
+ {"version":3,"file":"RuntimeInvocation.d.ts","sourceRoot":"","sources":["../src/RuntimeInvocation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGR,iBAAiB,IAAI,qBAAqB,EAE1C,mBAAmB,EAGtB,MAAM,YAAY,CAAC;AAoEpB,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,CA2FzF;IAED,MAAM,CAAC,kBAAkB,CACrB,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GAChB,mBAAmB,CAuCrB;CACJ"}
@@ -1,4 +1,4 @@
1
- import { PlurnkParser } from "@plurnk/plurnk-contracts";
1
+ import { PathSyntax, PlurnkParser } from "@plurnk/plurnk-contracts";
2
2
  const TARGET_KINDS = new Set(["literal", "path", "resource"]);
3
3
  const recordOf = (value, field, fail) => {
4
4
  if (typeof value !== "object" || value === null || Array.isArray(value)) {
@@ -28,13 +28,24 @@ const exampleLineOf = (value, field, fail) => {
28
28
  }
29
29
  return value;
30
30
  };
31
+ const oneExecSection = (source, expectedTarget) => {
32
+ const parsed = PlurnkParser.parseStatements(source);
33
+ const statements = parsed.items.filter((item) => item.kind === "statement");
34
+ const errors = parsed.items.filter((item) => item.kind === "error");
35
+ const statement = statements[0]?.statement;
36
+ return statements.length === 1
37
+ && statement?.op === "EXEC"
38
+ && (expectedTarget === undefined || statement.target?.raw === expectedTarget)
39
+ && errors.length === 0
40
+ && parsed.unparsedTail === undefined;
41
+ };
31
42
  export default class RuntimeInvocation {
32
43
  static assert(value, packageName, runtime) {
33
44
  const fail = (detail) => {
34
45
  throw new Error(`runtime declaration invalid: ${packageName} '${runtime}' ${detail}`);
35
46
  };
36
47
  const invocation = recordOf(value, "invocation", fail);
37
- assertKnownFields(invocation, new Set(["body", "target", "exclusive", "example"]), "invocation", fail);
48
+ assertKnownFields(invocation, new Set(["body", "target", "exclusive", "example", "signature"]), "invocation", fail);
38
49
  const bodyValue = recordOf(invocation.body, "invocation.body", fail);
39
50
  assertKnownFields(bodyValue, new Set(["role", "required"]), "invocation.body", fail);
40
51
  const body = {
@@ -71,6 +82,22 @@ export default class RuntimeInvocation {
71
82
  else if (exclusive) {
72
83
  fail("exclusive invocation must declare a target");
73
84
  }
85
+ const hasExample = "example" in invocation;
86
+ const hasSignature = "signature" in invocation;
87
+ if (hasExample === hasSignature) {
88
+ fail("invocation must provide exactly one example or signature");
89
+ }
90
+ const shape = {
91
+ body,
92
+ ...(target === undefined ? {} : { target }),
93
+ ...(exclusive ? { exclusive: true } : {}),
94
+ };
95
+ if (hasSignature) {
96
+ return {
97
+ ...shape,
98
+ signature: exampleLineOf(invocation.signature, "invocation.signature", fail),
99
+ };
100
+ }
74
101
  const exampleValue = recordOf(invocation.example, "invocation.example", fail);
75
102
  assertKnownFields(exampleValue, new Set(["body", "target"]), "invocation.example", fail);
76
103
  const example = {
@@ -93,19 +120,51 @@ export default class RuntimeInvocation {
93
120
  fail("invocation.example must provide the required target");
94
121
  if (exclusive && hasBody && hasTarget)
95
122
  fail("invocation.example must provide exactly one exclusive input");
96
- const source = `## EXEC0 [${runtime}]${hasTarget ? ` (${example.target})` : ""}${hasBody ? `\n${example.body}` : ""}`;
97
- const parsed = PlurnkParser.parseStatements(source);
98
- const statements = parsed.items.filter((item) => item.kind === "statement");
99
- const errors = parsed.items.filter((item) => item.kind === "error");
100
- if (statements.length !== 1 || statements[0]?.statement.op !== "EXEC" || errors.length > 0 || parsed.unparsedTail !== undefined) {
123
+ const exampleTarget = example.target === undefined
124
+ ? ""
125
+ : ` (${PathSyntax.escapeTarget(example.target)})`;
126
+ const source = `## EXEC0 [${runtime}]${exampleTarget}${hasBody ? `\n${example.body}` : ""}`;
127
+ if (!oneExecSection(source)) {
101
128
  fail("invocation.example must render one valid EXEC section");
102
129
  }
103
- return {
104
- body,
105
- ...(target === undefined ? {} : { target }),
106
- ...(exclusive ? { exclusive: true } : {}),
107
- example,
130
+ return { ...shape, example };
131
+ }
132
+ static assertToolRegistry(value, packageName, runtime) {
133
+ const fail = (detail) => {
134
+ throw new Error(`runtime declaration invalid: ${packageName} '${runtime}' ${detail}`);
108
135
  };
136
+ const registry = recordOf(value, "tool registry", fail);
137
+ assertKnownFields(registry, new Set(["tools", "documentation"]), "tool registry", fail);
138
+ const toolValues = Array.isArray(registry.tools)
139
+ ? registry.tools
140
+ : fail("tool registry.tools must be an array");
141
+ const documentation = typeof registry.documentation === "string"
142
+ ? registry.documentation
143
+ : fail("tool registry.documentation must be a string");
144
+ const targets = new Set();
145
+ const tools = toolValues.map((value, index) => {
146
+ const tool = recordOf(value, `tool registry.tools[${index}]`, fail);
147
+ assertKnownFields(tool, new Set(["target", "invocation"]), `tool registry.tools[${index}]`, fail);
148
+ const exactTarget = exampleLineOf(tool.target, `tool registry.tools[${index}].target`, fail);
149
+ const escapedTarget = PathSyntax.escapeTarget(exactTarget);
150
+ if (!oneExecSection(`## EXEC0 [${runtime}] (${escapedTarget})`, exactTarget)) {
151
+ fail(`tool registry.tools[${index}] target '${exactTarget}' must render one valid EXEC section`);
152
+ }
153
+ const invocation = RuntimeInvocation.assert(tool.invocation, packageName, runtime);
154
+ if (invocation.target?.required !== true
155
+ || invocation.target.kind !== "literal") {
156
+ fail(`tool registry.tools[${index}].invocation must declare a required literal target`);
157
+ }
158
+ if (invocation.example?.target !== undefined && invocation.example.target !== exactTarget) {
159
+ fail(`tool registry.tools[${index}] target '${exactTarget}' conflicts with invocation.example.target '${invocation.example.target}'`);
160
+ }
161
+ if (targets.has(exactTarget)) {
162
+ fail(`tool registry contains duplicate exact target '${exactTarget}'`);
163
+ }
164
+ targets.add(exactTarget);
165
+ return { target: exactTarget, invocation };
166
+ });
167
+ return { tools, documentation };
109
168
  }
110
169
  }
111
170
  //# sourceMappingURL=RuntimeInvocation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeInvocation.js","sourceRoot":"","sources":["../src/RuntimeInvocation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RuntimeInvocation.js","sourceRoot":"","sources":["../src/RuntimeInvocation.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -12,7 +12,7 @@ export { default as Advertise } from "./advertise.ts";
12
12
  export { Results } from "@plurnk/plurnk-schemes";
13
13
  export type { ProblemDetails, SchemeResult } from "@plurnk/plurnk-schemes";
14
14
  export { renderJsonResult } from "@plurnk/plurnk-contracts";
15
- export type { ChannelState, ChannelDecl, ExecutorMetadata, ExecArgs, ExecResult, Effect, RuntimeAvailability, RuntimeBodyDecl, RuntimeTargetKind, RuntimeTargetDecl, RuntimeInvocationExample, RuntimeInvocation as RuntimeInvocationDecl, RuntimeDecl, RuntimesHook, ExecInfo, ExecRegistry, Discovery, DiscoverOptions, SpawnArgs, } from "./types.ts";
15
+ export type { ChannelState, ChannelDecl, ExecutorMetadata, ExecArgs, ExecResult, Effect, RuntimeAvailability, RuntimeBodyDecl, RuntimeTargetKind, RuntimeTargetDecl, RuntimeInvocationExample, RuntimeInvocation as RuntimeInvocationDecl, RuntimeRegisteredTool, RuntimeToolRegistry, RuntimeDecl, RuntimesHook, ExecInfo, ExecRegistry, Discovery, DiscoverOptions, SpawnArgs, } from "./types.ts";
16
16
  export type { Notice, NoticeLevel, ContentOffset, LogCoordinate } from "./Notice.ts";
17
17
  export type { PluginAttributionContext, PluginAttributionDeclaration, PluginAttributionSource, } from "@plurnk/plurnk-meta";
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAKxE,eAAO,MAAM,QAAQ,sBAAgB,CAAC;AAMtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAIhD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAItD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,YAAY,EACR,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,IAAI,qBAAqB,EAC1C,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,eAAe,EACf,SAAS,GACZ,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACrF,YAAY,EACR,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAKxE,eAAO,MAAM,QAAQ,sBAAgB,CAAC;AAMtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAIhD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAItD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,YAAY,EACR,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,IAAI,qBAAqB,EAC1C,qBAAqB,EACrB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,eAAe,EACf,SAAS,GACZ,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACrF,YAAY,EACR,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { SchemeResult } from "@plurnk/plurnk-schemes";
2
+ import type { ClientInteractionRequest, ClientInteractionResolution } from "@plurnk/plurnk-contracts";
2
3
  import type { PackageAttributions } from "@plurnk/plurnk-meta";
3
4
  import type { Notice } from "./Notice.ts";
4
5
  export type ChannelState = "active" | "closed" | "errored";
@@ -20,6 +21,7 @@ export interface ExecArgs {
20
21
  write: (channel: string, chunk: string, mimetype?: string) => void;
21
22
  setState: (channel: string, state: ChannelState) => void;
22
23
  emit: (notice: Notice) => void;
24
+ interact: (request: ClientInteractionRequest) => Promise<ClientInteractionResolution>;
23
25
  entry?: (path: string, content: string | null, opts: {
24
26
  tags: string[];
25
27
  mimetype?: string;
@@ -48,11 +50,25 @@ export interface RuntimeInvocationExample {
48
50
  readonly body?: string;
49
51
  readonly target?: string;
50
52
  }
51
- export interface RuntimeInvocation {
53
+ interface RuntimeInvocationShape {
52
54
  readonly body: RuntimeBodyDecl;
53
55
  readonly target?: RuntimeTargetDecl;
54
56
  readonly exclusive?: true;
57
+ }
58
+ export type RuntimeInvocation = RuntimeInvocationShape & ({
55
59
  readonly example: RuntimeInvocationExample;
60
+ readonly signature?: never;
61
+ } | {
62
+ readonly example?: never;
63
+ readonly signature: string;
64
+ });
65
+ export interface RuntimeRegisteredTool {
66
+ readonly target: string;
67
+ readonly invocation: RuntimeInvocation;
68
+ }
69
+ export interface RuntimeToolRegistry {
70
+ readonly tools: readonly RuntimeRegisteredTool[];
71
+ readonly documentation: string;
56
72
  }
57
73
  export interface ExecInfo {
58
74
  runtime: string;
@@ -94,4 +110,5 @@ export interface SpawnArgs {
94
110
  */
95
111
  stdin?: string;
96
112
  }
113
+ export {};
97
114
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-execs",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "description": "Framework + contract for the @plurnk/plurnk-execs-* runtime executor packages.",
5
5
  "keywords": [
6
6
  "plurnk",
@@ -51,8 +51,8 @@
51
51
  "prepublishOnly": "npm audit --audit-level=moderate && npm test"
52
52
  },
53
53
  "dependencies": {
54
- "@plurnk/plurnk-contracts": "1.6.0",
55
- "@plurnk/plurnk-meta": "1.6.0",
56
- "@plurnk/plurnk-schemes": "1.6.0"
54
+ "@plurnk/plurnk-contracts": "1.7.0",
55
+ "@plurnk/plurnk-meta": "1.7.0",
56
+ "@plurnk/plurnk-schemes": "1.7.0"
57
57
  }
58
58
  }