@pellux/goodvibes-sdk 0.33.37 → 0.34.0

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 (83) hide show
  1. package/dist/client-auth/control-plane-auth-snapshot.d.ts +23 -0
  2. package/dist/client-auth/control-plane-auth-snapshot.d.ts.map +1 -1
  3. package/dist/client-auth/oauth-types.d.ts +18 -0
  4. package/dist/client-auth/oauth-types.d.ts.map +1 -1
  5. package/dist/client-auth/types.d.ts +26 -0
  6. package/dist/client-auth/types.d.ts.map +1 -1
  7. package/dist/client.d.ts +22 -0
  8. package/dist/client.d.ts.map +1 -1
  9. package/dist/contracts/artifacts/operator-contract.json +1463 -10
  10. package/dist/events/knowledge.d.ts +31 -0
  11. package/dist/events/knowledge.d.ts.map +1 -1
  12. package/dist/events/tasks.d.ts +58 -0
  13. package/dist/events/tasks.d.ts.map +1 -1
  14. package/dist/events/transport.d.ts +60 -0
  15. package/dist/events/transport.d.ts.map +1 -1
  16. package/dist/platform/agents/wrfc-config.d.ts +6 -0
  17. package/dist/platform/agents/wrfc-config.d.ts.map +1 -1
  18. package/dist/platform/agents/wrfc-config.js +6 -0
  19. package/dist/platform/agents/wrfc-controller.d.ts +74 -0
  20. package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
  21. package/dist/platform/agents/wrfc-controller.js +368 -9
  22. package/dist/platform/agents/wrfc-reporting.d.ts +60 -0
  23. package/dist/platform/agents/wrfc-reporting.d.ts.map +1 -1
  24. package/dist/platform/agents/wrfc-reporting.js +131 -7
  25. package/dist/platform/agents/wrfc-types.d.ts +12 -0
  26. package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
  27. package/dist/platform/config/manager.d.ts +11 -0
  28. package/dist/platform/config/manager.d.ts.map +1 -1
  29. package/dist/platform/config/manager.js +17 -1
  30. package/dist/platform/config/schema-domain-core.d.ts +2 -0
  31. package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
  32. package/dist/platform/config/schema-domain-core.js +17 -0
  33. package/dist/platform/config/schema-shared.d.ts +6 -0
  34. package/dist/platform/config/schema-shared.d.ts.map +1 -1
  35. package/dist/platform/config/schema-types.d.ts +9 -2
  36. package/dist/platform/config/schema-types.d.ts.map +1 -1
  37. package/dist/platform/control-plane/method-catalog-calendar.d.ts +9 -0
  38. package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -0
  39. package/dist/platform/control-plane/method-catalog-calendar.js +117 -0
  40. package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
  41. package/dist/platform/control-plane/method-catalog-channels.js +174 -0
  42. package/dist/platform/control-plane/method-catalog-control-automation.d.ts.map +1 -1
  43. package/dist/platform/control-plane/method-catalog-control-automation.js +10 -4
  44. package/dist/platform/control-plane/method-catalog-email.d.ts +9 -0
  45. package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -0
  46. package/dist/platform/control-plane/method-catalog-email.js +101 -0
  47. package/dist/platform/control-plane/method-catalog-knowledge.js +4 -4
  48. package/dist/platform/control-plane/method-catalog-runtime.d.ts.map +1 -1
  49. package/dist/platform/control-plane/method-catalog-runtime.js +13 -0
  50. package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
  51. package/dist/platform/control-plane/method-catalog.js +4 -0
  52. package/dist/platform/control-plane/routes/automation.js +2 -2
  53. package/dist/platform/control-plane/routes/operator.d.ts.map +1 -1
  54. package/dist/platform/control-plane/routes/operator.js +2 -0
  55. package/dist/platform/control-plane/routes/sessions.js +1 -1
  56. package/dist/platform/daemon/http/router.d.ts.map +1 -1
  57. package/dist/platform/daemon/http/router.js +12 -2
  58. package/dist/platform/daemon/http-listener.d.ts +17 -0
  59. package/dist/platform/daemon/http-listener.d.ts.map +1 -1
  60. package/dist/platform/daemon/http-listener.js +186 -7
  61. package/dist/platform/knowledge/knowledge-api.d.ts +1 -1
  62. package/dist/platform/knowledge/knowledge-api.d.ts.map +1 -1
  63. package/dist/platform/knowledge/knowledge-api.js +1 -1
  64. package/dist/platform/runtime/store/helpers/reducers/lifecycle.d.ts.map +1 -1
  65. package/dist/platform/runtime/store/helpers/reducers/lifecycle.js +4 -0
  66. package/dist/platform/runtime/store/helpers/reducers/sync.d.ts.map +1 -1
  67. package/dist/platform/runtime/store/helpers/reducers/sync.js +4 -0
  68. package/dist/platform/security/http-auth.d.ts.map +1 -1
  69. package/dist/platform/security/http-auth.js +11 -4
  70. package/dist/platform/security/user-auth.d.ts +98 -2
  71. package/dist/platform/security/user-auth.d.ts.map +1 -1
  72. package/dist/platform/security/user-auth.js +195 -18
  73. package/dist/platform/sessions/manager.d.ts +19 -2
  74. package/dist/platform/sessions/manager.d.ts.map +1 -1
  75. package/dist/platform/sessions/manager.js +43 -6
  76. package/dist/platform/state/memory-registry.d.ts +1 -1
  77. package/dist/platform/state/memory-registry.d.ts.map +1 -1
  78. package/dist/platform/state/memory-registry.js +2 -2
  79. package/dist/platform/state/memory-store.d.ts +1 -1
  80. package/dist/platform/state/memory-store.d.ts.map +1 -1
  81. package/dist/platform/state/memory-store.js +2 -2
  82. package/dist/platform/version.js +1 -1
  83. package/package.json +9 -9
