@xemahq/contracts 0.22.0 → 0.24.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/dist/.source-stamp.json +2 -2
- package/dist/agent-composition/index.d.ts +1 -0
- package/dist/agent-composition/index.d.ts.map +1 -1
- package/dist/agent-composition/index.js +1 -0
- package/dist/agent-composition/index.js.map +1 -1
- package/dist/agent-composition/lib/agent.d.ts +4 -0
- package/dist/agent-composition/lib/agent.d.ts.map +1 -1
- package/dist/agent-composition/lib/agent.js +2 -1
- package/dist/agent-composition/lib/agent.js.map +1 -1
- package/dist/agent-composition/lib/delegate-aperture.d.ts +54 -0
- package/dist/agent-composition/lib/delegate-aperture.d.ts.map +1 -0
- package/dist/agent-composition/lib/delegate-aperture.js +230 -0
- package/dist/agent-composition/lib/delegate-aperture.js.map +1 -0
- package/dist/agent-permission/lib/permission-map.d.ts +1 -1
- package/dist/agent-permission/lib/permission-map.d.ts.map +1 -1
- package/dist/agent-permission/lib/permission-map.js +0 -3
- package/dist/agent-permission/lib/permission-map.js.map +1 -1
- package/dist/agent-session/index.d.ts +1 -0
- package/dist/agent-session/index.d.ts.map +1 -1
- package/dist/agent-session/index.js +1 -0
- package/dist/agent-session/index.js.map +1 -1
- package/dist/agent-session/lib/resolved-session-composition.d.ts +2 -0
- package/dist/agent-session/lib/resolved-session-composition.d.ts.map +1 -1
- package/dist/agent-session/lib/resolved-session-composition.js +40 -0
- package/dist/agent-session/lib/resolved-session-composition.js.map +1 -1
- package/dist/agent-session/lib/sealed-delegate-aperture.d.ts +23 -0
- package/dist/agent-session/lib/sealed-delegate-aperture.d.ts.map +1 -0
- package/dist/agent-session/lib/sealed-delegate-aperture.js +132 -0
- package/dist/agent-session/lib/sealed-delegate-aperture.js.map +1 -0
- package/dist/agent-workspace/awp-spec.json +1 -1
- package/dist/agent-workspace/lib/agent-tool-defaults.d.ts.map +1 -1
- package/dist/agent-workspace/lib/agent-tool-defaults.js +0 -3
- package/dist/agent-workspace/lib/agent-tool-defaults.js.map +1 -1
- package/dist/agent-workspace/lib/awp.js +1 -1
- package/dist/agent-workspace/lib/awp.js.map +1 -1
- package/dist/agent-workspace/lib/logical-workspace-slot.d.ts +0 -1
- package/dist/agent-workspace/lib/logical-workspace-slot.d.ts.map +1 -1
- package/dist/agent-workspace/lib/logical-workspace-slot.js +0 -1
- package/dist/agent-workspace/lib/logical-workspace-slot.js.map +1 -1
- package/dist/biome/lib/biome-component-vocabulary.d.ts.map +1 -1
- package/dist/biome/lib/biome-component-vocabulary.js.map +1 -1
- package/dist/biome/lib/biome-component.d.ts.map +1 -1
- package/dist/biome/lib/biome-component.js.map +1 -1
- package/dist/distribution/lib/distribution-lock.d.ts +0 -2
- package/dist/distribution/lib/distribution-lock.d.ts.map +1 -1
- package/dist/distribution/lib/distribution-lock.js +0 -2
- package/dist/distribution/lib/distribution-lock.js.map +1 -1
- package/dist/distribution/lib/distribution.d.ts +1 -0
- package/dist/distribution/lib/distribution.d.ts.map +1 -1
- package/dist/distribution/lib/distribution.js +12 -1
- package/dist/distribution/lib/distribution.js.map +1 -1
- package/dist/execution-context/lib/execution-context.d.ts +2 -0
- package/dist/execution-context/lib/execution-context.d.ts.map +1 -1
- package/dist/execution-context/lib/execution-context.js +6 -4
- package/dist/execution-context/lib/execution-context.js.map +1 -1
- package/dist/process-topology/lib/process-topology.d.ts +0 -10
- package/dist/process-topology/lib/process-topology.d.ts.map +1 -1
- package/dist/process-topology/lib/process-topology.js +1 -3
- package/dist/process-topology/lib/process-topology.js.map +1 -1
- package/dist/process-topology/lib/resolve-process-topology.js +1 -1
- package/dist/process-topology/lib/resolve-process-topology.js.map +1 -1
- package/dist/session-launch/lib/agent-reach-tier.d.ts +3 -0
- package/dist/session-launch/lib/agent-reach-tier.d.ts.map +1 -1
- package/dist/session-launch/lib/agent-reach-tier.js +22 -1
- package/dist/session-launch/lib/agent-reach-tier.js.map +1 -1
- package/dist/subject/index.d.ts +1 -0
- package/dist/subject/index.d.ts.map +1 -1
- package/dist/subject/index.js +1 -0
- package/dist/subject/index.js.map +1 -1
- package/dist/subject/lib/delegated-authority.d.ts +26 -0
- package/dist/subject/lib/delegated-authority.d.ts.map +1 -0
- package/dist/subject/lib/delegated-authority.js +43 -0
- package/dist/subject/lib/delegated-authority.js.map +1 -0
- package/dist/subject/lib/subject.d.ts +2 -1
- package/dist/subject/lib/subject.d.ts.map +1 -1
- package/dist/subject/lib/subject.js +1 -0
- package/dist/subject/lib/subject.js.map +1 -1
- package/dist/subject/lib/token-class.d.ts +2 -1
- package/dist/subject/lib/token-class.d.ts.map +1 -1
- package/dist/subject/lib/token-class.js +1 -0
- package/dist/subject/lib/token-class.js.map +1 -1
- package/dist/worker-runtime/lib/enums.d.ts +6 -4
- package/dist/worker-runtime/lib/enums.d.ts.map +1 -1
- package/dist/worker-runtime/lib/enums.js +6 -4
- package/dist/worker-runtime/lib/enums.js.map +1 -1
- package/dist/worker-runtime/lib/runtime-layout-adapter.d.ts +2 -9
- package/dist/worker-runtime/lib/runtime-layout-adapter.d.ts.map +1 -1
- package/dist/worker-runtime/lib/runtime-layout-adapter.js +1 -12
- package/dist/worker-runtime/lib/runtime-layout-adapter.js.map +1 -1
- package/dist/worker-runtime/lib/runtime-layout-profile.d.ts +0 -8
- package/dist/worker-runtime/lib/runtime-layout-profile.d.ts.map +1 -1
- package/dist/worker-runtime/lib/runtime-layout-profile.js +4 -14
- package/dist/worker-runtime/lib/runtime-layout-profile.js.map +1 -1
- package/dist/worker-runtime/lib/workspace-sandbox.d.ts.map +1 -1
- package/dist/worker-runtime/lib/workspace-sandbox.js +0 -20
- package/dist/worker-runtime/lib/workspace-sandbox.js.map +1 -1
- package/dist/worker-runtime/lib/workspace-slot-paths.d.ts.map +1 -1
- package/dist/worker-runtime/lib/workspace-slot-paths.js +0 -3
- package/dist/worker-runtime/lib/workspace-slot-paths.js.map +1 -1
- package/package.json +1 -1
package/dist/.source-stamp.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-composition/index.ts"],"names":[],"mappings":"AAWA,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAI3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-composition/index.ts"],"names":[],"mappings":"AAWA,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAI3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC"}
|
|
@@ -24,4 +24,5 @@ __exportStar(require("./lib/intrinsic-floor"), exports);
|
|
|
24
24
|
__exportStar(require("../session-launch"), exports);
|
|
25
25
|
__exportStar(require("./lib/launch-definition"), exports);
|
|
26
26
|
__exportStar(require("./lib/model-resolution-matrix"), exports);
|
|
27
|
+
__exportStar(require("./lib/delegate-aperture"), exports);
|
|
27
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-composition/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAWA,yDAAuC;AACvC,8CAA4B;AAC5B,6DAA2C;AAI3C,0DAAwC;AACxC,4DAA0C;AAC1C,+DAA6C;AAC7C,wDAAsC;AAGtC,oDAAkC;AAClC,0DAAwC;AACxC,gEAA8C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-composition/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAWA,yDAAuC;AACvC,8CAA4B;AAC5B,6DAA2C;AAI3C,0DAAwC;AACxC,4DAA0C;AAC1C,+DAA6C;AAC7C,wDAAsC;AAGtC,oDAAkC;AAClC,0DAAwC;AACxC,gEAA8C;AAC9C,0DAAwC"}
|
|
@@ -4,6 +4,7 @@ import type { NodeOverlayFragment, PromptMergeMode } from '../../workflow';
|
|
|
4
4
|
import type { SkillRef } from '../../skill';
|
|
5
5
|
import type { BiomeAvailabilityScoped } from '../../biome-availability';
|
|
6
6
|
import type { AgentReachTier, StandingSessionRef, WorkspaceSharingPolicy } from '../../session-launch';
|
|
7
|
+
import type { CapabilitySetExpression } from '../../capability';
|
|
7
8
|
import type { CapabilityLayer } from './capability-layer';
|
|
8
9
|
import type { AgentWorkspaceConfig } from './agent-workspace-config';
|
|
9
10
|
export interface AgentRef {
|
|
@@ -20,11 +21,13 @@ export interface AgentLimits {
|
|
|
20
21
|
readonly maxSpawns: number;
|
|
21
22
|
readonly tokenBudget?: number | undefined;
|
|
22
23
|
}
|
|
24
|
+
export declare const AGENT_DELEGATION_DEPTH_CEILING = 4;
|
|
23
25
|
export interface AgentNode extends NodeOverlayFragment, BiomeAvailabilityScoped {
|
|
24
26
|
readonly kernel: AgentRef;
|
|
25
27
|
readonly alias?: string;
|
|
26
28
|
readonly skills: readonly SkillRef[];
|
|
27
29
|
readonly tools: readonly ToolSelectionEntry[];
|
|
30
|
+
readonly delegationBoundary?: CapabilitySetExpression;
|
|
28
31
|
readonly children: readonly AgentNode[];
|
|
29
32
|
readonly limits?: AgentLimits;
|
|
30
33
|
}
|
|
@@ -53,6 +56,7 @@ export interface ResolvedAgentNode extends NodeOverlayFragment, BiomeAvailabilit
|
|
|
53
56
|
readonly alias?: string;
|
|
54
57
|
readonly skills: readonly SkillRef[];
|
|
55
58
|
readonly tools: readonly ToolSelectionEntry[];
|
|
59
|
+
readonly delegationBoundary?: CapabilitySetExpression;
|
|
56
60
|
readonly children: readonly ResolvedAgentNode[];
|
|
57
61
|
readonly limits?: AgentLimits;
|
|
58
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/agent-composition/lib/agent.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAmB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAUrE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAqBtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAcD,eAAO,MAAM,iBAAiB,EAAE,eAM/B,CAAC;AAuBF,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,SAAS,cAAc;CACxB;AAsGD,MAAM,WAAW,WAAW;IAM1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAM3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/agent-composition/lib/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AgentLifecycle = exports.AGENT_SPACE_KINDS = void 0;
|
|
3
|
+
exports.AGENT_DELEGATION_DEPTH_CEILING = exports.AgentLifecycle = exports.AGENT_SPACE_KINDS = void 0;
|
|
4
4
|
const space_1 = require("../../space");
|
|
5
5
|
exports.AGENT_SPACE_KINDS = (0, space_1.spaceKindSubset)(space_1.SpaceKind.System, space_1.SpaceKind.Biome, space_1.SpaceKind.Org, space_1.SpaceKind.Project, space_1.SpaceKind.User);
|
|
6
6
|
var AgentLifecycle;
|
|
@@ -8,4 +8,5 @@ var AgentLifecycle;
|
|
|
8
8
|
AgentLifecycle["Draft"] = "draft";
|
|
9
9
|
AgentLifecycle["Published"] = "published";
|
|
10
10
|
})(AgentLifecycle || (exports.AgentLifecycle = AgentLifecycle = {}));
|
|
11
|
+
exports.AGENT_DELEGATION_DEPTH_CEILING = 4;
|
|
11
12
|
//# sourceMappingURL=agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/agent-composition/lib/agent.ts"],"names":[],"mappings":";;;AAgBA,uCAA+E;
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/agent-composition/lib/agent.ts"],"names":[],"mappings":";;;AAgBA,uCAA+E;AA2DlE,QAAA,iBAAiB,GAAoB,IAAA,uBAAe,EAC/D,iBAAS,CAAC,MAAM,EAChB,iBAAS,CAAC,KAAK,EACf,iBAAS,CAAC,GAAG,EACb,iBAAS,CAAC,OAAO,EACjB,iBAAS,CAAC,IAAI,CACf,CAAC;AAuBF,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,yCAAuB,CAAA;AACzB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAyJY,QAAA,8BAA8B,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { ApertureVerdict, type CapabilityAperture, type CapabilityEffectClass, type CapabilitySetExpression } from '../../capability';
|
|
3
|
+
import { type CanonicalJsonCompatible } from '../../content-address';
|
|
4
|
+
import { type AgentReachTier } from '../../session-launch';
|
|
5
|
+
import { type AgentSubjectRef } from '../../subject';
|
|
6
|
+
export interface DelegateApertureConstraints {
|
|
7
|
+
readonly apertures: readonly CapabilityAperture[];
|
|
8
|
+
readonly boundaries: readonly CapabilitySetExpression[];
|
|
9
|
+
}
|
|
10
|
+
export interface DelegateAgentRef {
|
|
11
|
+
readonly slug: string;
|
|
12
|
+
readonly version: string;
|
|
13
|
+
}
|
|
14
|
+
export interface DelegateApertureNodeFacts {
|
|
15
|
+
readonly agentKey: string;
|
|
16
|
+
readonly agentRef: DelegateAgentRef;
|
|
17
|
+
readonly parentAgentKey: string | null;
|
|
18
|
+
readonly depth: number;
|
|
19
|
+
readonly authoredPath: readonly AgentSubjectRef[];
|
|
20
|
+
readonly reachTier: AgentReachTier;
|
|
21
|
+
readonly delegateAgentKeys: readonly string[];
|
|
22
|
+
}
|
|
23
|
+
export interface ResolvedDelegateAperture extends DelegateApertureNodeFacts {
|
|
24
|
+
readonly constraints: DelegateApertureConstraints;
|
|
25
|
+
}
|
|
26
|
+
export declare const DELEGATE_APERTURE_MAX_ENTRIES = 512;
|
|
27
|
+
export declare const DELEGATE_APERTURE_MAX_TERMS = 64;
|
|
28
|
+
export declare const DelegateAgentRefSchema: z.ZodType<DelegateAgentRef>;
|
|
29
|
+
export declare const DelegateApertureConstraintsSchema: z.ZodType<DelegateApertureConstraints>;
|
|
30
|
+
export declare const DELEGATE_APERTURE_NODE_FIELDS: {
|
|
31
|
+
readonly agentKey: z.ZodString;
|
|
32
|
+
readonly agentRef: z.ZodType<DelegateAgentRef, unknown, z.core.$ZodTypeInternals<DelegateAgentRef, unknown>>;
|
|
33
|
+
readonly parentAgentKey: z.ZodNullable<z.ZodString>;
|
|
34
|
+
readonly depth: z.ZodNumber;
|
|
35
|
+
readonly authoredPath: z.ZodReadonly<z.ZodArray<z.ZodType<AgentSubjectRef, unknown, z.core.$ZodTypeInternals<AgentSubjectRef, unknown>>>>;
|
|
36
|
+
readonly reachTier: z.ZodEnum<typeof AgentReachTier>;
|
|
37
|
+
readonly delegateAgentKeys: z.ZodReadonly<z.ZodArray<z.ZodString>>;
|
|
38
|
+
};
|
|
39
|
+
export declare const ResolvedDelegateApertureSchema: z.ZodType<ResolvedDelegateAperture>;
|
|
40
|
+
export declare function canonicalDelegateApertureConstraints(input: {
|
|
41
|
+
readonly apertures: readonly CapabilityAperture[];
|
|
42
|
+
readonly boundaries: readonly CapabilitySetExpression[];
|
|
43
|
+
}): DelegateApertureConstraints;
|
|
44
|
+
export declare function attenuateDelegateApertureConstraints(parent: DelegateApertureConstraints, own: CapabilityAperture, boundary: CapabilitySetExpression | undefined): DelegateApertureConstraints;
|
|
45
|
+
export declare function assessDelegateAperture(constraints: DelegateApertureConstraints, ref: string, effectClass?: CapabilityEffectClass | undefined): ApertureVerdict;
|
|
46
|
+
export declare function delegateApertureConstraintsWithin(child: DelegateApertureConstraints, parent: DelegateApertureConstraints): boolean;
|
|
47
|
+
export declare function computeDelegateApertureKey<A extends {
|
|
48
|
+
readonly reachTier: AgentReachTier;
|
|
49
|
+
}>(agentRef: DelegateAgentRef, authority: A & CanonicalJsonCompatible<A>): Promise<string>;
|
|
50
|
+
export declare function delegateAgentSubject(slug: string): AgentSubjectRef;
|
|
51
|
+
export declare function validateDelegateApertureTree<T extends DelegateApertureNodeFacts>(entries: readonly T[], authorityWithin: (child: T, parent: T) => boolean): readonly string[];
|
|
52
|
+
export declare function validateResolvedDelegateApertures(entries: readonly ResolvedDelegateAperture[]): readonly string[];
|
|
53
|
+
export declare function deriveDelegationEdges(entries: readonly DelegateApertureNodeFacts[]): Readonly<Record<string, readonly string[]>>;
|
|
54
|
+
//# sourceMappingURL=delegate-aperture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate-aperture.d.ts","sourceRoot":"","sources":["../../../src/agent-composition/lib/delegate-aperture.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ResolvedDelegateApertureSchema = exports.DELEGATE_APERTURE_NODE_FIELDS = exports.DelegateApertureConstraintsSchema = exports.DelegateAgentRefSchema = exports.DELEGATE_APERTURE_MAX_TERMS = exports.DELEGATE_APERTURE_MAX_ENTRIES = void 0;
|
|
4
|
+
exports.canonicalDelegateApertureConstraints = canonicalDelegateApertureConstraints;
|
|
5
|
+
exports.attenuateDelegateApertureConstraints = attenuateDelegateApertureConstraints;
|
|
6
|
+
exports.assessDelegateAperture = assessDelegateAperture;
|
|
7
|
+
exports.delegateApertureConstraintsWithin = delegateApertureConstraintsWithin;
|
|
8
|
+
exports.computeDelegateApertureKey = computeDelegateApertureKey;
|
|
9
|
+
exports.delegateAgentSubject = delegateAgentSubject;
|
|
10
|
+
exports.validateDelegateApertureTree = validateDelegateApertureTree;
|
|
11
|
+
exports.validateResolvedDelegateApertures = validateResolvedDelegateApertures;
|
|
12
|
+
exports.deriveDelegationEdges = deriveDelegationEdges;
|
|
13
|
+
const zod_1 = require("zod");
|
|
14
|
+
const capability_1 = require("../../capability");
|
|
15
|
+
const content_address_1 = require("../../content-address");
|
|
16
|
+
const session_launch_1 = require("../../session-launch");
|
|
17
|
+
const subject_1 = require("../../subject");
|
|
18
|
+
exports.DELEGATE_APERTURE_MAX_ENTRIES = 512;
|
|
19
|
+
exports.DELEGATE_APERTURE_MAX_TERMS = 64;
|
|
20
|
+
const AGENT_KEY_PATTERN = /^[^@\s:]+@[^@\s:]+:[a-f0-9]{64}$/u;
|
|
21
|
+
exports.DelegateAgentRefSchema = zod_1.z
|
|
22
|
+
.object({
|
|
23
|
+
slug: zod_1.z.string().min(1).max(256),
|
|
24
|
+
version: zod_1.z.string().min(1).max(64),
|
|
25
|
+
})
|
|
26
|
+
.strict();
|
|
27
|
+
exports.DelegateApertureConstraintsSchema = zod_1.z
|
|
28
|
+
.object({
|
|
29
|
+
apertures: zod_1.z
|
|
30
|
+
.array(capability_1.CapabilityApertureSchema)
|
|
31
|
+
.max(exports.DELEGATE_APERTURE_MAX_TERMS)
|
|
32
|
+
.readonly(),
|
|
33
|
+
boundaries: zod_1.z
|
|
34
|
+
.array(capability_1.CapabilitySetExpressionSchema)
|
|
35
|
+
.max(exports.DELEGATE_APERTURE_MAX_TERMS)
|
|
36
|
+
.readonly(),
|
|
37
|
+
})
|
|
38
|
+
.strict();
|
|
39
|
+
exports.DELEGATE_APERTURE_NODE_FIELDS = {
|
|
40
|
+
agentKey: zod_1.z.string().regex(AGENT_KEY_PATTERN),
|
|
41
|
+
agentRef: exports.DelegateAgentRefSchema,
|
|
42
|
+
parentAgentKey: zod_1.z.string().regex(AGENT_KEY_PATTERN).nullable(),
|
|
43
|
+
depth: zod_1.z.number().int().nonnegative().max(64),
|
|
44
|
+
authoredPath: zod_1.z.array(subject_1.AgentSubjectRefSchema).min(1).max(65).readonly(),
|
|
45
|
+
reachTier: session_launch_1.AgentReachTierSchema,
|
|
46
|
+
delegateAgentKeys: zod_1.z
|
|
47
|
+
.array(zod_1.z.string().regex(AGENT_KEY_PATTERN))
|
|
48
|
+
.max(exports.DELEGATE_APERTURE_MAX_ENTRIES)
|
|
49
|
+
.readonly(),
|
|
50
|
+
};
|
|
51
|
+
exports.ResolvedDelegateApertureSchema = zod_1.z
|
|
52
|
+
.object({
|
|
53
|
+
...exports.DELEGATE_APERTURE_NODE_FIELDS,
|
|
54
|
+
constraints: exports.DelegateApertureConstraintsSchema,
|
|
55
|
+
})
|
|
56
|
+
.strict();
|
|
57
|
+
function canonicalDelegateApertureConstraints(input) {
|
|
58
|
+
const apertures = new Map();
|
|
59
|
+
for (const aperture of input.apertures) {
|
|
60
|
+
const parsed = capability_1.CapabilityApertureSchema.parse(aperture);
|
|
61
|
+
if (parsed.kind === capability_1.CapabilityApertureKind.Unrestricted ||
|
|
62
|
+
parsed.kind === capability_1.CapabilityApertureKind.Representative) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
apertures.set((0, content_address_1.canonicalJsonStringify)(parsed), parsed);
|
|
66
|
+
}
|
|
67
|
+
const boundaries = new Map();
|
|
68
|
+
for (const boundary of input.boundaries) {
|
|
69
|
+
const parsed = capability_1.CapabilitySetExpressionSchema.parse(boundary);
|
|
70
|
+
const canonical = (0, capability_1.capabilitySetExpression)(parsed.include, parsed.exclude);
|
|
71
|
+
boundaries.set((0, content_address_1.canonicalJsonStringify)(canonical), canonical);
|
|
72
|
+
}
|
|
73
|
+
const sortedValues = (map) => Object.freeze([...map.entries()]
|
|
74
|
+
.sort(([left], [right]) => (left < right ? -1 : left > right ? 1 : 0))
|
|
75
|
+
.map(([, value]) => value));
|
|
76
|
+
return Object.freeze({
|
|
77
|
+
apertures: sortedValues(apertures),
|
|
78
|
+
boundaries: sortedValues(boundaries),
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
function attenuateDelegateApertureConstraints(parent, own, boundary) {
|
|
82
|
+
return canonicalDelegateApertureConstraints({
|
|
83
|
+
apertures: [...parent.apertures, own],
|
|
84
|
+
boundaries: boundary === undefined
|
|
85
|
+
? parent.boundaries
|
|
86
|
+
: [...parent.boundaries, boundary],
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
function assessDelegateAperture(constraints, ref, effectClass) {
|
|
90
|
+
for (const boundary of constraints.boundaries) {
|
|
91
|
+
if (!(0, capability_1.capabilitySetExpressionAdmits)(boundary, ref)) {
|
|
92
|
+
return capability_1.ApertureVerdict.Refused;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
let unresolved = false;
|
|
96
|
+
for (const aperture of constraints.apertures) {
|
|
97
|
+
const verdict = (0, capability_1.assessAperture)(aperture, ref, effectClass);
|
|
98
|
+
if (verdict === capability_1.ApertureVerdict.Refused) {
|
|
99
|
+
return capability_1.ApertureVerdict.Refused;
|
|
100
|
+
}
|
|
101
|
+
if (verdict === capability_1.ApertureVerdict.Unresolved) {
|
|
102
|
+
unresolved = true;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return unresolved ? capability_1.ApertureVerdict.Unresolved : capability_1.ApertureVerdict.Admitted;
|
|
106
|
+
}
|
|
107
|
+
function delegateApertureConstraintsWithin(child, parent) {
|
|
108
|
+
const childApertures = new Set(child.apertures.map((term) => (0, content_address_1.canonicalJsonStringify)(term)));
|
|
109
|
+
const childBoundaries = new Set(child.boundaries.map((term) => (0, content_address_1.canonicalJsonStringify)(term)));
|
|
110
|
+
return (parent.apertures.every((term) => childApertures.has((0, content_address_1.canonicalJsonStringify)(term))) &&
|
|
111
|
+
parent.boundaries.every((term) => childBoundaries.has((0, content_address_1.canonicalJsonStringify)(term))));
|
|
112
|
+
}
|
|
113
|
+
async function computeDelegateApertureKey(agentRef, authority) {
|
|
114
|
+
const parsedRef = exports.DelegateAgentRefSchema.parse(agentRef);
|
|
115
|
+
const hash = await (0, content_address_1.canonicalContentHash)({
|
|
116
|
+
agentRef: { slug: parsedRef.slug, version: parsedRef.version },
|
|
117
|
+
authority: authority,
|
|
118
|
+
});
|
|
119
|
+
return `${parsedRef.slug}@${parsedRef.version}:${hash}`;
|
|
120
|
+
}
|
|
121
|
+
function delegateAgentSubject(slug) {
|
|
122
|
+
return Object.freeze({ kind: subject_1.SubjectKind.Agent, id: slug });
|
|
123
|
+
}
|
|
124
|
+
function validateDelegateApertureTree(entries, authorityWithin) {
|
|
125
|
+
const issues = [];
|
|
126
|
+
const byKey = new Map();
|
|
127
|
+
let previousKey = null;
|
|
128
|
+
for (const entry of entries) {
|
|
129
|
+
if (byKey.has(entry.agentKey)) {
|
|
130
|
+
issues.push(`duplicate agentKey ${entry.agentKey}`);
|
|
131
|
+
}
|
|
132
|
+
byKey.set(entry.agentKey, entry);
|
|
133
|
+
if (previousKey !== null && entry.agentKey <= previousKey) {
|
|
134
|
+
issues.push(`entries must be strictly sorted by agentKey (${entry.agentKey})`);
|
|
135
|
+
}
|
|
136
|
+
previousKey = entry.agentKey;
|
|
137
|
+
}
|
|
138
|
+
const roots = entries.filter((entry) => entry.parentAgentKey === null);
|
|
139
|
+
if (entries.length > 0 && roots.length !== 1) {
|
|
140
|
+
issues.push(`expected exactly one root entry, found ${roots.length}`);
|
|
141
|
+
}
|
|
142
|
+
for (const entry of entries) {
|
|
143
|
+
let previousDelegate = null;
|
|
144
|
+
for (const delegateKey of entry.delegateAgentKeys) {
|
|
145
|
+
if (previousDelegate !== null && delegateKey <= previousDelegate) {
|
|
146
|
+
issues.push(`${entry.agentKey}: delegateAgentKeys must be strictly sorted and unique`);
|
|
147
|
+
}
|
|
148
|
+
previousDelegate = delegateKey;
|
|
149
|
+
const delegate = byKey.get(delegateKey);
|
|
150
|
+
if (delegate === undefined) {
|
|
151
|
+
issues.push(`${entry.agentKey}: delegate ${delegateKey} is not an entry`);
|
|
152
|
+
continue;
|
|
153
|
+
}
|
|
154
|
+
if (!(0, session_launch_1.agentReachTierWithin)(delegate.reachTier, entry.reachTier)) {
|
|
155
|
+
issues.push(`${delegateKey}: reach tier exceeds that of delegator ${entry.agentKey}`);
|
|
156
|
+
}
|
|
157
|
+
if (!authorityWithin(delegate, entry)) {
|
|
158
|
+
issues.push(`${delegateKey}: authority exceeds that of delegator ${entry.agentKey}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
if (entry.parentAgentKey !== null &&
|
|
162
|
+
!(byKey.get(entry.parentAgentKey)?.delegateAgentKeys.includes(entry.agentKey) ?? true)) {
|
|
163
|
+
issues.push(`${entry.agentKey}: its parent does not list it as a delegate`);
|
|
164
|
+
}
|
|
165
|
+
if (!entry.agentKey.startsWith(`${entry.agentRef.slug}@${entry.agentRef.version}:`)) {
|
|
166
|
+
issues.push(`agentKey ${entry.agentKey} does not name its agentRef`);
|
|
167
|
+
}
|
|
168
|
+
if (entry.authoredPath.length !== entry.depth + 1) {
|
|
169
|
+
issues.push(`${entry.agentKey}: authoredPath length must be depth + 1`);
|
|
170
|
+
}
|
|
171
|
+
const last = entry.authoredPath[entry.authoredPath.length - 1];
|
|
172
|
+
if (last === undefined || last.id !== entry.agentRef.slug) {
|
|
173
|
+
issues.push(`${entry.agentKey}: authoredPath must end at the agent itself`);
|
|
174
|
+
}
|
|
175
|
+
if (entry.parentAgentKey === null) {
|
|
176
|
+
if (entry.depth !== 0) {
|
|
177
|
+
issues.push(`${entry.agentKey}: the root must have depth 0`);
|
|
178
|
+
}
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
if (entry.depth === 0) {
|
|
182
|
+
issues.push(`${entry.agentKey}: a non-root entry cannot have depth 0`);
|
|
183
|
+
}
|
|
184
|
+
const parent = byKey.get(entry.parentAgentKey);
|
|
185
|
+
if (parent === undefined) {
|
|
186
|
+
issues.push(`${entry.agentKey}: parent ${entry.parentAgentKey} is not an entry`);
|
|
187
|
+
continue;
|
|
188
|
+
}
|
|
189
|
+
if (parent.depth >= entry.depth) {
|
|
190
|
+
issues.push(`${entry.agentKey}: parent must be strictly shallower`);
|
|
191
|
+
}
|
|
192
|
+
const viaParent = entry.authoredPath[entry.authoredPath.length - 2];
|
|
193
|
+
if (viaParent === undefined || viaParent.id !== parent.agentRef.slug) {
|
|
194
|
+
issues.push(`${entry.agentKey}: authoredPath must name the parent agent before it`);
|
|
195
|
+
}
|
|
196
|
+
if (!(0, session_launch_1.agentReachTierWithin)(entry.reachTier, parent.reachTier)) {
|
|
197
|
+
issues.push(`${entry.agentKey}: reach tier exceeds its parent's`);
|
|
198
|
+
}
|
|
199
|
+
if (!authorityWithin(entry, parent)) {
|
|
200
|
+
issues.push(`${entry.agentKey}: authority exceeds its parent's`);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return Object.freeze(issues);
|
|
204
|
+
}
|
|
205
|
+
function validateResolvedDelegateApertures(entries) {
|
|
206
|
+
return validateDelegateApertureTree(entries, (child, parent) => delegateApertureConstraintsWithin(child.constraints, parent.constraints));
|
|
207
|
+
}
|
|
208
|
+
function deriveDelegationEdges(entries) {
|
|
209
|
+
const slugOf = new Map(entries.map((entry) => [entry.agentKey, entry.agentRef.slug]));
|
|
210
|
+
const edges = new Map();
|
|
211
|
+
for (const entry of entries) {
|
|
212
|
+
const targets = edges.get(entry.agentRef.slug) ?? new Set();
|
|
213
|
+
edges.set(entry.agentRef.slug, targets);
|
|
214
|
+
for (const delegateKey of entry.delegateAgentKeys) {
|
|
215
|
+
const slug = slugOf.get(delegateKey);
|
|
216
|
+
if (slug === undefined) {
|
|
217
|
+
throw new TypeError(`Delegation edge ${entry.agentKey} → ${delegateKey} names no entry.`);
|
|
218
|
+
}
|
|
219
|
+
if (slug !== entry.agentRef.slug) {
|
|
220
|
+
targets.add(slug);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
const result = {};
|
|
225
|
+
for (const slug of [...edges.keys()].sort()) {
|
|
226
|
+
result[slug] = Object.freeze([...(edges.get(slug) ?? [])].sort());
|
|
227
|
+
}
|
|
228
|
+
return Object.freeze(result);
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=delegate-aperture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate-aperture.js","sourceRoot":"","sources":["../../../src/agent-composition/lib/delegate-aperture.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const KNOWN_PERMISSION_KEYS: readonly ["read", "edit", "glob", "grep", "
|
|
1
|
+
export declare const KNOWN_PERMISSION_KEYS: readonly ["read", "edit", "glob", "grep", "bash", "task", "external_directory", "skill", "todowrite", "question", "webfetch", "websearch"];
|
|
2
2
|
export type PermissionKey = (typeof KNOWN_PERMISSION_KEYS)[number];
|
|
3
3
|
export type PermissionAction = 'allow' | 'ask' | 'deny';
|
|
4
4
|
export type PermissionRule = PermissionAction | Readonly<Record<string, PermissionAction>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-map.d.ts","sourceRoot":"","sources":["../../../src/agent-permission/lib/permission-map.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"permission-map.d.ts","sourceRoot":"","sources":["../../../src/agent-permission/lib/permission-map.ts"],"names":[],"mappings":"AAqDA,eAAO,MAAM,qBAAqB,4IAGxB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAUxD,MAAM,MAAM,cAAc,GACtB,gBAAgB,GAChB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAS/C,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC"}
|
|
@@ -6,11 +6,9 @@ const KNOWN_RULE_PERMISSION_KEYS = [
|
|
|
6
6
|
'edit',
|
|
7
7
|
'glob',
|
|
8
8
|
'grep',
|
|
9
|
-
'list',
|
|
10
9
|
'bash',
|
|
11
10
|
'task',
|
|
12
11
|
'external_directory',
|
|
13
|
-
'lsp',
|
|
14
12
|
'skill',
|
|
15
13
|
];
|
|
16
14
|
const KNOWN_ACTION_PERMISSION_KEYS = [
|
|
@@ -18,7 +16,6 @@ const KNOWN_ACTION_PERMISSION_KEYS = [
|
|
|
18
16
|
'question',
|
|
19
17
|
'webfetch',
|
|
20
18
|
'websearch',
|
|
21
|
-
'doom_loop',
|
|
22
19
|
];
|
|
23
20
|
exports.KNOWN_PERMISSION_KEYS = [
|
|
24
21
|
...KNOWN_RULE_PERMISSION_KEYS,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-map.js","sourceRoot":"","sources":["../../../src/agent-permission/lib/permission-map.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"permission-map.js","sourceRoot":"","sources":["../../../src/agent-permission/lib/permission-map.ts"],"names":[],"mappings":";;;AA8BA,MAAM,0BAA0B,GAAG;IACjC,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,oBAAoB;IACpB,OAAO;CACC,CAAC;AAOX,MAAM,4BAA4B,GAAG;IACnC,WAAW;IACX,UAAU;IACV,UAAU;IACV,WAAW;CACH,CAAC;AAEE,QAAA,qBAAqB,GAAG;IACnC,GAAG,0BAA0B;IAC7B,GAAG,4BAA4B;CACvB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './lib/lifecycle';
|
|
2
2
|
export * from './lib/participant';
|
|
3
|
+
export * from './lib/sealed-delegate-aperture';
|
|
3
4
|
export * from './lib/resolved-session-composition';
|
|
4
5
|
export * from './lib/workspace';
|
|
5
6
|
export { WorkspaceActionSchema, type WorkspaceAction } from '../session-launch';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-session/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oCAAoC,CAAC;AACnD,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent-session/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.WorkspaceActionSchema = void 0;
|
|
18
18
|
__exportStar(require("./lib/lifecycle"), exports);
|
|
19
19
|
__exportStar(require("./lib/participant"), exports);
|
|
20
|
+
__exportStar(require("./lib/sealed-delegate-aperture"), exports);
|
|
20
21
|
__exportStar(require("./lib/resolved-session-composition"), exports);
|
|
21
22
|
__exportStar(require("./lib/workspace"), exports);
|
|
22
23
|
var session_launch_1 = require("../session-launch");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-session/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,oDAAkC;AAClC,qEAAmD;AACnD,kDAAgC;AAChC,oDAAgF;AAAvE,uHAAA,qBAAqB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent-session/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,oDAAkC;AAClC,iEAA+C;AAC/C,qEAAmD;AACnD,kDAAgC;AAChC,oDAAgF;AAAvE,uHAAA,qBAAqB,OAAA"}
|
|
@@ -9,6 +9,7 @@ import { type RuntimeProfileContent } from '../../worker-runtime';
|
|
|
9
9
|
import { type SkillRevisionContent } from '../../skill';
|
|
10
10
|
import { WorkspaceBackingKind } from '../../session-launch';
|
|
11
11
|
import { SubjectKind } from '../../subject';
|
|
12
|
+
import { type SealedDelegateAperture } from './sealed-delegate-aperture';
|
|
12
13
|
export type EffectiveInvocationOverlay = Omit<InvocationOverlay, 'skillRevisionRefs' | 'capabilityRefs' | 'resourceBindings'> & {
|
|
13
14
|
readonly skillRevisionRefs: readonly RevisionPin[];
|
|
14
15
|
readonly capabilityRefs: readonly string[];
|
|
@@ -188,6 +189,7 @@ export interface ResolvedSessionCompositionContent {
|
|
|
188
189
|
readonly capabilityAperture?: CapabilityAperture | undefined;
|
|
189
190
|
readonly capabilityCatalogVersion?: number | undefined;
|
|
190
191
|
readonly actingPrincipal?: ActingPrincipalBinding | undefined;
|
|
192
|
+
readonly delegateApertures?: readonly SealedDelegateAperture[] | undefined;
|
|
191
193
|
readonly skillRevisions: readonly RevisionPin[];
|
|
192
194
|
readonly skillBundles: readonly ResolvedSkillBundle[];
|
|
193
195
|
readonly skillDependencyEdges: readonly ResolvedSkillDependencyEdge[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolved-session-composition.d.ts","sourceRoot":"","sources":["../../../src/agent-session/lib/resolved-session-composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAML,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAKhB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAYL,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAOL,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,oBAAoB,EAErB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"resolved-session-composition.d.ts","sourceRoot":"","sources":["../../../src/agent-session/lib/resolved-session-composition.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,7 @@ const worker_runtime_1 = require("../../worker-runtime");
|
|
|
27
27
|
const skill_1 = require("../../skill");
|
|
28
28
|
const session_launch_1 = require("../../session-launch");
|
|
29
29
|
const subject_1 = require("../../subject");
|
|
30
|
+
const sealed_delegate_aperture_1 = require("./sealed-delegate-aperture");
|
|
30
31
|
const tenant_1 = require("../../tenant");
|
|
31
32
|
const RESOLVED_COMPOSITION_HASH_DOMAIN = 'xema-resolved-session-composition-content-v1';
|
|
32
33
|
const OPAQUE_REF = zod_1.z
|
|
@@ -398,6 +399,7 @@ const RESOLVED_COMPOSITION_CONTENT_FIELDS = {
|
|
|
398
399
|
.max(Number.MAX_SAFE_INTEGER)
|
|
399
400
|
.optional(),
|
|
400
401
|
actingPrincipal: exports.ActingPrincipalBindingSchema.optional(),
|
|
402
|
+
delegateApertures: sealed_delegate_aperture_1.SealedDelegateApertureListSchema.optional(),
|
|
401
403
|
skillRevisions: zod_1.z.array(ImmutableRevisionPinSchema).max(1_024).readonly(),
|
|
402
404
|
skillBundles: zod_1.z.array(ResolvedSkillBundleSchema).max(1_024).readonly(),
|
|
403
405
|
skillDependencyEdges: zod_1.z
|
|
@@ -439,6 +441,12 @@ async function createResolvedSessionCompositionContent(input) {
|
|
|
439
441
|
const parsed = exports.ResolvedSessionCompositionContentSchema.parse(input);
|
|
440
442
|
await verifyMaterializedRuntimeProfile(parsed);
|
|
441
443
|
await Promise.all(parsed.capabilityArming.map((entry) => parseAndVerifyResolvedCapabilityRef(entry)));
|
|
444
|
+
if (parsed.delegateApertures !== undefined) {
|
|
445
|
+
const keyIssues = await (0, sealed_delegate_aperture_1.verifySealedDelegateApertureKeys)(parsed.delegateApertures);
|
|
446
|
+
if (keyIssues.length > 0) {
|
|
447
|
+
throw new TypeError(`ResolvedSessionComposition.delegateApertures: ${keyIssues.join('; ')}`);
|
|
448
|
+
}
|
|
449
|
+
}
|
|
442
450
|
const effectiveOverlay = (0, agent_composition_1.createInvocationOverlay)(parsed.effectiveOverlay);
|
|
443
451
|
return (0, content_address_1.deepFreezeCanonicalJson)({
|
|
444
452
|
...parsed,
|
|
@@ -486,6 +494,7 @@ async function serializeResolvedSessionComposition(input) {
|
|
|
486
494
|
return (0, content_address_1.canonicalJsonStringify)(await parseAndVerifyResolvedSessionComposition(input));
|
|
487
495
|
}
|
|
488
496
|
function addCompositionContentIssues(value, context) {
|
|
497
|
+
addDelegateApertureIssues(value, context);
|
|
489
498
|
addStrictlySortedIssues(value.capabilityArming, (entry) => entry.ref, context, ['capabilityArming'], 'capabilityArming');
|
|
490
499
|
addStrictlySortedIssues(value.skillRevisions, (entry) => entry.resourceId, context, ['skillRevisions'], 'skillRevisions');
|
|
491
500
|
addStrictlySortedIssues(value.skillBundles, (entry) => entry.pin.resourceId, context, ['skillBundles'], 'skillBundles');
|
|
@@ -813,4 +822,35 @@ function assertNoExplicitUndefined(value, path = []) {
|
|
|
813
822
|
assertNoExplicitUndefined(entry, [...path, key]);
|
|
814
823
|
}
|
|
815
824
|
}
|
|
825
|
+
function addDelegateApertureIssues(value, context) {
|
|
826
|
+
const entries = value.delegateApertures;
|
|
827
|
+
if (entries === undefined) {
|
|
828
|
+
return;
|
|
829
|
+
}
|
|
830
|
+
if (value.capabilityAperture !== undefined &&
|
|
831
|
+
(0, capability_1.apertureEnumeratesNothing)(value.capabilityAperture)) {
|
|
832
|
+
context.addIssue({
|
|
833
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
834
|
+
path: ['delegateApertures'],
|
|
835
|
+
message: `a ${value.capabilityAperture.kind} capabilityAperture enumerates nothing, so delegateApertures (Armed subsets of the arming) cannot be sealed.`,
|
|
836
|
+
});
|
|
837
|
+
return;
|
|
838
|
+
}
|
|
839
|
+
if (entries.length === 0) {
|
|
840
|
+
context.addIssue({
|
|
841
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
842
|
+
path: ['delegateApertures'],
|
|
843
|
+
message: 'delegateApertures, when present, must include the primary agent entry.',
|
|
844
|
+
});
|
|
845
|
+
return;
|
|
846
|
+
}
|
|
847
|
+
const issues = (0, sealed_delegate_aperture_1.validateSealedDelegateApertures)(entries, value.capabilityArming.map((entry) => entry.ref));
|
|
848
|
+
for (const issue of issues) {
|
|
849
|
+
context.addIssue({
|
|
850
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
851
|
+
path: ['delegateApertures'],
|
|
852
|
+
message: issue,
|
|
853
|
+
});
|
|
854
|
+
}
|
|
855
|
+
}
|
|
816
856
|
//# sourceMappingURL=resolved-session-composition.js.map
|