@agent-deck/shared 2.3.1 → 2.3.2
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/constants/client-scope.d.ts +10 -0
- package/dist/constants/client-scope.d.ts.map +1 -1
- package/dist/constants/client-scope.js +11 -1
- package/dist/constants/client-scope.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas/playbook-pin.d.ts +23 -0
- package/dist/schemas/playbook-pin.d.ts.map +1 -0
- package/dist/schemas/playbook-pin.js +37 -0
- package/dist/schemas/playbook-pin.js.map +1 -0
- package/package.json +1 -1
|
@@ -33,6 +33,16 @@ export declare const AGENT_DECK_RECOVERED_SESSION_HEADER = "x-agent-deck-recover
|
|
|
33
33
|
export declare const AGENT_DECK_BRIDGE_LIVENESS_HEADER = "x-agent-deck-bridge-liveness";
|
|
34
34
|
/** Header value advertising the v1 bridge-owned `ping` heartbeat contract. */
|
|
35
35
|
export declare const AGENT_DECK_BRIDGE_LIVENESS_V1 = "1";
|
|
36
|
+
/**
|
|
37
|
+
* Pinned playbook version for one run's MCP session (NOT-537).
|
|
38
|
+
*
|
|
39
|
+
* Value shape is `<playbookId>=<versionId>`. Adopt-once per MCP session like
|
|
40
|
+
* the correlation id: the first valid value sticks, later changes are
|
|
41
|
+
* ignored, and invalid values are dropped. The pin changes only what
|
|
42
|
+
* `get_playbook` and the playbook summaries show for that one playbook id;
|
|
43
|
+
* it never selects a deck, grants access, or participates in authorization.
|
|
44
|
+
*/
|
|
45
|
+
export declare const AGENT_DECK_PLAYBOOK_PIN_HEADER = "x-agent-deck-playbook-pin";
|
|
36
46
|
/**
|
|
37
47
|
* Host-side session id for status-line self-match (NOT-513). The bridge sends
|
|
38
48
|
* the id its host assigned the session (Claude Code: `CLAUDE_CODE_SESSION_ID`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-scope.d.ts","sourceRoot":"","sources":["../../src/constants/client-scope.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAE9D,mEAAmE;AACnE,eAAO,MAAM,2BAA2B,cAAc,CAAC;AAEvD,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAE/C,uEAAuE;AACvE,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE,sCAAsC;AACtC,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,gCAAgC,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,mCAAmC,CAAC;AAEpF;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC,iCAAiC,CAAC;AAEhF,8EAA8E;AAC9E,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"client-scope.d.ts","sourceRoot":"","sources":["../../src/constants/client-scope.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAE9D,mEAAmE;AACnE,eAAO,MAAM,2BAA2B,cAAc,CAAC;AAEvD,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAE/C,uEAAuE;AACvE,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE,sCAAsC;AACtC,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,gCAAgC,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,mCAAmC,CAAC;AAEpF;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC,iCAAiC,CAAC;AAEhF,8EAA8E;AAC9E,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B,8BAA8B,CAAC;AAE1E;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,iCAAiC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AGENT_DECK_HOST_SESSION_ID_HEADER = exports.AGENT_DECK_BRIDGE_LIVENESS_V1 = exports.AGENT_DECK_BRIDGE_LIVENESS_HEADER = exports.AGENT_DECK_RECOVERED_SESSION_HEADER = exports.AGENT_DECK_CORRELATION_HEADER = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = void 0;
|
|
3
|
+
exports.AGENT_DECK_HOST_SESSION_ID_HEADER = exports.AGENT_DECK_PLAYBOOK_PIN_HEADER = exports.AGENT_DECK_BRIDGE_LIVENESS_V1 = exports.AGENT_DECK_BRIDGE_LIVENESS_HEADER = exports.AGENT_DECK_RECOVERED_SESSION_HEADER = exports.AGENT_DECK_CORRELATION_HEADER = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = void 0;
|
|
4
4
|
/** HTTP header distinguishing dashboard (human UI) from agent API clients. */
|
|
5
5
|
exports.AGENT_DECK_CLIENT_HEADER = 'x-agent-deck-client';
|
|
6
6
|
/** Value sent by the Agent Deck dashboard for vault management. */
|
|
@@ -36,6 +36,16 @@ exports.AGENT_DECK_RECOVERED_SESSION_HEADER = 'x-agent-deck-recovered-session';
|
|
|
36
36
|
exports.AGENT_DECK_BRIDGE_LIVENESS_HEADER = 'x-agent-deck-bridge-liveness';
|
|
37
37
|
/** Header value advertising the v1 bridge-owned `ping` heartbeat contract. */
|
|
38
38
|
exports.AGENT_DECK_BRIDGE_LIVENESS_V1 = '1';
|
|
39
|
+
/**
|
|
40
|
+
* Pinned playbook version for one run's MCP session (NOT-537).
|
|
41
|
+
*
|
|
42
|
+
* Value shape is `<playbookId>=<versionId>`. Adopt-once per MCP session like
|
|
43
|
+
* the correlation id: the first valid value sticks, later changes are
|
|
44
|
+
* ignored, and invalid values are dropped. The pin changes only what
|
|
45
|
+
* `get_playbook` and the playbook summaries show for that one playbook id;
|
|
46
|
+
* it never selects a deck, grants access, or participates in authorization.
|
|
47
|
+
*/
|
|
48
|
+
exports.AGENT_DECK_PLAYBOOK_PIN_HEADER = 'x-agent-deck-playbook-pin';
|
|
39
49
|
/**
|
|
40
50
|
* Host-side session id for status-line self-match (NOT-513). The bridge sends
|
|
41
51
|
* the id its host assigned the session (Claude Code: `CLAUDE_CODE_SESSION_ID`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-scope.js","sourceRoot":"","sources":["../../src/constants/client-scope.ts"],"names":[],"mappings":";;;AAAA,8EAA8E;AACjE,QAAA,wBAAwB,GAAG,qBAAqB,CAAC;AAE9D,mEAAmE;AACtD,QAAA,2BAA2B,GAAG,WAAW,CAAC;AAEvD,+EAA+E;AAClE,QAAA,uBAAuB,GAAG,OAAO,CAAC;AAE/C,uEAAuE;AAC1D,QAAA,2BAA2B,GAAG,wBAAwB,CAAC;AAEpE,sCAAsC;AACzB,QAAA,yBAAyB,GAAG,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACU,QAAA,6BAA6B,GAAG,6BAA6B,CAAC;AAE3E;;;;GAIG;AACU,QAAA,mCAAmC,GAAG,gCAAgC,CAAC;AAEpF;;;;;;;GAOG;AACU,QAAA,iCAAiC,GAAG,8BAA8B,CAAC;AAEhF,8EAA8E;AACjE,QAAA,6BAA6B,GAAG,GAAG,CAAC;AAEjD;;;;;;GAMG;AACU,QAAA,iCAAiC,GAAG,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"client-scope.js","sourceRoot":"","sources":["../../src/constants/client-scope.ts"],"names":[],"mappings":";;;AAAA,8EAA8E;AACjE,QAAA,wBAAwB,GAAG,qBAAqB,CAAC;AAE9D,mEAAmE;AACtD,QAAA,2BAA2B,GAAG,WAAW,CAAC;AAEvD,+EAA+E;AAClE,QAAA,uBAAuB,GAAG,OAAO,CAAC;AAE/C,uEAAuE;AAC1D,QAAA,2BAA2B,GAAG,wBAAwB,CAAC;AAEpE,sCAAsC;AACzB,QAAA,yBAAyB,GAAG,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACU,QAAA,6BAA6B,GAAG,6BAA6B,CAAC;AAE3E;;;;GAIG;AACU,QAAA,mCAAmC,GAAG,gCAAgC,CAAC;AAEpF;;;;;;;GAOG;AACU,QAAA,iCAAiC,GAAG,8BAA8B,CAAC;AAEhF,8EAA8E;AACjE,QAAA,6BAA6B,GAAG,GAAG,CAAC;AAEjD;;;;;;;;GAQG;AACU,QAAA,8BAA8B,GAAG,2BAA2B,CAAC;AAE1E;;;;;;GAMG;AACU,QAAA,iCAAiC,GAAG,8BAA8B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,12 +13,13 @@ export * from './schemas/session-bootstrap';
|
|
|
13
13
|
export * from './schemas/trusted-session';
|
|
14
14
|
export * from './schemas/card-usage';
|
|
15
15
|
export * from './schemas/agent-run';
|
|
16
|
+
export * from './schemas/playbook-pin';
|
|
16
17
|
export * from './types/api';
|
|
17
18
|
export { OAuthDiscoveryResult } from './types/oauth';
|
|
18
19
|
export * from './utils';
|
|
19
20
|
export { summarizeCollectionWarnings, getServiceWarnings, getCredentialWarnings, getPlaybookWarnings, primaryCollectionWarning, type CollectionCardWarning, type CollectionWarningKind, } from './utils/collection-warnings';
|
|
20
21
|
export { normalizeLocalMcpManifestInput, parseLocalMcpManifestJson, stripJsonMarkdownFences, } from './utils/local-mcp-manifest';
|
|
21
|
-
export { AGENT_DECK_CLIENT_HEADER, AGENT_DECK_DASHBOARD_CLIENT, AGENT_DECK_AGENT_CLIENT, AGENT_DECK_WORKSPACE_HEADER, AGENT_DECK_DECK_ID_HEADER, AGENT_DECK_CORRELATION_HEADER, AGENT_DECK_RECOVERED_SESSION_HEADER, AGENT_DECK_BRIDGE_LIVENESS_HEADER, AGENT_DECK_BRIDGE_LIVENESS_V1, AGENT_DECK_HOST_SESSION_ID_HEADER, } from './constants/client-scope';
|
|
22
|
+
export { AGENT_DECK_CLIENT_HEADER, AGENT_DECK_DASHBOARD_CLIENT, AGENT_DECK_AGENT_CLIENT, AGENT_DECK_WORKSPACE_HEADER, AGENT_DECK_DECK_ID_HEADER, AGENT_DECK_CORRELATION_HEADER, AGENT_DECK_RECOVERED_SESSION_HEADER, AGENT_DECK_BRIDGE_LIVENESS_HEADER, AGENT_DECK_BRIDGE_LIVENESS_V1, AGENT_DECK_HOST_SESSION_ID_HEADER, AGENT_DECK_PLAYBOOK_PIN_HEADER, } from './constants/client-scope';
|
|
22
23
|
export { AGENT_DECK_SESSION_HEADER, AGENT_DECK_DASHBOARD_COOKIE, RUNTIME_SESSION_LEASE_MS, ADMIN_MODE_LEASE_MS, ADMIN_CHALLENGE_TTL_MS, DASHBOARD_NONCE_TTL_MS, DASHBOARD_SESSION_LEASE_MS, DASHBOARD_COOKIE_MAX_AGE_MS, } from './constants/trusted-session';
|
|
23
24
|
export { MCP_CARD_COLOR, API_KEY_CARD_COLOR, PLAYBOOK_CARD_COLOR, getServiceCardColor } from './constants/card-colors';
|
|
24
25
|
//# 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":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGrD,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,mCAAmC,EACnC,iCAAiC,EACjC,6BAA6B,EAC7B,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.getServiceCardColor = exports.PLAYBOOK_CARD_COLOR = exports.API_KEY_CARD_COLOR = exports.MCP_CARD_COLOR = exports.DASHBOARD_COOKIE_MAX_AGE_MS = exports.DASHBOARD_SESSION_LEASE_MS = exports.DASHBOARD_NONCE_TTL_MS = exports.ADMIN_CHALLENGE_TTL_MS = exports.ADMIN_MODE_LEASE_MS = exports.RUNTIME_SESSION_LEASE_MS = exports.AGENT_DECK_DASHBOARD_COOKIE = exports.AGENT_DECK_SESSION_HEADER = exports.AGENT_DECK_HOST_SESSION_ID_HEADER = exports.AGENT_DECK_BRIDGE_LIVENESS_V1 = exports.AGENT_DECK_BRIDGE_LIVENESS_HEADER = exports.AGENT_DECK_RECOVERED_SESSION_HEADER = exports.AGENT_DECK_CORRELATION_HEADER = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = exports.stripJsonMarkdownFences = exports.parseLocalMcpManifestJson = exports.normalizeLocalMcpManifestInput = exports.primaryCollectionWarning = exports.getPlaybookWarnings = exports.getCredentialWarnings = exports.getServiceWarnings = exports.summarizeCollectionWarnings = void 0;
|
|
17
|
+
exports.getServiceCardColor = exports.PLAYBOOK_CARD_COLOR = exports.API_KEY_CARD_COLOR = exports.MCP_CARD_COLOR = exports.DASHBOARD_COOKIE_MAX_AGE_MS = exports.DASHBOARD_SESSION_LEASE_MS = exports.DASHBOARD_NONCE_TTL_MS = exports.ADMIN_CHALLENGE_TTL_MS = exports.ADMIN_MODE_LEASE_MS = exports.RUNTIME_SESSION_LEASE_MS = exports.AGENT_DECK_DASHBOARD_COOKIE = exports.AGENT_DECK_SESSION_HEADER = exports.AGENT_DECK_PLAYBOOK_PIN_HEADER = exports.AGENT_DECK_HOST_SESSION_ID_HEADER = exports.AGENT_DECK_BRIDGE_LIVENESS_V1 = exports.AGENT_DECK_BRIDGE_LIVENESS_HEADER = exports.AGENT_DECK_RECOVERED_SESSION_HEADER = exports.AGENT_DECK_CORRELATION_HEADER = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = exports.stripJsonMarkdownFences = exports.parseLocalMcpManifestJson = exports.normalizeLocalMcpManifestInput = exports.primaryCollectionWarning = exports.getPlaybookWarnings = exports.getCredentialWarnings = exports.getServiceWarnings = exports.summarizeCollectionWarnings = void 0;
|
|
18
18
|
// Schemas (includes Zod-inferred types)
|
|
19
19
|
__exportStar(require("./schemas/service"), exports);
|
|
20
20
|
__exportStar(require("./schemas/deck"), exports);
|
|
@@ -31,6 +31,7 @@ __exportStar(require("./schemas/session-bootstrap"), exports);
|
|
|
31
31
|
__exportStar(require("./schemas/trusted-session"), exports);
|
|
32
32
|
__exportStar(require("./schemas/card-usage"), exports);
|
|
33
33
|
__exportStar(require("./schemas/agent-run"), exports);
|
|
34
|
+
__exportStar(require("./schemas/playbook-pin"), exports);
|
|
34
35
|
// Additional types not covered by schemas
|
|
35
36
|
__exportStar(require("./types/api"), exports);
|
|
36
37
|
// Utils
|
|
@@ -57,6 +58,7 @@ Object.defineProperty(exports, "AGENT_DECK_RECOVERED_SESSION_HEADER", { enumerab
|
|
|
57
58
|
Object.defineProperty(exports, "AGENT_DECK_BRIDGE_LIVENESS_HEADER", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_BRIDGE_LIVENESS_HEADER; } });
|
|
58
59
|
Object.defineProperty(exports, "AGENT_DECK_BRIDGE_LIVENESS_V1", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_BRIDGE_LIVENESS_V1; } });
|
|
59
60
|
Object.defineProperty(exports, "AGENT_DECK_HOST_SESSION_ID_HEADER", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_HOST_SESSION_ID_HEADER; } });
|
|
61
|
+
Object.defineProperty(exports, "AGENT_DECK_PLAYBOOK_PIN_HEADER", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_PLAYBOOK_PIN_HEADER; } });
|
|
60
62
|
var trusted_session_1 = require("./constants/trusted-session");
|
|
61
63
|
Object.defineProperty(exports, "AGENT_DECK_SESSION_HEADER", { enumerable: true, get: function () { return trusted_session_1.AGENT_DECK_SESSION_HEADER; } });
|
|
62
64
|
Object.defineProperty(exports, "AGENT_DECK_DASHBOARD_COOKIE", { enumerable: true, get: function () { return trusted_session_1.AGENT_DECK_DASHBOARD_COOKIE; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,gEAA8C;AAC9C,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC;AAChC,8DAA4C;AAC5C,4DAA0C;AAC1C,uDAAqC;AACrC,sDAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,gEAA8C;AAC9C,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC;AAChC,8DAA4C;AAC5C,4DAA0C;AAC1C,uDAAqC;AACrC,sDAAoC;AACpC,yDAAuC;AAEvC,0CAA0C;AAC1C,8CAA4B;AAG5B,QAAQ;AACR,0CAAwB;AACxB,mEAQqC;AAPnC,kIAAA,2BAA2B,OAAA;AAC3B,yHAAA,kBAAkB,OAAA;AAClB,4HAAA,qBAAqB,OAAA;AACrB,0HAAA,mBAAmB,OAAA;AACnB,+HAAA,wBAAwB,OAAA;AAI1B,iEAIoC;AAHlC,oIAAA,8BAA8B,OAAA;AAC9B,+HAAA,yBAAyB,OAAA;AACzB,6HAAA,uBAAuB,OAAA;AAGzB,YAAY;AACZ,yDAYkC;AAXhC,wHAAA,wBAAwB,OAAA;AACxB,2HAAA,2BAA2B,OAAA;AAC3B,uHAAA,uBAAuB,OAAA;AACvB,2HAAA,2BAA2B,OAAA;AAC3B,yHAAA,yBAAyB,OAAA;AACzB,6HAAA,6BAA6B,OAAA;AAC7B,mIAAA,mCAAmC,OAAA;AACnC,iIAAA,iCAAiC,OAAA;AACjC,6HAAA,6BAA6B,OAAA;AAC7B,iIAAA,iCAAiC,OAAA;AACjC,8HAAA,8BAA8B,OAAA;AAEhC,+DASqC;AARnC,4HAAA,yBAAyB,OAAA;AACzB,8HAAA,2BAA2B,OAAA;AAC3B,2HAAA,wBAAwB,OAAA;AACxB,sHAAA,mBAAmB,OAAA;AACnB,yHAAA,sBAAsB,OAAA;AACtB,yHAAA,sBAAsB,OAAA;AACtB,6HAAA,0BAA0B,OAAA;AAC1B,8HAAA,2BAA2B,OAAA;AAE7B,uDAAuH;AAA9G,6GAAA,cAAc,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAAE,kHAAA,mBAAmB,OAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One pinned playbook version for a run's MCP session (NOT-537).
|
|
3
|
+
*
|
|
4
|
+
* The pin travels as `<playbookId>=<versionId>` — the `--playbook-version`
|
|
5
|
+
* flag value, the run's pin env var, and the `x-agent-deck-playbook-pin`
|
|
6
|
+
* launch header all share this shape. One pin per run; it lives only as
|
|
7
|
+
* long as the run's MCP session.
|
|
8
|
+
*/
|
|
9
|
+
export type PlaybookPin = {
|
|
10
|
+
playbookId: string;
|
|
11
|
+
versionId: string;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Parse a candidate pin, or return null when it is absent or malformed.
|
|
15
|
+
* Invalid values are dropped — never coerced — so untrusted input cannot
|
|
16
|
+
* smuggle task content into a session. The playbook id must match
|
|
17
|
+
* `pb_<slug>` and the version id must be a UUID (the only shape version
|
|
18
|
+
* snapshots are ever stored with).
|
|
19
|
+
*/
|
|
20
|
+
export declare function normalizePlaybookPin(raw: unknown): PlaybookPin | null;
|
|
21
|
+
/** Canonical `<playbookId>=<versionId>` form for headers and env. */
|
|
22
|
+
export declare function formatPlaybookPin(pin: PlaybookPin): string;
|
|
23
|
+
//# sourceMappingURL=playbook-pin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playbook-pin.d.ts","sourceRoot":"","sources":["../../src/schemas/playbook-pin.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAIF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAkBrE;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAE1D"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizePlaybookPin = normalizePlaybookPin;
|
|
4
|
+
exports.formatPlaybookPin = formatPlaybookPin;
|
|
5
|
+
const id_1 = require("../utils/id");
|
|
6
|
+
const PLAYBOOK_ID_RE = /^pb_[a-z0-9_]+$/;
|
|
7
|
+
/**
|
|
8
|
+
* Parse a candidate pin, or return null when it is absent or malformed.
|
|
9
|
+
* Invalid values are dropped — never coerced — so untrusted input cannot
|
|
10
|
+
* smuggle task content into a session. The playbook id must match
|
|
11
|
+
* `pb_<slug>` and the version id must be a UUID (the only shape version
|
|
12
|
+
* snapshots are ever stored with).
|
|
13
|
+
*/
|
|
14
|
+
function normalizePlaybookPin(raw) {
|
|
15
|
+
if (typeof raw !== 'string') {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
const value = raw.trim();
|
|
19
|
+
if (!value) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
const separator = value.indexOf('=');
|
|
23
|
+
if (separator === -1 || value.indexOf('=', separator + 1) !== -1) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
const playbookId = value.slice(0, separator).trim();
|
|
27
|
+
const versionId = value.slice(separator + 1).trim();
|
|
28
|
+
if (!PLAYBOOK_ID_RE.test(playbookId) || !(0, id_1.isValidUUID)(versionId)) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
return { playbookId, versionId };
|
|
32
|
+
}
|
|
33
|
+
/** Canonical `<playbookId>=<versionId>` form for headers and env. */
|
|
34
|
+
function formatPlaybookPin(pin) {
|
|
35
|
+
return `${pin.playbookId}=${pin.versionId}`;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=playbook-pin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playbook-pin.js","sourceRoot":"","sources":["../../src/schemas/playbook-pin.ts"],"names":[],"mappings":";;AAwBA,oDAkBC;AAGD,8CAEC;AA/CD,oCAA0C;AAe1C,MAAM,cAAc,GAAG,iBAAiB,CAAC;AAEzC;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAA,gBAAW,EAAC,SAAS,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AACnC,CAAC;AAED,qEAAqE;AACrE,SAAgB,iBAAiB,CAAC,GAAgB;IAChD,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;AAC9C,CAAC"}
|