@sentropic/h2a 0.1.29 → 0.2.1
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/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/subagents.d.ts +82 -0
- package/dist/subagents.d.ts.map +1 -0
- package/dist/subagents.js +88 -0
- package/dist/subagents.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -33,6 +33,8 @@ export { H2A_ESCALATION_AUTHORITY_KINDS, H2A_ESCALATION_CHANNELS, assertEscalati
|
|
|
33
33
|
export type { H2AEscalationAuthorityKind, H2AEscalationChannel, H2AEscalationResolution, H2AEscalationResolveOptions, H2AEscalationResolvedTarget, H2AEscalationTargetRequest, H2AEscalationUnresolvedTarget } from "./escalation.js";
|
|
34
34
|
export { H2A_CANONICAL_FIXTURES } from "./fixtures-index.js";
|
|
35
35
|
export type { H2ACanonicalFixtureManifestEntry } from "./fixtures-index.js";
|
|
36
|
+
export { SUBAGENT_ADDRESS_SEPARATOR, isSubagentAddress, parseSubagentAddress, subagentActorRef, subagentAddress, validateSubagentBinding } from "./subagents.js";
|
|
37
|
+
export type { H2ASubagentBinding, H2ASubagentValidation, H2ASubagentValidationError } from "./subagents.js";
|
|
36
38
|
export { H2A_ARTIFACT_KINDS, H2A_AUTHORITY_KINDS, H2A_ENVELOPE_TYPES, H2A_NEGOTIATION_STATES, H2A_POLICY_ADOPTION_MODES, H2A_PROTOCOL, H2A_ROLES, H2A_VERSION } from "./types.js";
|
|
37
39
|
export type { H2AActorRef, H2AActorRegistration, H2AAmendment, H2AArtifactKind, H2AAuthority, H2AAuthorityKind, H2AContract, H2AEnforcementPlan, H2AEngagement, H2AEnvelope, H2AEnvelopeType, H2AMandate, H2ANegotiationRecord, H2ANegotiationState, H2APolicy, H2APolicyAdoptionMode, H2ARole, H2ASignature } from "./types.js";
|
|
38
40
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -18,5 +18,6 @@ export { H2A_AUTHORITY_MATRIX, assertCanSignArtifactKind, canSignArtifactKind }
|
|
|
18
18
|
export { H2A_CONTRACTUAL_ARTIFACT_PROFILES, assertContractualArtifactInvariants, auditContractualArtifact, getContractualArtifactProfile } from "./contractual.js";
|
|
19
19
|
export { H2A_ESCALATION_AUTHORITY_KINDS, H2A_ESCALATION_CHANNELS, assertEscalationTargetResolved, resolveEscalationTarget } from "./escalation.js";
|
|
20
20
|
export { H2A_CANONICAL_FIXTURES } from "./fixtures-index.js";
|
|
21
|
+
export { SUBAGENT_ADDRESS_SEPARATOR, isSubagentAddress, parseSubagentAddress, subagentActorRef, subagentAddress, validateSubagentBinding } from "./subagents.js";
|
|
21
22
|
export { H2A_ARTIFACT_KINDS, H2A_AUTHORITY_KINDS, H2A_ENVELOPE_TYPES, H2A_NEGOTIATION_STATES, H2A_POLICY_ADOPTION_MODES, H2A_PROTOCOL, H2A_ROLES, H2A_VERSION } from "./types.js";
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAWlB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,2CAA2C,EAC3C,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,oCAAoC,EACpC,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EACL,kCAAkC,EAClC,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,eAAe,CAAC;AAOvB,OAAO,EACL,uBAAuB,EACvB,8CAA8C,EAC9C,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EACL,sCAAsC,EACtC,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACL,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,6BAA6B,EAC7B,yCAAyC,EACzC,+BAA+B,EAC/B,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,cAAc,CAAC;AAQtB,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAYzB,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAMtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAWlB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,2CAA2C,EAC3C,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,oCAAoC,EACpC,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EACL,kCAAkC,EAClC,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,eAAe,CAAC;AAOvB,OAAO,EACL,uBAAuB,EACvB,8CAA8C,EAC9C,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EACL,sCAAsC,EACtC,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACL,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,6BAA6B,EAC7B,yCAAyC,EACzC,+BAA+B,EAC/B,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,cAAc,CAAC;AAQtB,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAYzB,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAMtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* First-class SUBAGENTS — addressable binding layer (DEC-008 V2, slice 1).
|
|
3
|
+
*
|
|
4
|
+
* In V1 (DEC-008) a host CLI's subagents are consolidated into the parent
|
|
5
|
+
* AGENTS actor: not individually addressable, not separately audited. V2 makes
|
|
6
|
+
* them addressable so coordination and audit can reference a specific subagent.
|
|
7
|
+
*
|
|
8
|
+
* Design (DEC-068):
|
|
9
|
+
* - A subagent is **not a new role**. It is an addressable actor that acts
|
|
10
|
+
* under its parent's `AGENTS` role, so the frozen role set and the authority
|
|
11
|
+
* matrix are untouched — a subagent's signing authority stays exactly the
|
|
12
|
+
* parent AGENTS authority (consolidated). What V2 adds is *addressability*,
|
|
13
|
+
* not new authority.
|
|
14
|
+
* - The address encodes the parent: `<parentInstance>~<name>`. The `~`
|
|
15
|
+
* separator is filesystem-safe (it is not in the `safePathSegment` set
|
|
16
|
+
* `[:/\<>"|?*]`, DEC-062), so a subagent address round-trips through the
|
|
17
|
+
* local-files store the same way a plain instance id does.
|
|
18
|
+
*
|
|
19
|
+
* This module is pure: types + total functions, no I/O.
|
|
20
|
+
*/
|
|
21
|
+
import type { H2AActorRef, H2AActorRegistration } from "./types.js";
|
|
22
|
+
/** Separator between a parent instance id and a subagent's local name. */
|
|
23
|
+
export declare const SUBAGENT_ADDRESS_SEPARATOR = "~";
|
|
24
|
+
/**
|
|
25
|
+
* A binding records that a named subagent exists under a parent AGENTS
|
|
26
|
+
* instance. It is the audit/discovery record; the addressable identity itself
|
|
27
|
+
* is `id` (see {@link subagentAddress}).
|
|
28
|
+
*/
|
|
29
|
+
export interface H2ASubagentBinding {
|
|
30
|
+
/** Canonical addressable id: `<parentInstance>~<name>`. */
|
|
31
|
+
readonly id: string;
|
|
32
|
+
/** The parent AGENTS instance this subagent is bound to. */
|
|
33
|
+
readonly parentInstance: string;
|
|
34
|
+
/** Local name, unique within the parent (e.g. "researcher"). */
|
|
35
|
+
readonly name: string;
|
|
36
|
+
/**
|
|
37
|
+
* Optional capability subset. When omitted the subagent inherits the
|
|
38
|
+
* parent's capabilities; when present it MUST be a subset of them (a
|
|
39
|
+
* subagent can never exceed its parent). Validated by
|
|
40
|
+
* {@link validateSubagentBinding}.
|
|
41
|
+
*/
|
|
42
|
+
readonly capabilities?: readonly string[];
|
|
43
|
+
readonly createdAt: string;
|
|
44
|
+
}
|
|
45
|
+
export type H2ASubagentValidationError = "parent-not-agents" | "empty-name" | "name-contains-separator" | "id-address-mismatch" | "parent-instance-mismatch" | "capabilities-exceed-parent";
|
|
46
|
+
export interface H2ASubagentValidation {
|
|
47
|
+
readonly ok: boolean;
|
|
48
|
+
readonly errors: readonly H2ASubagentValidationError[];
|
|
49
|
+
}
|
|
50
|
+
/** Build the canonical addressable id for a subagent. */
|
|
51
|
+
export declare function subagentAddress(parentInstance: string, name: string): string;
|
|
52
|
+
/** True if `id` looks like a subagent address (`parent~name`). */
|
|
53
|
+
export declare function isSubagentAddress(id: string): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Split a subagent address into its parts. Splits on the **last** separator so
|
|
56
|
+
* a parent instance id may itself contain `~` (the name may not — enforced by
|
|
57
|
+
* {@link validateSubagentBinding}). Returns undefined if `id` is not an address.
|
|
58
|
+
*/
|
|
59
|
+
export declare function parseSubagentAddress(id: string): {
|
|
60
|
+
parentInstance: string;
|
|
61
|
+
name: string;
|
|
62
|
+
} | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Validate a binding against its parent registration. A binding is valid iff:
|
|
65
|
+
* - the parent carries the `AGENTS` role (only AGENTS spawn subagents),
|
|
66
|
+
* - the name is non-empty and free of the address separator,
|
|
67
|
+
* - `id` equals `subagentAddress(parentInstance, name)`,
|
|
68
|
+
* - `parentInstance` matches the parent registration's `instance`,
|
|
69
|
+
* - declared `capabilities` (if any) are a subset of the parent's.
|
|
70
|
+
*/
|
|
71
|
+
export declare function validateSubagentBinding(binding: H2ASubagentBinding, parent: H2AActorRegistration): H2ASubagentValidation;
|
|
72
|
+
/**
|
|
73
|
+
* Build the actor reference a subagent uses when it participates in
|
|
74
|
+
* coordination. It acts under the parent's `AGENTS` role at the parent's
|
|
75
|
+
* scope; only the addressable `instance` distinguishes it. A `mandate` may be
|
|
76
|
+
* threaded through for traceability.
|
|
77
|
+
*/
|
|
78
|
+
export declare function subagentActorRef(binding: H2ASubagentBinding, options: {
|
|
79
|
+
scope: string;
|
|
80
|
+
mandate?: string;
|
|
81
|
+
}): H2AActorRef;
|
|
82
|
+
//# sourceMappingURL=subagents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subagents.d.ts","sourceRoot":"","sources":["../src/subagents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEpE,0EAA0E;AAC1E,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,0BAA0B,GAClC,mBAAmB,GACnB,YAAY,GACZ,yBAAyB,GACzB,qBAAqB,GACrB,0BAA0B,GAC1B,4BAA4B,CAAC;AAEjC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,GACT;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAItD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,oBAAoB,GAC3B,qBAAqB,CAsBvB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3C,WAAW,CAOb"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* First-class SUBAGENTS — addressable binding layer (DEC-008 V2, slice 1).
|
|
3
|
+
*
|
|
4
|
+
* In V1 (DEC-008) a host CLI's subagents are consolidated into the parent
|
|
5
|
+
* AGENTS actor: not individually addressable, not separately audited. V2 makes
|
|
6
|
+
* them addressable so coordination and audit can reference a specific subagent.
|
|
7
|
+
*
|
|
8
|
+
* Design (DEC-068):
|
|
9
|
+
* - A subagent is **not a new role**. It is an addressable actor that acts
|
|
10
|
+
* under its parent's `AGENTS` role, so the frozen role set and the authority
|
|
11
|
+
* matrix are untouched — a subagent's signing authority stays exactly the
|
|
12
|
+
* parent AGENTS authority (consolidated). What V2 adds is *addressability*,
|
|
13
|
+
* not new authority.
|
|
14
|
+
* - The address encodes the parent: `<parentInstance>~<name>`. The `~`
|
|
15
|
+
* separator is filesystem-safe (it is not in the `safePathSegment` set
|
|
16
|
+
* `[:/\<>"|?*]`, DEC-062), so a subagent address round-trips through the
|
|
17
|
+
* local-files store the same way a plain instance id does.
|
|
18
|
+
*
|
|
19
|
+
* This module is pure: types + total functions, no I/O.
|
|
20
|
+
*/
|
|
21
|
+
/** Separator between a parent instance id and a subagent's local name. */
|
|
22
|
+
export const SUBAGENT_ADDRESS_SEPARATOR = "~";
|
|
23
|
+
/** Build the canonical addressable id for a subagent. */
|
|
24
|
+
export function subagentAddress(parentInstance, name) {
|
|
25
|
+
return `${parentInstance}${SUBAGENT_ADDRESS_SEPARATOR}${name}`;
|
|
26
|
+
}
|
|
27
|
+
/** True if `id` looks like a subagent address (`parent~name`). */
|
|
28
|
+
export function isSubagentAddress(id) {
|
|
29
|
+
const i = id.indexOf(SUBAGENT_ADDRESS_SEPARATOR);
|
|
30
|
+
return i > 0 && i < id.length - 1;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Split a subagent address into its parts. Splits on the **last** separator so
|
|
34
|
+
* a parent instance id may itself contain `~` (the name may not — enforced by
|
|
35
|
+
* {@link validateSubagentBinding}). Returns undefined if `id` is not an address.
|
|
36
|
+
*/
|
|
37
|
+
export function parseSubagentAddress(id) {
|
|
38
|
+
const i = id.lastIndexOf(SUBAGENT_ADDRESS_SEPARATOR);
|
|
39
|
+
if (i <= 0 || i >= id.length - 1)
|
|
40
|
+
return undefined;
|
|
41
|
+
return { parentInstance: id.slice(0, i), name: id.slice(i + 1) };
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Validate a binding against its parent registration. A binding is valid iff:
|
|
45
|
+
* - the parent carries the `AGENTS` role (only AGENTS spawn subagents),
|
|
46
|
+
* - the name is non-empty and free of the address separator,
|
|
47
|
+
* - `id` equals `subagentAddress(parentInstance, name)`,
|
|
48
|
+
* - `parentInstance` matches the parent registration's `instance`,
|
|
49
|
+
* - declared `capabilities` (if any) are a subset of the parent's.
|
|
50
|
+
*/
|
|
51
|
+
export function validateSubagentBinding(binding, parent) {
|
|
52
|
+
const errors = [];
|
|
53
|
+
if (!parent.roles.includes("AGENTS"))
|
|
54
|
+
errors.push("parent-not-agents");
|
|
55
|
+
if (binding.name.length === 0)
|
|
56
|
+
errors.push("empty-name");
|
|
57
|
+
if (binding.name.includes(SUBAGENT_ADDRESS_SEPARATOR)) {
|
|
58
|
+
errors.push("name-contains-separator");
|
|
59
|
+
}
|
|
60
|
+
if (binding.id !== subagentAddress(binding.parentInstance, binding.name)) {
|
|
61
|
+
errors.push("id-address-mismatch");
|
|
62
|
+
}
|
|
63
|
+
if (binding.parentInstance !== parent.instance) {
|
|
64
|
+
errors.push("parent-instance-mismatch");
|
|
65
|
+
}
|
|
66
|
+
if (binding.capabilities) {
|
|
67
|
+
const parentCaps = new Set(parent.capabilities);
|
|
68
|
+
if (binding.capabilities.some((c) => !parentCaps.has(c))) {
|
|
69
|
+
errors.push("capabilities-exceed-parent");
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return { ok: errors.length === 0, errors };
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Build the actor reference a subagent uses when it participates in
|
|
76
|
+
* coordination. It acts under the parent's `AGENTS` role at the parent's
|
|
77
|
+
* scope; only the addressable `instance` distinguishes it. A `mandate` may be
|
|
78
|
+
* threaded through for traceability.
|
|
79
|
+
*/
|
|
80
|
+
export function subagentActorRef(binding, options) {
|
|
81
|
+
return {
|
|
82
|
+
instance: binding.id,
|
|
83
|
+
role: "AGENTS",
|
|
84
|
+
scope: options.scope,
|
|
85
|
+
...(options.mandate ? { mandate: options.mandate } : {})
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=subagents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subagents.js","sourceRoot":"","sources":["../src/subagents.ts"],"names":[],"mappings":"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"}
|