@dsh-enhanced/assistant-automations 0.1.6 → 0.1.12

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 (53) hide show
  1. package/README.md +39 -7
  2. package/lib/coordinator.d.ts +57 -5
  3. package/lib/coordinator.d.ts.map +1 -1
  4. package/lib/coordinator.js +508 -88
  5. package/lib/coordinator.js.map +1 -1
  6. package/lib/growth.d.ts +120 -0
  7. package/lib/growth.d.ts.map +1 -0
  8. package/lib/growth.js +383 -0
  9. package/lib/growth.js.map +1 -0
  10. package/lib/host-executors.d.ts +25 -0
  11. package/lib/host-executors.d.ts.map +1 -0
  12. package/lib/host-executors.js +181 -0
  13. package/lib/host-executors.js.map +1 -0
  14. package/lib/index.d.ts +1 -1
  15. package/lib/index.d.ts.map +1 -1
  16. package/lib/index.js +1 -1
  17. package/lib/index.js.map +1 -1
  18. package/lib/operator.d.ts +2 -0
  19. package/lib/operator.d.ts.map +1 -1
  20. package/lib/operator.js +6 -2
  21. package/lib/operator.js.map +1 -1
  22. package/lib/proposals.d.ts +2 -2
  23. package/lib/proposals.d.ts.map +1 -1
  24. package/lib/proposals.js +34 -22
  25. package/lib/proposals.js.map +1 -1
  26. package/lib/runner.d.ts +28 -2
  27. package/lib/runner.d.ts.map +1 -1
  28. package/lib/runner.js +525 -73
  29. package/lib/runner.js.map +1 -1
  30. package/lib/service.d.ts +110 -4
  31. package/lib/service.d.ts.map +1 -1
  32. package/lib/service.js +1021 -16
  33. package/lib/service.js.map +1 -1
  34. package/lib/sqlite.d.ts +1 -1
  35. package/lib/sqlite.d.ts.map +1 -1
  36. package/lib/sqlite.js +450 -2
  37. package/lib/sqlite.js.map +1 -1
  38. package/lib/store.d.ts +211 -1
  39. package/lib/store.d.ts.map +1 -1
  40. package/lib/store.js +2260 -58
  41. package/lib/store.js.map +1 -1
  42. package/lib/tools.d.ts.map +1 -1
  43. package/lib/tools.js +18 -6
  44. package/lib/tools.js.map +1 -1
  45. package/lib/types.d.ts +399 -9
  46. package/lib/types.d.ts.map +1 -1
  47. package/lib/types.js +13 -1
  48. package/lib/types.js.map +1 -1
  49. package/lib/version.d.ts +1 -1
  50. package/lib/version.d.ts.map +1 -1
  51. package/lib/version.js +1 -1
  52. package/lib/version.js.map +1 -1
  53. package/package.json +16 -5
