skillscript-runtime 0.16.7 → 0.16.9

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 +1 @@
1
- {"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAW,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,qBAAa,2BAA4B,SAAQ,KAAK;aACxB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;aAAkB,KAAK,EAAE,MAAM;gBAA3D,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAkB,KAAK,EAAE,MAAM;CAOxF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;aAC7B,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAI9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4FAA4F;IAC5F,GAAG,EAAE,cAAc,CAAC;IACpB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CACjE;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAgE7B;AAUD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAkC7B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAsB7B"}
1
+ {"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAW,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,qBAAa,2BAA4B,SAAQ,KAAK;aACxB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;aAAkB,KAAK,EAAE,MAAM;gBAA3D,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAkB,KAAK,EAAE,MAAM;CAOxF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;aAC7B,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAI9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4FAA4F;IAC5F,GAAG,EAAE,cAAc,CAAC;IACpB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CACjE;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAwE7B;AAUD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAkC7B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAsB7B"}
@@ -84,11 +84,19 @@ export async function executeSkillByName(skillName, inputs, opts) {
84
84
  // the middle per the audit footnote
85
85
  // - Otherwise, parent IS the entry; child inherits parent's
86
86
  // `_currentSkillName` as its entrySkillName
87
+ //
88
+ // v0.16.9 — identity follows the skill. Override `agentId` from the
89
+ // CHILD skill's `metadata.author`. Per Perry's `fd18e3f7` cross-author
90
+ // ack: when parent A (Alice) composes child B (Bob), B runs under Bob's
91
+ // identity — NOT Alice's. Same invariant for every skill run:
92
+ // `ctx.agentId = skill.author`. v0.17+ adds dual-identity for the
93
+ // delegation case (Alice on-behalf-of-Bob).
87
94
  const childCtx = {
88
95
  ...ctx,
89
96
  recursionDepth: depth,
90
97
  maxRecursionDepth: limit,
91
98
  entrySkillName: ctx.entrySkillName ?? ctx._currentSkillName,
99
+ ...(loaded.metadata.author !== undefined ? { agentId: loaded.metadata.author } : {}),
92
100
  };
93
101
  const result = await execute(compiled.parsed, compiled.resolvedVariables, compiled.targetOrder, childCtx);
94
102
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"composition.js","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"composition.js","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,43 @@ export interface HttpMcpConfig {
7
7
  * identity (`X-Agent-ID: ...`), etc. Passed verbatim on every request.
8
8
  */
9
9
  headers?: Record<string, string>;
10
+ /**
11
+ * v0.16.8 — adopter-configurable per-call identity header name. When
12
+ * set, `call(toolName, args, ctx)` reads `ctx.agentId` and emits this
13
+ * header per call (e.g., `identityHeader: "X-Agent-ID"` → requests
14
+ * carry `X-Agent-ID: <ctx.agentId>` when ctx is supplied). When the
15
+ * header value would be empty (no ctx, no agentId), the header is
16
+ * omitted — falls through to `headers` static defaults.
17
+ *
18
+ * Default `undefined` — no per-call identity threading. Adopters
19
+ * configure per their substrate's auth convention; no substrate-
20
+ * specific defaults are bundled (substrate-neutrality).
21
+ *
22
+ * **Critical caveat — substrate behavior gates effectiveness:**
23
+ *
24
+ * Per-call identity headers achieve end-to-end propagation ONLY
25
+ * against substrates that DON'T pin sessions per-identity. Substrates
26
+ * with session pinning (current default for many MCP servers including
27
+ * Streamable HTTP servers that establish identity at session-init)
28
+ * look at the session's identity, not the per-call header. Within a
29
+ * pinned session, swapping the header per call is a no-op against
30
+ * such substrates.
31
+ *
32
+ * Real end-to-end propagation against session-pinning substrates
33
+ * needs **per-identity session keying** — a connection pool where
34
+ * each distinct `ctx.agentId` gets its own session. That's target
35
+ * for a later ring; warm-adopter's prototype demonstrates the shape
36
+ * (~40 LOC over the existing client) and validates it against live
37
+ * AMP.
38
+ *
39
+ * Today's `supports_identity_propagation: false` declaration in
40
+ * `staticCapabilities()` reflects this honestly: the connector reads
41
+ * ctx and emits the header (Level 1 contract), but end-to-end
42
+ * propagation (Level 2) isn't guaranteed against session-pinning
43
+ * substrates. The flag flips true when per-identity session keying
44
+ * lands.
45
+ */
46
+ identityHeader?: string;
10
47
  /**
11
48
  * Client-identity strings echoed in the `initialize` handshake. The
12
49
  * server may surface these in audit logs. Defaults to
@@ -21,6 +58,20 @@ export interface HttpMcpConfig {
21
58
  * requires a different protocol version.
22
59
  */
23
60
  protocolVersion?: string;
61
+ /**
62
+ * v0.16.9 — maximum number of cached per-identity sessions. When the
63
+ * pool reaches this size, the least-recently-used entry is evicted to
64
+ * make room for a new identity's session. Default `undefined` =
65
+ * unlimited (suitable for adopters with bounded identity cardinality;
66
+ * adopters with per-end-user dispatch should configure this to prevent
67
+ * unbounded memory growth).
68
+ *
69
+ * Production-hardening note: idle-timeout eviction + connection
70
+ * healthcheck are explicit v0.17+ targets. Current impl evicts only on
71
+ * pool-size pressure; sessions are kept alive indefinitely while the
72
+ * pool has room.
73
+ */
74
+ maxPoolSize?: number;
24
75
  }
25
76
  /**
26
77
  * Streamable HTTP MCP connector. Implements McpConnector against any
@@ -29,12 +80,12 @@ export interface HttpMcpConfig {
29
80
  export declare class HttpMcpConnector implements McpConnector {
30
81
  private readonly endpoint;
31
82
  private readonly baseHeaders;
83
+ private readonly identityHeader;
32
84
  private readonly clientName;
33
85
  private readonly clientVersion;
34
86
  private readonly protocolVersion;
35
- private sessionId;
36
- private initializing;
37
- private cachedTools;
87
+ private readonly maxPoolSize;
88
+ private readonly sessions;
38
89
  constructor(config: HttpMcpConfig);
39
90
  static staticCapabilities(): McpConnectorCapabilities;
40
91
  /**
@@ -50,13 +101,32 @@ export declare class HttpMcpConnector implements McpConnector {
50
101
  */
51
102
  static fromConfig(config: Record<string, unknown>): HttpMcpConnector;
52
103
  manifest(): Promise<ManifestInfo<"mcp_connector">>;
53
- call(toolName: string, args: Record<string, unknown>, _ctx?: McpDispatchCtx): Promise<unknown>;
104
+ call(toolName: string, args: Record<string, unknown>, ctx?: McpDispatchCtx): Promise<unknown>;
105
+ /**
106
+ * Dispatch with bounded-at-1 retry on session-mismatch. When the
107
+ * substrate returns HTTP >= 400 (likely session-not-found / stale),
108
+ * evict the pool entry, re-init, and retry once. Per Perry's
109
+ * `33fefa0f` impl-nit on retry-bounding. Persistent server errors
110
+ * after retry surface to the caller as the second-attempt failure.
111
+ */
112
+ private dispatchWithRetry;
113
+ private listToolsForEntry;
114
+ /**
115
+ * Pool entry get-or-create. Bumps to MRU position on access (Map insert
116
+ * order = LRU order; delete + re-set moves to end). Evicts oldest if
117
+ * pool would exceed `maxPoolSize`.
118
+ *
119
+ * Documented gap (v0.17 hardening target): no time-based eviction;
120
+ * sessions kept alive indefinitely while pool has room. Long-running
121
+ * adopters with high identity cardinality should configure
122
+ * `maxPoolSize`. Substrates that silently kill idle sessions without
123
+ * surfacing an error need adopter-side healthcheck wiring.
124
+ */
125
+ private getOrCreateEntry;
54
126
  /**
55
- * Discover the server's tool surface via `tools/list`. Result is cached
56
- * for subsequent `manifest()` calls; first dispatch may pay the
57
- * round-trip cost.
127
+ * Evict + recreate a pool entry. Used by the stale-session retry path.
58
128
  */
59
- private listTools;
129
+ private recreateEntry;
60
130
  private ensureSession;
61
131
  private post;
62
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http-mcp.d.ts","sourceRoot":"","sources":["../../src/connectors/http-mcp.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,YAAY,EACb,MAAM,YAAY,CAAC;AAMpB,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAQD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,WAAW,CAAyB;gBAEhC,MAAM,EAAE,aAAa;IAWjC,MAAM,CAAC,kBAAkB,IAAI,wBAAwB;IAarD;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,EAAE,GAAG,IAAI;IAIrC;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB;IAqB9D,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAqBlD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAuBpG;;;;OAIG;YACW,SAAS;YAcT,aAAa;YA0Bb,IAAI;CAkBnB"}
1
+ {"version":3,"file":"http-mcp.d.ts","sourceRoot":"","sources":["../../src/connectors/http-mcp.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,YAAY,EACb,MAAM,YAAY,CAAC;AAMpB,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA0BD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAIjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;gBAErD,MAAM,EAAE,aAAa;IAgBjC,MAAM,CAAC,kBAAkB,IAAI,wBAAwB;IAsBrD;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,EAAE,GAAG,IAAI;IAIrC;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB;IAuB9D,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAyBlD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCnG;;;;;;OAMG;YACW,iBAAiB;YA0BjB,iBAAiB;IAc/B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;OAEG;IACH,OAAO,CAAC,aAAa;YAKP,aAAa;YA2Bb,IAAI;CAwCnB"}
@@ -42,6 +42,7 @@ import { RUNTIME_VERSION } from "../version.js";
42
42
  const CONTRACT_VERSION = "1.0.0";
43
43
  const DEFAULT_CLIENT_NAME = "skillscript-runtime-http-mcp";
44
44
  const DEFAULT_PROTOCOL_VERSION = "2025-06-18";
45
+ const DEFAULT_IDENTITY_KEY = "<default>";
45
46
  /**
46
47
  * Streamable HTTP MCP connector. Implements McpConnector against any
47
48
  * MCP server speaking the spec over HTTP. See module docstring.
@@ -49,21 +50,29 @@ const DEFAULT_PROTOCOL_VERSION = "2025-06-18";
49
50
  export class HttpMcpConnector {
50
51
  endpoint;
51
52
  baseHeaders;
53
+ identityHeader;
52
54
  clientName;
53
55
  clientVersion;
54
56
  protocolVersion;
55
- sessionId = null;
56
- initializing = null;
57
- cachedTools = null;
57
+ maxPoolSize;
58
+ // v0.16.9 — per-identity session pool. Map preserves insertion order;
59
+ // bump-on-access (delete + re-set) gives free LRU ordering when pool
60
+ // size hits `maxPoolSize`.
61
+ sessions = new Map();
58
62
  constructor(config) {
59
63
  if (typeof config.endpoint !== "string" || config.endpoint === "") {
60
64
  throw new Error("HttpMcpConnector: `endpoint` (string, non-empty) required");
61
65
  }
66
+ if (config.maxPoolSize !== undefined && (typeof config.maxPoolSize !== "number" || config.maxPoolSize < 1 || !Number.isInteger(config.maxPoolSize))) {
67
+ throw new Error("HttpMcpConnector: `maxPoolSize` (if set) must be a positive integer");
68
+ }
62
69
  this.endpoint = config.endpoint;
63
70
  this.baseHeaders = { ...(config.headers ?? {}) };
71
+ this.identityHeader = config.identityHeader;
64
72
  this.clientName = config.clientName ?? DEFAULT_CLIENT_NAME;
65
73
  this.clientVersion = config.clientVersion ?? RUNTIME_VERSION;
66
74
  this.protocolVersion = config.protocolVersion ?? DEFAULT_PROTOCOL_VERSION;
75
+ this.maxPoolSize = config.maxPoolSize;
67
76
  }
68
77
  static staticCapabilities() {
69
78
  return {
@@ -71,6 +80,15 @@ export class HttpMcpConnector {
71
80
  implementation: "HttpMcpConnector",
72
81
  contract_version: CONTRACT_VERSION,
73
82
  features: {
83
+ // v0.16.9 — flag flips to true. Per-identity session keying lands
84
+ // in this ring (lifted + generalized from warm-adopter's
85
+ // IdentityAwareAmpConnector reference impl). Each distinct
86
+ // `ctx.agentId` gets its own session, pinned to that identity at
87
+ // server-side `initialize` time. Both Level 1 (identity reaches
88
+ // transport) AND Level 2 (distinct ctx → distinct substrate scope)
89
+ // achieved against session-pinning substrates including AMP.
90
+ // Adopter gates the claim via RuntimeCapabilitiesConformance
91
+ // probe (v0.16.9 item 3).
74
92
  supports_identity_propagation: true,
75
93
  supports_streaming_responses: false,
76
94
  supports_batch: false,
@@ -102,20 +120,26 @@ export class HttpMcpConnector {
102
120
  const clientName = config["clientName"];
103
121
  const clientVersion = config["clientVersion"];
104
122
  const protocolVersion = config["protocolVersion"];
123
+ const identityHeader = config["identityHeader"];
105
124
  return new HttpMcpConnector({
106
125
  endpoint,
107
126
  ...(headers !== undefined ? { headers: headers } : {}),
108
127
  ...(typeof clientName === "string" ? { clientName } : {}),
109
128
  ...(typeof clientVersion === "string" ? { clientVersion } : {}),
110
129
  ...(typeof protocolVersion === "string" ? { protocolVersion } : {}),
130
+ ...(typeof identityHeader === "string" && identityHeader !== "" ? { identityHeader } : {}),
111
131
  });
112
132
  }
113
133
  async manifest() {
134
+ // Manifest uses the default-identity session for tool introspection.
135
+ // Per-identity tool surfaces are out of scope — substrates that vary
136
+ // tools by identity would surface that via a different mechanism.
114
137
  let toolsAvailable;
115
138
  let fetchError;
139
+ const entry = this.getOrCreateEntry(DEFAULT_IDENTITY_KEY);
116
140
  try {
117
- await this.ensureSession();
118
- toolsAvailable = this.cachedTools ?? (await this.listTools());
141
+ await this.ensureSession(DEFAULT_IDENTITY_KEY, entry);
142
+ toolsAvailable = entry.cachedTools ?? (await this.listToolsForEntry(DEFAULT_IDENTITY_KEY, entry));
119
143
  }
120
144
  catch (err) {
121
145
  fetchError = err instanceof Error ? err.message : String(err);
@@ -131,14 +155,23 @@ export class HttpMcpConnector {
131
155
  },
132
156
  };
133
157
  }
134
- async call(toolName, args, _ctx) {
135
- await this.ensureSession();
136
- const reply = await this.post({
137
- jsonrpc: "2.0",
138
- id: Math.floor(Math.random() * 1e6),
139
- method: "tools/call",
140
- params: { name: toolName, arguments: args },
141
- });
158
+ async call(toolName, args, ctx) {
159
+ // v0.16.9 — per-identity session keying. Each distinct `ctx.agentId`
160
+ // gets its own pool entry; identity is pinned at server-side
161
+ // `initialize` time, so the substrate's session model honors it for
162
+ // the duration of the session. End-to-end propagation (Level 1 + 2)
163
+ // works against session-pinning substrates.
164
+ // Per-identity pooling activates ONLY when the adopter configured an
165
+ // identityHeader. Without it, the connector isn't threading identity
166
+ // to the substrate, so per-identity pool entries would be pointless
167
+ // overhead — all calls converge to the default session.
168
+ const identityKey = this.identityHeader !== undefined
169
+ && typeof ctx?.agentId === "string"
170
+ && ctx.agentId !== ""
171
+ ? ctx.agentId
172
+ : DEFAULT_IDENTITY_KEY;
173
+ const entry = this.getOrCreateEntry(identityKey);
174
+ const reply = await this.dispatchWithRetry(identityKey, entry, toolName, args);
142
175
  if (reply === null)
143
176
  throw new Error(`HttpMcpConnector: empty reply from ${toolName} at ${this.endpoint}`);
144
177
  if (reply.error !== undefined) {
@@ -156,12 +189,36 @@ export class HttpMcpConnector {
156
189
  return reply.result;
157
190
  }
158
191
  /**
159
- * Discover the server's tool surface via `tools/list`. Result is cached
160
- * for subsequent `manifest()` calls; first dispatch may pay the
161
- * round-trip cost.
192
+ * Dispatch with bounded-at-1 retry on session-mismatch. When the
193
+ * substrate returns HTTP >= 400 (likely session-not-found / stale),
194
+ * evict the pool entry, re-init, and retry once. Per Perry's
195
+ * `33fefa0f` impl-nit on retry-bounding. Persistent server errors
196
+ * after retry surface to the caller as the second-attempt failure.
162
197
  */
163
- async listTools() {
164
- const reply = (await this.post({
198
+ async dispatchWithRetry(identityKey, entry, toolName, args) {
199
+ await this.ensureSession(identityKey, entry);
200
+ const body = {
201
+ jsonrpc: "2.0",
202
+ id: Math.floor(Math.random() * 1e6),
203
+ method: "tools/call",
204
+ params: { name: toolName, arguments: args },
205
+ };
206
+ try {
207
+ return await this.post(identityKey, entry, body);
208
+ }
209
+ catch (err) {
210
+ if (!(err instanceof StaleSessionError))
211
+ throw err;
212
+ // Stale-session retry path. Evict entry + re-init + retry once.
213
+ // Per warm-adopter's `33fefa0f` framing: bounded at 1 to prevent
214
+ // infinite-loop against persistent server-side errors.
215
+ const freshEntry = this.recreateEntry(identityKey);
216
+ await this.ensureSession(identityKey, freshEntry);
217
+ return this.post(identityKey, freshEntry, body);
218
+ }
219
+ }
220
+ async listToolsForEntry(identityKey, entry) {
221
+ const reply = (await this.post(identityKey, entry, {
165
222
  jsonrpc: "2.0",
166
223
  id: Math.floor(Math.random() * 1e6),
167
224
  method: "tools/list",
@@ -170,15 +227,56 @@ export class HttpMcpConnector {
170
227
  const names = Array.isArray(tools)
171
228
  ? tools.map((t) => t.name ?? "").filter((n) => n !== "")
172
229
  : [];
173
- this.cachedTools = names;
230
+ entry.cachedTools = names;
174
231
  return names;
175
232
  }
176
- async ensureSession() {
177
- if (this.sessionId !== null)
233
+ /**
234
+ * Pool entry get-or-create. Bumps to MRU position on access (Map insert
235
+ * order = LRU order; delete + re-set moves to end). Evicts oldest if
236
+ * pool would exceed `maxPoolSize`.
237
+ *
238
+ * Documented gap (v0.17 hardening target): no time-based eviction;
239
+ * sessions kept alive indefinitely while pool has room. Long-running
240
+ * adopters with high identity cardinality should configure
241
+ * `maxPoolSize`. Substrates that silently kill idle sessions without
242
+ * surfacing an error need adopter-side healthcheck wiring.
243
+ */
244
+ getOrCreateEntry(identityKey) {
245
+ const existing = this.sessions.get(identityKey);
246
+ if (existing !== undefined) {
247
+ // Bump to MRU.
248
+ this.sessions.delete(identityKey);
249
+ this.sessions.set(identityKey, existing);
250
+ return existing;
251
+ }
252
+ // Eviction check before inserting fresh.
253
+ if (this.maxPoolSize !== undefined && this.sessions.size >= this.maxPoolSize) {
254
+ // Map iteration order = insertion order = LRU. Delete the first
255
+ // (oldest) entry. Mid-dispatch eviction edge: if the evicted
256
+ // entry is mid-flight, the dispatch's session-id mismatch on
257
+ // next attempt triggers the retry path. Per Perry's `33fefa0f`
258
+ // option (c) — accept the rare edge, retry handles it.
259
+ const oldestKey = this.sessions.keys().next().value;
260
+ if (oldestKey !== undefined)
261
+ this.sessions.delete(oldestKey);
262
+ }
263
+ const fresh = { sessionId: null, initializing: null, cachedTools: null };
264
+ this.sessions.set(identityKey, fresh);
265
+ return fresh;
266
+ }
267
+ /**
268
+ * Evict + recreate a pool entry. Used by the stale-session retry path.
269
+ */
270
+ recreateEntry(identityKey) {
271
+ this.sessions.delete(identityKey);
272
+ return this.getOrCreateEntry(identityKey);
273
+ }
274
+ async ensureSession(identityKey, entry) {
275
+ if (entry.sessionId !== null)
178
276
  return;
179
- if (this.initializing === null) {
180
- this.initializing = (async () => {
181
- await this.post({
277
+ if (entry.initializing === null) {
278
+ entry.initializing = (async () => {
279
+ await this.post(identityKey, entry, {
182
280
  jsonrpc: "2.0",
183
281
  id: 1,
184
282
  method: "initialize",
@@ -191,19 +289,27 @@ export class HttpMcpConnector {
191
289
  // Protocol-mandatory: notifications/initialized after initialize,
192
290
  // before any tools/call. Per warm-adopter checklist `41fedec6`
193
291
  // item #2.
194
- await this.post({ jsonrpc: "2.0", method: "notifications/initialized" }, true);
292
+ await this.post(identityKey, entry, { jsonrpc: "2.0", method: "notifications/initialized" }, true);
195
293
  })();
196
294
  }
197
- await this.initializing;
295
+ await entry.initializing;
198
296
  }
199
- async post(body, isNotification = false) {
297
+ async post(identityKey, entry, body, isNotification = false) {
200
298
  const headers = {
201
299
  "content-type": "application/json",
202
300
  accept: "application/json, text/event-stream",
203
301
  ...this.baseHeaders,
204
302
  };
205
- if (this.sessionId !== null)
206
- headers["mcp-session-id"] = this.sessionId;
303
+ // v0.16.9 per-call identity header. When configured AND identity is
304
+ // not the default sentinel, emit the header on every request (init +
305
+ // notifications + tools/call). Servers that pin session-to-identity
306
+ // at initialize time consume the header at that point; servers that
307
+ // re-check per request consume it per request.
308
+ if (this.identityHeader !== undefined && identityKey !== DEFAULT_IDENTITY_KEY) {
309
+ headers[this.identityHeader] = identityKey;
310
+ }
311
+ if (entry.sessionId !== null)
312
+ headers["mcp-session-id"] = entry.sessionId;
207
313
  const res = await fetch(this.endpoint, {
208
314
  method: "POST",
209
315
  headers,
@@ -211,13 +317,32 @@ export class HttpMcpConnector {
211
317
  });
212
318
  const sid = res.headers.get("mcp-session-id");
213
319
  if (sid !== null)
214
- this.sessionId = sid;
320
+ entry.sessionId = sid;
321
+ // v0.16.9 — stale-session detection. HTTP >= 400 likely indicates
322
+ // the server-side session is dead (session-not-found, expired, etc.).
323
+ // Throw a typed error that `dispatchWithRetry` catches + retries
324
+ // once with a fresh entry. Notification posts don't return a reply
325
+ // so we treat their 4xx as terminal (server rejected the notif —
326
+ // not retryable).
327
+ if (res.status >= 400 && !isNotification) {
328
+ throw new StaleSessionError(`HttpMcpConnector: ${res.status} from ${this.endpoint} (likely stale session for identity '${identityKey}')`);
329
+ }
215
330
  if (isNotification)
216
331
  return null;
217
332
  const text = await res.text();
218
333
  return parseSseReply(text);
219
334
  }
220
335
  }
336
+ /**
337
+ * v0.16.9 — internal signal for the stale-session retry path. Not
338
+ * surfaced to callers; `dispatchWithRetry` catches + handles.
339
+ */
340
+ class StaleSessionError extends Error {
341
+ constructor(message) {
342
+ super(message);
343
+ this.name = "StaleSessionError";
344
+ }
345
+ }
221
346
  /**
222
347
  * Extract the terminal JSON-RPC object from an SSE response body.
223
348
  * MCP servers MAY send multiple `event: message\n data: <json>` frames
@@ -1 +1 @@
1
- {"version":3,"file":"http-mcp.js","sourceRoot":"","sources":["../../src/connectors/http-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-mcp.js","sourceRoot":"","sources":["../../src/connectors/http-mcp.ts"],"names":[],"mappings":"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"}
@@ -14,4 +14,24 @@ export declare class SkillStoreMcpConnector implements McpConnector {
14
14
  private dispatchWrite;
15
15
  manifest(): Promise<ManifestInfo<"mcp_connector">>;
16
16
  }
17
+ /**
18
+ * v0.15.0 — replace any `# Status:` line in the body with `# Status: Draft`.
19
+ * If no `# Status:` line is present, insert one after `# Skill:` (or at
20
+ * body top as fallback). Mirrors the `rewriteStatusHeader` shape used by
21
+ * FilesystemSkillStore.update_status but lives here so the bridge can apply
22
+ * the Draft-only policy without coupling to substrate internals.
23
+ *
24
+ * Why this is here (not in FilesystemSkillStore.store): the Draft-only
25
+ * gate is a property of the in-skill dispatch surface, not of the
26
+ * substrate. Outside-MCP writes (dashboard, MCP-direct agents) should
27
+ * keep the existing "body declares status" behavior. The override lives
28
+ * at the bridge — the boundary between in-skill dispatch and substrate.
29
+ */
30
+ /**
31
+ * v0.16.8 — exported so the outside-MCP `skill_write` handler can reuse
32
+ * the same draft-rewriting discipline when the `forceAlwaysDraft`
33
+ * adopter posture is enabled. Both the in-skill bridge (v0.15.0) and
34
+ * the outside-MCP handler converge on the same body-rewrite shape.
35
+ */
36
+ export declare function forceDraftStatus(body: string): string;
17
37
  //# sourceMappingURL=skill-store-mcp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-store-mcp.d.ts","sourceRoot":"","sources":["../../src/connectors/skill-store-mcp.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,UAAU,EACX,MAAM,YAAY,CAAC;AAIpB,qBAAa,sBAAuB,YAAW,YAAY;IAuB7C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAtBvC,MAAM,CAAC,kBAAkB,IAAI,wBAAwB;IAarD;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,EAAE;gBAID,UAAU,EAAE,UAAU;IAE7C,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,aAAa,CAAC,EAAE,cAAc,GAC7B,OAAO,CAAC,OAAO,CAAC;YAKL,YAAY;YAgBZ,aAAa;IAyCrB,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;CAUzD"}
1
+ {"version":3,"file":"skill-store-mcp.d.ts","sourceRoot":"","sources":["../../src/connectors/skill-store-mcp.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,UAAU,EACX,MAAM,YAAY,CAAC;AAIpB,qBAAa,sBAAuB,YAAW,YAAY;IAuB7C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAtBvC,MAAM,CAAC,kBAAkB,IAAI,wBAAwB;IAarD;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,EAAE;gBAID,UAAU,EAAE,UAAU;IAE7C,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,aAAa,CAAC,EAAE,cAAc,GAC7B,OAAO,CAAC,OAAO,CAAC;YAKL,YAAY;YAgBZ,aAAa;IAyCrB,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;CAUzD;AAED;;;;;;;;;;;;GAYG;AACH;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWrD"}
@@ -165,7 +165,13 @@ export class SkillStoreMcpConnector {
165
165
  * keep the existing "body declares status" behavior. The override lives
166
166
  * at the bridge — the boundary between in-skill dispatch and substrate.
167
167
  */
168
- function forceDraftStatus(body) {
168
+ /**
169
+ * v0.16.8 — exported so the outside-MCP `skill_write` handler can reuse
170
+ * the same draft-rewriting discipline when the `forceAlwaysDraft`
171
+ * adopter posture is enabled. Both the in-skill bridge (v0.15.0) and
172
+ * the outside-MCP handler converge on the same body-rewrite shape.
173
+ */
174
+ export function forceDraftStatus(body) {
169
175
  const draftLine = "# Status: Draft";
170
176
  const statusRe = /^#\s*Status\s*:.*$/m;
171
177
  if (statusRe.test(body)) {
@@ -1 +1 @@
1
- {"version":3,"file":"skill-store-mcp.js","sourceRoot":"","sources":["../../src/connectors/skill-store-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-store-mcp.js","sourceRoot":"","sources":["../../src/connectors/skill-store-mcp.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,19 @@ export declare class FilesystemSkillStore implements SkillStore {
29
29
  metadata(name: string): Promise<SkillMeta>;
30
30
  versions(name: string): Promise<VersionInfo[]>;
31
31
  store(name: string, source: string, metadata?: Partial<SkillMeta>): Promise<VersionInfo>;
32
+ /**
33
+ * v0.16.9 — read the last VersionInfo's status from the versions log.
34
+ * Returns null when the skill has no versions yet (new skill). Used by
35
+ * `store()` to preserve status across overwrite per the (A) intentional
36
+ * trust-boundary discipline.
37
+ */
38
+ private readLastVersionStatus;
39
+ /**
40
+ * Read the first version's `changed_by` from the versions log, which IS
41
+ * the canonical author per the v0.16.8 first-write-locks discipline.
42
+ * Returns null when the skill has no versions yet (new skill being stored).
43
+ */
44
+ private readFirstVersionAuthor;
32
45
  delete(name: string): Promise<void>;
33
46
  update_status(name: string, status: SkillStatus): Promise<VersionInfo>;
34
47
  private pathFor;
@@ -1 +1 @@
1
- {"version":3,"file":"skill-store.d.ts","sourceRoot":"","sources":["../../src/connectors/skill-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,WAAW,EACX,sBAAsB,EACtB,YAAY,EACb,MAAM,YAAY,CAAC;AAOpB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,YAAW,UAAU;IAgBzC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAfpC,MAAM,CAAC,kBAAkB,IAAI,sBAAsB;gBAetB,OAAO,EAAE,MAAM;IAEtC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAUhD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA0B1D,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IA0BjD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAa1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAmC9C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAqCxF,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAenC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IA+C5E,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,eAAe;YAIT,SAAS;CAkBxB"}
1
+ {"version":3,"file":"skill-store.d.ts","sourceRoot":"","sources":["../../src/connectors/skill-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,WAAW,EACX,sBAAsB,EACtB,YAAY,EACb,MAAM,YAAY,CAAC;AAOpB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,YAAW,UAAU;IAgBzC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAfpC,MAAM,CAAC,kBAAkB,IAAI,sBAAsB;gBAetB,OAAO,EAAE,MAAM;IAEtC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAUhD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA0B1D,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IA0BjD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAa1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAmC9C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAoG9F;;;;;OAKG;YACW,qBAAqB;IAiBnC;;;;OAIG;YACW,sBAAsB;IAkB9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAenC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IA+C5E,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,eAAe;YAIT,SAAS;CAwBxB"}