@jungjaehoon/mama-os 0.36.0 → 0.36.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 (75) hide show
  1. package/dist/agent/agent-loop.d.ts +2 -1
  2. package/dist/agent/agent-loop.d.ts.map +1 -1
  3. package/dist/agent/agent-loop.js.map +1 -1
  4. package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
  5. package/dist/agent/code-act/host-bridge.js +25 -2
  6. package/dist/agent/code-act/host-bridge.js.map +1 -1
  7. package/dist/agent/code-act/type-definition-generator.d.ts.map +1 -1
  8. package/dist/agent/code-act/type-definition-generator.js +3 -1
  9. package/dist/agent/code-act/type-definition-generator.js.map +1 -1
  10. package/dist/agent/context-compile-service.d.ts +2 -0
  11. package/dist/agent/context-compile-service.d.ts.map +1 -1
  12. package/dist/agent/context-compile-service.js +1 -1
  13. package/dist/agent/context-compile-service.js.map +1 -1
  14. package/dist/agent/gateway-tool-executor.d.ts +5 -4
  15. package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
  16. package/dist/agent/gateway-tool-executor.js +66 -20
  17. package/dist/agent/gateway-tool-executor.js.map +1 -1
  18. package/dist/api/report-handler.d.ts +9 -5
  19. package/dist/api/report-handler.d.ts.map +1 -1
  20. package/dist/api/report-handler.js +26 -13
  21. package/dist/api/report-handler.js.map +1 -1
  22. package/dist/api/report-persistence.d.ts.map +1 -1
  23. package/dist/api/report-persistence.js +6 -3
  24. package/dist/api/report-persistence.js.map +1 -1
  25. package/dist/api/runtime-status-handler.d.ts +1 -0
  26. package/dist/api/runtime-status-handler.d.ts.map +1 -1
  27. package/dist/api/runtime-status-handler.js +1 -0
  28. package/dist/api/runtime-status-handler.js.map +1 -1
  29. package/dist/cli/commands/start.d.ts +14 -1
  30. package/dist/cli/commands/start.d.ts.map +1 -1
  31. package/dist/cli/commands/start.js +69 -47
  32. package/dist/cli/commands/start.js.map +1 -1
  33. package/dist/cli/commands/status.d.ts +6 -0
  34. package/dist/cli/commands/status.d.ts.map +1 -1
  35. package/dist/cli/commands/status.js +89 -0
  36. package/dist/cli/commands/status.js.map +1 -1
  37. package/dist/cli/index.js +2 -15
  38. package/dist/cli/index.js.map +1 -1
  39. package/dist/cli/runtime/api-routes-init.d.ts +7 -1
  40. package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
  41. package/dist/cli/runtime/api-routes-init.js +104 -29
  42. package/dist/cli/runtime/api-routes-init.js.map +1 -1
  43. package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
  44. package/dist/cli/runtime/api-server-init.js +3 -0
  45. package/dist/cli/runtime/api-server-init.js.map +1 -1
  46. package/dist/operator/action-verifier.d.ts +2 -0
  47. package/dist/operator/action-verifier.d.ts.map +1 -1
  48. package/dist/operator/action-verifier.js +3 -2
  49. package/dist/operator/action-verifier.js.map +1 -1
  50. package/dist/operator/board-reconcile.d.ts +2 -2
  51. package/dist/operator/board-reconcile.d.ts.map +1 -1
  52. package/dist/operator/board-reconcile.js +10 -2
  53. package/dist/operator/board-reconcile.js.map +1 -1
  54. package/dist/operator/board-refresh-gate.d.ts +34 -0
  55. package/dist/operator/board-refresh-gate.d.ts.map +1 -0
  56. package/dist/operator/board-refresh-gate.js +82 -0
  57. package/dist/operator/board-refresh-gate.js.map +1 -0
  58. package/dist/operator/briefs.d.ts.map +1 -1
  59. package/dist/operator/briefs.js +92 -4
  60. package/dist/operator/briefs.js.map +1 -1
  61. package/dist/operator/workorder-hooks.d.ts +14 -0
  62. package/dist/operator/workorder-hooks.d.ts.map +1 -1
  63. package/dist/operator/workorder-hooks.js +64 -0
  64. package/dist/operator/workorder-hooks.js.map +1 -1
  65. package/dist/operator/workorder-publishers.d.ts +10 -0
  66. package/dist/operator/workorder-publishers.d.ts.map +1 -1
  67. package/dist/operator/workorder-publishers.js +39 -8
  68. package/dist/operator/workorder-publishers.js.map +1 -1
  69. package/dist/package-version.d.ts +3 -0
  70. package/dist/package-version.d.ts.map +1 -0
  71. package/dist/package-version.js +18 -0
  72. package/dist/package-version.js.map +1 -0
  73. package/package.json +2 -2
  74. package/public/viewer/js/modules/system.js +1 -0
  75. package/public/viewer/src/modules/system.ts +2 -0
