apcore-js 0.18.0 → 0.20.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/README.md +112 -9
- package/dist/acl-handlers.d.ts +14 -0
- package/dist/acl-handlers.d.ts.map +1 -1
- package/dist/acl-handlers.js +37 -4
- package/dist/acl-handlers.js.map +1 -1
- package/dist/acl.d.ts +22 -1
- package/dist/acl.d.ts.map +1 -1
- package/dist/acl.js +90 -34
- package/dist/acl.js.map +1 -1
- package/dist/async-task.d.ts +70 -16
- package/dist/async-task.d.ts.map +1 -1
- package/dist/async-task.js +212 -72
- package/dist/async-task.js.map +1 -1
- package/dist/bindings.d.ts.map +1 -1
- package/dist/bindings.js +113 -11
- package/dist/bindings.js.map +1 -1
- package/dist/builtin-steps.d.ts +33 -8
- package/dist/builtin-steps.d.ts.map +1 -1
- package/dist/builtin-steps.js +119 -47
- package/dist/builtin-steps.js.map +1 -1
- package/dist/client.d.ts +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js.map +1 -1
- package/dist/config.d.ts +38 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +163 -33
- package/dist/config.js.map +1 -1
- package/dist/context.d.ts +34 -7
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +108 -40
- package/dist/context.js.map +1 -1
- package/dist/decorator.d.ts +3 -0
- package/dist/decorator.d.ts.map +1 -1
- package/dist/decorator.js +3 -0
- package/dist/decorator.js.map +1 -1
- package/dist/errors.d.ts +88 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +231 -56
- package/dist/errors.js.map +1 -1
- package/dist/events/circuit-breaker.d.ts +45 -0
- package/dist/events/circuit-breaker.d.ts.map +1 -0
- package/dist/events/circuit-breaker.js +115 -0
- package/dist/events/circuit-breaker.js.map +1 -0
- package/dist/events/emitter.d.ts +24 -1
- package/dist/events/emitter.d.ts.map +1 -1
- package/dist/events/emitter.js +86 -12
- package/dist/events/emitter.js.map +1 -1
- package/dist/events/index.d.ts +4 -2
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +3 -2
- package/dist/events/index.js.map +1 -1
- package/dist/events/subscribers.d.ts +33 -1
- package/dist/events/subscribers.d.ts.map +1 -1
- package/dist/events/subscribers.js +124 -1
- package/dist/events/subscribers.js.map +1 -1
- package/dist/executor.d.ts +14 -3
- package/dist/executor.d.ts.map +1 -1
- package/dist/executor.js +155 -48
- package/dist/executor.js.map +1 -1
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/index.d.ts +47 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -18
- package/dist/index.js.map +1 -1
- package/dist/middleware/base.d.ts +25 -3
- package/dist/middleware/base.d.ts.map +1 -1
- package/dist/middleware/base.js +24 -0
- package/dist/middleware/base.js.map +1 -1
- package/dist/middleware/circuit-breaker.d.ts +54 -0
- package/dist/middleware/circuit-breaker.d.ts.map +1 -0
- package/dist/middleware/circuit-breaker.js +168 -0
- package/dist/middleware/circuit-breaker.js.map +1 -0
- package/dist/middleware/context-namespace.d.ts +30 -0
- package/dist/middleware/context-namespace.d.ts.map +1 -0
- package/dist/middleware/context-namespace.js +38 -0
- package/dist/middleware/context-namespace.js.map +1 -0
- package/dist/middleware/index.d.ts +8 -2
- package/dist/middleware/index.d.ts.map +1 -1
- package/dist/middleware/index.js +5 -2
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/logging.d.ts +6 -0
- package/dist/middleware/logging.d.ts.map +1 -1
- package/dist/middleware/logging.js +13 -3
- package/dist/middleware/logging.js.map +1 -1
- package/dist/middleware/manager.d.ts +11 -4
- package/dist/middleware/manager.d.ts.map +1 -1
- package/dist/middleware/manager.js +26 -9
- package/dist/middleware/manager.js.map +1 -1
- package/dist/middleware/platform-notify.d.ts +8 -4
- package/dist/middleware/platform-notify.d.ts.map +1 -1
- package/dist/middleware/platform-notify.js +15 -7
- package/dist/middleware/platform-notify.js.map +1 -1
- package/dist/middleware/retry.d.ts +16 -7
- package/dist/middleware/retry.d.ts.map +1 -1
- package/dist/middleware/retry.js +21 -15
- package/dist/middleware/retry.js.map +1 -1
- package/dist/middleware/tracing.d.ts +50 -0
- package/dist/middleware/tracing.d.ts.map +1 -0
- package/dist/middleware/tracing.js +89 -0
- package/dist/middleware/tracing.js.map +1 -0
- package/dist/observability/batch-span-processor.d.ts +48 -0
- package/dist/observability/batch-span-processor.d.ts.map +1 -0
- package/dist/observability/batch-span-processor.js +89 -0
- package/dist/observability/batch-span-processor.js.map +1 -0
- package/dist/observability/context-logger.d.ts +54 -1
- package/dist/observability/context-logger.d.ts.map +1 -1
- package/dist/observability/context-logger.js +287 -10
- package/dist/observability/context-logger.js.map +1 -1
- package/dist/observability/error-history.d.ts +36 -7
- package/dist/observability/error-history.d.ts.map +1 -1
- package/dist/observability/error-history.js +169 -50
- package/dist/observability/error-history.js.map +1 -1
- package/dist/observability/index.d.ts +16 -5
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +8 -3
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/metrics-utils.d.ts.map +1 -1
- package/dist/observability/metrics-utils.js +3 -5
- package/dist/observability/metrics-utils.js.map +1 -1
- package/dist/observability/metrics.d.ts +15 -1
- package/dist/observability/metrics.d.ts.map +1 -1
- package/dist/observability/metrics.js +37 -3
- package/dist/observability/metrics.js.map +1 -1
- package/dist/observability/prometheus-exporter.d.ts +37 -0
- package/dist/observability/prometheus-exporter.d.ts.map +1 -0
- package/dist/observability/prometheus-exporter.js +135 -0
- package/dist/observability/prometheus-exporter.js.map +1 -0
- package/dist/observability/storage.d.ts +43 -0
- package/dist/observability/storage.d.ts.map +1 -0
- package/dist/observability/storage.js +58 -0
- package/dist/observability/storage.js.map +1 -0
- package/dist/observability/store.d.ts +29 -0
- package/dist/observability/store.d.ts.map +1 -0
- package/dist/observability/store.js +36 -0
- package/dist/observability/store.js.map +1 -0
- package/dist/observability/tracing.d.ts +2 -0
- package/dist/observability/tracing.d.ts.map +1 -1
- package/dist/observability/tracing.js +12 -2
- package/dist/observability/tracing.js.map +1 -1
- package/dist/observability/usage-exporter.d.ts +58 -0
- package/dist/observability/usage-exporter.d.ts.map +1 -0
- package/dist/observability/usage-exporter.js +86 -0
- package/dist/observability/usage-exporter.js.map +1 -0
- package/dist/observability/usage.d.ts +18 -1
- package/dist/observability/usage.d.ts.map +1 -1
- package/dist/observability/usage.js +35 -4
- package/dist/observability/usage.js.map +1 -1
- package/dist/pipeline-config.d.ts +24 -7
- package/dist/pipeline-config.d.ts.map +1 -1
- package/dist/pipeline-config.js +113 -19
- package/dist/pipeline-config.js.map +1 -1
- package/dist/pipeline.d.ts +123 -2
- package/dist/pipeline.d.ts.map +1 -1
- package/dist/pipeline.js +249 -50
- package/dist/pipeline.js.map +1 -1
- package/dist/registry/conflicts.d.ts +2 -2
- package/dist/registry/conflicts.d.ts.map +1 -1
- package/dist/registry/conflicts.js +10 -11
- package/dist/registry/conflicts.js.map +1 -1
- package/dist/registry/dependencies.d.ts +1 -1
- package/dist/registry/dependencies.d.ts.map +1 -1
- package/dist/registry/dependencies.js +69 -20
- package/dist/registry/dependencies.js.map +1 -1
- package/dist/registry/index.d.ts +2 -0
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +1 -0
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/multi-class.d.ts +57 -0
- package/dist/registry/multi-class.d.ts.map +1 -0
- package/dist/registry/multi-class.js +120 -0
- package/dist/registry/multi-class.js.map +1 -0
- package/dist/registry/registry.d.ts +99 -4
- package/dist/registry/registry.d.ts.map +1 -1
- package/dist/registry/registry.js +291 -33
- package/dist/registry/registry.js.map +1 -1
- package/dist/registry/scanner.d.ts.map +1 -1
- package/dist/registry/scanner.js +6 -0
- package/dist/registry/scanner.js.map +1 -1
- package/dist/registry/version.d.ts +1 -0
- package/dist/registry/version.d.ts.map +1 -1
- package/dist/registry/version.js +33 -4
- package/dist/registry/version.js.map +1 -1
- package/dist/schema/constants.d.ts +9 -0
- package/dist/schema/constants.d.ts.map +1 -0
- package/dist/schema/constants.js +9 -0
- package/dist/schema/constants.js.map +1 -0
- package/dist/schema/extractor.d.ts +69 -0
- package/dist/schema/extractor.d.ts.map +1 -0
- package/dist/schema/extractor.js +142 -0
- package/dist/schema/extractor.js.map +1 -0
- package/dist/schema/index.d.ts +3 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +2 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/loader.d.ts +27 -3
- package/dist/schema/loader.d.ts.map +1 -1
- package/dist/schema/loader.js +137 -32
- package/dist/schema/loader.js.map +1 -1
- package/dist/schema/ref-resolver.d.ts.map +1 -1
- package/dist/schema/ref-resolver.js +10 -1
- package/dist/schema/ref-resolver.js.map +1 -1
- package/dist/schema/types.d.ts +4 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js.map +1 -1
- package/dist/schema/validator.d.ts +9 -0
- package/dist/schema/validator.d.ts.map +1 -1
- package/dist/schema/validator.js +153 -4
- package/dist/schema/validator.js.map +1 -1
- package/dist/sys-modules/audit.d.ts +50 -0
- package/dist/sys-modules/audit.d.ts.map +1 -0
- package/dist/sys-modules/audit.js +89 -0
- package/dist/sys-modules/audit.js.map +1 -0
- package/dist/sys-modules/control.d.ts +32 -4
- package/dist/sys-modules/control.d.ts.map +1 -1
- package/dist/sys-modules/control.js +197 -23
- package/dist/sys-modules/control.js.map +1 -1
- package/dist/sys-modules/index.d.ts +7 -2
- package/dist/sys-modules/index.d.ts.map +1 -1
- package/dist/sys-modules/index.js +3 -1
- package/dist/sys-modules/index.js.map +1 -1
- package/dist/sys-modules/overrides.d.ts +58 -0
- package/dist/sys-modules/overrides.d.ts.map +1 -0
- package/dist/sys-modules/overrides.js +106 -0
- package/dist/sys-modules/overrides.js.map +1 -0
- package/dist/sys-modules/registration.d.ts +18 -1
- package/dist/sys-modules/registration.d.ts.map +1 -1
- package/dist/sys-modules/registration.js +115 -11
- package/dist/sys-modules/registration.js.map +1 -1
- package/dist/sys-modules/toggle.d.ts +7 -2
- package/dist/sys-modules/toggle.d.ts.map +1 -1
- package/dist/sys-modules/toggle.js +61 -5
- package/dist/sys-modules/toggle.js.map +1 -1
- package/dist/trace-context.d.ts +47 -9
- package/dist/trace-context.d.ts.map +1 -1
- package/dist/trace-context.js +139 -16
- package/dist/trace-context.js.map +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
package/dist/bindings.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAwBhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAqDvD,qBAAa,aAAa;IAClB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAgE7E,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,EAClB,OAAO,GAAE,MAAyB,GACjC,OAAO,CAAC,cAAc,EAAE,CAAC;IAuBtB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;YAwDrE,wBAAwB;CAuGvC"}
|
package/dist/bindings.js
CHANGED
|
@@ -10,13 +10,60 @@ let _nodePath = null;
|
|
|
10
10
|
try {
|
|
11
11
|
_nodeFs = await import('node:fs');
|
|
12
12
|
}
|
|
13
|
-
catch {
|
|
13
|
+
catch {
|
|
14
|
+
/* browser environment */
|
|
15
|
+
}
|
|
14
16
|
try {
|
|
15
17
|
_nodePath = await import('node:path');
|
|
16
18
|
}
|
|
17
|
-
catch {
|
|
18
|
-
|
|
19
|
+
catch {
|
|
20
|
+
/* browser environment */
|
|
21
|
+
}
|
|
22
|
+
import { BindingCallableNotFoundError, BindingFileInvalidError, BindingInvalidTargetError, BindingModuleNotFoundError, BindingNotCallableError, BindingSchemaInferenceFailedError, BindingSchemaModeConflictError, } from './errors.js';
|
|
23
|
+
import { inferSchemasFromModule } from './schema/extractor.js';
|
|
19
24
|
import { jsonSchemaToTypeBox } from './schema/loader.js';
|
|
25
|
+
import { DEFAULT_ANNOTATIONS } from './module.js';
|
|
26
|
+
const SUPPORTED_SPEC_VERSIONS = new Set(['1.0']);
|
|
27
|
+
/**
|
|
28
|
+
* Convert a snake_case YAML annotations dict to a typed ModuleAnnotations.
|
|
29
|
+
* Unknown keys go into `extra`.
|
|
30
|
+
*/
|
|
31
|
+
function parseAnnotations(raw) {
|
|
32
|
+
const extra = {};
|
|
33
|
+
for (const key of Object.keys(raw)) {
|
|
34
|
+
if (![
|
|
35
|
+
'readonly',
|
|
36
|
+
'destructive',
|
|
37
|
+
'idempotent',
|
|
38
|
+
'requires_approval',
|
|
39
|
+
'open_world',
|
|
40
|
+
'streaming',
|
|
41
|
+
'cacheable',
|
|
42
|
+
'cache_ttl',
|
|
43
|
+
'cache_key_fields',
|
|
44
|
+
'paginated',
|
|
45
|
+
'pagination_style',
|
|
46
|
+
'extra',
|
|
47
|
+
].includes(key)) {
|
|
48
|
+
extra[key] = raw[key];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const rawExtra = raw['extra'] ?? {};
|
|
52
|
+
return {
|
|
53
|
+
readonly: raw['readonly'] ?? DEFAULT_ANNOTATIONS.readonly,
|
|
54
|
+
destructive: raw['destructive'] ?? DEFAULT_ANNOTATIONS.destructive,
|
|
55
|
+
idempotent: raw['idempotent'] ?? DEFAULT_ANNOTATIONS.idempotent,
|
|
56
|
+
requiresApproval: raw['requires_approval'] ?? DEFAULT_ANNOTATIONS.requiresApproval,
|
|
57
|
+
openWorld: raw['open_world'] ?? DEFAULT_ANNOTATIONS.openWorld,
|
|
58
|
+
streaming: raw['streaming'] ?? DEFAULT_ANNOTATIONS.streaming,
|
|
59
|
+
cacheable: raw['cacheable'] ?? DEFAULT_ANNOTATIONS.cacheable,
|
|
60
|
+
cacheTtl: raw['cache_ttl'] ?? DEFAULT_ANNOTATIONS.cacheTtl,
|
|
61
|
+
cacheKeyFields: raw['cache_key_fields'] ?? DEFAULT_ANNOTATIONS.cacheKeyFields,
|
|
62
|
+
paginated: raw['paginated'] ?? DEFAULT_ANNOTATIONS.paginated,
|
|
63
|
+
paginationStyle: raw['pagination_style'] ?? DEFAULT_ANNOTATIONS.paginationStyle,
|
|
64
|
+
extra: { ...rawExtra, ...extra },
|
|
65
|
+
};
|
|
66
|
+
}
|
|
20
67
|
export class BindingLoader {
|
|
21
68
|
async loadBindings(filePath, registry) {
|
|
22
69
|
const { readFileSync } = _nodeFs;
|
|
@@ -40,6 +87,14 @@ export class BindingLoader {
|
|
|
40
87
|
throw new BindingFileInvalidError(filePath, 'File is empty');
|
|
41
88
|
}
|
|
42
89
|
const dataObj = data;
|
|
90
|
+
const specVersion = dataObj['spec_version'];
|
|
91
|
+
if (specVersion == null) {
|
|
92
|
+
console.warn(`[apcore:bindings] ${filePath}: spec_version missing; defaulting to '1.0'. ` +
|
|
93
|
+
'spec_version will be mandatory in spec 1.1. See DECLARATIVE_CONFIG_SPEC.md §2.4');
|
|
94
|
+
}
|
|
95
|
+
else if (!SUPPORTED_SPEC_VERSIONS.has(specVersion)) {
|
|
96
|
+
console.warn(`[apcore:bindings] ${filePath}: spec_version '${specVersion}' is newer than supported; proceeding best-effort.`);
|
|
97
|
+
}
|
|
43
98
|
if (!('bindings' in dataObj)) {
|
|
44
99
|
throw new BindingFileInvalidError(filePath, "Missing 'bindings' key");
|
|
45
100
|
}
|
|
@@ -56,7 +111,7 @@ export class BindingLoader {
|
|
|
56
111
|
if (!('target' in entryObj)) {
|
|
57
112
|
throw new BindingFileInvalidError(filePath, "Binding entry missing 'target'");
|
|
58
113
|
}
|
|
59
|
-
const fm = await this._createModuleFromBinding(entryObj, bindingFileDir);
|
|
114
|
+
const fm = await this._createModuleFromBinding(entryObj, bindingFileDir, filePath);
|
|
60
115
|
registry.register(entryObj['module_id'], fm);
|
|
61
116
|
results.push(fm);
|
|
62
117
|
}
|
|
@@ -110,8 +165,8 @@ export class BindingLoader {
|
|
|
110
165
|
try {
|
|
111
166
|
instance = new cls();
|
|
112
167
|
}
|
|
113
|
-
catch {
|
|
114
|
-
throw new
|
|
168
|
+
catch (e) {
|
|
169
|
+
throw new BindingNotCallableError(callableName, { cause: e });
|
|
115
170
|
}
|
|
116
171
|
const method = instance[methodName];
|
|
117
172
|
if (method == null) {
|
|
@@ -131,20 +186,34 @@ export class BindingLoader {
|
|
|
131
186
|
}
|
|
132
187
|
return result;
|
|
133
188
|
}
|
|
134
|
-
async _createModuleFromBinding(binding, bindingFileDir) {
|
|
189
|
+
async _createModuleFromBinding(binding, bindingFileDir, filePath) {
|
|
135
190
|
const { existsSync, readFileSync } = _nodeFs;
|
|
136
191
|
const { resolve } = _nodePath;
|
|
137
|
-
const
|
|
192
|
+
const targetString = binding['target'];
|
|
193
|
+
const func = await this.resolveTarget(targetString);
|
|
138
194
|
const moduleId = binding['module_id'];
|
|
195
|
+
// Detect schema mode conflicts (DECLARATIVE_CONFIG_SPEC.md §3.4)
|
|
196
|
+
const modes = [];
|
|
197
|
+
if ('auto_schema' in binding)
|
|
198
|
+
modes.push('auto_schema');
|
|
199
|
+
if ('input_schema' in binding || 'output_schema' in binding)
|
|
200
|
+
modes.push('input_schema/output_schema');
|
|
201
|
+
if ('schema_ref' in binding)
|
|
202
|
+
modes.push('schema_ref');
|
|
203
|
+
if (modes.length > 1) {
|
|
204
|
+
throw new BindingSchemaModeConflictError(moduleId, modes, filePath);
|
|
205
|
+
}
|
|
139
206
|
let inputSchema;
|
|
140
207
|
let outputSchema;
|
|
141
208
|
if ('input_schema' in binding || 'output_schema' in binding) {
|
|
209
|
+
// Mode 1: explicit schemas
|
|
142
210
|
const inputSchemaDict = binding['input_schema'] ?? {};
|
|
143
211
|
const outputSchemaDict = binding['output_schema'] ?? {};
|
|
144
212
|
inputSchema = jsonSchemaToTypeBox(inputSchemaDict);
|
|
145
213
|
outputSchema = jsonSchemaToTypeBox(outputSchemaDict);
|
|
146
214
|
}
|
|
147
215
|
else if ('schema_ref' in binding) {
|
|
216
|
+
// Mode 2: external reference
|
|
148
217
|
const refPath = resolve(bindingFileDir, binding['schema_ref']);
|
|
149
218
|
if (!existsSync(refPath)) {
|
|
150
219
|
throw new BindingFileInvalidError(refPath, 'Schema reference file not found');
|
|
@@ -160,9 +229,37 @@ export class BindingLoader {
|
|
|
160
229
|
outputSchema = jsonSchemaToTypeBox(refData['output_schema'] ?? {});
|
|
161
230
|
}
|
|
162
231
|
else {
|
|
163
|
-
//
|
|
164
|
-
|
|
165
|
-
|
|
232
|
+
// Mode 3 (explicit auto_schema) or Mode 4 (implicit default = auto)
|
|
233
|
+
// Try to infer schemas from the target module's exports.
|
|
234
|
+
const [modulePath, symbolName] = targetString.split(':', 2);
|
|
235
|
+
let inferred = null;
|
|
236
|
+
try {
|
|
237
|
+
const mod = (await import(modulePath));
|
|
238
|
+
inferred = inferSchemasFromModule(mod, symbolName);
|
|
239
|
+
}
|
|
240
|
+
catch {
|
|
241
|
+
// Module already resolved in resolveTarget; if re-import fails,
|
|
242
|
+
// fall through to permissive/error below.
|
|
243
|
+
}
|
|
244
|
+
if (inferred) {
|
|
245
|
+
inputSchema = inferred.input;
|
|
246
|
+
outputSchema = inferred.output;
|
|
247
|
+
}
|
|
248
|
+
else if ('auto_schema' in binding && binding['auto_schema'] !== false) {
|
|
249
|
+
// Explicit auto_schema but inference failed → error
|
|
250
|
+
throw new BindingSchemaInferenceFailedError(targetString, moduleId, filePath);
|
|
251
|
+
}
|
|
252
|
+
else if ('auto_schema' in binding && binding['auto_schema'] === false) {
|
|
253
|
+
// Explicit auto_schema: false → error (no mode left)
|
|
254
|
+
throw new BindingSchemaInferenceFailedError(targetString, moduleId, filePath, 'auto_schema is explicitly false; provide input_schema/output_schema or schema_ref instead.');
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
// Implicit default: no mode specified, inference didn't find schemas.
|
|
258
|
+
// Per spec §3.4, implicit auto is the default. If inference fails,
|
|
259
|
+
// fall back to permissive schema (matches TypeScript pre-0.19.0 behavior).
|
|
260
|
+
inputSchema = Type.Record(Type.String(), Type.Unknown());
|
|
261
|
+
outputSchema = Type.Record(Type.String(), Type.Unknown());
|
|
262
|
+
}
|
|
166
263
|
}
|
|
167
264
|
return new FunctionModule({
|
|
168
265
|
execute: async (inputs, context) => {
|
|
@@ -177,8 +274,13 @@ export class BindingLoader {
|
|
|
177
274
|
inputSchema,
|
|
178
275
|
outputSchema,
|
|
179
276
|
description: binding['description'] ?? undefined,
|
|
277
|
+
documentation: binding['documentation'] ?? undefined,
|
|
180
278
|
tags: binding['tags'] ?? null,
|
|
181
279
|
version: binding['version'] ?? '1.0.0',
|
|
280
|
+
annotations: binding['annotations']
|
|
281
|
+
? parseAnnotations(binding['annotations'])
|
|
282
|
+
: undefined,
|
|
283
|
+
metadata: binding['metadata'],
|
|
182
284
|
});
|
|
183
285
|
}
|
|
184
286
|
}
|
package/dist/bindings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"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"}
|
package/dist/builtin-steps.d.ts
CHANGED
|
@@ -8,10 +8,11 @@
|
|
|
8
8
|
import type { ACL } from './acl.js';
|
|
9
9
|
import type { ApprovalHandler } from './approval.js';
|
|
10
10
|
import type { Config } from './config.js';
|
|
11
|
-
import {
|
|
12
|
-
import type
|
|
13
|
-
import type { Step, StepResult
|
|
11
|
+
import { type ToggleState } from './sys-modules/toggle.js';
|
|
12
|
+
import { type MiddlewareManager } from './middleware/manager.js';
|
|
13
|
+
import type { PipelineContext, Step, StepResult } from './pipeline.js';
|
|
14
14
|
import { ExecutionStrategy } from './pipeline.js';
|
|
15
|
+
import type { Registry } from './registry/registry.js';
|
|
15
16
|
/** Creates or inherits execution Context and sets the global deadline. */
|
|
16
17
|
export declare class BuiltinContextCreation implements Step {
|
|
17
18
|
readonly name = "context_creation";
|
|
@@ -37,16 +38,34 @@ export declare class BuiltinCallChainGuard implements Step {
|
|
|
37
38
|
constructor(config: Config | null);
|
|
38
39
|
execute(ctx: PipelineContext): Promise<StepResult>;
|
|
39
40
|
}
|
|
40
|
-
/** Resolves the module from the registry and sets ctx.module.
|
|
41
|
+
/** Resolves the module from the registry and sets ctx.module.
|
|
42
|
+
*
|
|
43
|
+
* Also checks the toggle state and raises ModuleDisabledError if the module
|
|
44
|
+
* has been disabled — inlined here to match the 11-step pipeline spec and
|
|
45
|
+
* apcore-python/apcore-rust implementations (sync finding A-D-011).
|
|
46
|
+
*/
|
|
41
47
|
export declare class BuiltinModuleLookup implements Step {
|
|
42
48
|
readonly name = "module_lookup";
|
|
43
|
-
readonly description = "Resolve module from registry";
|
|
49
|
+
readonly description = "Resolve module from registry, enforce toggle state";
|
|
44
50
|
readonly removable = false;
|
|
45
51
|
readonly replaceable = false;
|
|
46
52
|
readonly pure = true;
|
|
47
53
|
readonly provides: readonly ["module"];
|
|
48
54
|
private _registry;
|
|
49
|
-
|
|
55
|
+
private readonly _toggleState;
|
|
56
|
+
constructor(registry: Registry, toggleState?: ToggleState);
|
|
57
|
+
execute(ctx: PipelineContext): Promise<StepResult>;
|
|
58
|
+
}
|
|
59
|
+
/** Blocks execution if the module has been disabled via the toggle system. */
|
|
60
|
+
export declare class BuiltinToggleGate implements Step {
|
|
61
|
+
readonly name = "toggle_gate";
|
|
62
|
+
readonly description = "Block disabled modules before ACL and execution";
|
|
63
|
+
readonly removable = true;
|
|
64
|
+
readonly replaceable = true;
|
|
65
|
+
readonly pure = true;
|
|
66
|
+
readonly requires: readonly ["context", "module"];
|
|
67
|
+
private readonly _toggleState;
|
|
68
|
+
constructor(toggleState?: ToggleState);
|
|
50
69
|
execute(ctx: PipelineContext): Promise<StepResult>;
|
|
51
70
|
}
|
|
52
71
|
/** Enforces access control via the ACL provider. */
|
|
@@ -150,8 +169,13 @@ export interface StandardStrategyDeps {
|
|
|
150
169
|
acl: ACL | null;
|
|
151
170
|
approvalHandler: ApprovalHandler | null;
|
|
152
171
|
middlewareManager: MiddlewareManager;
|
|
172
|
+
toggleState?: ToggleState | null;
|
|
153
173
|
}
|
|
154
|
-
/** Build the standard 11-step execution strategy matching
|
|
174
|
+
/** Build the standard 11-step execution strategy matching PROTOCOL_SPEC §5 pipeline.
|
|
175
|
+
*
|
|
176
|
+
* Toggle-state check is inlined inside BuiltinModuleLookup (step 3), matching
|
|
177
|
+
* apcore-python and apcore-rust 11-step implementations (sync finding A-D-011).
|
|
178
|
+
*/
|
|
155
179
|
export declare function buildStandardStrategy(deps: StandardStrategyDeps): ExecutionStrategy;
|
|
156
180
|
/**
|
|
157
181
|
* Build an internal-only strategy: skips ACL and approval gates.
|
|
@@ -165,7 +189,8 @@ export declare function buildInternalStrategy(deps: StandardStrategyDeps): Execu
|
|
|
165
189
|
export declare function buildTestingStrategy(deps: StandardStrategyDeps): ExecutionStrategy;
|
|
166
190
|
/**
|
|
167
191
|
* Build a performance strategy: skips middleware before/after for reduced overhead.
|
|
168
|
-
* Retains ACL, approval, and validation for correctness.
|
|
192
|
+
* Retains toggle state, ACL, approval, and validation for correctness.
|
|
193
|
+
* Toggle-state check is inlined in BuiltinModuleLookup (sync finding A-D-011).
|
|
169
194
|
*/
|
|
170
195
|
export declare function buildPerformanceStrategy(deps: StandardStrategyDeps): ExecutionStrategy;
|
|
171
196
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-steps.d.ts","sourceRoot":"","sources":["../src/builtin-steps.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"builtin-steps.d.ts","sourceRoot":"","sources":["../src/builtin-steps.ts"],"names":[],"mappings":"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"}
|