@lumenflow/packs-sidekick 4.24.0 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/channel-ingress.d.ts +46 -0
  2. package/dist/channel-ingress.d.ts.map +1 -0
  3. package/dist/channel-ingress.js +90 -0
  4. package/dist/channel-ingress.js.map +1 -0
  5. package/dist/manifest.d.ts +17 -0
  6. package/dist/manifest.d.ts.map +1 -1
  7. package/dist/manifest.js +67 -0
  8. package/dist/manifest.js.map +1 -1
  9. package/dist/sidekick-events.d.ts +166 -0
  10. package/dist/sidekick-events.d.ts.map +1 -0
  11. package/dist/sidekick-events.js +288 -0
  12. package/dist/sidekick-events.js.map +1 -0
  13. package/dist/src/adapters/cloud-queue.d.ts +20 -0
  14. package/dist/src/adapters/cloud-queue.d.ts.map +1 -0
  15. package/dist/src/adapters/cloud-queue.js +90 -0
  16. package/dist/src/adapters/cloud-queue.js.map +1 -0
  17. package/dist/src/adapters/control-plane-bridge.adapter.d.ts +31 -0
  18. package/dist/src/adapters/control-plane-bridge.adapter.d.ts.map +1 -0
  19. package/dist/src/adapters/control-plane-bridge.adapter.js +263 -0
  20. package/dist/src/adapters/control-plane-bridge.adapter.js.map +1 -0
  21. package/dist/src/adapters/filesystem-bridge.adapter.d.ts +11 -0
  22. package/dist/src/adapters/filesystem-bridge.adapter.d.ts.map +1 -0
  23. package/dist/src/adapters/filesystem-bridge.adapter.js +161 -0
  24. package/dist/src/adapters/filesystem-bridge.adapter.js.map +1 -0
  25. package/dist/src/channel-ingress.d.ts +46 -0
  26. package/dist/src/channel-ingress.d.ts.map +1 -0
  27. package/dist/src/channel-ingress.js +90 -0
  28. package/dist/src/channel-ingress.js.map +1 -0
  29. package/dist/src/domain/channel.types.d.ts +79 -0
  30. package/dist/src/domain/channel.types.d.ts.map +1 -0
  31. package/dist/src/domain/channel.types.js +4 -0
  32. package/dist/src/domain/channel.types.js.map +1 -0
  33. package/dist/src/ports/channel-bridge.port.d.ts +49 -0
  34. package/dist/src/ports/channel-bridge.port.d.ts.map +1 -0
  35. package/dist/src/ports/channel-bridge.port.js +18 -0
  36. package/dist/src/ports/channel-bridge.port.js.map +1 -0
  37. package/dist/src/routines/commit.d.ts +21 -0
  38. package/dist/src/routines/commit.d.ts.map +1 -0
  39. package/dist/src/routines/commit.js +42 -0
  40. package/dist/src/routines/commit.js.map +1 -0
  41. package/dist/src/sidekick-events.d.ts +166 -0
  42. package/dist/src/sidekick-events.d.ts.map +1 -0
  43. package/dist/src/sidekick-events.js +288 -0
  44. package/dist/src/sidekick-events.js.map +1 -0
  45. package/dist/tool-impl/channel-tools.d.ts.map +1 -1
  46. package/dist/tool-impl/channel-tools.js +24 -0
  47. package/dist/tool-impl/channel-tools.js.map +1 -1
  48. package/dist/tool-impl/memory-tools.d.ts.map +1 -1
  49. package/dist/tool-impl/memory-tools.js +7 -0
  50. package/dist/tool-impl/memory-tools.js.map +1 -1
  51. package/dist/tool-impl/routine-commit.d.ts +3 -0
  52. package/dist/tool-impl/routine-commit.d.ts.map +1 -0
  53. package/dist/tool-impl/routine-commit.js +69 -0
  54. package/dist/tool-impl/routine-commit.js.map +1 -0
  55. package/dist/tool-impl/routine-tools.d.ts.map +1 -1
  56. package/dist/tool-impl/routine-tools.js +50 -7
  57. package/dist/tool-impl/routine-tools.js.map +1 -1
  58. package/dist/tool-impl/runtime-context.d.ts +4 -0
  59. package/dist/tool-impl/runtime-context.d.ts.map +1 -1
  60. package/dist/tool-impl/runtime-context.js.map +1 -1
  61. package/dist/tool-impl/storage.d.ts.map +1 -1
  62. package/dist/tool-impl/storage.js +3 -0
  63. package/dist/tool-impl/storage.js.map +1 -1
  64. package/dist/tool-impl/system-tools.d.ts.map +1 -1
  65. package/dist/tool-impl/system-tools.js +2 -0
  66. package/dist/tool-impl/system-tools.js.map +1 -1
  67. package/dist/tool-impl/task-tools.d.ts.map +1 -1
  68. package/dist/tool-impl/task-tools.js +30 -0
  69. package/dist/tool-impl/task-tools.js.map +1 -1
  70. package/manifest.yaml +88 -0
  71. package/package.json +4 -2