@@ -0,0 +1,9 @@
1
+ import type { GatewayMethodDescriptor } from './method-catalog-shared.js';
2
+ /**
3
+ * Calendar operator methods — CalDAV-backed event read/write and iCalendar
4
+ * import/export through the standard operator method protocol. Daemon-backed;
5
+ * the SDK publishes the typed contract surface (no internal handler). Local .ics
6
+ * parsing is handled agent-side and does not depend on these contracts.
7
+ */
8
+ export declare const builtinGatewayCalendarMethodDescriptors: readonly GatewayMethodDescriptor[];
9
+ //# sourceMappingURL=method-catalog-calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-catalog-calendar.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAiC1E;;;;;GAKG;AACH,eAAO,MAAM,uCAAuC,EAAE,SAAS,uBAAuB,EAyFrF,CAAC"}
@@ -0,0 +1,117 @@
1
+ import { STRING_SCHEMA, NUMBER_SCHEMA, arraySchema, objectSchema, listOutputSchema, bodyEnvelopeSchema, methodDescriptor, } from './method-catalog-shared.js';
2
+ const CALENDAR_EVENT_SUMMARY_SCHEMA = objectSchema({
3
+ id: STRING_SCHEMA,
4
+ title: STRING_SCHEMA,
5
+ start: STRING_SCHEMA,
6
+ end: STRING_SCHEMA,
7
+ location: STRING_SCHEMA,
8
+ description: STRING_SCHEMA,
9
+ attendees: arraySchema(STRING_SCHEMA),
10
+ }, ['id', 'title', 'start', 'end']);
11
+ const CALENDAR_EVENT_DETAIL_SCHEMA = objectSchema({
12
+ id: STRING_SCHEMA,
13
+ uid: STRING_SCHEMA,
14
+ title: STRING_SCHEMA,
15
+ start: STRING_SCHEMA,
16
+ end: STRING_SCHEMA,
17
+ location: STRING_SCHEMA,
18
+ description: STRING_SCHEMA,
19
+ attendees: arraySchema(STRING_SCHEMA),
20
+ recurrence: STRING_SCHEMA,
21
+ }, ['id', 'title', 'start', 'end']);
22
+ /**
23
+ * Calendar operator methods — CalDAV-backed event read/write and iCalendar
24
+ * import/export through the standard operator method protocol. Daemon-backed;
25
+ * the SDK publishes the typed contract surface (no internal handler). Local .ics
26
+ * parsing is handled agent-side and does not depend on these contracts.
27
+ */
28
+ export const builtinGatewayCalendarMethodDescriptors = [
29
+ methodDescriptor({
30
+ id: 'calendar.events.list',
31
+ title: 'List Calendar Events',
32
+ description: 'Return calendar event summaries from the configured CalDAV calendar within an optional time window.',
33
+ category: 'calendar',
34
+ scopes: ['read:calendar'],
35
+ http: { method: 'GET', path: '/api/calendar/events' },
36
+ inputSchema: objectSchema({
37
+ calendarId: STRING_SCHEMA,
38
+ from: STRING_SCHEMA,
39
+ to: STRING_SCHEMA,
40
+ limit: NUMBER_SCHEMA,
41
+ }),
42
+ outputSchema: listOutputSchema('events', CALENDAR_EVENT_SUMMARY_SCHEMA),
43
+ }),
44
+ methodDescriptor({
45
+ id: 'calendar.events.get',
46
+ title: 'Get Calendar Event',
47
+ description: 'Return the full event object including attendees, recurrence, and raw iCalendar UID.',
48
+ category: 'calendar',
49
+ scopes: ['read:calendar'],
50
+ http: { method: 'GET', path: '/api/calendar/events/{eventId}' },
51
+ inputSchema: objectSchema({
52
+ eventId: STRING_SCHEMA,
53
+ calendarId: STRING_SCHEMA,
54
+ }, ['eventId']),
55
+ outputSchema: CALENDAR_EVENT_DETAIL_SCHEMA,
56
+ }),
57
+ methodDescriptor({
58
+ id: 'calendar.events.create',
59
+ title: 'Create Calendar Event',
60
+ description: 'Create an event on the configured CalDAV calendar. Requires explicit confirmation.',
61
+ category: 'calendar',
62
+ scopes: ['write:calendar'],
63
+ access: 'admin',
64
+ http: { method: 'POST', path: '/api/calendar/events' },
65
+ inputSchema: bodyEnvelopeSchema({
66
+ title: STRING_SCHEMA,
67
+ start: STRING_SCHEMA,
68
+ end: STRING_SCHEMA,
69
+ description: STRING_SCHEMA,
70
+ attendees: arraySchema(STRING_SCHEMA),
71
+ location: STRING_SCHEMA,
72
+ calendarId: STRING_SCHEMA,
73
+ confirm: { type: 'boolean' },
74
+ }, ['title', 'start', 'end', 'confirm']),
75
+ outputSchema: objectSchema({
76
+ eventId: STRING_SCHEMA,
77
+ uid: STRING_SCHEMA,
78
+ createdAt: STRING_SCHEMA,
79
+ }, ['eventId', 'uid', 'createdAt']),
80
+ }),
81
+ methodDescriptor({
82
+ id: 'calendar.ics.import',
83
+ title: 'Import iCalendar',
84
+ description: 'Import raw .ics content into the configured CalDAV calendar. Requires explicit confirmation.',
85
+ category: 'calendar',
86
+ scopes: ['write:calendar'],
87
+ access: 'admin',
88
+ http: { method: 'POST', path: '/api/calendar/ics/import' },
89
+ inputSchema: bodyEnvelopeSchema({
90
+ icsContent: STRING_SCHEMA,
91
+ calendarId: STRING_SCHEMA,
92
+ confirm: { type: 'boolean' },
93
+ }, ['icsContent', 'confirm']),
94
+ outputSchema: objectSchema({
95
+ imported: NUMBER_SCHEMA,
96
+ eventIds: arraySchema(STRING_SCHEMA),
97
+ errors: arraySchema(STRING_SCHEMA),
98
+ }, ['imported', 'eventIds', 'errors']),
99
+ }),
100
+ methodDescriptor({
101
+ id: 'calendar.ics.export',
102
+ title: 'Export iCalendar',
103
+ description: 'Export events from the configured CalDAV calendar as raw .ics content within an optional time window.',
104
+ category: 'calendar',
105
+ scopes: ['read:calendar'],
106
+ http: { method: 'GET', path: '/api/calendar/ics/export' },
107
+ inputSchema: objectSchema({
108
+ calendarId: STRING_SCHEMA,
109
+ from: STRING_SCHEMA,
110
+ to: STRING_SCHEMA,
111
+ }),
112
+ outputSchema: objectSchema({
113
+ icsContent: STRING_SCHEMA,
114
+ eventCount: NUMBER_SCHEMA,
115
+ }, ['icsContent', 'eventCount']),
116
+ }),
117
+ ];
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-channels.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-channels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAmC1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EA6hBpF,CAAC"}
1
+ {"version":3,"file":"method-catalog-channels.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-channels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAuF1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EAkqBpF,CAAC"}
@@ -1,6 +1,48 @@
1
1
  import { EMPTY_OBJECT_SCHEMA, STRING_SCHEMA, BOOLEAN_SCHEMA, NUMBER_SCHEMA, arraySchema, objectSchema, listOutputSchema, bodyEnvelopeSchema, methodDescriptor, runtimeEventId } from './method-catalog-shared.js';