@@ -0,0 +1,25 @@
1
+ import type { HostAutomationExecutionSpec, HostAutomationExecutor, HostAutomationExecutorDescriptor, HostAutomationExecutorInput, HostAutomationExecutorResult } from './types.js';
2
+ export type { HostAutomationExecutor } from './types.js';
3
+ export type HostExecutorRegistryErrorCode = 'duplicate-descriptor' | 'invalid-descriptor' | 'invalid-result' | 'stale-registration';
4
+ export declare class HostExecutorRegistryError extends Error {
5
+ readonly code: HostExecutorRegistryErrorCode;
6
+ constructor(code: HostExecutorRegistryErrorCode, message: string);
7
+ }
8
+ export type HostExecutorProof = Readonly<{
9
+ available: false;
10
+ reasonCode: 'host-executor-acceptance-conflict' | 'host-executor-acceptance-failed' | 'host-executor-contract-rejected' | 'host-executor-unavailable';
11
+ }> | Readonly<{
12
+ available: true;
13
+ descriptor: Readonly<HostAutomationExecutorDescriptor>;
14
+ registrationToken: symbol;
15
+ lifecycleSignal: AbortSignal;
16
+ }>;
17
+ export declare function validateHostExecutorResult(value: HostAutomationExecutorResult): Readonly<HostAutomationExecutorResult>;
18
+ /** Process-local registry. Durable definitions store descriptors, never callbacks. */
19
+ export declare class HostAutomationExecutorRegistry {
20
+ private readonly registrations;
21
+ register(executor: HostAutomationExecutor): () => void;
22
+ prove(spec: HostAutomationExecutionSpec): HostExecutorProof;
23
+ execute(proof: HostExecutorProof, input: HostAutomationExecutorInput): Promise<Readonly<HostAutomationExecutorResult>>;
24
+ }
25
+ //# sourceMappingURL=host-executors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-executors.d.ts","sourceRoot":"","sources":["../src/host-executors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,sBAAsB,EACtB,gCAAgC,EAChC,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,YAAY,CAAA;AAEnB,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAExD,MAAM,MAAM,6BAA6B,GACrC,sBAAsB,GACtB,oBAAoB,GACpB,gBAAgB,GAChB,oBAAoB,CAAA;AAExB,qBAAa,yBAA0B,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,6BAA6B;gBAAnC,IAAI,EAAE,6BAA6B,EAAE,OAAO,EAAE,MAAM;CAI1E;AASD,MAAM,MAAM,iBAAiB,GACzB,QAAQ,CAAC;IACP,SAAS,EAAE,KAAK,CAAA;IAChB,UAAU,EACN,mCAAmC,GACnC,iCAAiC,GACjC,iCAAiC,GACjC,2BAA2B,CAAA;CAChC,CAAC,GACF,QAAQ,CAAC;IACP,SAAS,EAAE,IAAI,CAAA;IACf,UAAU,EAAE,QAAQ,CAAC,gCAAgC,CAAC,CAAA;IACtD,iBAAiB,EAAE,MAAM,CAAA;IACzB,eAAe,EAAE,WAAW,CAAA;CAC7B,CAAC,CAAA;AAiCN,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,4BAA4B,GAAG,QAAQ,CAAC,4BAA4B,CAAC,CAmDtH;AAED,sFAAsF;AACtF,qBAAa,8BAA8B;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAEhE,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,IAAI;IA2BtD,KAAK,CAAC,IAAI,EAAE,2BAA2B,GAAG,iBAAiB;IAmCrD,OAAO,CACX,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;CA8BnD"}
@@ -0,0 +1,181 @@
1
+ export class HostExecutorRegistryError extends Error {
2
+ code;
3
+ constructor(code, message) {
4
+ super(message);
5
+ this.code = code;
6
+ this.name = 'HostExecutorRegistryError';
7
+ }
8
+ }
9
+ const digestPattern = /^[a-f0-9]{64}$/u;
10
+ const identifierPattern = /^[A-Za-z0-9][A-Za-z0-9._:/-]{0,199}$/u;
11
+ const resultCodePattern = /^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u;
12
+ function normalizedDescriptor(value) {
13
+ if (typeof value !== 'object' || value === null
14
+ || !identifierPattern.test(value.executorId)
15
+ || !Number.isSafeInteger(value.contractVersion) || value.contractVersion < 1 || value.contractVersion > 1_000_000
16
+ || !digestPattern.test(value.catalogDigest)) {
17
+ throw new HostExecutorRegistryError('invalid-descriptor', 'Host executor descriptor is invalid');
18
+ }
19
+ return Object.freeze({
20
+ executorId: value.executorId,
21
+ contractVersion: value.contractVersion,
22
+ catalogDigest: value.catalogDigest,
23
+ });
24
+ }
25
+ function descriptorKey(value) {
26
+ return `${value.executorId}\0${value.contractVersion}\0${value.catalogDigest}`;
27
+ }
28
+ function descriptorMatches(descriptor, spec) {
29
+ return descriptor.executorId === spec.executorId
30
+ && descriptor.contractVersion === spec.executorContractVersion
31
+ && descriptor.catalogDigest === spec.catalogDigest;
32
+ }
33
+ export function validateHostExecutorResult(value) {
34
+ if (typeof value !== 'object' || value === null || Array.isArray(value)) {
35
+ throw new HostExecutorRegistryError('invalid-result', 'Host executor result must be an object');
36
+ }
37
+ const input = value;
38
+ const allowed = new Set([
39
+ 'outcome', 'failureClass', 'failurePhase', 'failureCode', 'sideEffectState', 'retryability',
40
+ ]);
41
+ const outcome = input['outcome'];
42
+ const failureClass = input['failureClass'];
43
+ const failurePhase = input['failurePhase'];
44
+ const failureCode = input['failureCode'];
45
+ const sideEffectState = input['sideEffectState'];
46
+ const retryability = input['retryability'];
47
+ const classes = new Set([
48
+ 'none', 'budget', 'cancelled', 'configuration', 'execution', 'infrastructure',
49
+ 'policy', 'provider', 'timeout', 'unknown',
50
+ ]);
51
+ const phases = new Set([
52
+ 'none', 'artifact-write', 'agent-creation', 'agent-disposal', 'agent-setup',
53
+ 'budget-reservation', 'budget-settlement', 'executor-availability', 'host-execution',
54
+ 'model-execution', 'preflight', 'preset-resolution', 'prompt-submission',
55
+ 'recovery', 'session-flush', 'terminal-commit', 'unknown',
56
+ ]);
57
+ if (Object.keys(input).some(key => !allowed.has(key))
58
+ || (outcome !== 'succeeded' && outcome !== 'failed' && outcome !== 'unknown')
59
+ || !classes.has(failureClass)
60
+ || !phases.has(failurePhase)
61
+ || typeof failureCode !== 'string' || !resultCodePattern.test(failureCode)
62
+ || (sideEffectState !== 'none' && sideEffectState !== 'possible' && sideEffectState !== 'unknown')
63
+ || (retryability !== 'safe' && retryability !== 'unsafe' && retryability !== 'after-intervention')) {
64
+ throw new HostExecutorRegistryError('invalid-result', 'Host executor result is invalid');
65
+ }
66
+ const noneTuple = failureClass === 'none' && failurePhase === 'none' && failureCode === 'none';
67
+ const partialNone = failureClass === 'none' || failurePhase === 'none' || failureCode === 'none';
68
+ const interventionClass = failureClass === 'configuration' || failureClass === 'policy' || failureClass === 'budget';
69
+ if ((outcome === 'succeeded') !== noneTuple
70
+ || (!noneTuple && partialNone)
71
+ || (sideEffectState !== 'none' && retryability !== 'unsafe')
72
+ || (sideEffectState === 'none' && outcome === 'succeeded' && retryability !== 'safe')
73
+ || (sideEffectState === 'none' && interventionClass && retryability !== 'after-intervention')) {
74
+ throw new HostExecutorRegistryError('invalid-result', 'Host executor result contradicts its terminal state');
75
+ }
76
+ return Object.freeze({
77
+ outcome,
78
+ failureClass,
79
+ failurePhase,
80
+ failureCode,
81
+ sideEffectState,
82
+ retryability,
83
+ });
84
+ }
85
+ /** Process-local registry. Durable definitions store descriptors, never callbacks. */
86
+ export class HostAutomationExecutorRegistry {
87
+ registrations = new Map();
88
+ register(executor) {
89
+ if (typeof executor !== 'object' || executor === null
90
+ || typeof executor.accepts !== 'function' || typeof executor.execute !== 'function') {
91
+ throw new HostExecutorRegistryError('invalid-descriptor', 'Host executor implementation is invalid');
92
+ }
93
+ const descriptor = normalizedDescriptor(executor.descriptor);
94
+ const key = descriptorKey(descriptor);
95
+ if (this.registrations.has(key)) {
96
+ throw new HostExecutorRegistryError('duplicate-descriptor', 'Host executor descriptor is already registered');
97
+ }
98
+ const registration = {
99
+ executor,
100
+ descriptor,
101
+ token: Symbol(`host-executor:${descriptor.executorId}:${descriptor.contractVersion}`),
102
+ lifecycle: new AbortController(),
103
+ };
104
+ this.registrations.set(key, registration);
105
+ let active = true;
106
+ return () => {
107
+ if (!active)
108
+ return;
109
+ active = false;
110
+ if (this.registrations.get(key) !== registration)
111
+ return;
112
+ this.registrations.delete(key);
113
+ registration.lifecycle.abort('host-executor-unloaded');
114
+ };
115
+ }
116
+ prove(spec) {
117
+ const accepted = [];
118
+ for (const registration of this.registrations.values()) {
119
+ try {
120
+ if (registration.executor.accepts(spec))
121
+ accepted.push(registration);
122
+ }
123
+ catch {
124
+ return Object.freeze({ available: false, reasonCode: 'host-executor-acceptance-failed' });
125
+ }
126
+ }
127
+ if (accepted.length > 1) {
128
+ return Object.freeze({ available: false, reasonCode: 'host-executor-acceptance-conflict' });
129
+ }
130
+ if (accepted.length === 1) {
131
+ const registration = accepted[0];
132
+ if (!descriptorMatches(registration.descriptor, spec)) {
133
+ return Object.freeze({ available: false, reasonCode: 'host-executor-acceptance-conflict' });
134
+ }
135
+ return Object.freeze({
136
+ available: true,
137
+ descriptor: registration.descriptor,
138
+ registrationToken: registration.token,
139
+ lifecycleSignal: registration.lifecycle.signal,
140
+ });
141
+ }
142
+ const exact = this.registrations.get(descriptorKey({
143
+ executorId: spec.executorId,
144
+ contractVersion: spec.executorContractVersion,
145
+ catalogDigest: spec.catalogDigest,
146
+ }));
147
+ return Object.freeze({
148
+ available: false,
149
+ reasonCode: exact === undefined ? 'host-executor-unavailable' : 'host-executor-contract-rejected',
150
+ });
151
+ }
152
+ async execute(proof, input) {
153
+ if (!proof.available) {
154
+ throw new HostExecutorRegistryError('stale-registration', 'Host executor availability was not proven');
155
+ }
156
+ const registration = this.registrations.get(descriptorKey(proof.descriptor));
157
+ if (registration === undefined || registration.token !== proof.registrationToken
158
+ || registration.lifecycle.signal.aborted || proof.lifecycleSignal !== registration.lifecycle.signal
159
+ || input.catalogDigest !== registration.descriptor.catalogDigest) {
160
+ throw new HostExecutorRegistryError('stale-registration', 'Host executor registration is no longer exact');
161
+ }
162
+ const signal = AbortSignal.any([input.signal, registration.lifecycle.signal]);
163
+ const execution = Promise.resolve().then(() => registration.executor.execute({ ...input, signal }));
164
+ const settled = execution.then(result => ({ kind: 'result', result }), error => ({ kind: 'error', error }));
165
+ const unloaded = new Promise(resolve => {
166
+ if (registration.lifecycle.signal.aborted)
167
+ resolve({ kind: 'unloaded' });
168
+ else
169
+ registration.lifecycle.signal.addEventListener('abort', () => resolve({ kind: 'unloaded' }), { once: true });
170
+ });
171
+ const result = await Promise.race([settled, unloaded]);
172
+ void settled.then(() => { });
173
+ if (result.kind === 'unloaded') {
174
+ throw new HostExecutorRegistryError('stale-registration', 'Host executor unloaded during execution');
175
+ }
176
+ if (result.kind === 'error')
177
+ throw result.error;
178
+ return validateHostExecutorResult(result.result);
179
+ }
180
+ }
181
+ //# sourceMappingURL=host-executors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-executors.js","sourceRoot":"","sources":["../src/host-executors.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -5,7 +5,7 @@ export declare const name = "dsh-enhanced-assistant-automations";
5
5
  export { AssistantAutomationsService, Config, version };