@@ -0,0 +1,46 @@
1
+ declare const ENVELOPE_FROM_SOURCE_TOKEN: "token";
2
+ export interface PhoneChannelIngressInput {
3
+ /**
4
+ * Raw request body as parsed from JSON. Opaque record; the sanitizer does
5
+ * not inspect `body`, only the `from` attribution fields.
6
+ */
7
+ body: Readonly<Record<string, unknown>>;
8
+ /**
9
+ * Authoritative identity claim resolved from the bearer token. Required:
10
+ * without a token subject, cloud cannot attribute the message, and the
11
+ * ingress path rejects the request.
12
+ */
13
+ authoritativeFrom: string;
14
+ }
15
+ export interface PhoneChannelIngressEnvelope {
16
+ /**
17
+ * Sanitised request body with any body-level `from` stripped. Everything
18
+ * else the caller supplied is preserved so downstream code (channel.send,
19
+ * routing) can consume arbitrary payload fields.
20
+ */
21
+ body: Record<string, unknown>;
22
+ /** Authoritative attribution string (`{workspace_id}:phone:{device_id}`). */
23
+ from: string;
24
+ /** Always `'token'` — cloud-safe invariant per ADR-013 §5. */
25
+ from_source: typeof ENVELOPE_FROM_SOURCE_TOKEN;
26
+ }
27
+ export declare class PhoneChannelIngressError extends Error {
28
+ readonly statusCode: number;
29
+ constructor(message: string, statusCode: number);
30
+ }
31
+ /**
32
+ * Sanitize an inbound phone-channel request. Returns a cleaned envelope with
33
+ * the authoritative `from` baked in. Throws `PhoneChannelIngressError` (HTTP
34
+ * 400) when the authoritative `from` is missing — the surface translates the
35
+ * error to a 400/403 response.
36
+ */
37
+ export declare function sanitizePhoneChannelIngress(input: PhoneChannelIngressInput): PhoneChannelIngressEnvelope;
38
+ /**
39
+ * Convenience: reports whether the given `from` subject matches the
40
+ * phone-device grammar (`{workspace_id}:phone:{device_id}`). Useful to
41
+ * tell workspace-scoped actors from phone-device actors in the audit log
42
+ * without reaching for the enrollment parser.
43
+ */
44
+ export declare function isPhoneSubject(subject: string): boolean;
45
+ export {};
46
+ //# sourceMappingURL=channel-ingress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-ingress.d.ts","sourceRoot":"","sources":["../channel-ingress.ts"],"names":[],"mappings":"AAyBA,QAAA,MAAM,0BAA0B,EAAG,OAAgB,CAAC;AAEpD,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACxC;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,2BAA2B;IAC1C;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,WAAW,EAAE,OAAO,0BAA0B,CAAC;CAChD;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAKhD;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,wBAAwB,GAC9B,2BAA2B,CA2B7B;AAkBD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAavD"}
@@ -0,0 +1,90 @@
1
+ // Copyright (c) 2026 Hellmai Ltd
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+ /**
4
+ * WU-2731 (INIT-060 phase 3, ADR-013 §5 Identity):
5
+ * Pure inbound-channel ingress sanitizer.
6
+ *
7
+ * ADR-013 §5 rules, enforced here:
8
+ *
9
+ * - The authoritative `from` value for an inbound phone POST comes from the
10
+ * authenticated token subject (`{workspace_id}:phone:{device_id}`). Cloud
11
+ * MUST NOT trust a `from` field supplied in the request body.
12
+ *
13
+ * - Body-supplied `from` (and any alias under `metadata.from`) is stripped
14
+ * before the envelope reaches domain code. The surface that calls this
15
+ * module is expected to pass the resolved `from` separately; attempting to
16
+ * ingest a body-only envelope (no authoritative from) fails closed.
17
+ *
18
+ * The module is HTTP-independent: both the kernel tool-api surface and the
19
+ * future control-plane adapter (WU-2737) call the same sanitizer so the
20
+ * ignore-body-from rule is enforced in one place.
21
+ */
22
+ const ENVELOPE_BODY_FIELD_FROM = 'from';
23
+ const ENVELOPE_METADATA_KEY = 'metadata';
24
+ const ENVELOPE_FROM_SOURCE_TOKEN = 'token';
25
+ export class PhoneChannelIngressError extends Error {
26
+ statusCode;
27
+ constructor(message, statusCode) {
28
+ super(message);
29
+ this.name = 'PhoneChannelIngressError';
30
+ this.statusCode = statusCode;
31
+ }
32
+ }
33
+ /**
34
+ * Sanitize an inbound phone-channel request. Returns a cleaned envelope with
35
+ * the authoritative `from` baked in. Throws `PhoneChannelIngressError` (HTTP
36
+ * 400) when the authoritative `from` is missing — the surface translates the
37
+ * error to a 400/403 response.
38
+ */
39
+ export function sanitizePhoneChannelIngress(input) {
40
+ if (typeof input.authoritativeFrom !== 'string' || input.authoritativeFrom.length === 0) {
41
+ throw new PhoneChannelIngressError('Inbound phone channel requires authoritative from (token subject); body-only attribution is rejected.', 400);
42
+ }
43
+ const sanitizedBody = stripKey(input.body, ENVELOPE_BODY_FIELD_FROM);
44
+ const rawMetadata = sanitizedBody[ENVELOPE_METADATA_KEY];
45
+ if (rawMetadata !== null &&
46
+ typeof rawMetadata === 'object' &&
47
+ !Array.isArray(rawMetadata) &&
48
+ ENVELOPE_BODY_FIELD_FROM in rawMetadata) {
49
+ sanitizedBody[ENVELOPE_METADATA_KEY] = stripKey(rawMetadata, ENVELOPE_BODY_FIELD_FROM);
50
+ }
51
+ return {
52
+ body: sanitizedBody,
53
+ from: input.authoritativeFrom,
54
+ from_source: ENVELOPE_FROM_SOURCE_TOKEN,
55
+ };
56
+ }
57
+ /**
58
+ * Copy `record` omitting the given key. Implemented with a filtered
59
+ * `Object.entries` rather than `delete` to satisfy the linter's ban on
60
+ * dynamic-delete (which would otherwise be a no-op for literal keys but
61
+ * fails the rule uniformly).
62
+ */
63
+ function stripKey(record, key) {
64
+ const result = {};
65
+ for (const [entryKey, entryValue] of Object.entries(record)) {
66
+ if (entryKey !== key) {
67
+ result[entryKey] = entryValue;
68
+ }
69
+ }
70
+ return result;
71
+ }
72
+ /**
73
+ * Convenience: reports whether the given `from` subject matches the
74
+ * phone-device grammar (`{workspace_id}:phone:{device_id}`). Useful to
75
+ * tell workspace-scoped actors from phone-device actors in the audit log
76
+ * without reaching for the enrollment parser.
77
+ */
78
+ export function isPhoneSubject(subject) {
79
+ const parts = subject.split(':');
80
+ if (parts.length !== 3) {
81
+ return false;
82
+ }
83
+ const [workspace, kind, device] = parts;
84
+ return (kind === 'phone' &&
85
+ typeof workspace === 'string' &&
86
+ workspace.length > 0 &&
87
+ typeof device === 'string' &&
88
+ device.length > 0);
89
+ }
90
+ //# sourceMappingURL=channel-ingress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-ingress.js","sourceRoot":"","sources":["../channel-ingress.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,wBAAwB,GAAG,MAAe,CAAC;AACjD,MAAM,qBAAqB,GAAG,UAAmB,CAAC;AAClD,MAAM,0BAA0B,GAAG,OAAgB,CAAC;AA6BpD,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,UAAU,CAAS;IAE5B,YAAY,OAAe,EAAE,UAAkB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAA+B;IAE/B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,wBAAwB,CAChC,uGAAuG,EACvG,GAAG,CACJ,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAAC;IACzD,IACE,WAAW,KAAK,IAAI;QACpB,OAAO,WAAW,KAAK,QAAQ;QAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAC3B,wBAAwB,IAAK,WAAuC,EACpE,CAAC;QACD,aAAa,CAAC,qBAAqB,CAAC,GAAG,QAAQ,CAC7C,WAAsC,EACtC,wBAAwB,CACzB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,KAAK,CAAC,iBAAiB;QAC7B,WAAW,EAAE,0BAA0B;KACxC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,MAAyC,EAAE,GAAW;IACtE,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;IACxC,OAAO,CACL,IAAI,KAAK,OAAO;QAChB,OAAO,SAAS,KAAK,QAAQ;QAC7B,SAAS,CAAC,MAAM,GAAG,CAAC;QACpB,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,CAAC,MAAM,GAAG,CAAC,CAClB,CAAC;AACJ,CAAC"}
@@ -20,12 +20,29 @@ declare const TOOL_PERMISSIONS_MAP: {
20
20
  readonly 'routine:update': "write";
21
21
  readonly 'routine:delete': "admin";
22
22
  readonly 'routine:run': "read";
23
+ readonly 'sidekick:routine:commit_plan': "write";
23
24
  readonly 'sidekick:init': "write";
24
25
  readonly 'sidekick:status': "read";
25
26
  readonly 'sidekick:export': "read";
26
27
  };
