@beignet/core 0.0.35 → 0.0.36
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/CHANGELOG.md +6 -0
- package/README.md +10 -7
- package/dist/agent-capabilities/index.d.ts +37 -7
- package/dist/agent-capabilities/index.d.ts.map +1 -1
- package/dist/agent-capabilities/index.js +8 -1
- package/dist/agent-capabilities/index.js.map +1 -1
- package/package.json +1 -1
- package/skills/app-architecture/SKILL.md +4 -0
- package/src/agent-capabilities/index.ts +84 -19
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @beignet/core
|
|
2
2
|
|
|
3
|
+
## 0.0.36
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 5c7f6bb: Harden agent capability execution with lazy Better Auth executors, runtime required-constraint checks, validated lifecycle data, and adapter test utilities.
|
|
8
|
+
|
|
3
9
|
## 0.0.35
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -150,13 +150,16 @@ Auth Agent Auth.
|
|
|
150
150
|
Registry creation comes from the same app-bound factory as
|
|
151
151
|
`defineAgentCapability`, so definitions with another context or principal type
|
|
152
152
|
are rejected. Executor hooks observe the complete attempt and include a
|
|
153
|
-
`stage
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
153
|
+
`stage`. Completion events contain the capability, context, principal,
|
|
154
|
+
validated input, validated output, and duration. Failure events expose context
|
|
155
|
+
and validated input only when execution reached those stages; raw malformed
|
|
156
|
+
input and unvalidated output are not exposed. Dynamic transport adapters may
|
|
157
|
+
provide `authorize(...)` to inspect the exact parsed input before context
|
|
158
|
+
construction without causing a second validation pass. Pass an independent
|
|
159
|
+
`instrumentation` target and `tracing` port to the executor when lookup,
|
|
160
|
+
input-validation, and context failures must be visible before an app context
|
|
161
|
+
exists. Without those options, successful context construction lets the
|
|
162
|
+
executor derive observability ports from `ctx`.
|
|
160
163
|
|
|
161
164
|
## Durable failure language
|
|
162
165
|
|
|
@@ -53,6 +53,8 @@ export type AgentCapabilityPrincipal<Capability extends AnyAgentCapabilityDef> =
|
|
|
53
53
|
} ? Principal : never;
|
|
54
54
|
/** Infer a capability's raw input. */
|
|
55
55
|
export type AgentCapabilityInput<Capability extends AnyAgentCapabilityDef> = InferAgentCapabilitySchemaInput<Capability["input"]>;
|
|
56
|
+
/** Infer the parsed input passed to capability context and execution. */
|
|
57
|
+
export type AgentCapabilityParsedInput<Capability extends AnyAgentCapabilityDef> = InferAgentCapabilitySchemaOutput<Capability["input"]>;
|
|
56
58
|
/** Infer a capability's validated output. */
|
|
57
59
|
export type AgentCapabilityOutput<Capability extends AnyAgentCapabilityDef> = InferAgentCapabilitySchemaOutput<Capability["output"]>;
|
|
58
60
|
/** Options accepted by `defineAgentCapability(...)`. */
|
|
@@ -110,23 +112,51 @@ export type AgentCapabilityContextRequest<Definitions extends readonly AnyAgentC
|
|
|
110
112
|
}[Definitions[number]["name"]];
|
|
111
113
|
/** Stage reached by an agent capability attempt. */
|
|
112
114
|
export type AgentCapabilityRunStage = "lookup" | "input" | "authorization" | "context" | "handler" | "output";
|
|
115
|
+
/** Successful capability lifecycle event with validated application data. */
|
|
116
|
+
export type AgentCapabilityCompletedRunEvent<Ctx, Principal, Definitions extends readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[], Capability extends Definitions[number] = Definitions[number]> = Capability extends Definitions[number] ? {
|
|
117
|
+
name: Capability["name"];
|
|
118
|
+
phase: "end";
|
|
119
|
+
stage: "output";
|
|
120
|
+
capability: Capability;
|
|
121
|
+
ctx: Ctx;
|
|
122
|
+
principal: Principal;
|
|
123
|
+
input: AgentCapabilityParsedInput<Capability>;
|
|
124
|
+
output: AgentCapabilityOutput<Capability>;
|
|
125
|
+
durationMs: number;
|
|
126
|
+
error?: undefined;
|
|
127
|
+
} : never;
|
|
113
128
|
/** Lifecycle event observed around a capability attempt. */
|
|
114
|
-
export
|
|
129
|
+
export type AgentCapabilityRunEvent<Ctx, Principal, Definitions extends readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[]> = {
|
|
130
|
+
name: string;
|
|
131
|
+
phase: "start";
|
|
132
|
+
stage: "lookup";
|
|
133
|
+
capability?: Definitions[number];
|
|
134
|
+
ctx?: undefined;
|
|
135
|
+
principal: Principal;
|
|
136
|
+
input?: undefined;
|
|
137
|
+
output?: undefined;
|
|
138
|
+
durationMs?: undefined;
|
|
139
|
+
error?: undefined;
|
|
140
|
+
} | AgentCapabilityCompletedRunEvent<Ctx, Principal, Definitions> | {
|
|
115
141
|
name: string;
|
|
116
|
-
phase: "
|
|
142
|
+
phase: "error";
|
|
117
143
|
stage: AgentCapabilityRunStage;
|
|
144
|
+
capability?: Definitions[number];
|
|
118
145
|
ctx?: Ctx;
|
|
119
146
|
principal: Principal;
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
147
|
+
/** Present only when input validation completed successfully. */
|
|
148
|
+
input?: unknown;
|
|
149
|
+
output?: undefined;
|
|
150
|
+
durationMs: number;
|
|
151
|
+
error: unknown;
|
|
152
|
+
};
|
|
123
153
|
/** Best-effort lifecycle observer for capability execution. */
|
|
124
|
-
export type AgentCapabilityHook<Ctx, Principal> = (event: AgentCapabilityRunEvent<Ctx, Principal>) => MaybePromise<void>;
|
|
154
|
+
export type AgentCapabilityHook<Ctx, Principal, Definitions extends readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[]> = (event: AgentCapabilityRunEvent<Ctx, Principal, Definitions>) => MaybePromise<void>;
|
|
125
155
|
/** Options for a capability executor. */
|
|
126
156
|
export interface CreateAgentCapabilityExecutorOptions<Ctx, Principal, Definitions extends readonly AnyAgentCapabilityDef[]> {
|
|
127
157
|
registry: AgentCapabilityRegistry<Definitions>;
|
|
128
158
|
createContext(request: AgentCapabilityContextRequest<Definitions, Principal>): MaybePromise<Ctx>;
|
|
129
|
-
hooks?: readonly AgentCapabilityHook<Ctx, Principal>[];
|
|
159
|
+
hooks?: readonly AgentCapabilityHook<Ctx, Principal, Definitions>[];
|
|
130
160
|
/** Independent target used to observe failures before context exists. */
|
|
131
161
|
instrumentation?: ProviderInstrumentationTarget;
|
|
132
162
|
tracing?: TracingPort;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-capabilities/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-capabilities/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -120,6 +120,8 @@ export function createAgentCapabilityExecutor(options) {
|
|
|
120
120
|
let stage = "lookup";
|
|
121
121
|
let ctx;
|
|
122
122
|
let capability;
|
|
123
|
+
let input;
|
|
124
|
+
let hasValidatedInput = false;
|
|
123
125
|
let instrumentation = createProviderInstrumentation(options.instrumentation, instrumentationConfig);
|
|
124
126
|
try {
|
|
125
127
|
capability = options.registry.get(invocation.name);
|
|
@@ -145,7 +147,6 @@ export function createAgentCapabilityExecutor(options) {
|
|
|
145
147
|
}
|
|
146
148
|
const registeredCapability = capability;
|
|
147
149
|
const runtimeCapability = registeredCapability;
|
|
148
|
-
let input;
|
|
149
150
|
return await runWithResolvedTracingContext({
|
|
150
151
|
tracing: options.tracing,
|
|
151
152
|
ctx: async () => {
|
|
@@ -154,6 +155,7 @@ export function createAgentCapabilityExecutor(options) {
|
|
|
154
155
|
capabilityName: runtimeCapability.name,
|
|
155
156
|
code: "invalid_input",
|
|
156
157
|
});
|
|
158
|
+
hasValidatedInput = true;
|
|
157
159
|
if (invocation.authorize) {
|
|
158
160
|
stage = "authorization";
|
|
159
161
|
await invocation.authorize({
|
|
@@ -224,8 +226,11 @@ export function createAgentCapabilityExecutor(options) {
|
|
|
224
226
|
name: registeredCapability.name,
|
|
225
227
|
phase: "end",
|
|
226
228
|
stage,
|
|
229
|
+
capability: registeredCapability,
|
|
227
230
|
ctx,
|
|
228
231
|
principal: invocation.principal,
|
|
232
|
+
input,
|
|
233
|
+
output,
|
|
229
234
|
durationMs,
|
|
230
235
|
});
|
|
231
236
|
return output;
|
|
@@ -259,10 +264,12 @@ export function createAgentCapabilityExecutor(options) {
|
|
|
259
264
|
name: invocation.name,
|
|
260
265
|
phase: "error",
|
|
261
266
|
stage,
|
|
267
|
+
...(capability ? { capability } : {}),
|
|
262
268
|
ctx,
|
|
263
269
|
principal: invocation.principal,
|
|
264
270
|
durationMs,
|
|
265
271
|
error: wrapped,
|
|
272
|
+
...(hasValidatedInput ? { input } : {}),
|
|
266
273
|
});
|
|
267
274
|
throw wrapped;
|
|
268
275
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-capabilities/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,6BAA6B,GAE9B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-capabilities/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -194,6 +194,10 @@ membership from an authoritative port, and call
|
|
|
194
194
|
`server.createServiceContext(...)`; never trust a role from agent claims or
|
|
195
195
|
assemble `AppContext` directly. Agent registration, grants, approval, and token
|
|
196
196
|
verification belong to the transport integration, not the capability handler.
|
|
197
|
+
Executor completion hooks receive validated input and output for best-effort
|
|
198
|
+
activity projections. Error hooks receive validated input only after parsing
|
|
199
|
+
succeeds. Keep mandatory audit writes in the workflow and never copy raw
|
|
200
|
+
malformed input or unvalidated output into instrumentation.
|
|
197
201
|
|
|
198
202
|
Register workflow artifacts explicitly:
|
|
199
203
|
|
|
@@ -75,6 +75,11 @@ export type AgentCapabilityPrincipal<Capability extends AnyAgentCapabilityDef> =
|
|
|
75
75
|
export type AgentCapabilityInput<Capability extends AnyAgentCapabilityDef> =
|
|
76
76
|
InferAgentCapabilitySchemaInput<Capability["input"]>;
|
|
77
77
|
|
|
78
|
+
/** Infer the parsed input passed to capability context and execution. */
|
|
79
|
+
export type AgentCapabilityParsedInput<
|
|
80
|
+
Capability extends AnyAgentCapabilityDef,
|
|
81
|
+
> = InferAgentCapabilitySchemaOutput<Capability["input"]>;
|
|
82
|
+
|
|
78
83
|
/** Infer a capability's validated output. */
|
|
79
84
|
export type AgentCapabilityOutput<Capability extends AnyAgentCapabilityDef> =
|
|
80
85
|
InferAgentCapabilitySchemaOutput<Capability["output"]>;
|
|
@@ -225,20 +230,70 @@ export type AgentCapabilityRunStage =
|
|
|
225
230
|
| "handler"
|
|
226
231
|
| "output";
|
|
227
232
|
|
|
233
|
+
/** Successful capability lifecycle event with validated application data. */
|
|
234
|
+
export type AgentCapabilityCompletedRunEvent<
|
|
235
|
+
Ctx,
|
|
236
|
+
Principal,
|
|
237
|
+
Definitions extends
|
|
238
|
+
readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[],
|
|
239
|
+
Capability extends Definitions[number] = Definitions[number],
|
|
240
|
+
> = Capability extends Definitions[number]
|
|
241
|
+
? {
|
|
242
|
+
name: Capability["name"];
|
|
243
|
+
phase: "end";
|
|
244
|
+
stage: "output";
|
|
245
|
+
capability: Capability;
|
|
246
|
+
ctx: Ctx;
|
|
247
|
+
principal: Principal;
|
|
248
|
+
input: AgentCapabilityParsedInput<Capability>;
|
|
249
|
+
output: AgentCapabilityOutput<Capability>;
|
|
250
|
+
durationMs: number;
|
|
251
|
+
error?: undefined;
|
|
252
|
+
}
|
|
253
|
+
: never;
|
|
254
|
+
|
|
228
255
|
/** Lifecycle event observed around a capability attempt. */
|
|
229
|
-
export
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
256
|
+
export type AgentCapabilityRunEvent<
|
|
257
|
+
Ctx,
|
|
258
|
+
Principal,
|
|
259
|
+
Definitions extends
|
|
260
|
+
readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[],
|
|
261
|
+
> =
|
|
262
|
+
| {
|
|
263
|
+
name: string;
|
|
264
|
+
phase: "start";
|
|
265
|
+
stage: "lookup";
|
|
266
|
+
capability?: Definitions[number];
|
|
267
|
+
ctx?: undefined;
|
|
268
|
+
principal: Principal;
|
|
269
|
+
input?: undefined;
|
|
270
|
+
output?: undefined;
|
|
271
|
+
durationMs?: undefined;
|
|
272
|
+
error?: undefined;
|
|
273
|
+
}
|
|
274
|
+
| AgentCapabilityCompletedRunEvent<Ctx, Principal, Definitions>
|
|
275
|
+
| {
|
|
276
|
+
name: string;
|
|
277
|
+
phase: "error";
|
|
278
|
+
stage: AgentCapabilityRunStage;
|
|
279
|
+
capability?: Definitions[number];
|
|
280
|
+
ctx?: Ctx;
|
|
281
|
+
principal: Principal;
|
|
282
|
+
/** Present only when input validation completed successfully. */
|
|
283
|
+
input?: unknown;
|
|
284
|
+
output?: undefined;
|
|
285
|
+
durationMs: number;
|
|
286
|
+
error: unknown;
|
|
287
|
+
};
|
|
238
288
|
|
|
239
289
|
/** Best-effort lifecycle observer for capability execution. */
|
|
240
|
-
export type AgentCapabilityHook<
|
|
241
|
-
|
|
290
|
+
export type AgentCapabilityHook<
|
|
291
|
+
Ctx,
|
|
292
|
+
Principal,
|
|
293
|
+
Definitions extends
|
|
294
|
+
readonly AnyAgentCapabilityDef[] = readonly AnyAgentCapabilityDef[],
|
|
295
|
+
> = (
|
|
296
|
+
event: AgentCapabilityRunEvent<Ctx, Principal, Definitions>,
|
|
242
297
|
) => MaybePromise<void>;
|
|
243
298
|
|
|
244
299
|
/** Options for a capability executor. */
|
|
@@ -251,7 +306,7 @@ export interface CreateAgentCapabilityExecutorOptions<
|
|
|
251
306
|
createContext(
|
|
252
307
|
request: AgentCapabilityContextRequest<Definitions, Principal>,
|
|
253
308
|
): MaybePromise<Ctx>;
|
|
254
|
-
hooks?: readonly AgentCapabilityHook<Ctx, Principal>[];
|
|
309
|
+
hooks?: readonly AgentCapabilityHook<Ctx, Principal, Definitions>[];
|
|
255
310
|
/** Independent target used to observe failures before context exists. */
|
|
256
311
|
instrumentation?: ProviderInstrumentationTarget;
|
|
257
312
|
tracing?: TracingPort;
|
|
@@ -351,9 +406,13 @@ function instrumentationTarget(ctx: unknown): ProviderInstrumentationTarget {
|
|
|
351
406
|
return ctx as ProviderInstrumentationTarget;
|
|
352
407
|
}
|
|
353
408
|
|
|
354
|
-
async function notifyHooks<
|
|
355
|
-
|
|
356
|
-
|
|
409
|
+
async function notifyHooks<
|
|
410
|
+
Ctx,
|
|
411
|
+
Principal,
|
|
412
|
+
Definitions extends readonly AnyAgentCapabilityDef[],
|
|
413
|
+
>(
|
|
414
|
+
hooks: readonly AgentCapabilityHook<Ctx, Principal, Definitions>[],
|
|
415
|
+
event: AgentCapabilityRunEvent<Ctx, Principal, Definitions>,
|
|
357
416
|
): Promise<void> {
|
|
358
417
|
await Promise.all(
|
|
359
418
|
hooks.map(async (hook) => {
|
|
@@ -394,6 +453,8 @@ export function createAgentCapabilityExecutor<
|
|
|
394
453
|
let stage: AgentCapabilityRunStage = "lookup";
|
|
395
454
|
let ctx: Ctx | undefined;
|
|
396
455
|
let capability: Definitions[number] | undefined;
|
|
456
|
+
let input: unknown;
|
|
457
|
+
let hasValidatedInput = false;
|
|
397
458
|
let instrumentation = createProviderInstrumentation(
|
|
398
459
|
options.instrumentation,
|
|
399
460
|
instrumentationConfig,
|
|
@@ -432,8 +493,6 @@ export function createAgentCapabilityExecutor<
|
|
|
432
493
|
Ctx,
|
|
433
494
|
Principal
|
|
434
495
|
>;
|
|
435
|
-
let input: unknown;
|
|
436
|
-
|
|
437
496
|
return await runWithResolvedTracingContext({
|
|
438
497
|
tracing: options.tracing,
|
|
439
498
|
ctx: async () => {
|
|
@@ -446,6 +505,7 @@ export function createAgentCapabilityExecutor<
|
|
|
446
505
|
code: "invalid_input",
|
|
447
506
|
},
|
|
448
507
|
);
|
|
508
|
+
hasValidatedInput = true;
|
|
449
509
|
if (invocation.authorize) {
|
|
450
510
|
stage = "authorization";
|
|
451
511
|
await invocation.authorize({
|
|
@@ -524,10 +584,13 @@ export function createAgentCapabilityExecutor<
|
|
|
524
584
|
name: registeredCapability.name,
|
|
525
585
|
phase: "end",
|
|
526
586
|
stage,
|
|
587
|
+
capability: registeredCapability,
|
|
527
588
|
ctx,
|
|
528
589
|
principal: invocation.principal,
|
|
590
|
+
input,
|
|
591
|
+
output,
|
|
529
592
|
durationMs,
|
|
530
|
-
});
|
|
593
|
+
} as AgentCapabilityRunEvent<Ctx, Principal, Definitions>);
|
|
531
594
|
return output;
|
|
532
595
|
},
|
|
533
596
|
});
|
|
@@ -559,11 +622,13 @@ export function createAgentCapabilityExecutor<
|
|
|
559
622
|
name: invocation.name,
|
|
560
623
|
phase: "error",
|
|
561
624
|
stage,
|
|
625
|
+
...(capability ? { capability } : {}),
|
|
562
626
|
ctx,
|
|
563
627
|
principal: invocation.principal,
|
|
564
628
|
durationMs,
|
|
565
629
|
error: wrapped,
|
|
566
|
-
|
|
630
|
+
...(hasValidatedInput ? { input } : {}),
|
|
631
|
+
} as AgentCapabilityRunEvent<Ctx, Principal, Definitions>);
|
|
567
632
|
throw wrapped;
|
|
568
633
|
}
|
|
569
634
|
}
|