6
6
  export type { PendingAutomationProposal, SystemAutomationReconcileInput } from './service.js';
7
7
  export * from './types.js';
8
- export { listActiveAutomationsLocally } from './operator.js';
8
+ export { listActiveAutomationsLocally, listAutomationsLocally } from './operator.js';
9
9
  export declare function apply(ctx: Context, config: import('./service.js').Config): void;
10
10
  export default AssistantAutomationsService;
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,eAAO,MAAM,IAAI,uCAAuC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACvD,YAAY,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAC7F,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAA;AAE5D,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,cAAc,EAAE,MAAM,GAAG,IAAI,CAE/E;AAED,eAAe,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,eAAO,MAAM,IAAI,uCAAuC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACvD,YAAY,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAC7F,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEpF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,cAAc,EAAE,MAAM,GAAG,IAAI,CAE/E;AAED,eAAe,2BAA2B,CAAA"}
package/lib/index.js CHANGED
@@ -3,7 +3,7 @@ import { version } from './version.js';
3
3
  export const name = 'dsh-enhanced-assistant-automations';
4
4
  export { AssistantAutomationsService, Config, version };
5
5
  export * from './types.js';
6
- export { listActiveAutomationsLocally } from './operator.js';
6
+ export { listActiveAutomationsLocally, listAutomationsLocally } from './operator.js';
7
7
  export function apply(ctx, config) {
8
8
  new AssistantAutomationsService(ctx, config);
9
9
  }
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,CAAC,MAAM,IAAI,GAAG,oCAAoC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AAEvD,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAA;AAE5D,MAAM,UAAU,KAAK,CAAC,GAAY,EAAE,MAAqC;IACvE,IAAI,2BAA2B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAC9C,CAAC;AAED,eAAe,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,CAAC,MAAM,IAAI,GAAG,oCAAoC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AAEvD,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEpF,MAAM,UAAU,KAAK,CAAC,GAAY,EAAE,MAAqC;IACvE,IAAI,2BAA2B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAC9C,CAAC;AAED,eAAe,2BAA2B,CAAA"}
package/lib/operator.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import type { AutomationRecord } from './types.js';
2
2
  /** Read-only local inspection for setup tools; never starts the scheduler. */