2
2
  import { HTTP_HEADER_MAP_SCHEMA, METADATA_SCHEMA, } from './operator-contract-schemas-shared.js';
3
3
  import { CHANNEL_ACCOUNT_ACTION_OUTPUT_SCHEMA, CHANNEL_ACCOUNTS_OUTPUT_SCHEMA, CHANNEL_ACCOUNT_ENTITY_OUTPUT_SCHEMA, CHANNEL_ALLOWLIST_EDIT_RESULT_SCHEMA, CHANNEL_ALLOWLIST_RESOLUTION_SCHEMA, CHANNEL_AUTHORIZE_OUTPUT_SCHEMA, CHANNEL_CAPABILITY_SCHEMA, CHANNEL_DOCTOR_REPORT_SCHEMA, CHANNEL_DIRECTORY_ENTRY_SCHEMA, CHANNEL_GROUP_POLICY_SCHEMA, CHANNEL_LIFECYCLE_STATE_SCHEMA, CHANNEL_OPERATOR_ACTION_OUTPUT_SCHEMA, CHANNEL_OPERATOR_ACTION_SCHEMA, CHANNEL_POLICY_AUDIT_SCHEMA, CHANNEL_POLICY_SCHEMA, CHANNEL_SETUP_SCHEMA_SCHEMA, CHANNEL_STATUS_LIST_OUTPUT_SCHEMA, CHANNEL_TARGET_RESOLVE_OUTPUT_SCHEMA, CHANNEL_TOOL_SCHEMA, CHANNEL_TOOL_ACTION_OUTPUT_SCHEMA, CHANNEL_REPAIR_ACTION_SCHEMA, TOOL_DEFINITION_SCHEMA, REMOVE_WITH_ID_OUTPUT_SCHEMA, SERVICE_STATUS_SCHEMA, WATCHER_LIST_OUTPUT_SCHEMA, WATCHER_RECORD_SCHEMA, } from './operator-contract-schemas.js';