27
28
  type SidekickToolName = keyof typeof TOOL_PERMISSIONS_MAP;
28
29
  export declare const SIDEKICK_TOOL_NAMES: SidekickToolName[];
30
+ /**
31
+ * WU-2780 (INIT-060, ADR-013 §6): sidekick pack tools that MAY be exposed on
32
+ * the HTTP tool-api surface (POST /tools/:name). Mirrors the
33
+ * `REMOTE_CALLABLE_TOOLS` export pattern in sibling packs (software-delivery,
34
+ * agent-runtime) so integrators have a single source of truth when wiring
35
+ * the surface allowlist. ADR-013 §6 runtime-only tools are excluded by
36
+ * construction; the HTTP tool-api also enforces this fail-closed at router
37
+ * construction.
38
+ */
39
+ export declare const SIDEKICK_REMOTE_CALLABLE_TOOLS: readonly SidekickToolName[];
40
+ /**
41
+ * WU-2780 (INIT-060, ADR-013 §6): returns a fresh copy of the ordered
42
+ * remote-callable tool name list. Keeps the export immutable for callers
43
+ * that prefer arrays over readonly tuples.
44
+ */
45
+ export declare function getSidekickRemoteCallableToolNames(): SidekickToolName[];
29
46
  export declare const SIDEKICK_MANIFEST: SidekickPackManifest;