@@ -5,11 +5,14 @@ exports.broadcastReportUpdate = broadcastReportUpdate;
5
5
  exports.createReportPublisher = createReportPublisher;
6
6
  exports.createReportRouter = createReportRouter;
7
7
  const express_1 = require("express");
8
+ const debug_logger_1 = require("@jungjaehoon/mama-core/debug-logger");
9
+ const reportLogger = new debug_logger_1.DebugLogger('Report');
8
10
  function createReportStore() {
9
11
  const slots = new Map();
10
12
  return {
11
13
  get(slotId) {
12
- return slots.get(slotId);
14
+ const slot = slots.get(slotId);
15
+ return slot ? { ...slot } : undefined;
13
16
  },
14
17
  update(slotId, html, priority) {
15
18
  slots.set(slotId, {
@@ -25,12 +28,12 @@ function createReportStore() {
25
28
  getAll() {
26
29
  const result = {};
27
30
  for (const [key, value] of slots) {
28
- result[key] = value;
31
+ result[key] = { ...value };
29
32
  }
30
33
  return result;
31
34
  },
32
35
  getAllSorted() {
33
- return Array.from(slots.values()).sort((a, b) => a.priority - b.priority);
36
+ return Array.from(slots.values(), (slot) => ({ ...slot })).sort((a, b) => a.priority - b.priority);
34
37
  },
35
38
  };
36
39
  }
@@ -46,10 +49,10 @@ function broadcastReportUpdate(clients, data) {
46
49
  const MAX_SLOT_BYTES = 65_536;
47
50
  const MAX_SLOTS_PER_PUBLISH = 24;
48
51
  /**
49
- * The single write path for agent/heartbeat report publishing: store every slot
50
- * (any slot id -- the board renders known slots first, then custom), broadcast
51
- * one full snapshot. Oversized slots are skipped LOUDLY, never truncated
52
- * silently (observability over restriction).
52
+ * The single write path for agent/heartbeat report publishing: accept every valid slot
53
+ * (any slot id -- the board renders known slots first, then custom), persist changed HTML,
54
+ * and broadcast one full snapshot only when something changed. Oversized slots are skipped
55
+ * LOUDLY, never truncated silently (observability over restriction).
53
56
  */
54
57
  function createReportPublisher(store, sseClients) {
55
58
  return (slots) => {
@@ -57,19 +60,29 @@ function createReportPublisher(store, sseClients) {
57
60
  if (entries.length > MAX_SLOTS_PER_PUBLISH) {
58
61
  console.warn(`[Report] publish carried ${entries.length} slots; keeping the first ${MAX_SLOTS_PER_PUBLISH}`);
59
62
  }
60
- const published = [];
63
+ const accepted = [];
64
+ const changed = [];
61
65
  for (const [slotId, html] of entries.slice(0, MAX_SLOTS_PER_PUBLISH)) {
62
66
  if (Buffer.byteLength(html, 'utf-8') > MAX_SLOT_BYTES) {
63
67
  console.warn(`[Report] slot '${slotId}' exceeds ${MAX_SLOT_BYTES} bytes -- skipped`);
64
68
  continue;
65
69
  }
66
- store.update(slotId, html, store.get(slotId)?.priority ?? 0);
67
- published.push(slotId);
70
+ accepted.push(slotId);
71
+ const existing = store.get(slotId);
72
+ if (existing?.html === html) {
73
+ continue;
74
+ }
75
+ store.update(slotId, html, existing?.priority ?? 0);
76
+ changed.push(slotId);
68
77
  }
69
- broadcastReportUpdate(sseClients, { slots: store.getAllSorted() });
70
- if (published.length > 0) {
71
- console.log(`[Report] published slots: ${published.join(', ')}`);
78
+ if (changed.length > 0) {
79
+ broadcastReportUpdate(sseClients, { slots: store.getAllSorted() });
80
+ reportLogger.info(`published slots: ${changed.join(', ')}`);
72
81
  }
82
+ return {
83
+ acceptedSlotIds: accepted.sort(),
84
+ changedSlotIds: changed.sort(),
85
+ };
73
86
  };
74
87
  }
75
88
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"report-handler.js","sourceRoot":"","sources":["../../src/api/report-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report-handler.js","sourceRoot":"","sources":["../../src/api/report-handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"report-persistence.d.ts","sourceRoot":"","sources":["../../src/api/report-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAkBnE,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAyDnF"}
1
+ {"version":3,"file":"report-persistence.d.ts","sourceRoot":"","sources":["../../src/api/report-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAkBnE,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CA6DnF"}
@@ -75,7 +75,10 @@ function createPersistentReportStore(opts) {
75
75
  writeTimer.unref?.();
76
76
  };
77
77
  return {
78
- get: (slotId) => slots.get(slotId),
78
+ get: (slotId) => {
79
+ const slot = slots.get(slotId);
80
+ return slot ? { ...slot } : undefined;
81
+ },
79
82
  update(slotId, html, priority) {
80
83
  slots.set(slotId, { slotId, html, priority, updatedAt: Date.now() });
81
84
  scheduleWrite();
@@ -84,8 +87,8 @@ function createPersistentReportStore(opts) {
84
87
  slots.delete(slotId);
85
88
  scheduleWrite();
86
89
  },
87
- getAll: () => Object.fromEntries(slots),
88
- getAllSorted: () => Array.from(slots.values()).sort((a, b) => a.priority - b.priority),
90
+ getAll: () => Object.fromEntries(Array.from(slots, ([slotId, slot]) => [slotId, { ...slot }])),
91
+ getAllSorted: () => Array.from(slots.values(), (slot) => ({ ...slot })).sort((a, b) => a.priority - b.priority),
89
92
  };
90
93
  }
91
94
  //# sourceMappingURL=report-persistence.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"report-persistence.js","sourceRoot":"","sources":["../../src/api/report-persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report-persistence.js","sourceRoot":"","sources":["../../src/api/report-persistence.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export interface RuntimeConnectorStatus {
20
20
  }
21
21
  export interface RuntimeStatusSnapshot {
22
22
  running: boolean;
23
+ version: string;
23
24
  backend: RuntimeBackend;
24
25
  model: string;
25
26
  startedAt: number;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-status-handler.d.ts","sourceRoot":"","sources":["../../src/api/runtime-status-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1D,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,qBAAqB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;CAC/C;AAuBD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CAiBrF"}
1
+ {"version":3,"file":"runtime-status-handler.d.ts","sourceRoot":"","sources":["../../src/api/runtime-status-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1D,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,qBAAqB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;CAC/C;AAwBD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CAiBrF"}
@@ -22,6 +22,7 @@ const auth_middleware_js_1 = require("./auth-middleware.js");
22
22
  function serializeSnapshot(snapshot) {
23
23
  return {
24
24
  running: snapshot.running,
25
+ version: snapshot.version,
25
26
  backend: snapshot.backend,
26
27
  model: snapshot.model,
27
28
  startedAt: snapshot.startedAt,
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-status-handler.js","sourceRoot":"","sources":["../../src/api/runtime-status-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAsDH,8DAiBC;AArED,qCAAiC;AACjC,6DAAmD;AA8BnD;;;GAGG;AACH,SAAS,iBAAiB,CAAC,QAA+B;IACxD,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACrB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAClE,CAAC,CAAC,IAAI;QACR,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,KAAK,EAAE,SAAS,CAAC,KAAK;SACvB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAgB,yBAAyB,CAAC,OAAmC;IAC3E,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,gCAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,gCAAgC;aAC1C,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"runtime-status-handler.js","sourceRoot":"","sources":["../../src/api/runtime-status-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAwDH,8DAiBC;AAvED,qCAAiC;AACjC,6DAAmD;AA+BnD;;;GAGG;AACH,SAAS,iBAAiB,CAAC,QAA+B;IACxD,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACrB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAClE,CAAC,CAAC,IAAI;QACR,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,KAAK,EAAE,SAAS,CAAC,KAAK;SACvB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAgB,yBAAyB,CAAC,OAAmC;IAC3E,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,gCAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,gCAAgC;aAC1C,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -16,7 +16,8 @@ import { type PrivateConnectorPolicy } from '../../connectors/private-connector-
16
16
  import { type MemoryScopeRef } from '../../memory/scope-context.js';
17
17
  import { type AgentPersonaConfig } from '../config/types.js';
18
18
  import type { DBManagerAdapter as DatabaseAdapter } from '@jungjaehoon/mama-core';
19
- import { type WorkOrderKind } from '../../operator/task-ledger.js';
19
+ import { TaskLedger, type WorkOrderKind } from '../../operator/task-ledger.js';
20
+ import { BoardRefreshGate } from '../../operator/board-refresh-gate.js';
20
21
  import { type OwnerBackfillRegistry } from '../runtime/owner-backfill.js';
21
22
  type RuntimeBackend = 'claude' | 'codex' | 'cline';
22
23
  type CorePrincipalRegistry = OwnerBackfillRegistry & PrincipalRepository;
@@ -225,6 +226,18 @@ export declare function buildSystemAgentProcessDefaults(config: {
225
226
  }): {
226
227
  dangerouslySkipPermissions: boolean;
227
228
  };
229
+ export interface OwnerWorkOrderRequestHandlerDeps {
230
+ taskLedger: TaskLedger;
231
+ boardRefreshGate: BoardRefreshGate | null;
232
+ now?: () => number;
233
+ log?: (line: string) => void;
234
+ logError?: (line: string, detail: unknown) => void;
235
+ }
236
+ /** Build the enqueue-and-ack handler shared by direct owner and conductor requests. */
237
+ export declare function buildOwnerWorkOrderRequestHandler(deps: OwnerWorkOrderRequestHandlerDeps): (kind: 'board' | 'wiki' | 'memory-curation', causeEventIds?: readonly string[]) => {
238
+ accepted: boolean;
239
+ reason?: string;
240
+ };
228
241
  /**
229
242
  * Execute start command
230
243
  */
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,7 @@ exports.bindCodeActParentModelRun = bindCodeActParentModelRun;
66
66
  exports.finalizeCodeActParentModelRun = finalizeCodeActParentModelRun;
67
67
  exports.failCodeActParentModelRun = failCodeActParentModelRun;
68
68
  exports.buildSystemAgentProcessDefaults = buildSystemAgentProcessDefaults;
69
+ exports.buildOwnerWorkOrderRequestHandler = buildOwnerWorkOrderRequestHandler;
69
70
  exports.startCommand = startCommand;
70
71
  exports.runAgentLoop = runAgentLoop;
71
72
  const config_manager_js_1 = require("../config/config-manager.js");
@@ -122,6 +123,8 @@ const mamaCore = __importStar(require("@jungjaehoon/mama-core"));
122
123
  const report_run_js_1 = require("../../operator/report-run.js");
123
124
  const console_brief_js_1 = require("../../operator/console-brief.js");
124
125
  const task_ledger_js_1 = require("../../operator/task-ledger.js");
126
+ const board_refresh_gate_js_1 = require("../../operator/board-refresh-gate.js");
127
+ const workorder_publishers_js_1 = require("../../operator/workorder-publishers.js");
125
128
  const conductor_inbox_js_1 = require("../../operator/conductor-inbox.js");
126
129
  const conductor_session_js_1 = require("../../operator/conductor-session.js");
127
130
  const conductor_js_1 = require("../../operator/conductor.js");
@@ -138,6 +141,7 @@ const { DebugLogger } = debugLogger;
138
141
  const codeActLogger = new DebugLogger('CodeAct');
139
142
  const temporalLogger = new DebugLogger('TemporalReconcile');
140
143
  const principalRegistryLogger = new DebugLogger('PrincipalRegistry');
144
+ const ownerWorkOrderLogger = new DebugLogger('OwnerWorkOrder');
141
145
  const DISABLED_PRIVATE_CONNECTOR_POLICY = (0, private_connector_policy_js_1.resolvePrivateConnectorPolicy)({
142
146
  ok: true,
143
147
  config: {},
@@ -752,6 +756,64 @@ function buildSystemAgentProcessDefaults(config) {
752
756
  dangerouslySkipPermissions: config.multi_agent?.dangerouslySkipPermissions ?? true,
753
757
  };
754
758
  }
759
+ const OWNER_BOARD_FULL_REPAIR_CHANNEL = 'host:owner-workorder:board-full';
760
+ /** Build the enqueue-and-ack handler shared by direct owner and conductor requests. */
761
+ function buildOwnerWorkOrderRequestHandler(deps) {
762
+ const now = deps.now ?? Date.now;
763
+ const log = deps.log ?? ((line) => ownerWorkOrderLogger.info(line));
764
+ const logError = deps.logError ?? ((line, detail) => ownerWorkOrderLogger.error(line, detail));
765
+ return (kind, causeEventIds) => {
766
+ try {
767
+ const requestedAt = now();
768
+ let idempotencyKey;
769
+ let payload;
770
+ if (kind === 'board') {
771
+ // TG-06: host dirt is recorded before validation or enqueue can fail.
772
+ // The fixed synthetic channel never trusts model/event identifiers.
773
+ const repair = deps.boardRefreshGate
774
+ ? (() => {
775
+ deps.boardRefreshGate.markChannelDirty(OWNER_BOARD_FULL_REPAIR_CHANNEL);
776
+ return deps.boardRefreshGate.captureFullRepair();
777
+ })()
778
+ : null;
779
+ if (causeEventIds && causeEventIds.length > 0) {
780
+ idempotencyKey = (0, workorder_publishers_js_1.boardBatchKey)(causeEventIds);
781
+ payload = {
782
+ mode: 'full',
783
+ force: true,
784
+ eventIds: [...causeEventIds],
785
+ ...(repair ?? {}),
786
+ };
787
+ }
788
+ else {
789
+ idempotencyKey = (0, workorder_publishers_js_1.boardManualKey)(requestedAt);
790
+ payload = { mode: 'full', force: true, ...(repair ?? {}) };
791
+ }
792
+ }
793
+ else if (kind === 'wiki') {
794
+ idempotencyKey = (0, workorder_publishers_js_1.wikiBatchKey)('manual', requestedAt);
795
+ payload = { batchId: `${requestedAt}-manual`, events: ['manual'] };
796
+ }
797
+ else {
798
+ idempotencyKey = (0, workorder_publishers_js_1.promotionManualKey)(requestedAt);
799
+ payload = { scheduledAt: new Date(requestedAt).toISOString() };
800
+ }
801
+ (0, workorder_publishers_js_1.validateWorkOrderPayload)(kind, payload);
802
+ const wo = deps.taskLedger.enqueueWorkOrder({
803
+ workKind: kind,
804
+ idempotencyKey,
805
+ input: payload,
806
+ priority: 'high',
807
+ });
808
+ log(`[stage2] owner workorder enqueued: ${kind}#${wo.id}`);
809
+ return { accepted: true };
810
+ }
811
+ catch (err) {
812
+ logError(`[stage2] owner workorder enqueue failed (${kind}):`, err instanceof Error ? err.message : err);
813
+ return { accepted: false, reason: 'enqueue-failed' };
814
+ }
815
+ };
816
+ }
755
817
  /**
756
818
  * Execute start command
757
819
  */
@@ -1319,6 +1381,9 @@ async function runAgentLoop(config, options = {}) {
1319
1381
  operatorDb.close();
1320
1382
  throw err;
1321
1383
  }
1384
+ // One host-owned gate spans owner workorder requests, route scheduling,
1385
+ // delta ingestion, and completion verification for this boot.
1386
+ const boardRefreshGate = process.env.MAMA_BOARD_RECONCILE === '1' ? new board_refresh_gate_js_1.BoardRefreshGate() : null;
1322
1387
  // S1: durable conductor inbox - constructed UNCONDITIONALLY so drained
1323
1388
  // batches persist before the cursor commits even while the conductor is
1324
1389
  // disabled (that accumulation IS the shadow-mode data; retention inside
@@ -1401,7 +1466,6 @@ async function runAgentLoop(config, options = {}) {
1401
1466
  ensureBriefs();
1402
1467
  (0, console_brief_js_1.ensureConsoleBrief)();
1403
1468
  const { logActivity: logWorkOrderActivity } = await import('../../db/agent-store.js');
1404
- const { validateWorkOrderPayload, boardManualKey, boardBatchKey, wikiBatchKey, promotionManualKey, } = await import('../../operator/workorder-publishers.js');
1405
1469
  // Ops alarm sink (plan D4/E1/G8): constructed OUTSIDE any trigger-loop
1406
1470
  // block - the consumer runs with the loop off, so its terminal alarms
1407
1471
  // must too. Chat id: MAMA_OPS_ALERT_CHAT, falling back to the loop's
@@ -1540,51 +1604,7 @@ async function runAgentLoop(config, options = {}) {
1540
1604
  // (Consumer stop is folded into the operator-DB gateway above - ordering.)
1541
1605
  // Owner-issued workorders (workorder_request tool): enqueue+ack only.
1542
1606
  // Wired here - NOT inside any trigger-loop block (plan C11 class).
1543
- toolExecutor.setWorkOrderRequestHandler((kind, causeEventIds) => {
1544
- try {
1545
- const now = Date.now();
1546
- let idempotencyKey;
1547
- let payload;
1548
- if (kind === 'board') {
1549
- if (causeEventIds && causeEventIds.length > 0) {
1550
- // Batch-carrying delegation: FULL mode (reconcile requires
1551
- // channelKey+deltaLines the requester does not have - proven by
1552
- // review running the validator) with the batch riding as
1553
- // eventIds, which the validator allows on full and
1554
- // causeEventIdsFromPayload lifts as the worker's cause. The
1555
- // batch-deterministic key dedups a redelivered judgment while
1556
- // the first order is still open.
1557
- idempotencyKey = boardBatchKey(causeEventIds);
1558
- payload = { mode: 'full', force: true, eventIds: [...causeEventIds] };
1559
- }
1560
- else {
1561
- idempotencyKey = boardManualKey(now);
1562
- payload = { mode: 'full', force: true };
1563
- }
1564
- }
1565
- else if (kind === 'wiki') {
1566
- idempotencyKey = wikiBatchKey('manual', now);
1567
- payload = { batchId: `${now}-manual`, events: ['manual'] };
1568
- }
1569
- else {
1570
- idempotencyKey = promotionManualKey(now);
1571
- payload = { scheduledAt: new Date(now).toISOString() };
1572
- }
1573
- validateWorkOrderPayload(kind, payload);
1574
- const wo = taskLedger.enqueueWorkOrder({
1575
- workKind: kind,
1576
- idempotencyKey,
1577
- input: payload,
1578
- priority: 'high',
1579
- });
1580
- console.log(`[stage2] owner workorder enqueued: ${kind}#${wo.id}`);
1581
- return { accepted: true };
1582
- }
1583
- catch (err) {
1584
- console.error(`[stage2] owner workorder enqueue failed (${kind}):`, err instanceof Error ? err.message : err);
1585
- return { accepted: false, reason: 'enqueue-failed' };
1586
- }
1587
- });
1607
+ toolExecutor.setWorkOrderRequestHandler(buildOwnerWorkOrderRequestHandler({ taskLedger, boardRefreshGate }));
1588
1608
  }
1589
1609
  const temporalTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
1590
1610
  const temporalAssembly = (0, temporal_init_js_1.assembleDaemonTemporalRuntime)({
@@ -1965,7 +1985,7 @@ async function runAgentLoop(config, options = {}) {
1965
1985
  privateConnectorPolicy,
1966
1986
  });
1967
1987
  channelDeltaSink.current = (channelKey, lines, eventIds) => eventBus.emit({ type: 'operator:channel-delta', channelKey, lines, eventIds });
1968
- await (0, api_routes_init_js_1.registerApiRoutes)({
1988
+ const apiRoutesHandle = await (0, api_routes_init_js_1.registerApiRoutes)({
1969
1989
  config,
1970
1990
  apiServer,
1971
1991
  eventBus,
@@ -1985,7 +2005,9 @@ async function runAgentLoop(config, options = {}) {
1985
2005
  ],
1986
2006
  sessionsDb: db,
1987
2007
  workOrderConsumer: workOrderConsumer ?? undefined,
2008
+ boardRefreshGate,
1988
2009
  });
2010
+ gateways.push({ stop: async () => apiRoutesHandle.stop() });
1989
2011
  // ── Stage-2 boot pass (plan S2-T3): runtime assembly registered hooks;
1990
2012
  // recovery/cleanup run after routes are ready, then the consumer starts.
1991
2013
  const temporalBoot = temporalAssembly.bootAfterRoutes();