4
+ const CHANNEL_INBOX_ITEM_SCHEMA = objectSchema({
5
+ id: STRING_SCHEMA,
6
+ provider: STRING_SCHEMA,
7
+ kind: STRING_SCHEMA,
8
+ from: STRING_SCHEMA,
9
+ fromAddress: STRING_SCHEMA,
10
+ subject: STRING_SCHEMA,
11
+ bodyPreview: STRING_SCHEMA,
12
+ receivedAt: NUMBER_SCHEMA,
13
+ unread: BOOLEAN_SCHEMA,
14
+ routeId: STRING_SCHEMA,
15
+ threadId: STRING_SCHEMA,
16
+ attachmentCount: NUMBER_SCHEMA,
17
+ }, ['id', 'provider', 'kind', 'from', 'bodyPreview', 'receivedAt', 'unread']);
18
+ const CHANNEL_ROUTING_RULE_SCHEMA = objectSchema({
19
+ id: STRING_SCHEMA,
20
+ createdAt: STRING_SCHEMA,
21
+ updatedAt: STRING_SCHEMA,
22
+ surfaceKind: STRING_SCHEMA,
23
+ routeId: STRING_SCHEMA,
24
+ profileId: STRING_SCHEMA,
25
+ label: STRING_SCHEMA,
26
+ }, ['id', 'createdAt', 'updatedAt', 'surfaceKind', 'profileId']);
27
+ const CHANNEL_DRAFT_PROPERTIES = {
28
+ version: NUMBER_SCHEMA,
29
+ id: STRING_SCHEMA,
30
+ createdAt: STRING_SCHEMA,
31
+ updatedAt: STRING_SCHEMA,
32
+ status: STRING_SCHEMA,
33
+ title: STRING_SCHEMA,
34
+ message: STRING_SCHEMA,
35
+ channel: STRING_SCHEMA,
36
+ route: STRING_SCHEMA,
37
+ webhook: STRING_SCHEMA,
38
+ link: STRING_SCHEMA,
39
+ tags: arraySchema(STRING_SCHEMA),
40
+ sentResponseId: STRING_SCHEMA,
41
+ sendError: STRING_SCHEMA,
42
+ };
43
+ const CHANNEL_DRAFT_REQUIRED = ['version', 'id', 'createdAt', 'updatedAt', 'status', 'message'];
44
+ const CHANNEL_DRAFT_SCHEMA = objectSchema({ ...CHANNEL_DRAFT_PROPERTIES }, [...CHANNEL_DRAFT_REQUIRED]);
45
+ const CHANNEL_DRAFT_GET_OUTPUT_SCHEMA = objectSchema({ ...CHANNEL_DRAFT_PROPERTIES, notFound: BOOLEAN_SCHEMA }, [], { additionalProperties: true });
4
46
  export const builtinGatewayChannelMethodDescriptors = [
5
47
  methodDescriptor({
6
48
  id: 'channels.accounts.list',
@@ -542,4 +584,136 @@ export const builtinGatewayChannelMethodDescriptors = [
542
584
  outputSchema: SERVICE_STATUS_SCHEMA,
543
585
  dangerous: true,
544
586
  }),
587
+ methodDescriptor({
588
+ id: 'channels.inbox.list',
589
+ title: 'List Channel Inbox',
590
+ description: 'Return per-provider inbound message feeds (Slack DMs, Discord messages, email threads) fetched live from provider APIs. Read-only; no provider write.',
591
+ category: 'channels',
592
+ scopes: ['read:channels'],
593
+ http: { method: 'GET', path: '/api/channels/inbox' },
594
+ inputSchema: objectSchema({
595
+ provider: STRING_SCHEMA,
596
+ limit: NUMBER_SCHEMA,
597
+ since: NUMBER_SCHEMA,
598
+ }),
599
+ outputSchema: objectSchema({
600
+ items: arraySchema(CHANNEL_INBOX_ITEM_SCHEMA),
601
+ total: NUMBER_SCHEMA,
602
+ truncated: BOOLEAN_SCHEMA,
603
+ cursor: STRING_SCHEMA,
604
+ }, ['items', 'total', 'truncated']),
605
+ }),
606
+ methodDescriptor({
607
+ id: 'channels.routing.list',
608
+ title: 'List Channel Routing Rules',
609
+ description: 'Return the daemon-persisted channel-to-profile routing table.',
610
+ category: 'channels',
611
+ scopes: ['read:channels'],
612
+ http: { method: 'GET', path: '/api/channels/routing' },
613
+ inputSchema: objectSchema({
614
+ profileId: STRING_SCHEMA,
615
+ surfaceKind: STRING_SCHEMA,
616
+ limit: NUMBER_SCHEMA,
617
+ }),
618
+ outputSchema: objectSchema({
619
+ routes: arraySchema(CHANNEL_ROUTING_RULE_SCHEMA),
620
+ total: NUMBER_SCHEMA,
621
+ }, ['routes', 'total']),
622
+ }),
623
+ methodDescriptor({
624
+ id: 'channels.routing.assign',
625
+ title: 'Assign Channel Routing Rule',
626
+ description: 'Create or update a channel-to-profile routing rule in the daemon-persisted routing table. Requires explicit confirmation.',
627
+ category: 'channels',
628
+ scopes: ['write:channels'],
629
+ access: 'admin',
630
+ http: { method: 'POST', path: '/api/channels/routing' },
631
+ inputSchema: bodyEnvelopeSchema({
632
+ channelId: STRING_SCHEMA,
633
+ surfaceKind: STRING_SCHEMA,
634
+ routeId: STRING_SCHEMA,
635
+ profileId: STRING_SCHEMA,
636
+ label: STRING_SCHEMA,
637
+ }, ['surfaceKind', 'profileId']),
638
+ outputSchema: objectSchema({
639
+ assignmentId: STRING_SCHEMA,
640
+ channelId: STRING_SCHEMA,
641
+ surfaceKind: STRING_SCHEMA,
642
+ routeId: STRING_SCHEMA,
643
+ profileId: STRING_SCHEMA,
644
+ label: STRING_SCHEMA,
645
+ createdAt: STRING_SCHEMA,
646
+ updatedAt: STRING_SCHEMA,
647
+ }, ['assignmentId', 'surfaceKind', 'profileId', 'createdAt', 'updatedAt']),
648
+ }),
649
+ methodDescriptor({
650
+ id: 'channels.routing.delete',
651
+ title: 'Delete Channel Routing Rule',
652
+ description: 'Remove a channel-to-profile routing rule from the daemon-persisted routing table.',
653
+ category: 'channels',
654
+ scopes: ['write:channels'],
655
+ access: 'admin',
656
+ http: { method: 'DELETE', path: '/api/channels/routing/{assignmentId}' },
657
+ inputSchema: objectSchema({ assignmentId: STRING_SCHEMA }, ['assignmentId']),
658
+ outputSchema: objectSchema({
659
+ deleted: BOOLEAN_SCHEMA,
660
+ assignmentId: STRING_SCHEMA,
661
+ }, ['deleted', 'assignmentId']),
662
+ dangerous: true,
663
+ }),
664
+ methodDescriptor({
665
+ id: 'channels.drafts.list',
666
+ title: 'List Channel Drafts',
667
+ description: 'Return daemon-mirrored channel drafts for cross-device sync. Webhook values are stored redacted.',
668
+ category: 'channels',
669
+ scopes: ['read:channels'],
670
+ http: { method: 'GET', path: '/api/channels/drafts' },
671
+ inputSchema: objectSchema({
672
+ status: STRING_SCHEMA,
673
+ limit: NUMBER_SCHEMA,
674
+ }),
675
+ outputSchema: objectSchema({
676
+ drafts: arraySchema(CHANNEL_DRAFT_SCHEMA),
677
+ total: NUMBER_SCHEMA,
678
+ }, ['drafts', 'total']),
679
+ }),
680
+ methodDescriptor({
681
+ id: 'channels.drafts.get',
682
+ title: 'Get Channel Draft',
683
+ description: 'Return a single daemon-mirrored channel draft by id, or a notFound marker.',
684
+ category: 'channels',
685
+ scopes: ['read:channels'],
686
+ http: { method: 'GET', path: '/api/channels/drafts/{draftId}' },
687
+ inputSchema: objectSchema({ draftId: STRING_SCHEMA }, ['draftId']),
688
+ outputSchema: CHANNEL_DRAFT_GET_OUTPUT_SCHEMA,
689
+ }),
690
+ methodDescriptor({
691
+ id: 'channels.drafts.save',
692
+ title: 'Save Channel Draft',
693
+ description: 'Mirror a channel draft to the daemon-side store. Webhook values must be redacted before transmission; raw webhook tokens are rejected. Requires explicit confirmation.',
694
+ category: 'channels',
695
+ scopes: ['write:channels'],
696
+ access: 'admin',
697
+ http: { method: 'POST', path: '/api/channels/drafts' },
698
+ inputSchema: bodyEnvelopeSchema({ ...CHANNEL_DRAFT_PROPERTIES }, [...CHANNEL_DRAFT_REQUIRED]),
699
+ outputSchema: objectSchema({
700
+ draft: CHANNEL_DRAFT_SCHEMA,
701
+ created: BOOLEAN_SCHEMA,
702
+ }, ['draft', 'created']),
703
+ }),
704
+ methodDescriptor({
705
+ id: 'channels.drafts.delete',
706
+ title: 'Delete Channel Draft',
707
+ description: 'Remove a channel draft from the daemon-side store.',
708
+ category: 'channels',
709
+ scopes: ['write:channels'],
710
+ access: 'admin',
711
+ http: { method: 'DELETE', path: '/api/channels/drafts/{draftId}' },
712
+ inputSchema: objectSchema({ draftId: STRING_SCHEMA }, ['draftId']),
713
+ outputSchema: objectSchema({
714
+ deleted: BOOLEAN_SCHEMA,
715
+ draftId: STRING_SCHEMA,
716
+ }, ['deleted', 'draftId']),
717
+ dangerous: true,
718
+ }),
545
719
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-control-automation.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-control-automation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAsC1E,eAAO,MAAM,gDAAgD,EAAE,SAAS,uBAAuB,EAob9F,CAAC"}
1
+ {"version":3,"file":"method-catalog-control-automation.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-control-automation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAsC1E,eAAO,MAAM,gDAAgD,EAAE,SAAS,uBAAuB,EA0b9F,CAAC"}
@@ -15,12 +15,15 @@ export const builtinGatewayControlAutomationMethodDescriptors = [
15
15
  methodDescriptor({
16
16
  id: 'automation.jobs.list',
17
17
  title: 'List Automation Jobs',
18
- description: 'Return automation jobs and recent runs.',
18
+ description: 'Return automation jobs and recent runs. Without ?limit/?cursor returns { jobs: [...] } (backward compatible). With ?limit=N (1–500, default 100) and optional ?cursor=<opaque> returns a PaginatedResponse envelope { items, hasMore, nextCursor? }. Invalid cursors return HTTP 400.',
19
19
  category: 'automation',
20
20
  scopes: ['read:automation'],
21
21
  http: { method: 'GET', path: '/api/automation/jobs' },
22
22
  events: [runtimeEventId('automation')],
23
- inputSchema: EMPTY_OBJECT_SCHEMA,
23
+ inputSchema: objectSchema({
24
+ limit: NUMBER_SCHEMA,
25
+ cursor: STRING_SCHEMA,
26
+ }),
24
27
  outputSchema: AUTOMATION_JOBS_OUTPUT_SCHEMA,
25
28
  }),
26
29
  methodDescriptor({
@@ -172,11 +175,14 @@ export const builtinGatewayControlAutomationMethodDescriptors = [
172
175
  methodDescriptor({
173
176
  id: 'automation.runs.list',
174
177
  title: 'List Automation Runs',
175
- description: 'Return automation run history.',
178
+ description: 'Return automation run history. Without ?limit/?cursor returns { runs: [...] } (backward compatible). With ?limit=N (1–500, default 100) and optional ?cursor=<opaque> returns a PaginatedResponse envelope { items, hasMore, nextCursor? }. Invalid cursors return HTTP 400.',
176
179
  category: 'automation',
177
180
  scopes: ['read:automation'],
178
181
  http: { method: 'GET', path: '/api/automation/runs' },
179
- inputSchema: EMPTY_OBJECT_SCHEMA,
182
+ inputSchema: objectSchema({
183
+ limit: NUMBER_SCHEMA,
184
+ cursor: STRING_SCHEMA,
185
+ }),
180
186
  outputSchema: AUTOMATION_RUNS_OUTPUT_SCHEMA,
181
187
  }),
182
188
  methodDescriptor({
@@ -0,0 +1,9 @@
1
+ import type { GatewayMethodDescriptor } from './method-catalog-shared.js';
2
+ /**
3
+ * Email operator methods — exposes the agent's IMAP/SMTP capabilities through the
4
+ * standard operator method protocol so email operations can be triggered via MCP
5
+ * connector actions in addition to the direct-socket path. Daemon-backed; the SDK
6
+ * publishes the typed contract surface (no internal handler).
7
+ */
8
+ export declare const builtinGatewayEmailMethodDescriptors: readonly GatewayMethodDescriptor[];
9
+ //# sourceMappingURL=method-catalog-email.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-catalog-email.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-email.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAsC1E;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,EAAE,SAAS,uBAAuB,EAyElF,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { STRING_SCHEMA, BOOLEAN_SCHEMA, NUMBER_SCHEMA, arraySchema, objectSchema, bodyEnvelopeSchema, methodDescriptor, } from './method-catalog-shared.js';
2
+ const EMAIL_INBOX_MESSAGE_SCHEMA = objectSchema({
3
+ uid: NUMBER_SCHEMA,
4
+ from: STRING_SCHEMA,
5
+ subject: STRING_SCHEMA,
6
+ date: STRING_SCHEMA,
7
+ unread: BOOLEAN_SCHEMA,
8
+ bodyPreview: STRING_SCHEMA,
9
+ messageId: STRING_SCHEMA,
10
+ }, ['uid', 'from', 'subject', 'date', 'unread', 'bodyPreview', 'messageId']);
11
+ const EMAIL_ATTACHMENT_SCHEMA = objectSchema({
12
+ filename: STRING_SCHEMA,
13
+ contentType: STRING_SCHEMA,
14
+ sizeBytes: NUMBER_SCHEMA,
15
+ }, ['filename', 'contentType', 'sizeBytes']);
16
+ const EMAIL_MESSAGE_DETAIL_SCHEMA = objectSchema({
17
+ uid: NUMBER_SCHEMA,
18
+ from: STRING_SCHEMA,
19
+ subject: STRING_SCHEMA,
20
+ date: STRING_SCHEMA,
21
+ messageId: STRING_SCHEMA,
22
+ bodyText: STRING_SCHEMA,
23
+ bodyHtml: STRING_SCHEMA,
24
+ attachments: arraySchema(EMAIL_ATTACHMENT_SCHEMA),
25
+ }, ['uid', 'from', 'subject', 'date', 'messageId', 'bodyText']);
26
+ /**
27
+ * Email operator methods — exposes the agent's IMAP/SMTP capabilities through the
28
+ * standard operator method protocol so email operations can be triggered via MCP
29
+ * connector actions in addition to the direct-socket path. Daemon-backed; the SDK
30
+ * publishes the typed contract surface (no internal handler).
31
+ */
32
+ export const builtinGatewayEmailMethodDescriptors = [
33
+ methodDescriptor({
34
+ id: 'email.inbox.list',
35
+ title: 'List Email Inbox',
36
+ description: 'Return inbox message summaries fetched live from the configured IMAP account. Read-only (EXAMINE / BODY.PEEK); never marks messages read.',
37
+ category: 'email',
38
+ scopes: ['read:email'],
39
+ http: { method: 'GET', path: '/api/email/inbox' },
40
+ inputSchema: objectSchema({
41
+ limit: NUMBER_SCHEMA,
42
+ since: STRING_SCHEMA,
43
+ unreadOnly: BOOLEAN_SCHEMA,
44
+ }),
45
+ outputSchema: objectSchema({
46
+ messages: arraySchema(EMAIL_INBOX_MESSAGE_SCHEMA),
47
+ total: NUMBER_SCHEMA,
48
+ }, ['messages', 'total']),
49
+ }),
50
+ methodDescriptor({
51
+ id: 'email.inbox.read',
52
+ title: 'Read Email Message',
53
+ description: 'Return the full body and attachment metadata for a single inbox message by IMAP UID. Read-only (BODY.PEEK; does not mark as read).',
54
+ category: 'email',
55
+ scopes: ['read:email'],
56
+ http: { method: 'GET', path: '/api/email/inbox/{uid}' },
57
+ inputSchema: objectSchema({ uid: NUMBER_SCHEMA }, ['uid']),
58
+ outputSchema: EMAIL_MESSAGE_DETAIL_SCHEMA,
59
+ }),
60
+ methodDescriptor({
61
+ id: 'email.draft.create',
62
+ title: 'Create Email Draft',
63
+ description: 'Append a draft message to the configured IMAP Drafts folder. Distinct from the local channel draft store. Requires explicit confirmation.',
64
+ category: 'email',
65
+ scopes: ['write:email'],
66
+ access: 'admin',
67
+ http: { method: 'POST', path: '/api/email/drafts' },
68
+ inputSchema: bodyEnvelopeSchema({
69
+ to: STRING_SCHEMA,
70
+ subject: STRING_SCHEMA,
71
+ body: STRING_SCHEMA,
72
+ inReplyTo: STRING_SCHEMA,
73
+ references: STRING_SCHEMA,
74
+ }, ['to', 'subject', 'body']),
75
+ outputSchema: objectSchema({
76
+ uid: NUMBER_SCHEMA,
77
+ draftId: STRING_SCHEMA,
78
+ }, ['uid', 'draftId']),
79
+ }),
80
+ methodDescriptor({
81
+ id: 'email.send',
82
+ title: 'Send Email',
83
+ description: 'Send a composed email via the configured SMTP account. Irreversible external send; requires confirm: true and explicit user review of recipients and body.',
84
+ category: 'email',
85
+ scopes: ['write:email'],
86
+ access: 'admin',
87
+ http: { method: 'POST', path: '/api/email/send' },
88
+ inputSchema: bodyEnvelopeSchema({
89
+ to: STRING_SCHEMA,
90
+ subject: STRING_SCHEMA,
91
+ body: STRING_SCHEMA,
92
+ inReplyTo: STRING_SCHEMA,
93
+ confirm: BOOLEAN_SCHEMA,
94
+ }, ['to', 'subject', 'body', 'confirm']),
95
+ outputSchema: objectSchema({
96
+ messageId: STRING_SCHEMA,
97
+ sentAt: STRING_SCHEMA,
98
+ }, ['messageId', 'sentAt']),
99
+ dangerous: true,
100
+ }),
101
+ ];
@@ -21,21 +21,21 @@ export const builtinGatewayKnowledgeMethodDescriptors = [
21
21
  methodDescriptor({
22
22
  id: 'knowledge.sources.list',
23
23
  title: 'List Knowledge Sources',
24
- description: 'Return ingested structured knowledge sources.',
24
+ description: 'Return ingested structured knowledge sources. Without ?limit/?cursor returns { sources: [...] } (backward compatible). With ?limit=N (1–1000, default 100) and optional ?cursor=<opaque> returns a PaginatedResponse envelope { items, hasMore, nextCursor? }. Fetch cap is 5 000 items per request (knowledge store does not support cursor/offset range queries natively). Invalid cursors return HTTP 400.',
25
25
  category: 'knowledge',
26
26
  scopes: ['read:knowledge'],
27
27
  http: { method: 'GET', path: '/api/knowledge/sources' },
28
- inputSchema: objectSchema({ limit: NUMBER_SCHEMA, ...KNOWLEDGE_SPACE_INPUT_FIELDS }),
28
+ inputSchema: objectSchema({ limit: NUMBER_SCHEMA, cursor: STRING_SCHEMA, ...KNOWLEDGE_SPACE_INPUT_FIELDS }),
29
29
  outputSchema: KNOWLEDGE_SOURCES_OUTPUT_SCHEMA,
30
30
  }),
31
31
  methodDescriptor({
32
32
  id: 'knowledge.nodes.list',
33
33
  title: 'List Knowledge Nodes',
34
- description: 'Return compiled knowledge nodes.',
34
+ description: 'Return compiled knowledge nodes. Without ?limit/?cursor returns { nodes: [...] } (backward compatible). With ?limit=N (1–1000, default 100) and optional ?cursor=<opaque> returns a PaginatedResponse envelope { items, hasMore, nextCursor? }. Fetch cap is 5 000 items per request (knowledge store does not support cursor/offset range queries natively). Invalid cursors return HTTP 400.',
35
35
  category: 'knowledge',
36
36
  scopes: ['read:knowledge'],
37
37
  http: { method: 'GET', path: '/api/knowledge/nodes' },
38
- inputSchema: objectSchema({ limit: NUMBER_SCHEMA, ...KNOWLEDGE_SPACE_INPUT_FIELDS }),
38
+ inputSchema: objectSchema({ limit: NUMBER_SCHEMA, cursor: STRING_SCHEMA, ...KNOWLEDGE_SPACE_INPUT_FIELDS }),
39
39
  outputSchema: KNOWLEDGE_NODES_OUTPUT_SCHEMA,
40
40
  }),
41
41
  methodDescriptor({
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-runtime.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAqH1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EA4WpF,CAAC"}
1
+ {"version":3,"file":"method-catalog-runtime.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAqH1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EAyXpF,CAAC"}
@@ -420,6 +420,19 @@ export const builtinGatewayRuntimeMethodDescriptors = [
420
420
  inputSchema: bodyEnvelopeSchema({ providerId: STRING_SCHEMA }, ['providerId']),
421
421
  outputSchema: MEMORY_DOCTOR_REPORT_SCHEMA,
422
422
  }),
423
+ methodDescriptor({
424
+ id: 'memory.review-queue',
425
+ title: 'Memory Review Queue',
426
+ description: 'Return memory records prioritised for review. Accepts optional limit (?limit=N) and scope filter (?scope=session|project|team). A scope query parameter that is present but not one of the three valid values returns 400.',
427
+ category: 'memory',
428
+ scopes: ['read:memory'],
429
+ http: { method: 'GET', path: '/api/memory/review-queue' },
430
+ inputSchema: objectSchema({
431
+ limit: NUMBER_SCHEMA,
432
+ scope: enumSchema(['session', 'project', 'team']),
433
+ }),
434
+ outputSchema: objectSchema({ records: arraySchema(objectSchema({}, [], { additionalProperties: true })) }, ['records']),
435
+ }),
423
436
  methodDescriptor({
424
437
  id: 'scheduler.capacity',
425
438
  title: 'Scheduler Capacity',
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAKpC,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AA2DpC,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6C;gBAExD,OAAO,GAAE;QAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAO;IAWhE,QAAQ,CACN,UAAU,EAAE,uBAAuB,EACnC,OAAO,CAAC,EAAE,oBAAoB,EAC9B,OAAO,GAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAC3C,MAAM,IAAI;IAcb,aAAa,CACX,UAAU,EAAE,sBAAsB,EAClC,OAAO,GAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAC3C,MAAM,IAAI;IAcb,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAa1C,IAAI,CAAC,OAAO,GAAE,wBAA6B,GAAG,uBAAuB,EAAE;IASvE,UAAU,CAAC,OAAO,GAAE,uBAA4B,GAAG,sBAAsB,EAAE;IAU3E,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IAI/C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAInD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IAUnF,YAAY,CAAC,OAAO,GAAE;QAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,MAAM,EAAE;IAiBnE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;CAMhF"}
1
+ {"version":3,"file":"method-catalog.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAKpC,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AA6DpC,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6C;gBAExD,OAAO,GAAE;QAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAO;IAWhE,QAAQ,CACN,UAAU,EAAE,uBAAuB,EACnC,OAAO,CAAC,EAAE,oBAAoB,EAC9B,OAAO,GAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAC3C,MAAM,IAAI;IAcb,aAAa,CACX,UAAU,EAAE,sBAAsB,EAClC,OAAO,GAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAC3C,MAAM,IAAI;IAcb,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAa1C,IAAI,CAAC,OAAO,GAAE,wBAA6B,GAAG,uBAAuB,EAAE;IASvE,UAAU,CAAC,OAAO,GAAE,uBAA4B,GAAG,sBAAsB,EAAE;IAU3E,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IAI/C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAInD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IAUnF,YAAY,CAAC,OAAO,GAAE;QAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,MAAM,EAAE;IAiBnE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;CAMhF"}
@@ -1,6 +1,8 @@
1
1
  import { builtinGatewayAdminMethodDescriptors, } from './method-catalog-admin.js';
2
2
  import { builtinGatewayChannelMethodDescriptors, } from './method-catalog-channels.js';
3
3
  import { builtinGatewayControlMethodDescriptors, } from './method-catalog-control.js';
4
+ import { builtinGatewayEmailMethodDescriptors, } from './method-catalog-email.js';
5
+ import { builtinGatewayCalendarMethodDescriptors, } from './method-catalog-calendar.js';
4
6
  import { builtinGatewayEventDescriptors, } from './method-catalog-events.js';
5
7
  import { builtinGatewayKnowledgeMethodDescriptors, } from './method-catalog-knowledge.js';
6
8
  import { builtinGatewayMediaMethodDescriptors, } from './method-catalog-media.js';
@@ -9,6 +11,8 @@ const BUILTIN_GATEWAY_EVENTS = builtinGatewayEventDescriptors;
9
11
  const BUILTIN_GATEWAY_METHODS = [
10
12
  ...builtinGatewayControlMethodDescriptors,
11
13
  ...builtinGatewayChannelMethodDescriptors,
14
+ ...builtinGatewayEmailMethodDescriptors,
15
+ ...builtinGatewayCalendarMethodDescriptors,
12
16
  ...builtinGatewayRuntimeMethodDescriptors,
13
17
  ...builtinGatewayKnowledgeMethodDescriptors,
14
18
  ...builtinGatewayMediaMethodDescriptors,
@@ -9,11 +9,11 @@ export async function dispatchAutomationRoutes(req, handlers) {
9
9
  if (pathname === '/api/automation' && method === 'GET')
10
10
  return handlers.getIntegrationAutomation();
11
11
  if (pathname === '/api/automation/jobs' && method === 'GET')
12
- return handlers.getAutomationJobs();
12
+ return handlers.getAutomationJobs(url);
13
13
  if (pathname === '/api/automation/jobs' && method === 'POST')
14
14
  return handlers.postAutomationJob(req);
15
15
  if (pathname === '/api/automation/runs' && method === 'GET')
16
- return handlers.getAutomationRuns();
16
+ return handlers.getAutomationRuns(url);
17
17
  const automationRunMatch = pathname.match(/^\/api\/automation\/runs\/([^/]+)$/);
18
18
  if (automationRunMatch && method === 'GET' && automationRunMatch[1])
19
19
  return handlers.getAutomationRun(automationRunMatch[1]);
@@ -1 +1 @@
1
- {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../src/platform/control-plane/routes/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG1E,KAAK,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG;IACrF,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,CAAC;IACvC,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;CACzC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAmS1B"}
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../src/platform/control-plane/routes/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG1E,KAAK,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG;IACrF,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,CAAC;IACvC,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;CACzC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAoS1B"}
@@ -223,6 +223,8 @@ export async function dispatchOperatorRoutes(req, handlers) {
223
223
  return handlers.postAutomationHeartbeat(req);
224
224
  if (pathname === '/api/memory/doctor' && method === 'GET')
225
225
  return handlers.getMemoryDoctor();
226
+ if (pathname === '/api/memory/review-queue' && method === 'GET')
227
+ return handlers.getMemoryReviewQueue(url);
226
228
  if (pathname === '/api/memory/vector' && method === 'GET')
227
229
  return handlers.getMemoryVectorStats();
228
230
  if (pathname === '/api/memory/vector/rebuild' && method === 'POST')
@@ -3,7 +3,7 @@ export async function dispatchSessionRoutes(req, handlers) {
3
3
  const { pathname } = url;
4
4
  const method = req.method;
5
5
  if (pathname === '/api/sessions' && method === 'GET')
6
- return handlers.getIntegrationSessions();
6
+ return handlers.getIntegrationSessions(url);
7
7
  if (pathname === '/api/sessions' && method === 'POST')
8
8
  return handlers.createSharedSession(req);
9
9
  const sharedSessionMatch = pathname.match(/^\/api\/sessions\/([^/]+)$/);
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/platform/daemon/http/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAExE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAIL,KAAK,iBAAiB,EAGvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAC7G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAMpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACjI,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC3G,OAAO,EAAiC,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAClG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK/D,OAAO,KAAK,EAAE,+BAA+B,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA0B5F,OAAO,KAAK,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACnG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAgBtF,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAClD,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,WAAW,EAAE,OAAO,uBAAuB,EAAE,WAAW,CAAC;IAClE,QAAQ,CAAC,cAAc,EAAE,OAAO,qBAAqB,EAAE,cAAc,CAAC;IACtE,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;IACjD,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxD,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAC1D,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,uBAAuB,EAAE,+BAA+B,CAAC;IAClE,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxD,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC7D,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,cAAc,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9D,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;IACjE,QAAQ,CAAC,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;IAC/E,QAAQ,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;IACpD,QAAQ,CAAC,2BAA2B,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9G,QAAQ,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,GAAG,QAAQ,CAAC,CAAC;IACtG,QAAQ,CAAC,8BAA8B,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK;QAC1D,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;QACpD,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;KAC3B,GAAG,IAAI,CAAC;IACT,QAAQ,CAAC,uBAAuB,EAAE,CAAC,KAAK,EAAE;QACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACpC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACjB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YAC1C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,CAAC;YAC1F,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;YACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;YAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SAC1C,CAAC;KACH,KAAK,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC9D,QAAQ,CAAC,4BAA4B,EAAE,CACrC,OAAO,EAAE,OAAO,4BAA4B,EAAE,sBAAsB,GAAG,SAAS,EAChF,KAAK,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KACpJ,IAAI,CAAC;IACV,QAAQ,CAAC,sBAAsB,EAAE,CAC/B,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,GAAG,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY,GAAG,QAAQ,KACtM,OAAO,CAAC;IACb,QAAQ,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,4BAA4B,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtH,QAAQ,CAAC,qBAAqB,EAAE,CAAC,MAAM,EAAE,OAAO,4BAA4B,EAAE,WAAW,KAAK,IAAI,CAAC;IACnG;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,OAAO,yBAAyB,EAAE,wBAAwB,GAAG,IAAI,CAAC;IACxF;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,CAAC;IACxE,8EAA8E;IAC9E,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACtG;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,yBAAyB,EAAE,cAAc,EAAE,KAAK,GAAG,KAAK,GAAG,eAAe,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACrI,QAAQ,CAAC,aAAa,EAAE,CACtB,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3C,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,KACf,OAAO,4BAA4B,EAAE,WAAW,GAAG,QAAQ,CAAC;CAClE;AAED,qBAAa,gBAAgB;IAMf,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,mBAAmB,CAAgD;IAC3E,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,qBAAqB,CAAsC;gBAEtC,OAAO,EAAE,uBAAuB;IAS7D,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,cAAc;IAKhB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAmCpD;;;;OAIG;YACW,qBAAqB;IA6D7B,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAoW/D,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,wBAAwB;IAY1B,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,QAAQ,CAAC;IAI3D,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,GAAG,QAAQ,CAAC;IAIhF,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ;IAIrD,iBAAiB,CACf,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,GACN,KAAK,GACL,OAAO,GACP,SAAS,GACT,MAAM,GACN,SAAS,GACT,eAAe,GACf,UAAU,GACV,aAAa,GACb,QAAQ,GACR,UAAU,GACV,WAAW,GACX,UAAU,GACV,SAAS,GACT,aAAa,GACb,YAAY,GACZ,QAAQ,GACR,QAAgB,GACnB,QAAQ;YAWG,WAAW;YA6BX,mBAAmB;IAQ3B,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAInD,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIlD,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;CAG5D"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/platform/daemon/http/router.ts"],"names":[],"mappings":"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"}