30
47
  export declare function getSidekickManifestToolByName(name: string): SidekickManifestTool | undefined;
31
48
  export declare function getSidekickToolCount(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../manifest.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AA6B9B,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;CA6ByB,CAAC;AAEpD,KAAK,gBAAgB,GAAG,MAAM,OAAO,oBAAoB,CAAC;AA+U1D,eAAO,MAAM,mBAAmB,EAAwC,gBAAgB,EAAE,CAAC;AAsB3F,eAAO,MAAM,iBAAiB,EAAE,oBAE/B,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAE5F;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../manifest.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AA8B9B,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;CAiCyB,CAAC;AAEpD,KAAK,gBAAgB,GAAG,MAAM,OAAO,oBAAoB,CAAC;AA4W1D,eAAO,MAAM,mBAAmB,EAAwC,gBAAgB,EAAE,CAAC;AAc3F;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B,EAAE,SAAS,gBAAgB,EAGnE,CAAC;AAEJ;;;;GAIG;AACH,wBAAgB,kCAAkC,IAAI,gBAAgB,EAAE,CAEvE;AA2BD,eAAO,MAAM,iBAAiB,EAAE,oBAE/B,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAE5F;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
package/dist/manifest.js CHANGED
@@ -3,6 +3,7 @@
3
3
  import { SIDEKICK_PACK_ID, SIDEKICK_PACK_VERSION, SIDEKICK_POLICY_ID_PREFIX } from './constants.js';
4
4
  import { MANIFEST_POLICY_DECISIONS, MANIFEST_POLICY_TRIGGERS, SidekickManifestSchema, } from './manifest-schema.js';
5
5
  import { TOOL_PERMISSIONS, TOOL_SCOPE_ACCESS, TOOL_SCOPE_TYPES, } from './tools/types.js';
6
+ import { SIDEKICK_EVENT_KIND_VALUES } from './sidekick-events.js';
6
7
  // ---------------------------------------------------------------------------
7
8
  // Scope constants
8
9
  // ---------------------------------------------------------------------------
@@ -44,6 +45,10 @@ const TOOL_PERMISSIONS_MAP = {
44
45
  'routine:update': TOOL_PERMISSIONS.WRITE,
45
46
  'routine:delete': TOOL_PERMISSIONS.ADMIN,
46
47
  'routine:run': TOOL_PERMISSIONS.READ, // plan-only, no execution
48
+ // WU-2738 (INIT-060, ADR-013 §6 governance): plan-to-commit flow routed
49
+ // through agent:execute-turn. Runtime-callable tool, no top-level
50
+ // surface -- the governed dispatch is the only path to commit a plan.
51
+ 'sidekick:routine:commit_plan': TOOL_PERMISSIONS.WRITE,
47
52
  // System tools (3)
48
53
  'sidekick:init': TOOL_PERMISSIONS.WRITE,
49
54
  'sidekick:status': TOOL_PERMISSIONS.READ,
@@ -53,6 +58,7 @@ const TASK_TOOLS_ENTRY = 'tool-impl/task-tools.ts';
53
58
  const MEMORY_TOOLS_ENTRY = 'tool-impl/memory-tools.ts';
54
59
  const CHANNEL_TOOLS_ENTRY = 'tool-impl/channel-tools.ts';
55
60
  const ROUTINE_TOOLS_ENTRY = 'tool-impl/routine-tools.ts';
61
+ const ROUTINE_COMMIT_TOOL_ENTRY = 'tool-impl/routine-commit.ts';
56
62
  const SYSTEM_TOOLS_ENTRY = 'tool-impl/system-tools.ts';
57
63
  const POLICY_FACTORY_ENTRY = 'policy-factory.ts#createSidekickPolicyFactory';
58
64
  const TOOL_ENTRIES = {
@@ -76,6 +82,7 @@ const TOOL_ENTRIES = {
76
82
  'routine:update': ROUTINE_TOOLS_ENTRY,
77
83
  'routine:delete': ROUTINE_TOOLS_ENTRY,
78
84
  'routine:run': ROUTINE_TOOLS_ENTRY,
85
+ 'sidekick:routine:commit_plan': ROUTINE_COMMIT_TOOL_ENTRY,
79
86
  'sidekick:init': SYSTEM_TOOLS_ENTRY,
80
87
  'sidekick:status': SYSTEM_TOOLS_ENTRY,
81
88
  'sidekick:export': SYSTEM_TOOLS_ENTRY,
@@ -319,6 +326,23 @@ const TOOL_INPUT_SCHEMAS = {
319
326
  required: ['id'],
320
327
  additionalProperties: false,
321
328
  },
329
+ 'sidekick:routine:commit_plan': {
330
+ type: 'object',
331
+ properties: {
332
+ plan_id: { type: 'string', minLength: 1 },
333
+ attestation: {
334
+ type: 'object',
335
+ properties: {
336
+ actor: { type: 'string', minLength: 1 },
337
+ reason: { type: 'string', minLength: 1 },
338
+ },
339
+ required: ['actor', 'reason'],
340
+ additionalProperties: true,
341
+ },
342
+ },
343
+ required: ['plan_id', 'attestation'],
344
+ additionalProperties: false,
345
+ },
322
346
  'sidekick:init': {
323
347
  type: 'object',
324
348
  properties: {},
@@ -358,8 +382,16 @@ function resolveRequiredScopes(permission) {
358
382
  }
359
383
  return [SIDEKICK_SCOPE_READ, SIDEKICK_SCOPE_WRITE];
360
384
  }
385
+ // WU-2738 (INIT-060, ADR-013 §6 governance): tool-level approval surface
386
+ // declarations. Empty array means the default policy permits dispatch; a
387
+ // populated array signals the cloud conductor to render an approval prompt
388
+ // before the governed `agent:execute-turn` dispatch invokes the tool.
389
+ const TOOL_REQUIRED_APPROVALS = {
390
+ 'sidekick:routine:commit_plan': [],
391
+ };
361
392
  function buildTool(name) {
362
393
  const permission = TOOL_PERMISSIONS_MAP[name];
394
+ const requiredApprovals = TOOL_REQUIRED_APPROVALS[name];
363
395
  return {
364
396
  name,
365
397
  entry: TOOL_ENTRIES[name],
@@ -367,12 +399,42 @@ function buildTool(name) {
367
399
  required_scopes: resolveRequiredScopes(permission),
368
400
  input_schema: TOOL_INPUT_SCHEMAS[name],
369
401
  output_schema: GENERIC_OUTPUT_SCHEMA,
402
+ ...(requiredApprovals !== undefined ? { required_approvals: requiredApprovals } : {}),
370
403
  };
371
404
  }
372
405
  // ---------------------------------------------------------------------------
373
406
  // Exported manifest
374
407
  // ---------------------------------------------------------------------------
375
408
  export const SIDEKICK_TOOL_NAMES = Object.keys(TOOL_PERMISSIONS_MAP);
409
+ /**
410
+ * WU-2780 (ADR-013 §6 governance): tool names the sidekick pack forbids from
411
+ * the top-level remote surface (POST /tools/:name). These tools remain
412
+ * registered as runtime-callable — `agent:execute-turn` dispatches them via
413
+ * the governed manifest path — but any HTTP allowlist that includes them
414
+ * MUST be rejected fail-closed. ADR-013 §6 explicitly names `channel.send`:
415
+ * "The sidekick pack does NOT expose `channel.send` as a top-level surface
416
+ * the agent can call outside a turn. It is registered only as a
417
+ * runtime-callable tool."
418
+ */
419
+ const ADR_013_SECTION_6_RUNTIME_ONLY_TOOLS = ['channel:send'];
420
+ /**
421
+ * WU-2780 (INIT-060, ADR-013 §6): sidekick pack tools that MAY be exposed on
422
+ * the HTTP tool-api surface (POST /tools/:name). Mirrors the
423
+ * `REMOTE_CALLABLE_TOOLS` export pattern in sibling packs (software-delivery,
424
+ * agent-runtime) so integrators have a single source of truth when wiring
425
+ * the surface allowlist. ADR-013 §6 runtime-only tools are excluded by
426
+ * construction; the HTTP tool-api also enforces this fail-closed at router
427
+ * construction.
428
+ */
429
+ export const SIDEKICK_REMOTE_CALLABLE_TOOLS = SIDEKICK_TOOL_NAMES.filter((name) => !ADR_013_SECTION_6_RUNTIME_ONLY_TOOLS.includes(name));
430
+ /**
431
+ * WU-2780 (INIT-060, ADR-013 §6): returns a fresh copy of the ordered
432
+ * remote-callable tool name list. Keeps the export immutable for callers
433
+ * that prefer arrays over readonly tuples.
434
+ */
435
+ export function getSidekickRemoteCallableToolNames() {
436
+ return [...SIDEKICK_REMOTE_CALLABLE_TOOLS];
437
+ }
376
438
  const SIDEKICK_MANIFEST_TEMPLATE = {
377
439
  id: SIDEKICK_PACK_ID,
378
440
  version: SIDEKICK_PACK_VERSION,
@@ -389,8 +451,13 @@ const SIDEKICK_MANIFEST_TEMPLATE = {
389
451
  },
390
452
  ],
391
453
  evidence_types: ['sidekick.audited.tool-call'],
454
+ emitted_event_kinds: [...SIDEKICK_EVENT_KIND_VALUES],
392
455
  state_aliases: {},
393
456
  lane_templates: [],
457
+ // WU-2735 (INIT-060 WU-7a, ADR-013 §ChannelBridge): the sidekick pack
458
+ // requires the `sidekick-channel` transport surface. The kernel refuses
459
+ // to activate the pack if the surface isn't registered at startup.
460
+ surfaces_required: ['sidekick-channel'],
394
461
  };
395
462
  export const SIDEKICK_MANIFEST = SidekickManifestSchema.parse(SIDEKICK_MANIFEST_TEMPLATE);
396
463
  export function getSidekickManifestToolByName(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,166 @@
1
+ import { type ChannelMessageRecord, type ChannelRecord, type MemoryRecord, type RoutineRecord, type SidekickStores, type TaskRecord } from './tool-impl/storage.js';
2
+ declare const SCHEMA_VERSION_V2: 2;
3
+ export declare const SIDEKICK_CHANNEL_ID: "sidekick";
4
+ export declare const SIDEKICK_EVENT_KINDS: {
5
+ readonly TASK_CREATED: "sidekick:task_created";
6
+ readonly TASK_COMPLETED: "sidekick:task_completed";
7
+ readonly TASK_SCHEDULED: "sidekick:task_scheduled";
8
+ readonly TASK_SNOOZED: "sidekick:task_snoozed";
9
+ readonly MEMORY_STORED: "sidekick:memory_stored";
10
+ readonly MEMORY_RECALLED: "sidekick:memory_recalled";
11
+ readonly MEMORY_FORGOTTEN: "sidekick:memory_forgotten";
12
+ readonly CHANNEL_MESSAGE_SENT: "sidekick:channel_message_sent";
13
+ readonly CHANNEL_MESSAGE_RECEIVED: "sidekick:channel_message_received";
14
+ readonly CHANNEL_BRIDGE_CONNECTED: "sidekick:channel_bridge_connected";
15
+ readonly CHANNEL_BRIDGE_DISCONNECTED: "sidekick:channel_bridge_disconnected";
16
+ readonly ROUTINE_PLANNED: "sidekick:routine_planned";
17
+ readonly ROUTINE_COMMITTED: "sidekick:routine_committed";
18
+ readonly ROUTINE_EXECUTED: "sidekick:routine_executed";
19
+ readonly ROUTINE_STEP_FAILED: "sidekick:routine_step_failed";
20
+ readonly STATE_REHYDRATED: "sidekick:state_rehydrated";
21
+ };
22
+ export declare const SIDEKICK_EVENT_KIND_VALUES: readonly ["sidekick:task_created", "sidekick:task_completed", "sidekick:task_scheduled", "sidekick:task_snoozed", "sidekick:memory_stored", "sidekick:memory_recalled", "sidekick:memory_forgotten", "sidekick:channel_message_sent", "sidekick:channel_message_received", "sidekick:channel_bridge_connected", "sidekick:channel_bridge_disconnected", "sidekick:routine_planned", "sidekick:routine_committed", "sidekick:routine_executed", "sidekick:routine_step_failed", "sidekick:state_rehydrated"];
23
+ export type SidekickEventKind = (typeof SIDEKICK_EVENT_KIND_VALUES)[number];
24
+ export type SidekickBackpressurePolicy = 'queue-with-replay' | 'ephemeral';
25
+ export declare const SIDEKICK_EVENT_BACKPRESSURE_POLICY: Record<SidekickEventKind, SidekickBackpressurePolicy>;
26
+ interface SidekickEventEnvelope {
27
+ schema_version: typeof SCHEMA_VERSION_V2;
28
+ timestamp: string;
29
+ event_id: string;
30
+ channel_id: typeof SIDEKICK_CHANNEL_ID;
31
+ seq: number;
32
+ }
33
+ export interface TaskCreatedEvent extends SidekickEventEnvelope {
34
+ kind: typeof SIDEKICK_EVENT_KINDS.TASK_CREATED;
35
+ task: TaskRecord;
36
+ }
37
+ export interface TaskCompletedEvent extends SidekickEventEnvelope {
38
+ kind: typeof SIDEKICK_EVENT_KINDS.TASK_COMPLETED;
39
+ task: TaskRecord;
40
+ }
41
+ export interface TaskScheduledEvent extends SidekickEventEnvelope {
42
+ kind: typeof SIDEKICK_EVENT_KINDS.TASK_SCHEDULED;
43
+ task: TaskRecord;
44
+ }
45
+ export interface TaskSnoozedEvent extends SidekickEventEnvelope {
46
+ kind: typeof SIDEKICK_EVENT_KINDS.TASK_SNOOZED;
47
+ task_id: string;
48
+ previous_due_at: string | null;
49
+ due_at: string;
50
+ }
51
+ export interface MemoryStoredEvent extends SidekickEventEnvelope {
52
+ kind: typeof SIDEKICK_EVENT_KINDS.MEMORY_STORED;
53
+ memory: MemoryRecord;
54
+ }
55
+ export interface MemoryRecalledEvent extends SidekickEventEnvelope {
56
+ kind: typeof SIDEKICK_EVENT_KINDS.MEMORY_RECALLED;
57
+ query: string | null;
58
+ count: number;
59
+ memory_ids: string[];
60
+ }
61
+ export interface MemoryForgottenEvent extends SidekickEventEnvelope {
62
+ kind: typeof SIDEKICK_EVENT_KINDS.MEMORY_FORGOTTEN;
63
+ memory_id: string;
64
+ }
65
+ export interface ChannelMessageSentEvent extends SidekickEventEnvelope {
66
+ kind: typeof SIDEKICK_EVENT_KINDS.CHANNEL_MESSAGE_SENT;
67
+ message: Record<string, unknown>;
68
+ }
69
+ export interface ChannelMessageReceivedEvent extends SidekickEventEnvelope {
70
+ kind: typeof SIDEKICK_EVENT_KINDS.CHANNEL_MESSAGE_RECEIVED;
71
+ channel: string;
72
+ count: number;
73
+ provider?: string;
74
+ }
75
+ export interface ChannelBridgeConnectedEvent extends SidekickEventEnvelope {
76
+ kind: typeof SIDEKICK_EVENT_KINDS.CHANNEL_BRIDGE_CONNECTED;
77
+ channel: ChannelRecord;
78
+ }
79
+ export interface ChannelBridgeDisconnectedEvent extends SidekickEventEnvelope {
80
+ kind: typeof SIDEKICK_EVENT_KINDS.CHANNEL_BRIDGE_DISCONNECTED;
81
+ bridge_id: string;
82
+ deleted_message_count: number;
83
+ }
84
+ export interface RoutinePlannedEvent extends SidekickEventEnvelope {
85
+ kind: typeof SIDEKICK_EVENT_KINDS.ROUTINE_PLANNED;
86
+ routine: RoutineRecord;
87
+ }
88
+ export interface RoutineCommittedEvent extends SidekickEventEnvelope {
89
+ kind: typeof SIDEKICK_EVENT_KINDS.ROUTINE_COMMITTED;
90
+ routine: RoutineRecord;
91
+ /**
92
+ * WU-2738 (INIT-060, ADR-013 §6 governance): content-hash of the commit
93
+ * envelope carried when the event is emitted by the governed
94
+ * `sidekick:routine:commit_plan` tool. PII stays inside the local
95
+ * envelope; cloud correlates on the hash. Optional so the existing
96
+ * update-triggered emission (routine:update) stays PII-free.
97
+ */
98
+ envelope_content_hash?: string;
99
+ }
100
+ export interface RoutineExecutedEvent extends SidekickEventEnvelope {
101
+ kind: typeof SIDEKICK_EVENT_KINDS.ROUTINE_EXECUTED;
102
+ routine_id: string;
103
+ name: string;
104
+ step_count: number;
105
+ plan_only: true;
106
+ }
107
+ export interface RoutineStepFailedEvent extends SidekickEventEnvelope {
108
+ kind: typeof SIDEKICK_EVENT_KINDS.ROUTINE_STEP_FAILED;
109
+ step_index: number;
110
+ reason: string;
111
+ routine_id?: string;
112
+ routine_name?: string;
113
+ }
114
+ export interface StateRehydratedEvent extends SidekickEventEnvelope {
115
+ kind: typeof SIDEKICK_EVENT_KINDS.STATE_REHYDRATED;
116
+ snapshot: SidekickStores;
117
+ }
118
+ export type SidekickEvent = TaskCreatedEvent | TaskCompletedEvent | TaskScheduledEvent | TaskSnoozedEvent | MemoryStoredEvent | MemoryRecalledEvent | MemoryForgottenEvent | ChannelMessageSentEvent | ChannelMessageReceivedEvent | ChannelBridgeConnectedEvent | ChannelBridgeDisconnectedEvent | RoutinePlannedEvent | RoutineCommittedEvent | RoutineExecutedEvent | RoutineStepFailedEvent | StateRehydratedEvent;
119
+ export declare function resetSidekickSeqCounter(): void;
120
+ export declare function readSidekickOrgId(config: unknown): string | undefined;
121
+ export declare function emitSidekickEvent<TEvent extends SidekickEvent>(event: TEvent): Promise<TEvent>;
122
+ export declare function snapshotSidekickState(): Promise<SidekickStores>;
123
+ export declare function buildTaskCreatedEvent(task: TaskRecord): TaskCreatedEvent;
124
+ export declare function buildTaskCompletedEvent(task: TaskRecord): TaskCompletedEvent;
125
+ export declare function buildTaskScheduledEvent(task: TaskRecord): TaskScheduledEvent;
126
+ export declare function buildTaskSnoozedEvent(input: {
127
+ task_id: string;
128
+ previous_due_at: string | null;
129
+ due_at: string;
130
+ }): TaskSnoozedEvent;
131
+ export declare function buildMemoryStoredEvent(memory: MemoryRecord): MemoryStoredEvent;
132
+ export declare function buildMemoryRecalledEvent(input: {
133
+ query: string | null;
134
+ memories: MemoryRecord[];
135
+ }): MemoryRecalledEvent;
136
+ export declare function buildMemoryForgottenEvent(memory_id: string): MemoryForgottenEvent;
137
+ export declare function buildChannelMessageSentEvent(message: Record<string, unknown>): ChannelMessageSentEvent;
138
+ export declare function buildChannelMessageReceivedEvent(input: {
139
+ channel: string;
140
+ count: number;
141
+ provider?: string;
142
+ }): ChannelMessageReceivedEvent;
143
+ export declare function buildChannelBridgeConnectedEvent(channel: ChannelRecord): ChannelBridgeConnectedEvent;
144
+ export declare function buildChannelBridgeDisconnectedEvent(input: {
145
+ bridge_id: string;
146
+ deleted_message_count: number;
147
+ }): ChannelBridgeDisconnectedEvent;
148
+ export declare function buildRoutinePlannedEvent(routine: RoutineRecord): RoutinePlannedEvent;
149
+ export declare function buildRoutineCommittedEvent(routine: RoutineRecord, options?: {
150
+ envelope_content_hash?: string;
151
+ }): RoutineCommittedEvent;
152
+ export declare function buildRoutineExecutedEvent(input: {
153
+ routine_id: string;
154
+ name: string;
155
+ step_count: number;
156
+ }): RoutineExecutedEvent;
157
+ export declare function buildRoutineStepFailedEvent(input: {
158
+ step_index: number;
159
+ reason: string;
160
+ routine_id?: string;
161
+ routine_name?: string;
162
+ }): RoutineStepFailedEvent;
163
+ export declare function buildStateRehydratedEvent(snapshot: SidekickStores): StateRehydratedEvent;
164
+ export declare function serializeLocalChannelMessage(message: ChannelMessageRecord, channelName?: string): Record<string, unknown>;
165
+ export {};
166
+ //# sourceMappingURL=sidekick-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidekick-events.d.ts","sourceRoot":"","sources":["../sidekick-events.ts"],"names":[],"mappings":"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"}