@xemahq/agent-session-runtime 0.6.4 → 0.6.6

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.
@@ -1,6 +1,6 @@
1
1
  import { type CompiledManifestCredential, type CompiledManifestPermissions, type ModelRef } from '@xemahq/kernel-contracts/workflow';
2
2
  import type { PermissionMap } from '@xemahq/kernel-contracts/agent-permission';
3
- import { type CompiledWorkspaceManifest } from '@xemahq/dsl/workspace-manifest';
3
+ import { type CompiledWorkspaceManifest, type ManifestWorkingFile } from '@xemahq/dsl/workspace-manifest';
4
4
  export type { CompiledWorkspaceManifest };
5
5
  export declare class AgentMountLayoutError extends Error {
6
6
  constructor(agentRef: string, detail: string);
@@ -40,6 +40,7 @@ export interface AgentManifestSource {
40
40
  readonly outputSurface?: AgentOutputSurfaceInput;
41
41
  readonly credentials?: readonly CompiledManifestCredential[];
42
42
  readonly permissions?: CompiledManifestPermissions;
43
+ readonly workingFiles?: readonly ManifestWorkingFile[];
43
44
  }
44
45
  export interface AgentManifestImplicitInputs {
45
46
  readonly orgId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-workspace-manifest.d.ts","sourceRoot":"","sources":["../../src/lib/agent-workspace-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-workspace-manifest.d.ts","sourceRoot":"","sources":["../../src/lib/agent-workspace-manifest.ts"],"names":[],"mappings":"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"}
@@ -62,6 +62,9 @@ function compileAgentWorkspaceManifest(source, bindInputs) {
62
62
  ...(outputSurface === undefined ? {} : { outputSurface }),
63
63
  ...(credentials === undefined ? {} : { credentials }),
64
64
  ...(permissions === undefined ? {} : { permissions }),
65
+ ...(source.workingFiles && source.workingFiles.length > 0
66
+ ? { workingFiles: source.workingFiles }
67
+ : {}),
65
68
  };
66
69
  const envelope = {
67
70
  apiVersion: 'xema.dev/workspace/v1',
@@ -69,7 +72,7 @@ function compileAgentWorkspaceManifest(source, bindInputs) {
69
72
  metadata: {
70
73
  slug,
71
74
  version,
72
- surfaceCompat: [workflow_1.ManifestSurface.AGENT_SESSION],
75
+ surfaceCompat: [workflow_1.ManifestSurface.WORKFLOW, workflow_1.ManifestSurface.AGENT_SESSION],
73
76
  },
74
77
  spec,
75
78
  };
@@ -1 +1 @@
1
- {"version":3,"file":"agent-workspace-manifest.js","sourceRoot":"","sources":["../../src/lib/agent-workspace-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-workspace-manifest.js","sourceRoot":"","sources":["../../src/lib/agent-workspace-manifest.ts"],"names":[],"mappings":";;;AAyQA,sEA2HC;AA0GD,oEAiDC;AAlgBD,gEAO2C;AAE3C,uEAawC;AAcxC,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,QAAgB,EAAE,MAAc;QAC1C,KAAK,CACH,oDAAoD;YAClD,IAAI,QAAQ,MAAM,MAAM,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AARD,sDAQC;AAgMD,SAAgB,6BAA6B,CAC3C,MAA2B,EAC3B,UAA6C;IAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,qBAAqB,CAC7B,MAAM,CAAC,QAAQ,EACf,kEAAkE;YAChE,sEAAsE;YACtE,sEAAsE;YACtE,0BAA0B,CAC7B,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAOvD,MAAM,SAAS,GAAuB,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAC/D,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACZ,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAMhE,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;YACrC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,aAAa,EAAE;YACzC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS;YACpC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;YACpC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CACH,CAAC;IAOF,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,IAAI,GAA0B;QAClC,MAAM,EAAE,WAAW,CAAC,MAAwC;QAC5D,KAAK,EAAE;YACL,IAAI,EAAE,MAAM,CAAC,gBAAgB;YAC7B,KAAK,EAAE,WAAW,CAAC,cAAc,CAAC,KAAK;YACvC,IAAI,EAAE,WAAW,CAAC,cAAc,CAAC,IAAoB;YACrD,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,kBAAkB,KAAK,SAAS;gBAC7D,CAAC,CAAC,EAAE,kBAAkB,EAAE,WAAW,CAAC,cAAc,CAAC,kBAAkB,EAAE;gBACvE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C;QACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;YAC5C,CAAC,CAAC;gBACE,MAAM,EAAE,WAAW,CAAC,MAGnB;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAClC,CAAC,CAAC;gBACE,SAAS,EACP,WAAW,CAAC,SAAmD;aAClE;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;QACzD,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QACrD,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QAOrD,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;YACvD,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,MAAM,QAAQ,GAAyB;QACrC,UAAU,EAAE,uBAAuB;QACnC,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE;YACR,IAAI;YACJ,OAAO;YAaP,aAAa,EAAE,CAAC,0BAAe,CAAC,QAAQ,EAAE,0BAAe,CAAC,aAAa,CAAC;SACzE;QACD,IAAI;KACL,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,oCAAe,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,qBAAqB,CAC7B,MAAM,CAAC,QAAQ,EACf,6CAA6C,MAAM,CAAC,MAAM;aACvD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aACrC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAcD,SAAS,oBAAoB,CAC3B,OAA4C;IAE5C,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAyB;QACvC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QACvC,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAmBD,SAAS,kBAAkB,CACzB,WAA8D;IAE9D,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAChD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,QAAQ,EAAE,UAAU,CAAC,QAAQ;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAqBD,SAAS,kBAAkB,CACzB,WAAoD;IAEpD,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAChD,OAAO;QACL,KAAK,EAAE;YACL,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK;YAC9B,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI;SAC7B;KACF,CAAC;AACJ,CAAC;AAeD,SAAgB,4BAA4B,CAC1C,MAA2B,EAC3B,cAA8C,EAC9C,cAA2C;IAE3C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IACxE,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IACE,cAAc,KAAK,IAAI;QACvB,CAAC,OAAO,cAAc,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EACrE,CAAC;QACD,MAAM,IAAI,qBAAqB,CAC7B,MAAM,CAAC,QAAQ,EACf,0DAA0D,CAC3D,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,IAAI,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,qBAAqB,CAC7B,MAAM,CAAC,QAAQ,EACf,2CAA2C,GAAG,GAAG,CAClD,CAAC;QACJ,CAAC;QACD,wBAAwB,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAuC;QACnD,KAAK,EAAE,cAAc,CAAC,KAAK;QAC3B,SAAS,EAAE,cAAc,CAAC,SAAS;QACnC,GAAG,CAAC,cAAc,CAAC,SAAS,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE;YACzC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAGD,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,qBAAqB,CAC7B,GAAG,EACH,iEAAiE;YAC/D,mDAAmD,CACtD,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAQD,SAAS,wBAAwB,CAC/B,QAAgB,EAChB,GAAW,EACX,KAAc;IAEd,IACE,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,SAAS;QAC1B,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACrB,CAAC;QACD,MAAM,IAAI,qBAAqB,CAC7B,QAAQ,EACR,mBAAmB,GAAG,wBAAwB;YAC5C,6CAA6C,OAAO,KAAK,EAAE,CAC9D,CAAC;IACJ,CAAC;IACD,IACE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,EAClD,CAAC;QACD,MAAM,IAAI,qBAAqB,CAC7B,QAAQ,EACR,mBAAmB,GAAG,gDAAgD,CACvE,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1,23 +1,3 @@
1
- export declare const SessionLifecycleState: {
2
- readonly creating: "creating";
3
- readonly provisioning: "provisioning";
4
- readonly active: "active";
5
- readonly paused: "paused";
6
- readonly recovering: "recovering";
7
- readonly completing: "completing";
8
- readonly completed: "completed";
9
- readonly failed: "failed";
10
- readonly archived: "archived";
11
- };
12
- export type SessionLifecycleStateValue = (typeof SessionLifecycleState)[keyof typeof SessionLifecycleState];
13
- export declare const SessionOwnerKind: {
14
- readonly interactive_session: "interactive_session";
15
- readonly pipeline_run: "pipeline_run";
16
- readonly chat_thread: "chat_thread";
17
- };
18
- export type SessionOwnerKindValue = (typeof SessionOwnerKind)[keyof typeof SessionOwnerKind];
19
- export declare function canTransition(from: SessionLifecycleStateValue, to: SessionLifecycleStateValue): boolean;
20
- export declare function isTerminal(state: SessionLifecycleStateValue): boolean;
21
- export declare function isPausable(state: SessionLifecycleStateValue): boolean;
22
- export declare function isResumable(state: SessionLifecycleStateValue): boolean;
1
+ export { SessionLifecycleState, SessionOwnerKind, canTransition, isTerminal, isPausable, isResumable, SessionLifecycleStateSchema, SessionOwnerKindSchema, } from '@xemahq/kernel-contracts/agent-session';
2
+ export type { SessionLifecycleStateValue, SessionOwnerKindValue, } from '@xemahq/kernel-contracts/agent-session';
23
3
  //# sourceMappingURL=lifecycle-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-state.d.ts","sourceRoot":"","sources":["../../src/lib/lifecycle-state.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,qBAAqB;;;;;;;;;;CAUxB,CAAC;AAEX,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAYrE,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAiD3D,wBAAgB,aAAa,CAC3B,IAAI,EAAE,0BAA0B,EAChC,EAAE,EAAE,0BAA0B,GAC7B,OAAO,CAET;AAOD,wBAAgB,UAAU,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAMrE;AAQD,wBAAgB,UAAU,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAErE;AAQD,wBAAgB,WAAW,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAEtE"}
1
+ {"version":3,"file":"lifecycle-state.d.ts","sourceRoot":"","sources":["../../src/lib/lifecycle-state.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,UAAU,EACV,WAAW,EACX,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,wCAAwC,CAAC;AAChD,YAAY,EACV,0BAA0B,EAC1B,qBAAqB,GACtB,MAAM,wCAAwC,CAAC"}
@@ -1,70 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SessionOwnerKind = exports.SessionLifecycleState = void 0;
4
- exports.canTransition = canTransition;
5
- exports.isTerminal = isTerminal;
6
- exports.isPausable = isPausable;
7
- exports.isResumable = isResumable;
8
- exports.SessionLifecycleState = {
9
- creating: 'creating',
10
- provisioning: 'provisioning',
11
- active: 'active',
12
- paused: 'paused',
13
- recovering: 'recovering',
14
- completing: 'completing',
15
- completed: 'completed',
16
- failed: 'failed',
17
- archived: 'archived',
18
- };
19
- exports.SessionOwnerKind = {
20
- interactive_session: 'interactive_session',
21
- pipeline_run: 'pipeline_run',
22
- chat_thread: 'chat_thread',
23
- };
24
- const TRANSITIONS = {
25
- creating: new Set([
26
- exports.SessionLifecycleState.provisioning,
27
- exports.SessionLifecycleState.failed,
28
- ]),
29
- provisioning: new Set([
30
- exports.SessionLifecycleState.active,
31
- exports.SessionLifecycleState.failed,
32
- ]),
33
- active: new Set([
34
- exports.SessionLifecycleState.paused,
35
- exports.SessionLifecycleState.completing,
36
- exports.SessionLifecycleState.failed,
37
- ]),
38
- paused: new Set([
39
- exports.SessionLifecycleState.recovering,
40
- exports.SessionLifecycleState.archived,
41
- exports.SessionLifecycleState.failed,
42
- ]),
43
- recovering: new Set([
44
- exports.SessionLifecycleState.active,
45
- exports.SessionLifecycleState.paused,
46
- exports.SessionLifecycleState.failed,
47
- ]),
48
- completing: new Set([
49
- exports.SessionLifecycleState.completed,
50
- exports.SessionLifecycleState.failed,
51
- ]),
52
- completed: new Set([exports.SessionLifecycleState.archived]),
53
- failed: new Set([exports.SessionLifecycleState.archived]),
54
- archived: new Set(),
55
- };
56
- function canTransition(from, to) {
57
- return TRANSITIONS[from].has(to);
58
- }
59
- function isTerminal(state) {
60
- return (state === exports.SessionLifecycleState.completed ||
61
- state === exports.SessionLifecycleState.failed ||
62
- state === exports.SessionLifecycleState.archived);
63
- }
64
- function isPausable(state) {
65
- return state === exports.SessionLifecycleState.active;
66
- }
67
- function isResumable(state) {
68
- return state === exports.SessionLifecycleState.paused;
69
- }
3
+ exports.SessionOwnerKindSchema = exports.SessionLifecycleStateSchema = exports.isResumable = exports.isPausable = exports.isTerminal = exports.canTransition = exports.SessionOwnerKind = exports.SessionLifecycleState = void 0;
4
+ var agent_session_1 = require("@xemahq/kernel-contracts/agent-session");
5
+ Object.defineProperty(exports, "SessionLifecycleState", { enumerable: true, get: function () { return agent_session_1.SessionLifecycleState; } });
6
+ Object.defineProperty(exports, "SessionOwnerKind", { enumerable: true, get: function () { return agent_session_1.SessionOwnerKind; } });
7
+ Object.defineProperty(exports, "canTransition", { enumerable: true, get: function () { return agent_session_1.canTransition; } });
8
+ Object.defineProperty(exports, "isTerminal", { enumerable: true, get: function () { return agent_session_1.isTerminal; } });
9
+ Object.defineProperty(exports, "isPausable", { enumerable: true, get: function () { return agent_session_1.isPausable; } });
10
+ Object.defineProperty(exports, "isResumable", { enumerable: true, get: function () { return agent_session_1.isResumable; } });
11
+ Object.defineProperty(exports, "SessionLifecycleStateSchema", { enumerable: true, get: function () { return agent_session_1.SessionLifecycleStateSchema; } });
12
+ Object.defineProperty(exports, "SessionOwnerKindSchema", { enumerable: true, get: function () { return agent_session_1.SessionOwnerKindSchema; } });
70
13
  //# sourceMappingURL=lifecycle-state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-state.js","sourceRoot":"","sources":["../../src/lib/lifecycle-state.ts"],"names":[],"mappings":";;;AAoGA,sCAKC;AAOD,gCAMC;AAQD,gCAEC;AAQD,kCAEC;AAvHY,QAAA,qBAAqB,GAAG;IACnC,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAeE,QAAA,gBAAgB,GAAG;IAC9B,mBAAmB,EAAE,qBAAqB;IAC1C,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;AAiBX,MAAM,WAAW,GAEb;IACF,QAAQ,EAAE,IAAI,GAAG,CAAC;QAChB,6BAAqB,CAAC,YAAY;QAClC,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,YAAY,EAAE,IAAI,GAAG,CAAC;QACpB,6BAAqB,CAAC,MAAM;QAC5B,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,MAAM,EAAE,IAAI,GAAG,CAAC;QACd,6BAAqB,CAAC,MAAM;QAC5B,6BAAqB,CAAC,UAAU;QAChC,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,MAAM,EAAE,IAAI,GAAG,CAAC;QACd,6BAAqB,CAAC,UAAU;QAChC,6BAAqB,CAAC,QAAQ;QAC9B,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,UAAU,EAAE,IAAI,GAAG,CAAC;QAClB,6BAAqB,CAAC,MAAM;QAC5B,6BAAqB,CAAC,MAAM;QAC5B,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,UAAU,EAAE,IAAI,GAAG,CAAC;QAClB,6BAAqB,CAAC,SAAS;QAC/B,6BAAqB,CAAC,MAAM;KAC7B,CAAC;IACF,SAAS,EAAE,IAAI,GAAG,CAAC,CAAC,6BAAqB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,6BAAqB,CAAC,QAAQ,CAAC,CAAC;IACjD,QAAQ,EAAE,IAAI,GAAG,EAAE;CACpB,CAAC;AAEF,SAAgB,aAAa,CAC3B,IAAgC,EAChC,EAA8B;IAE9B,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC;AAOD,SAAgB,UAAU,CAAC,KAAiC;IAC1D,OAAO,CACL,KAAK,KAAK,6BAAqB,CAAC,SAAS;QACzC,KAAK,KAAK,6BAAqB,CAAC,MAAM;QACtC,KAAK,KAAK,6BAAqB,CAAC,QAAQ,CACzC,CAAC;AACJ,CAAC;AAQD,SAAgB,UAAU,CAAC,KAAiC;IAC1D,OAAO,KAAK,KAAK,6BAAqB,CAAC,MAAM,CAAC;AAChD,CAAC;AAQD,SAAgB,WAAW,CAAC,KAAiC;IAC3D,OAAO,KAAK,KAAK,6BAAqB,CAAC,MAAM,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"lifecycle-state.js","sourceRoot":"","sources":["../../src/lib/lifecycle-state.ts"],"names":[],"mappings":";;;AAgBA,wEASgD;AAR9C,sHAAA,qBAAqB,OAAA;AACrB,iHAAA,gBAAgB,OAAA;AAChB,8GAAA,aAAa,OAAA;AACb,2GAAA,UAAU,OAAA;AACV,2GAAA,UAAU,OAAA;AACV,4GAAA,WAAW,OAAA;AACX,4HAAA,2BAA2B,OAAA;AAC3B,uHAAA,sBAAsB,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/agent-session-runtime",
3
- "version": "0.6.4",
3
+ "version": "0.6.6",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org/",
6
6
  "access": "public"
@@ -35,10 +35,11 @@
35
35
  "prettier": "3.6.2",
36
36
  "ts-jest": "^29.4.9",
37
37
  "typescript": "5.9.3",
38
- "@xemahq/kernel-contracts": "^0.14.0"
38
+ "@xemahq/kernel-contracts": "^0.15.0"
39
39
  },
40
40
  "dependencies": {
41
- "@xemahq/dsl": "^0.5.4"
41
+ "@xemahq/dsl": "^0.5.4",
42
+ "@xemahq/kernel-contracts": "^0.15.0"
42
43
  },
43
44
  "peerDependencies": {
44
45
  "@xemahq/kernel-contracts": ">=0.13.0"
@@ -46,6 +46,7 @@ import {
46
46
  type ManifestPermissions,
47
47
  type ManifestSeedFile,
48
48
  type ManifestSubAgent,
49
+ type ManifestWorkingFile,
49
50
  type WorkspaceManifest as DslWorkspaceManifest,
50
51
  type WorkspaceManifestSpec,
51
52
  } from '@xemahq/dsl/workspace-manifest';
@@ -205,6 +206,22 @@ export interface AgentManifestSource {
205
206
  * `{ tools: { allow: [], deny: [] } }`.
206
207
  */
207
208
  readonly permissions?: CompiledManifestPermissions;
209
+ /**
210
+ * The composition's `workspace.workingFiles` block. Threaded into the
211
+ * reconstructed manifest's `spec.workingFiles` so the compiled manifest —
212
+ * and therefore `context.json.workingFiles` + the write authority on
213
+ * `context.json.authority.mayWriteWorkspace[]` — matches the
214
+ * source-of-truth. Carried as the DSL `ManifestWorkingFile[]` (raw, with
215
+ * `${input.x}` tokens intact); `compileManifest` interpolates them against
216
+ * the bind inputs, exactly like the bundle-apply path's `toBundleWorkingFiles`.
217
+ * `undefined` when the composition declared none — the DSL compile then
218
+ * yields `[]`. (BUG-2 carry-through: authored `spec.workingFiles` were
219
+ * silently dropped on reconstruction, so a Document Buddy session came up
220
+ * with NO bound working file — the agent read `context.json`, saw an empty
221
+ * `workingFiles[]`, and asked the user where to write instead of editing the
222
+ * bound page. Symmetric with the credentials/permissions BUG-1 fix above.)
223
+ */
224
+ readonly workingFiles?: readonly ManifestWorkingFile[];
208
225
  }
209
226
 
210
227
  /**
@@ -325,6 +342,15 @@ export function compileAgentWorkspaceManifest(
325
342
  ...(outputSurface === undefined ? {} : { outputSurface }),
326
343
  ...(credentials === undefined ? {} : { credentials }),
327
344
  ...(permissions === undefined ? {} : { permissions }),
345
+ // Carry the authored working files through to `spec.workingFiles` so the
346
+ // compiled manifest the composer reads (`req.manifest.workingFiles`) binds
347
+ // the document file into `context.json.workingFiles` + narrows write
348
+ // authority. Without this the reconstruction path silently drops them and
349
+ // the agent sees no bound working file. `compileManifest`'s Zod schema
350
+ // re-validates the entries (and interpolates `${input.x}`).
351
+ ...(source.workingFiles && source.workingFiles.length > 0
352
+ ? { workingFiles: source.workingFiles }
353
+ : {}),
328
354
  };
329
355
 
330
356
  const envelope: DslWorkspaceManifest = {
@@ -333,10 +359,19 @@ export function compileAgentWorkspaceManifest(
333
359
  metadata: {
334
360
  slug,
335
361
  version,
336
- // Agents resolved for a session bootstrap are, by definition,
337
- // agent-session compatible — the runtime EnvironmentResolver still
338
- // re-asserts `surfaceCompat` against the AGENT_SESSION surface.
339
- surfaceCompat: [ManifestSurface.AGENT_SESSION],
362
+ // A manifest RECONSTRUCTED from a bare `agentRef` carries no inherent
363
+ // surface restriction — the SAME agent (e.g. `demo-runner`,
364
+ // `requirements-coordinator`) is legitimately driven on BOTH the
365
+ // agent-session surface (interactive bootstrap) AND the workflow surface
366
+ // (pipeline `xema/agent@v1` jobs). Defaulting to AGENT_SESSION only made
367
+ // every workflow agent run fail `assertSurfaceCompat` with
368
+ // "surfaceCompat=[agent-session] but was resolved on 'workflow'". Mirror
369
+ // the DSL compiler's permissive `DEFAULT_SURFACE_COMPAT` ([workflow,
370
+ // agent-session]); the runtime EnvironmentResolver still re-asserts the
371
+ // ACTUAL surface, so widening the reconstructed set cannot let an agent
372
+ // run somewhere its real manifest forbids — an authored manifest that
373
+ // explicitly narrows `surfaceCompat` is parsed via the DSL path, not here.
374
+ surfaceCompat: [ManifestSurface.WORKFLOW, ManifestSurface.AGENT_SESSION],
340
375
  },
341
376
  spec,
342
377
  };
@@ -1,139 +1,30 @@
1
1
  // ═══════════════════════════════════════════════════════════════════════════
2
- // ── Agent-session lifecycle state machine ──
2
+ // ── Agent-session lifecycle state machine — re-export of the kernel SSOT ──
3
3
  //
4
- // Pure enums + transitions. Mirrors the `SessionStatus` enum persisted by
5
- // the agent-session-api service; the worker imports from here (the
6
- // service's persistence-layer enums are not importable across the apps
7
- // boundary).
4
+ // This file is a thin re-export surface. The closed `SessionLifecycleState` /
5
+ // `SessionOwnerKind` value sets, the transition FSM (`canTransition`), and the
6
+ // `isTerminal` / `isPausable` / `isResumable` predicates are the canonical
7
+ // Layer-0 contract owned by `@xemahq/kernel-contracts/agent-session`. The former
8
+ // hand-maintained copy that lived here was collapsed into that single source of
9
+ // truth; this module is retained ONLY so the package's public surface
10
+ // (re-exported from `src/index.ts`) is unchanged.
8
11
  //
9
- // Single source of truth for "can this session be paused right now?".
10
- // Both interactive-session callers AND the workflow-runtime-worker
11
- // dispatch activity consult `canTransition()` before issuing the HTTP
12
- // call so misuse fails fast at compile time rather than as a 409 from
13
- // the service.
12
+ // Prisma cannot import a TS value, so the agent-session-api schema re-declares
13
+ // the same members and CI guards parity
14
+ // (`tooling/boundaries/check-session-enum-parity.mjs`).
14
15
  // ═══════════════════════════════════════════════════════════════════════════
15
16
 
16
- /**
17
- * Lifecycle state of an agent-session row. Mirrors the persisted enum on
18
- * the agent-session-api service. Closed set.
19
- */
20
- export const SessionLifecycleState = {
21
- creating: 'creating',
22
- provisioning: 'provisioning',
23
- active: 'active',
24
- paused: 'paused',
25
- recovering: 'recovering',
26
- completing: 'completing',
27
- completed: 'completed',
28
- failed: 'failed',
29
- archived: 'archived',
30
- } as const;
31
-
32
- export type SessionLifecycleStateValue =
33
- (typeof SessionLifecycleState)[keyof typeof SessionLifecycleState];
34
-
35
- /**
36
- * Who created the session row. Mirrors the persisted `SessionOwnerKind`.
37
- *
38
- * - `interactive_session` — user-facing chat sessions
39
- * - `pipeline_run` — workflow-runtime-worker redraft loop spines
40
- * - `chat_thread` — reserved (no dispatcher today)
41
- *
42
- * The CI enum-parity check verifies this stays in lockstep with the
43
- * persisted enum.
44
- */
45
- export const SessionOwnerKind = {
46
- interactive_session: 'interactive_session',
47
- pipeline_run: 'pipeline_run',
48
- chat_thread: 'chat_thread',
49
- } as const;
50
-
51
- export type SessionOwnerKindValue =
52
- (typeof SessionOwnerKind)[keyof typeof SessionOwnerKind];
53
-
54
- /**
55
- * Per-state transition matrix. `canTransition(from, to)` returns true
56
- * iff the transition is valid.
57
- *
58
- * Notable transitions:
59
- * - `paused → recovering` (resume claim)
60
- * - `recovering → active` (resume success)
61
- * - `recovering → paused` (resume rollback)
62
- * - `active → completing → completed` (terminal success)
63
- * - any-non-terminal → `failed` (terminal failure)
64
- * - `paused | completed | failed → archived` (cleanup sweep)
65
- */
66
- const TRANSITIONS: Readonly<
67
- Record<SessionLifecycleStateValue, ReadonlySet<SessionLifecycleStateValue>>
68
- > = {
69
- creating: new Set([
70
- SessionLifecycleState.provisioning,
71
- SessionLifecycleState.failed,
72
- ]),
73
- provisioning: new Set([
74
- SessionLifecycleState.active,
75
- SessionLifecycleState.failed,
76
- ]),
77
- active: new Set([
78
- SessionLifecycleState.paused,
79
- SessionLifecycleState.completing,
80
- SessionLifecycleState.failed,
81
- ]),
82
- paused: new Set([
83
- SessionLifecycleState.recovering,
84
- SessionLifecycleState.archived,
85
- SessionLifecycleState.failed,
86
- ]),
87
- recovering: new Set([
88
- SessionLifecycleState.active,
89
- SessionLifecycleState.paused,
90
- SessionLifecycleState.failed,
91
- ]),
92
- completing: new Set([
93
- SessionLifecycleState.completed,
94
- SessionLifecycleState.failed,
95
- ]),
96
- completed: new Set([SessionLifecycleState.archived]),
97
- failed: new Set([SessionLifecycleState.archived]),
98
- archived: new Set(),
99
- };
100
-
101
- export function canTransition(
102
- from: SessionLifecycleStateValue,
103
- to: SessionLifecycleStateValue,
104
- ): boolean {
105
- return TRANSITIONS[from].has(to);
106
- }
107
-
108
- /**
109
- * Terminal states — no further transitions possible (except the
110
- * `completed | failed → archived` cleanup sweep). Callers use this to
111
- * short-circuit "is this session done?" checks.
112
- */
113
- export function isTerminal(state: SessionLifecycleStateValue): boolean {
114
- return (
115
- state === SessionLifecycleState.completed ||
116
- state === SessionLifecycleState.failed ||
117
- state === SessionLifecycleState.archived
118
- );
119
- }
120
-
121
- /**
122
- * Pausable states — the session has a live worker that can be told to
123
- * snapshot. `provisioning` is intentionally excluded: the worker isn't
124
- * ready yet, so a pause request would 409. Callers receiving such a
125
- * 409 should retry with backoff once `active` is reached.
126
- */
127
- export function isPausable(state: SessionLifecycleStateValue): boolean {
128
- return state === SessionLifecycleState.active;
129
- }
130
-
131
- /**
132
- * Resumable states. `paused` is the canonical case. `failed` rows are
133
- * NOT resumable from here — they require explicit operator action
134
- * (the resume API would 409). `recovering` is a transient state owned
135
- * by an in-flight resume; another caller observing it should back off.
136
- */
137
- export function isResumable(state: SessionLifecycleStateValue): boolean {
138
- return state === SessionLifecycleState.paused;
139
- }
17
+ export {
18
+ SessionLifecycleState,
19
+ SessionOwnerKind,
20
+ canTransition,
21
+ isTerminal,
22
+ isPausable,
23
+ isResumable,
24
+ SessionLifecycleStateSchema,
25
+ SessionOwnerKindSchema,
26
+ } from '@xemahq/kernel-contracts/agent-session';
27
+ export type {
28
+ SessionLifecycleStateValue,
29
+ SessionOwnerKindValue,
30
+ } from '@xemahq/kernel-contracts/agent-session';
@@ -1,43 +0,0 @@
1
- import { type ModelRef, type NodeOverlayFragment, type SubAgentBinding } from '@xemahq/kernel-contracts/workflow';
2
- import type { ResolvedAgent, ResolvedAgentNode } from '@xemahq/kernel-contracts/agent-composition';
3
- import type { PermissionMap } from '@xemahq/kernel-contracts/agent-permission';
4
- import { type ToolSelectionEntry } from '@xemahq/kernel-contracts/mcp-tool';
5
- export declare class AgentResolutionError extends Error {
6
- constructor(context: string, detail: string);
7
- }
8
- export interface FlattenedAgentNode {
9
- readonly slug: string;
10
- readonly alias?: string;
11
- readonly modelOverride?: ModelRef;
12
- readonly instructions?: string;
13
- readonly permission?: PermissionMap;
14
- }
15
- export interface CollectScopeOptions {
16
- readonly scope?: 'tree' | 'root';
17
- }
18
- export interface RuntimeAgentConfig {
19
- readonly agentRef: string;
20
- readonly primaryAgentSlug: string;
21
- readonly primaryInstructions: string | null;
22
- readonly primaryPermission: PermissionMap | null;
23
- readonly primaryModelOverride: ModelRef | null;
24
- readonly subAgentBindings: readonly SubAgentBinding[];
25
- readonly subAgentInstructionsBySlug: Readonly<Record<string, string>>;
26
- readonly subAgentPermissionBySlug: Readonly<Record<string, PermissionMap>>;
27
- readonly subAgentModelOverridesBySlug: Readonly<Record<string, ModelRef>>;
28
- readonly defaultSkillSlugs: readonly string[];
29
- readonly allSkillSlugs: readonly string[];
30
- readonly defaultToolSelection: readonly ToolSelectionEntry[];
31
- }
32
- export declare function flattenAgentTree(root: ResolvedAgentNode): readonly FlattenedAgentNode[];
33
- export declare function collectSkills(root: ResolvedAgentNode, opts?: CollectScopeOptions): readonly string[];
34
- export declare function collectTools(root: ResolvedAgentNode, opts?: CollectScopeOptions): readonly ToolSelectionEntry[];
35
- export declare function collectInstructionsBySlug(root: ResolvedAgentNode): Readonly<Record<string, string>>;
36
- export declare function collectPermissionsBySlug(root: ResolvedAgentNode): Readonly<Record<string, PermissionMap>>;
37
- export declare function collectModelOverridesBySlug(root: ResolvedAgentNode): Readonly<Record<string, ModelRef>>;
38
- export declare function appendInstructions(baseSystemPrompt: string, nodeInstructions: string | null): string;
39
- export declare function normalizeInstructions(raw: string | undefined): string | null;
40
- export declare function normalizePermission(raw: PermissionMap | undefined): PermissionMap | null;
41
- export declare function projectModelOverride(raw: ModelRef | undefined, context: string): ModelRef | null;
42
- export declare function projectAgentToRuntimeConfig(resolved: ResolvedAgent, overlay?: NodeOverlayFragment): RuntimeAgentConfig;
43
- //# sourceMappingURL=composition-resolution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composition-resolution.d.ts","sourceRoot":"","sources":["../../src/lib/composition-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,236 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentResolutionError = void 0;
4
- exports.flattenAgentTree = flattenAgentTree;
5
- exports.collectSkills = collectSkills;
6
- exports.collectTools = collectTools;
7
- exports.collectInstructionsBySlug = collectInstructionsBySlug;
8
- exports.collectPermissionsBySlug = collectPermissionsBySlug;
9
- exports.collectModelOverridesBySlug = collectModelOverridesBySlug;
10
- exports.appendInstructions = appendInstructions;
11
- exports.normalizeInstructions = normalizeInstructions;
12
- exports.normalizePermission = normalizePermission;
13
- exports.projectModelOverride = projectModelOverride;
14
- exports.projectAgentToRuntimeConfig = projectAgentToRuntimeConfig;
15
- const workflow_1 = require("@xemahq/kernel-contracts/workflow");
16
- const mcp_tool_1 = require("@xemahq/kernel-contracts/mcp-tool");
17
- class AgentResolutionError extends Error {
18
- constructor(context, detail) {
19
- super(`Agent resolution failed for "${context}": ${detail}`);
20
- this.name = 'AgentResolutionError';
21
- }
22
- }
23
- exports.AgentResolutionError = AgentResolutionError;
24
- function flattenAgentTree(root) {
25
- const seen = new Set();
26
- const out = [];
27
- const visit = (node) => {
28
- for (const child of node.children) {
29
- const slug = child.kernel.slug;
30
- if (slug.length === 0) {
31
- continue;
32
- }
33
- if (!seen.has(slug)) {
34
- seen.add(slug);
35
- out.push({
36
- slug,
37
- ...(child.alias ? { alias: child.alias } : {}),
38
- ...(child.modelOverride
39
- ? { modelOverride: child.modelOverride }
40
- : {}),
41
- ...(child.instructions ? { instructions: child.instructions } : {}),
42
- ...(child.permission ? { permission: child.permission } : {}),
43
- });
44
- }
45
- visit(child);
46
- }
47
- };
48
- visit(root);
49
- return out;
50
- }
51
- function collectSkills(root, opts) {
52
- const scope = opts?.scope ?? 'tree';
53
- const seen = new Set();
54
- const out = [];
55
- const addNode = (node) => {
56
- for (const slug of projectSkillSlugs(node.skills)) {
57
- if (!seen.has(slug)) {
58
- seen.add(slug);
59
- out.push(slug);
60
- }
61
- }
62
- };
63
- addNode(root);
64
- if (scope === 'tree') {
65
- const visit = (node) => {
66
- for (const child of node.children) {
67
- addNode(child);
68
- visit(child);
69
- }
70
- };
71
- visit(root);
72
- }
73
- return out;
74
- }
75
- function collectTools(root, opts) {
76
- const scope = opts?.scope ?? 'root';
77
- const ctx = root.kernel.slug;
78
- if (scope === 'root') {
79
- return projectToolSelection(root.tools, ctx);
80
- }
81
- const out = [...projectToolSelection(root.tools, ctx)];
82
- const visit = (node) => {
83
- for (const child of node.children) {
84
- out.push(...projectToolSelection(child.tools, child.kernel.slug));
85
- visit(child);
86
- }
87
- };
88
- visit(root);
89
- return out;
90
- }
91
- function collectInstructionsBySlug(root) {
92
- return collectDescendantOverlay(root, (child) => normalizeInstructions(child.instructions));
93
- }
94
- function collectPermissionsBySlug(root) {
95
- return collectDescendantOverlay(root, (child) => normalizePermission(child.permission));
96
- }
97
- function collectModelOverridesBySlug(root) {
98
- return collectDescendantOverlay(root, (child) => projectModelOverride(child.modelOverride, child.kernel.slug));
99
- }
100
- function collectDescendantOverlay(root, project) {
101
- const out = {};
102
- const seen = new Set();
103
- const visit = (node) => {
104
- for (const child of node.children) {
105
- const slug = child.kernel.slug;
106
- if (slug.length === 0) {
107
- continue;
108
- }
109
- if (!seen.has(slug)) {
110
- seen.add(slug);
111
- const value = project(child);
112
- if (value !== null) {
113
- out[slug] = value;
114
- }
115
- }
116
- visit(child);
117
- }
118
- };
119
- visit(root);
120
- return out;
121
- }
122
- function appendInstructions(baseSystemPrompt, nodeInstructions) {
123
- const trimmed = nodeInstructions === null ? '' : nodeInstructions.trim();
124
- if (trimmed.length === 0) {
125
- return baseSystemPrompt;
126
- }
127
- if (baseSystemPrompt.length === 0) {
128
- return trimmed;
129
- }
130
- return `${baseSystemPrompt}\n\n${trimmed}`;
131
- }
132
- function normalizeInstructions(raw) {
133
- if (typeof raw !== 'string') {
134
- return null;
135
- }
136
- const trimmed = raw.trim();
137
- return trimmed.length > 0 ? trimmed : null;
138
- }
139
- function normalizePermission(raw) {
140
- if (!raw || typeof raw !== 'object' || Object.keys(raw).length === 0) {
141
- return null;
142
- }
143
- return raw;
144
- }
145
- function projectModelOverride(raw, context) {
146
- if (raw === undefined) {
147
- return null;
148
- }
149
- if (raw.kind === workflow_1.ModelRefKind.CONCRETE) {
150
- if (typeof raw.modelId !== 'string' || raw.modelId.trim().length === 0) {
151
- throw new AgentResolutionError(context, 'concrete modelOverride is missing a modelId');
152
- }
153
- return raw;
154
- }
155
- const modelClass = raw.modelClass;
156
- if (modelClass === undefined ||
157
- !workflow_1.MODEL_CLASS_VALUES.includes(modelClass)) {
158
- throw new AgentResolutionError(context, `strategy modelOverride.modelClass must be one of ${workflow_1.MODEL_CLASS_VALUES.join(', ')}`);
159
- }
160
- return raw;
161
- }
162
- function projectSkillSlugs(skills) {
163
- if (!Array.isArray(skills)) {
164
- return [];
165
- }
166
- return skills
167
- .map((s) => s.slug)
168
- .filter((slug) => typeof slug === 'string' && slug.length > 0);
169
- }
170
- function projectToolSelection(tools, context) {
171
- if (!Array.isArray(tools)) {
172
- return [];
173
- }
174
- const validKinds = new Set(Object.values(mcp_tool_1.ToolProviderKind));
175
- const out = [];
176
- for (const [idx, tool] of tools.entries()) {
177
- if (typeof tool.providerKind !== 'string' ||
178
- !validKinds.has(tool.providerKind)) {
179
- throw new AgentResolutionError(context, `tools[${idx}].providerKind must be one of ${Object.values(mcp_tool_1.ToolProviderKind).join(', ')}`);
180
- }
181
- if (typeof tool.resourceId !== 'string' ||
182
- tool.resourceId.trim().length === 0) {
183
- throw new AgentResolutionError(context, `tools[${idx}].resourceId must be a non-empty string`);
184
- }
185
- if (tool.kind === 'provider') {
186
- out.push({
187
- kind: 'provider',
188
- providerKind: tool.providerKind,
189
- resourceId: tool.resourceId,
190
- });
191
- }
192
- else if (tool.kind === 'tool') {
193
- if (typeof tool.toolName !== 'string' ||
194
- tool.toolName.trim().length === 0) {
195
- throw new AgentResolutionError(context, `tools[${idx}].toolName must be a non-empty string for kind='tool'`);
196
- }
197
- out.push({
198
- kind: 'tool',
199
- providerKind: tool.providerKind,
200
- resourceId: tool.resourceId,
201
- toolName: tool.toolName,
202
- });
203
- }
204
- else {
205
- throw new AgentResolutionError(context, `tools[${idx}].kind must be "provider" or "tool"`);
206
- }
207
- }
208
- return out;
209
- }
210
- function projectAgentToRuntimeConfig(resolved, overlay) {
211
- const root = resolved.root;
212
- const agentRef = `${resolved.slug}@${resolved.version}`;
213
- const rootInstructions = normalizeInstructions(root.instructions);
214
- const overlayInstructions = normalizeInstructions(overlay?.instructions);
215
- const primaryInstructions = appendInstructions(rootInstructions ?? '', overlayInstructions);
216
- const rootModelOverride = projectModelOverride(root.modelOverride, agentRef);
217
- const overlayModelOverride = projectModelOverride(overlay?.modelOverride, `${agentRef}#overlay`);
218
- const rootPermission = normalizePermission(root.permission);
219
- const overlayPermission = normalizePermission(overlay?.permission);
220
- const flattened = flattenAgentTree(root);
221
- return {
222
- agentRef,
223
- primaryAgentSlug: root.kernel.slug,
224
- primaryInstructions: primaryInstructions.length > 0 ? primaryInstructions : null,
225
- primaryPermission: overlayPermission ?? rootPermission,
226
- primaryModelOverride: overlayModelOverride ?? rootModelOverride,
227
- subAgentBindings: flattened.map((n) => ({ ...n })),
228
- subAgentInstructionsBySlug: collectInstructionsBySlug(root),
229
- subAgentPermissionBySlug: collectPermissionsBySlug(root),
230
- subAgentModelOverridesBySlug: collectModelOverridesBySlug(root),
231
- defaultSkillSlugs: collectSkills(root, { scope: 'root' }),
232
- allSkillSlugs: collectSkills(root, { scope: 'tree' }),
233
- defaultToolSelection: collectTools(root, { scope: 'root' }),
234
- };
235
- }
236
- //# sourceMappingURL=composition-resolution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composition-resolution.js","sourceRoot":"","sources":["../../src/lib/composition-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- import { type CompiledManifestCredential, type CompiledManifestPermissions, type ModelRef } from '@xemahq/kernel-contracts/workflow';
2
- import type { PermissionMap } from '@xemahq/kernel-contracts/agent-permission';
3
- import { type CompiledWorkspaceManifest } from '@xemahq/dsl/workspace-manifest';
4
- export type { CompiledWorkspaceManifest };
5
- export declare class AgentMountLayoutError extends Error {
6
- constructor(agentRef: string, detail: string);
7
- }
8
- export interface AgentRunConfigInput {
9
- readonly stage: string;
10
- readonly role: string;
11
- readonly deliverableSpecRef?: string;
12
- }
13
- export interface AgentMountLayoutInput {
14
- readonly mounts: Readonly<Record<string, unknown>>;
15
- readonly agentRunConfig: AgentRunConfigInput;
16
- readonly seedFiles: readonly unknown[];
17
- readonly inputs: Readonly<Record<string, unknown>>;
18
- }
19
- export interface AgentSubAgentBindingInput {
20
- readonly slug: string;
21
- readonly alias?: string;
22
- readonly modelOverride?: ModelRef;
23
- readonly instructions?: string;
24
- readonly permission?: PermissionMap;
25
- }
26
- export interface AgentOutputSurfaceInput {
27
- readonly kind: 'none' | 'web' | 'static' | 'app' | 'tunnel';
28
- readonly port?: number;
29
- readonly healthPath?: string;
30
- readonly autoOpen?: boolean;
31
- readonly mode?: 'single' | 'multi';
32
- readonly root?: string;
33
- readonly defaultDocument?: string;
34
- }
35
- export interface AgentManifestSource {
36
- readonly agentRef: string;
37
- readonly primaryAgentSlug: string;
38
- readonly subAgentBindings: readonly AgentSubAgentBindingInput[];
39
- readonly mountLayout: AgentMountLayoutInput | undefined;
40
- readonly outputSurface?: AgentOutputSurfaceInput;
41
- readonly credentials?: readonly CompiledManifestCredential[];
42
- readonly permissions?: CompiledManifestPermissions;
43
- }
44
- export interface AgentManifestImplicitInputs {
45
- readonly orgId: string;
46
- readonly projectId: string;
47
- readonly sessionId?: string;
48
- }
49
- export declare function compileAgentWorkspaceManifest(source: AgentManifestSource, bindInputs: Readonly<Record<string, unknown>>): CompiledWorkspaceManifest;
50
- export declare function buildAgentManifestBindInputs(source: AgentManifestSource, explicitInputs: Record<string, unknown> | null, implicitInputs: AgentManifestImplicitInputs): Readonly<Record<string, unknown>>;
51
- //# sourceMappingURL=composition-workspace-manifest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composition-workspace-manifest.d.ts","sourceRoot":"","sources":["../../src/lib/composition-workspace-manifest.ts"],"names":[],"mappings":"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"}
@@ -1,178 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentMountLayoutError = void 0;
4
- exports.compileAgentWorkspaceManifest = compileAgentWorkspaceManifest;
5
- exports.buildAgentManifestBindInputs = buildAgentManifestBindInputs;
6
- const workflow_1 = require("@xemahq/kernel-contracts/workflow");
7
- const workspace_manifest_1 = require("@xemahq/dsl/workspace-manifest");
8
- class AgentMountLayoutError extends Error {
9
- constructor(agentRef, detail) {
10
- super(`Cannot derive a workspace mount layout from Agent ` +
11
- `"${agentRef}": ${detail}`);
12
- this.name = 'AgentMountLayoutError';
13
- }
14
- }
15
- exports.AgentMountLayoutError = AgentMountLayoutError;
16
- function compileAgentWorkspaceManifest(source, bindInputs) {
17
- const mountLayout = source.mountLayout;
18
- if (!mountLayout) {
19
- throw new AgentMountLayoutError(source.agentRef, 'the composition declares no `workspace.mountLayout` block — its ' +
20
- 'source workspace manifest was not projected by the llm-registry-api ' +
21
- 'composition seeder. Re-seed compositions (boot llm-registry-api) or ' +
22
- 'fix the source manifest.');
23
- }
24
- const [slug, version] = splitAgentRef(source.agentRef);
25
- const subAgents = source.subAgentBindings.map((binding) => ({
26
- slug: binding.slug,
27
- ...(binding.alias !== undefined ? { alias: binding.alias } : {}),
28
- ...(binding.modelOverride !== undefined
29
- ? { defaultModel: binding.modelOverride }
30
- : {}),
31
- ...(binding.instructions !== undefined
32
- ? { instructions: binding.instructions }
33
- : {}),
34
- ...(binding.permission !== undefined
35
- ? { permission: binding.permission }
36
- : {}),
37
- }));
38
- const outputSurface = projectOutputSurface(source.outputSurface);
39
- const credentials = projectCredentials(source.credentials);
40
- const permissions = projectPermissions(source.permissions);
41
- const spec = {
42
- mounts: mountLayout.mounts,
43
- agent: {
44
- slug: source.primaryAgentSlug,
45
- stage: mountLayout.agentRunConfig.stage,
46
- role: mountLayout.agentRunConfig.role,
47
- ...(mountLayout.agentRunConfig.deliverableSpecRef !== undefined
48
- ? { deliverableSpecRef: mountLayout.agentRunConfig.deliverableSpecRef }
49
- : {}),
50
- ...(subAgents.length > 0 ? { subAgents } : {}),
51
- },
52
- ...(Object.keys(mountLayout.inputs).length > 0
53
- ? {
54
- inputs: mountLayout.inputs,
55
- }
56
- : {}),
57
- ...(mountLayout.seedFiles.length > 0
58
- ? {
59
- seedFiles: mountLayout.seedFiles,
60
- }
61
- : {}),
62
- ...(outputSurface === undefined ? {} : { outputSurface }),
63
- ...(credentials === undefined ? {} : { credentials }),
64
- ...(permissions === undefined ? {} : { permissions }),
65
- };
66
- const envelope = {
67
- apiVersion: 'xema.dev/workspace/v1',
68
- kind: 'WorkspaceManifest',
69
- metadata: {
70
- slug,
71
- version,
72
- surfaceCompat: [workflow_1.ManifestSurface.AGENT_SESSION],
73
- },
74
- spec,
75
- };
76
- const result = (0, workspace_manifest_1.compileManifest)(envelope, bindInputs);
77
- if (!result.ok) {
78
- throw new AgentMountLayoutError(source.agentRef, `reconstructed manifest failed to compile: ${result.errors
79
- .map((e) => `${e.path}: ${e.message}`)
80
- .join('; ')}`);
81
- }
82
- return result.compiled;
83
- }
84
- function projectOutputSurface(surface) {
85
- if (!surface)
86
- return undefined;
87
- return {
88
- kind: surface.kind,
89
- ...(surface.port === undefined ? {} : { port: surface.port }),
90
- ...(surface.healthPath === undefined
91
- ? {}
92
- : { healthPath: surface.healthPath }),
93
- ...(surface.autoOpen === undefined ? {} : { autoOpen: surface.autoOpen }),
94
- ...(surface.mode === undefined ? {} : { mode: surface.mode }),
95
- ...(surface.root === undefined ? {} : { root: surface.root }),
96
- ...(surface.defaultDocument === undefined
97
- ? {}
98
- : { defaultDocument: surface.defaultDocument }),
99
- };
100
- }
101
- function projectCredentials(credentials) {
102
- if (credentials === undefined)
103
- return undefined;
104
- return credentials.map((credential) => ({
105
- name: credential.name,
106
- kind: credential.kind,
107
- sourceRef: credential.sourceRef,
108
- required: credential.required,
109
- }));
110
- }
111
- function projectPermissions(permissions) {
112
- if (permissions === undefined)
113
- return undefined;
114
- return {
115
- tools: {
116
- allow: permissions.tools.allow,
117
- deny: permissions.tools.deny,
118
- },
119
- };
120
- }
121
- function buildAgentManifestBindInputs(source, explicitInputs, implicitInputs) {
122
- const declared = new Set(Object.keys(source.mountLayout?.inputs ?? {}));
123
- if (declared.size === 0) {
124
- return {};
125
- }
126
- if (explicitInputs !== null &&
127
- (typeof explicitInputs !== 'object' || Array.isArray(explicitInputs))) {
128
- throw new AgentMountLayoutError(source.agentRef, 'explicit manifest inputs must be an object when provided');
129
- }
130
- const explicit = explicitInputs ?? {};
131
- for (const [key, value] of Object.entries(explicit)) {
132
- if (!declared.has(key)) {
133
- throw new AgentMountLayoutError(source.agentRef, `manifest inputs contain undeclared key "${key}"`);
134
- }
135
- assertManifestInputValue(source.agentRef, key, value);
136
- }
137
- const implicit = {
138
- orgId: implicitInputs.orgId,
139
- projectId: implicitInputs.projectId,
140
- ...(implicitInputs.sessionId !== undefined
141
- ? { sessionId: implicitInputs.sessionId }
142
- : {}),
143
- };
144
- const out = {};
145
- for (const key of declared) {
146
- if (Object.hasOwn(explicit, key)) {
147
- out[key] = explicit[key];
148
- continue;
149
- }
150
- if (Object.hasOwn(implicit, key)) {
151
- out[key] = implicit[key];
152
- }
153
- }
154
- return out;
155
- }
156
- function splitAgentRef(ref) {
157
- const at = ref.lastIndexOf('@');
158
- if (at <= 0 || at === ref.length - 1) {
159
- throw new AgentMountLayoutError(ref, 'expected a version-pinned `slug@version` composition ref — the ' +
160
- 'session resolver always pins the resolved version');
161
- }
162
- return [ref.slice(0, at), ref.slice(at + 1)];
163
- }
164
- function assertManifestInputValue(agentRef, key, value) {
165
- if (value !== null &&
166
- typeof value !== 'string' &&
167
- typeof value !== 'number' &&
168
- typeof value !== 'boolean' &&
169
- !Array.isArray(value)) {
170
- throw new AgentMountLayoutError(agentRef, `manifest input "${key}" must be a primitive ` +
171
- `(string, number, boolean, string[]) — got ${typeof value}`);
172
- }
173
- if (Array.isArray(value) &&
174
- !value.every((entry) => typeof entry === 'string')) {
175
- throw new AgentMountLayoutError(agentRef, `manifest input "${key}" is an array — every element must be a string`);
176
- }
177
- }
178
- //# sourceMappingURL=composition-workspace-manifest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composition-workspace-manifest.js","sourceRoot":"","sources":["../../src/lib/composition-workspace-manifest.ts"],"names":[],"mappings":"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"}