3
+ export declare function listAutomationsLocally(databasePath: string): AutomationRecord[];
4
+ /** Compatibility projection retained for callers that only gate active work. */
3
5
  export declare function listActiveAutomationsLocally(databasePath: string): AutomationRecord[];
4
6
  //# sourceMappingURL=operator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../src/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,8EAA8E;AAC9E,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAOrF"}
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../src/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAO/E;AAED,gFAAgF;AAChF,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAErF"}
package/lib/operator.js CHANGED
@@ -1,12 +1,16 @@
1
1
  import { AutomationStore } from './store.js';
2
2
  /** Read-only local inspection for setup tools; never starts the scheduler. */
3
- export function listActiveAutomationsLocally(databasePath) {
3
+ export function listAutomationsLocally(databasePath) {
4
4
  const store = new AutomationStore({ path: databasePath });
5
5
  try {
6
- return store.list().filter(record => record.status === 'active');
6
+ return store.list();
7
7
  }
8
8
  finally {
9
9
  store.close();
10
10
  }
11
11
  }
12
+ /** Compatibility projection retained for callers that only gate active work. */
13
+ export function listActiveAutomationsLocally(databasePath) {
14
+ return listAutomationsLocally(databasePath).filter(record => record.status === 'active');
15
+ }
12
16
  //# sourceMappingURL=operator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator.js","sourceRoot":"","sources":["../src/operator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,8EAA8E;AAC9E,MAAM,UAAU,4BAA4B,CAAC,YAAoB;IAC/D,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;IACzD,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAA;IAClE,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,KAAK,EAAE,CAAA;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"operator.js","sourceRoot":"","sources":["../src/operator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,8EAA8E;AAC9E,MAAM,UAAU,sBAAsB,CAAC,YAAoB;IACzD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;IACzD,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;IACrB,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,KAAK,EAAE,CAAA;IACf,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,4BAA4B,CAAC,YAAoB;IAC/D,OAAO,sBAAsB,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAA;AAC1F,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ApprovalDecisionInput, ApprovalDispatchRoute, ApprovalProposalRecoveryInput, ApprovalProposalRecoveryResult, ApprovalProposalResult, ApprovalProposalSnapshot } from '@dsh-enhanced/assistant-policy';
1
+ import type { ApprovalDecisionInput, ApprovalDispatchRouteV2, ApprovalProposalRecoveryInput, ApprovalProposalRecoveryResult, ApprovalProposalResult, ApprovalProposalSnapshot } from '@dsh-enhanced/assistant-policy';
2
2
  import { type AutomationStore } from './store.js';
3
3
  import type { AutomationMutation, AutomationProposalDecisionInput, AutomationProposalInput, AutomationProposalResult, AutomationProposalStatus, StoredAutomationProposal } from './types.js';
4
4
  export type AutomationProposalStoreErrorCode = 'idempotency-conflict' | 'invalid-input' | 'invalid-path' | 'invalid-state' | 'not-found' | 'schema-too-new' | 'unauthorized';
@@ -31,7 +31,7 @@ export declare class AutomationProposalStore {
31
31
  idempotencyKey: string;
32
32
  requester: string;
33
33
  principal: string;
34
- dispatch?: Readonly<ApprovalDispatchRoute>;
34
+ dispatch?: Readonly<ApprovalDispatchRouteV2>;
35
35
  requestHash: string;
36
36
  mutation: AutomationMutation;
37
37
  expiresAt: number;
@@ -1 +1 @@
1
- {"version":3,"file":"proposals.d.ts","sourceRoot":"","sources":["../src/proposals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposals.d.ts","sourceRoot":"","sources":["../src/proposals.ts"],"names":[],"mappings":"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"}
package/lib/proposals.js CHANGED
@@ -17,7 +17,7 @@ function hash(value) {
17
17
  function id(idempotencyKey) {
18
18
  return `automation-${createHash('sha256').update(idempotencyKey).digest('hex').slice(0, 32)}`;
19
19
  }
20
- function approvalDispatch(value) {
20
+ function approvalDispatch(value, errorCode, allowLegacy = true) {
21
21
  if (value === null)
22
22
  return undefined;
23
23
  let parsed;
@@ -25,26 +25,42 @@ function approvalDispatch(value) {
25
25
  parsed = JSON.parse(value);
26
26
  }
27
27
  catch {
28
- throw new AutomationProposalStoreError('invalid-state', 'automation proposal dispatch is not valid JSON');
28
+ throw new AutomationProposalStoreError(errorCode, 'automation proposal dispatch is not valid JSON');
29
29
  }
30
30
  if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
31
- throw new AutomationProposalStoreError('invalid-state', 'automation proposal dispatch is invalid');
31
+ throw new AutomationProposalStoreError(errorCode, 'automation proposal dispatch is invalid');
32
32
  }
33
33
  const route = parsed;
34
- if (Object.keys(route).sort().join(',') !== 'bindingId,principal,sourceId,workspace'
34
+ const keys = Object.keys(route).sort().join(',');
35
+ const legacyKeys = 'bindingId,principal,sourceId,workspace';
36
+ const versionedLegacyKeys = 'bindingId,principal,routeVersion,sourceId,workspace';
37
+ const v2Keys = [
38
+ 'bindingGeneration', 'bindingId', 'bindingVersion', 'principal', 'principalRecordId',
39
+ 'principalVersion', 'routeVersion', 'sourceId', 'workspace',
40
+ ].sort().join(',');
41
+ const legacy = keys === legacyKeys || (keys === versionedLegacyKeys && route['routeVersion'] === 1);
42
+ const v2 = keys === v2Keys && route['routeVersion'] === 2
43
+ && typeof route['bindingVersion'] === 'number'
44
+ && Number.isSafeInteger(route['bindingVersion']) && route['bindingVersion'] > 0
45
+ && typeof route['bindingGeneration'] === 'number'
46
+ && Number.isSafeInteger(route['bindingGeneration']) && route['bindingGeneration'] > 0
47
+ && typeof route['principalRecordId'] === 'string'
48
+ && route['principalRecordId'].trim() !== ''
49
+ && Buffer.byteLength(route['principalRecordId'], 'utf8') <= 500
50
+ && typeof route['principalVersion'] === 'number'
51
+ && Number.isSafeInteger(route['principalVersion']) && route['principalVersion'] > 0;
52
+ if ((!v2 && !(allowLegacy && legacy))
35
53
  || typeof route['sourceId'] !== 'string'
36
54
  || !/^[A-Za-z0-9][A-Za-z0-9._:-]{0,255}$/u.test(route['sourceId'])
37
55
  || typeof route['bindingId'] !== 'string' || route['bindingId'].trim() === ''
38
56
  || typeof route['workspace'] !== 'string' || !isAbsolute(route['workspace'])
39
57
  || typeof route['principal'] !== 'string' || route['principal'].trim() === '') {
40
- throw new AutomationProposalStoreError('invalid-state', 'automation proposal dispatch is invalid');
58
+ throw new AutomationProposalStoreError(errorCode, 'automation proposal dispatch is invalid');
41
59
  }
42
- return Object.freeze({
43
- sourceId: route['sourceId'],
44
- bindingId: route['bindingId'],
45
- workspace: route['workspace'],
46
- principal: route['principal'],
47
- });
60
+ return Object.freeze(parsed);
61
+ }
62
+ function newApprovalDispatch(value) {
63
+ return approvalDispatch(JSON.stringify(value), 'invalid-input', false);
48
64
  }
49
65
  function stored(row) {
50
66
  if (!Number.isSafeInteger(row.ttl_ms) || row.ttl_ms <= 0) {
@@ -56,7 +72,7 @@ function stored(row) {
56
72
  idempotencyKey: row.idempotency_key,
57
73
  requester: row.requester,
58
74
  principal: row.principal,
59
- ...(row.dispatch_json === null ? {} : { dispatch: approvalDispatch(row.dispatch_json) }),
75
+ ...(row.dispatch_json === null ? {} : { dispatch: approvalDispatch(row.dispatch_json, 'invalid-state') }),
60
76
  requestHash: row.change_hash,
61
77
  changeHash: hash(JSON.parse(row.change_json)),
62
78
  mutation: Object.freeze(JSON.parse(row.change_json)),
@@ -109,6 +125,7 @@ export class AutomationProposalStore {
109
125
  return rows.map(row => stored(row));
110
126
  }
111
127
  prepare(input) {
128
+ const dispatch = input.dispatch === undefined ? undefined : newApprovalDispatch(input.dispatch);
112
129
  const existingRow = this.database.prepare('SELECT * FROM automation_proposals WHERE id = ?').get(input.proposalId);
113
130
  if (existingRow !== undefined) {
114
131
  const existing = stored(existingRow);
@@ -125,7 +142,7 @@ export class AutomationProposalStore {
125
142
  id, policy_proposal_id, idempotency_key, requester, principal, dispatch_json, change_hash, change_json,
126
143
  status, expires_at, ttl_ms, result_automation_id, created_at, updated_at, version
127
144
  ) VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'pending', ?, ?, NULL, ?, ?, 1)
128
- `).run(input.proposalId, input.idempotencyKey, input.requester, input.principal, input.dispatch === undefined ? null : JSON.stringify(input.dispatch), input.requestHash, JSON.stringify(input.mutation), input.expiresAt, input.ttlMs, now, now);
145
+ `).run(input.proposalId, input.idempotencyKey, input.requester, input.principal, dispatch === undefined ? null : JSON.stringify(dispatch), input.requestHash, JSON.stringify(input.mutation), input.expiresAt, input.ttlMs, now, now);
129
146
  return { proposal: this.get(input.proposalId), replayed: false };
130
147
  }
131
148
  /** Move an inspected, still-pending row behind older peers using a durable monotonic timestamp. */
@@ -215,14 +232,7 @@ export class AutomationProposalManager {
215
232
  if (!Number.isSafeInteger(input.ttlMs) || input.ttlMs <= 0) {
216
233
  throw new AutomationProposalStoreError('invalid-input', 'proposal ttlMs must be positive');
217
234
  }
218
- const dispatch = input.dispatch === undefined
219
- ? undefined
220
- : approvalDispatch(JSON.stringify({
221
- sourceId: input.dispatch.sourceId,
222
- bindingId: input.dispatch.bindingId,
223
- workspace: input.dispatch.workspace,
224
- principal: input.dispatch.principal,
225
- }));
235
+ const dispatch = input.dispatch === undefined ? undefined : newApprovalDispatch(input.dispatch);
226
236
  if (dispatch !== undefined && dispatch.principal !== input.principal) {
227
237
  throw new AutomationProposalStoreError('invalid-input', 'approval dispatch belongs to another principal');
228
238
  }
@@ -389,12 +399,14 @@ export class AutomationProposalManager {
389
399
  * deadline. An abandoned result is terminal and must never be resurrected.
390
400
  */
391
401
  recoverOrCreatePolicyProposal(proposal) {
402
+ if (proposal.dispatch !== undefined && proposal.dispatch.routeVersion !== 2)
403
+ return undefined;
392
404
  const recovered = this.policy.recoverOrCreateProposal({
393
405
  ...this.policyIdentity(proposal),
394
406
  diff: diff(proposal.mutation),
395
407
  summary: summary(proposal.mutation),
396
408
  notAfter: proposal.expiresAt,
397
- ...(proposal.dispatch === undefined ? {} : { dispatch: proposal.dispatch }),
409
+ ...(proposal.dispatch?.routeVersion === 2 ? { dispatch: proposal.dispatch } : {}),
398
410
  });
399
411
  if (recovered.kind === 'abandoned')
400
412
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"proposals.js","sourceRoot":"","sources":["../src/proposals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposals.js","sourceRoot":"","sources":["../src/proposals.ts"],"names":[],"mappings":"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"}
package/lib/runner.d.ts CHANGED
@@ -1,7 +1,14 @@
1
1
  import type { Context } from '@deepseek-ai/cordis';
2
2
  import type { AssistantPolicyService, PolicyBudgetConfig } from '@dsh-enhanced/assistant-policy';
3
- import { type AutomationRunner, type AutomationRunnerInput, type AutomationRunnerResult } from './coordinator.js';
4
- export declare class AutomationBudgetReplayError extends Error {
3
+ import { HostAutomationExecutorRegistry } from './host-executors.js';
4
+ import { AutomationRunnerFailureError, type AutomationRunner, type AutomationRunnerInput, type AutomationRunnerResult } from './coordinator.js';
5
+ import type { AutomationExecutionContext } from './types.js';
6
+ declare module '@deepseek-ai/cordis' {
7
+ interface Context {
8
+ assistantAutomationExecution: AutomationExecutionContext;
9
+ }
10
+ }
11
+ export declare class AutomationBudgetReplayError extends AutomationRunnerFailureError {
5
12
  readonly reservationStatus: 'finalized' | 'released' | 'reserved';
6
13
  readonly code: "automation-budget-reservation-replayed";
7
14
  constructor(reservationStatus: 'finalized' | 'released' | 'reserved');
@@ -20,4 +27,23 @@ export declare class DshAutomationRunner implements AutomationRunner {
20
27
  constructor(ctx: Context, policy: AssistantPolicyService, options?: DshAutomationRunnerOptions);
21
28
  run(input: AutomationRunnerInput): Promise<AutomationRunnerResult>;
22
29
  }
30
+ export interface HostAutomationRunnerOptions {
31
+ readonly allowUnbudgetedExecution?: boolean;
32
+ }
33
+ /** Executes immutable Host contracts without creating an Agent or model turn. */
34
+ export declare class HostAutomationRunner implements AutomationRunner {
35
+ private readonly registry;
36
+ private readonly policy;
37
+ private readonly allowUnbudgetedExecution;
38
+ constructor(registry: HostAutomationExecutorRegistry, policy: AssistantPolicyService, options?: HostAutomationRunnerOptions);
39
+ run(input: AutomationRunnerInput): Promise<AutomationRunnerResult>;
40
+ private hostDiagnostic;
41
+ }
42
+ /** Preserves the legacy Agent runner while routing Host definitions explicitly. */
43
+ export declare class RoutedAutomationRunner implements AutomationRunner {
44
+ private readonly agent;
45
+ private readonly host;
46
+ constructor(agent: AutomationRunner, host: AutomationRunner);
47
+ run(input: AutomationRunnerInput): Promise<AutomationRunnerResult>;
48
+ }
23
49
  //# sourceMappingURL=runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AASlD,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAEhG,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAA;AA2CzB,qBAAa,2BAA4B,SAAQ,KAAK;IAGxC,QAAQ,CAAC,iBAAiB,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU;IAF7E,QAAQ,CAAC,IAAI,EAAG,wCAAwC,CAAS;gBAE5C,iBAAiB,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU;CAI9E;AAED,eAAO,MAAM,4BAA4B,oBAAoB,CAAA;AAE7D,yFAAyF;AACzF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,EACvD,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,kBAAkB,CAAC,CAW9B;AAED,MAAM,WAAW,0BAA0B;IACzC,sGAAsG;IACtG,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAC5C;AAiBD,qBAAa,mBAAoB,YAAW,gBAAgB;IAIxD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;gBAG/B,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,sBAAsB,EAC/C,OAAO,GAAE,0BAA+B;IAKpC,GAAG,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CA+KzE"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAUlD,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAEhG,OAAO,EACL,8BAA8B,EAE/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEL,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAEV,0BAA0B,EAO3B,MAAM,YAAY,CAAA;AAOnB,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,OAAO;QACf,4BAA4B,EAAE,0BAA0B,CAAA;KACzD;CACF;AAmGD,qBAAa,2BAA4B,SAAQ,4BAA4B;IAG/D,QAAQ,CAAC,iBAAiB,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU;IAF7E,QAAQ,CAAC,IAAI,EAAG,wCAAwC,CAAS;gBAE5C,iBAAiB,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU;CAc9E;AAED,eAAO,MAAM,4BAA4B,oBAAoB,CAAA;AA2C7D,yFAAyF;AACzF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,EACvD,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,kBAAkB,CAAC,CAW9B;AAED,MAAM,WAAW,0BAA0B;IACzC,sGAAsG;IACtG,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAC5C;AAiBD,qBAAa,mBAAoB,YAAW,gBAAgB;IAIxD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;gBAG/B,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,sBAAsB,EAC/C,OAAO,GAAE,0BAA+B;IAKpC,GAAG,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CA+RzE;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAC5C;AAED,iFAAiF;AACjF,qBAAa,oBAAqB,YAAW,gBAAgB;IAIzD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;gBAG/B,QAAQ,EAAE,8BAA8B,EACxC,MAAM,EAAE,sBAAsB,EAC/C,OAAO,GAAE,2BAAgC;IAKrC,GAAG,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgQxE,OAAO,CAAC,cAAc;CAMvB;AAED,mFAAmF;AACnF,qBAAa,sBAAuB,YAAW,gBAAgB;IAE3D,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,gBAAgB;IAGzC,GAAG,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAKnE"}