@jungjaehoon/mama-os 0.75.0 → 0.77.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 (260) hide show
  1. package/CHANGELOG.md +112 -0
  2. package/README.md +1 -1
  3. package/dist/api/attachment-actions.d.ts.map +1 -1
  4. package/dist/api/attachment-actions.js +8 -7
  5. package/dist/api/attachment-actions.js.map +1 -1
  6. package/dist/api/code-act-actions.d.ts +3 -1
  7. package/dist/api/code-act-actions.d.ts.map +1 -1
  8. package/dist/api/code-act-actions.js +21 -9
  9. package/dist/api/code-act-actions.js.map +1 -1
  10. package/dist/api/document-actions.d.ts +13 -0
  11. package/dist/api/document-actions.d.ts.map +1 -0
  12. package/dist/api/document-actions.js +55 -0
  13. package/dist/api/document-actions.js.map +1 -0
  14. package/dist/api/drive-actions.d.ts +4 -0
  15. package/dist/api/drive-actions.d.ts.map +1 -1
  16. package/dist/api/drive-actions.js +15 -7
  17. package/dist/api/drive-actions.js.map +1 -1
  18. package/dist/api/drive-delivery.d.ts.map +1 -1
  19. package/dist/api/drive-delivery.js +8 -3
  20. package/dist/api/drive-delivery.js.map +1 -1
  21. package/dist/api/member-enrollment.d.ts +9 -3
  22. package/dist/api/member-enrollment.d.ts.map +1 -1
  23. package/dist/api/member-enrollment.js +64 -16
  24. package/dist/api/member-enrollment.js.map +1 -1
  25. package/dist/api/member-export.d.ts.map +1 -1
  26. package/dist/api/member-export.js +14 -6
  27. package/dist/api/member-export.js.map +1 -1
  28. package/dist/api/member-lifecycle.d.ts +25 -4
  29. package/dist/api/member-lifecycle.d.ts.map +1 -1
  30. package/dist/api/member-lifecycle.js +88 -21
  31. package/dist/api/member-lifecycle.js.map +1 -1
  32. package/dist/api/member-notice-actions.d.ts +18 -0
  33. package/dist/api/member-notice-actions.d.ts.map +1 -0
  34. package/dist/api/member-notice-actions.js +184 -0
  35. package/dist/api/member-notice-actions.js.map +1 -0
  36. package/dist/api/member-records.d.ts +17 -2
  37. package/dist/api/member-records.d.ts.map +1 -1
  38. package/dist/api/member-records.js +440 -82
  39. package/dist/api/member-records.js.map +1 -1
  40. package/dist/api/member-share-actions.d.ts +3 -3
  41. package/dist/api/member-share-actions.d.ts.map +1 -1
  42. package/dist/api/member-share-actions.js +47 -20
  43. package/dist/api/member-share-actions.js.map +1 -1
  44. package/dist/api/owner-policy-actions.d.ts +1 -0
  45. package/dist/api/owner-policy-actions.d.ts.map +1 -1
  46. package/dist/api/owner-policy-actions.js +8 -4
  47. package/dist/api/owner-policy-actions.js.map +1 -1
  48. package/dist/api/owner-timezone-actions.d.ts +5 -2
  49. package/dist/api/owner-timezone-actions.d.ts.map +1 -1
  50. package/dist/api/owner-timezone-actions.js +4 -6
  51. package/dist/api/owner-timezone-actions.js.map +1 -1
  52. package/dist/api/personal-job-actions.d.ts +6 -0
  53. package/dist/api/personal-job-actions.d.ts.map +1 -0
  54. package/dist/api/personal-job-actions.js +72 -0
  55. package/dist/api/personal-job-actions.js.map +1 -0
  56. package/dist/api/security-events.d.ts +6 -1
  57. package/dist/api/security-events.d.ts.map +1 -1
  58. package/dist/api/security-events.js +34 -15
  59. package/dist/api/security-events.js.map +1 -1
  60. package/dist/api/skill-actions.d.ts +5 -0
  61. package/dist/api/skill-actions.d.ts.map +1 -0
  62. package/dist/api/skill-actions.js +66 -0
  63. package/dist/api/skill-actions.js.map +1 -0
  64. package/dist/api/source-actions.d.ts.map +1 -1
  65. package/dist/api/source-actions.js +4 -2
  66. package/dist/api/source-actions.js.map +1 -1
  67. package/dist/api/stored-source-reader.d.ts.map +1 -1
  68. package/dist/api/stored-source-reader.js +9 -2
  69. package/dist/api/stored-source-reader.js.map +1 -1
  70. package/dist/api/trello-actions.d.ts.map +1 -1
  71. package/dist/api/trello-actions.js +8 -2
  72. package/dist/api/trello-actions.js.map +1 -1
  73. package/dist/api/work-actions.d.ts +12 -2
  74. package/dist/api/work-actions.d.ts.map +1 -1
  75. package/dist/api/work-actions.js +57 -10
  76. package/dist/api/work-actions.js.map +1 -1
  77. package/dist/cli/commands/daemon.d.ts +12 -2
  78. package/dist/cli/commands/daemon.d.ts.map +1 -1
  79. package/dist/cli/commands/daemon.js +85 -13
  80. package/dist/cli/commands/daemon.js.map +1 -1
  81. package/dist/cli/commands/init.d.ts +4 -0
  82. package/dist/cli/commands/init.d.ts.map +1 -1
  83. package/dist/cli/commands/init.js +23 -0
  84. package/dist/cli/commands/init.js.map +1 -1
  85. package/dist/cli/commands/tools.d.ts +12 -0
  86. package/dist/cli/commands/tools.d.ts.map +1 -0
  87. package/dist/cli/commands/tools.js +109 -0
  88. package/dist/cli/commands/tools.js.map +1 -0
  89. package/dist/cli/index.js +6 -1
  90. package/dist/cli/index.js.map +1 -1
  91. package/dist/cli/runtime/claude-caller-config.d.ts +3 -1
  92. package/dist/cli/runtime/claude-caller-config.d.ts.map +1 -1
  93. package/dist/cli/runtime/claude-caller-config.js +14 -2
  94. package/dist/cli/runtime/claude-caller-config.js.map +1 -1
  95. package/dist/connectors/framework/polling-scheduler.d.ts +6 -1
  96. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  97. package/dist/connectors/framework/polling-scheduler.js +25 -3
  98. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  99. package/dist/connectors/framework/stored-index-read.d.ts +2 -2
  100. package/dist/connectors/framework/stored-index-read.d.ts.map +1 -1
  101. package/dist/connectors/framework/stored-index-read.js +10 -3
  102. package/dist/connectors/framework/stored-index-read.js.map +1 -1
  103. package/dist/gateways/base-gateway.d.ts +7 -0
  104. package/dist/gateways/base-gateway.d.ts.map +1 -1
  105. package/dist/gateways/base-gateway.js +24 -0
  106. package/dist/gateways/base-gateway.js.map +1 -1
  107. package/dist/gateways/discord.d.ts +4 -0
  108. package/dist/gateways/discord.d.ts.map +1 -1
  109. package/dist/gateways/discord.js +24 -6
  110. package/dist/gateways/discord.js.map +1 -1
  111. package/dist/gateways/slack.d.ts +3 -0
  112. package/dist/gateways/slack.d.ts.map +1 -1
  113. package/dist/gateways/slack.js +15 -2
  114. package/dist/gateways/slack.js.map +1 -1
  115. package/dist/gateways/telegram-errors.d.ts +3 -0
  116. package/dist/gateways/telegram-errors.d.ts.map +1 -1
  117. package/dist/gateways/telegram-errors.js +5 -0
  118. package/dist/gateways/telegram-errors.js.map +1 -1
  119. package/dist/gateways/telegram-message-ledger.d.ts +7 -0
  120. package/dist/gateways/telegram-message-ledger.d.ts.map +1 -1
  121. package/dist/gateways/telegram-message-ledger.js +27 -2
  122. package/dist/gateways/telegram-message-ledger.js.map +1 -1
  123. package/dist/gateways/telegram.d.ts +24 -6
  124. package/dist/gateways/telegram.d.ts.map +1 -1
  125. package/dist/gateways/telegram.js +258 -44
  126. package/dist/gateways/telegram.js.map +1 -1
  127. package/dist/gateways/turn-contract.d.ts +6 -0
  128. package/dist/gateways/turn-contract.d.ts.map +1 -1
  129. package/dist/runtime/action-surface.d.ts +28 -3
  130. package/dist/runtime/action-surface.d.ts.map +1 -1
  131. package/dist/runtime/action-surface.js +316 -34
  132. package/dist/runtime/action-surface.js.map +1 -1
  133. package/dist/runtime/backend-security.d.ts +4 -0
  134. package/dist/runtime/backend-security.d.ts.map +1 -1
  135. package/dist/runtime/backend-security.js +8 -1
  136. package/dist/runtime/backend-security.js.map +1 -1
  137. package/dist/runtime/claude-caller-hook.d.ts +14 -0
  138. package/dist/runtime/claude-caller-hook.d.ts.map +1 -1
  139. package/dist/runtime/claude-caller-hook.js +21 -1
  140. package/dist/runtime/claude-caller-hook.js.map +1 -1
  141. package/dist/runtime/config.d.ts +6 -0
  142. package/dist/runtime/config.d.ts.map +1 -1
  143. package/dist/runtime/config.js +24 -0
  144. package/dist/runtime/config.js.map +1 -1
  145. package/dist/runtime/connectors.js +1 -1
  146. package/dist/runtime/connectors.js.map +1 -1
  147. package/dist/runtime/egress-proxy.d.ts +3 -3
  148. package/dist/runtime/egress-proxy.d.ts.map +1 -1
  149. package/dist/runtime/egress-proxy.js +16 -3
  150. package/dist/runtime/egress-proxy.js.map +1 -1
  151. package/dist/runtime/member-paths.d.ts +9 -1
  152. package/dist/runtime/member-paths.d.ts.map +1 -1
  153. package/dist/runtime/member-paths.js +67 -5
  154. package/dist/runtime/member-paths.js.map +1 -1
  155. package/dist/runtime/member-session.d.ts +21 -21
  156. package/dist/runtime/member-session.d.ts.map +1 -1
  157. package/dist/runtime/member-session.js +297 -34
  158. package/dist/runtime/member-session.js.map +1 -1
  159. package/dist/runtime/member-system-prompt.d.ts +3 -0
  160. package/dist/runtime/member-system-prompt.d.ts.map +1 -1
  161. package/dist/runtime/member-system-prompt.js +30 -4
  162. package/dist/runtime/member-system-prompt.js.map +1 -1
  163. package/dist/runtime/native-session.d.ts +8 -0
  164. package/dist/runtime/native-session.d.ts.map +1 -1
  165. package/dist/runtime/native-session.js +105 -17
  166. package/dist/runtime/native-session.js.map +1 -1
  167. package/dist/runtime/outbound-attempts.d.ts +5 -2
  168. package/dist/runtime/outbound-attempts.d.ts.map +1 -1
  169. package/dist/runtime/outbound-attempts.js +3 -2
  170. package/dist/runtime/outbound-attempts.js.map +1 -1
  171. package/dist/runtime/owner-authority.d.ts +16 -14
  172. package/dist/runtime/owner-authority.d.ts.map +1 -1
  173. package/dist/runtime/owner-authority.js +163 -7
  174. package/dist/runtime/owner-authority.js.map +1 -1
  175. package/dist/runtime/owner-runtime.d.ts +18 -5
  176. package/dist/runtime/owner-runtime.d.ts.map +1 -1
  177. package/dist/runtime/owner-runtime.js +429 -43
  178. package/dist/runtime/owner-runtime.js.map +1 -1
  179. package/dist/runtime/owner-system-prompt.d.ts +3 -1
  180. package/dist/runtime/owner-system-prompt.d.ts.map +1 -1
  181. package/dist/runtime/owner-system-prompt.js +16 -6
  182. package/dist/runtime/owner-system-prompt.js.map +1 -1
  183. package/dist/runtime/personal-job-cron.d.ts +6 -0
  184. package/dist/runtime/personal-job-cron.d.ts.map +1 -0
  185. package/dist/runtime/personal-job-cron.js +154 -0
  186. package/dist/runtime/personal-job-cron.js.map +1 -0
  187. package/dist/runtime/personal-jobs.d.ts +107 -0
  188. package/dist/runtime/personal-jobs.d.ts.map +1 -0
  189. package/dist/runtime/personal-jobs.js +353 -0
  190. package/dist/runtime/personal-jobs.js.map +1 -0
  191. package/dist/runtime/personal-notices.d.ts +38 -0
  192. package/dist/runtime/personal-notices.d.ts.map +1 -0
  193. package/dist/runtime/personal-notices.js +137 -0
  194. package/dist/runtime/personal-notices.js.map +1 -0
  195. package/dist/runtime/personal-turns.d.ts +23 -0
  196. package/dist/runtime/personal-turns.d.ts.map +1 -0
  197. package/dist/runtime/personal-turns.js +51 -0
  198. package/dist/runtime/personal-turns.js.map +1 -0
  199. package/dist/runtime/principal-access.d.ts +8 -0
  200. package/dist/runtime/principal-access.d.ts.map +1 -1
  201. package/dist/runtime/principal-access.js +70 -2
  202. package/dist/runtime/principal-access.js.map +1 -1
  203. package/dist/runtime/principal-sessions.d.ts +16 -2
  204. package/dist/runtime/principal-sessions.d.ts.map +1 -1
  205. package/dist/runtime/principal-sessions.js +104 -21
  206. package/dist/runtime/principal-sessions.js.map +1 -1
  207. package/dist/runtime/skills.d.ts +86 -0
  208. package/dist/runtime/skills.d.ts.map +1 -0
  209. package/dist/runtime/skills.js +560 -0
  210. package/dist/runtime/skills.js.map +1 -0
  211. package/dist/runtime/stimulus-delivery.d.ts +21 -1
  212. package/dist/runtime/stimulus-delivery.d.ts.map +1 -1
  213. package/dist/runtime/stimulus-delivery.js +185 -18
  214. package/dist/runtime/stimulus-delivery.js.map +1 -1
  215. package/dist/runtime/tools-paths.d.ts +9 -0
  216. package/dist/runtime/tools-paths.d.ts.map +1 -0
  217. package/dist/runtime/tools-paths.js +98 -0
  218. package/dist/runtime/tools-paths.js.map +1 -0
  219. package/dist/runtime/turn-orders.d.ts +22 -2
  220. package/dist/runtime/turn-orders.d.ts.map +1 -1
  221. package/dist/runtime/turn-orders.js +60 -6
  222. package/dist/runtime/turn-orders.js.map +1 -1
  223. package/dist/runtime/web-fetch-scope.d.ts +20 -0
  224. package/dist/runtime/web-fetch-scope.d.ts.map +1 -0
  225. package/dist/runtime/web-fetch-scope.js +68 -0
  226. package/dist/runtime/web-fetch-scope.js.map +1 -0
  227. package/dist/storage/chat-sources.d.ts +21 -0
  228. package/dist/storage/chat-sources.d.ts.map +1 -1
  229. package/dist/storage/chat-sources.js +65 -3
  230. package/dist/storage/chat-sources.js.map +1 -1
  231. package/dist/tools/command-runner.d.ts +12 -0
  232. package/dist/tools/command-runner.d.ts.map +1 -0
  233. package/dist/tools/command-runner.js +65 -0
  234. package/dist/tools/command-runner.js.map +1 -0
  235. package/dist/tools/document-render.d.ts +24 -0
  236. package/dist/tools/document-render.d.ts.map +1 -0
  237. package/dist/tools/document-render.js +208 -0
  238. package/dist/tools/document-render.js.map +1 -0
  239. package/dist/tools/document-toolkit.d.ts +15 -0
  240. package/dist/tools/document-toolkit.d.ts.map +1 -0
  241. package/dist/tools/document-toolkit.js +501 -0
  242. package/dist/tools/document-toolkit.js.map +1 -0
  243. package/dist/tools/office-render.d.ts +28 -0
  244. package/dist/tools/office-render.d.ts.map +1 -0
  245. package/dist/tools/office-render.js +101 -0
  246. package/dist/tools/office-render.js.map +1 -0
  247. package/dist/tools/toolkit-process.d.ts +9 -0
  248. package/dist/tools/toolkit-process.d.ts.map +1 -0
  249. package/dist/tools/toolkit-process.js +148 -0
  250. package/dist/tools/toolkit-process.js.map +1 -0
  251. package/dist/tools/toolkit-state.d.ts +22 -0
  252. package/dist/tools/toolkit-state.d.ts.map +1 -0
  253. package/dist/tools/toolkit-state.js +116 -0
  254. package/dist/tools/toolkit-state.js.map +1 -0
  255. package/package.json +3 -2
  256. package/toolkit/inspect-office-zip.py +16 -0
  257. package/toolkit/rasterize.py +29 -0
  258. package/toolkit/requirements.in +11 -0
  259. package/toolkit/requirements.lock +1643 -0
  260. package/toolkit/smoke.py +32 -0
@@ -1 +1 @@
1
- {"version":3,"file":"stimulus-delivery.d.ts","sourceRoot":"","sources":["../../src/runtime/stimulus-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stimulus-delivery.d.ts","sourceRoot":"","sources":["../../src/runtime/stimulus-delivery.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ exports.renderWindowQueue = renderWindowQueue;
7
7
  exports.stimulusFailureReason = stimulusFailureReason;
8
8
  exports.isRecordOrderRow = isRecordOrderRow;
9
9
  exports.createStimulusDelivery = createStimulusDelivery;
10
+ const personal_jobs_js_1 = require("./personal-jobs.js");
11
+ const personal_turns_js_1 = require("./personal-turns.js");
12
+ const personal_job_cron_js_1 = require("./personal-job-cron.js");
13
+ const personal_notices_js_1 = require("./personal-notices.js");
10
14
  const principal_sessions_js_1 = require("./principal-sessions.js");
11
15
  const untrusted_content_js_1 = require("../utils/untrusted-content.js");
12
16
  const node_crypto_1 = require("node:crypto");
@@ -80,28 +84,54 @@ function sourcePayload(delta) {
80
84
  ...(delta.replay === undefined ? {} : { replay: delta.replay }),
81
85
  };
82
86
  }
83
- function createStimulusIntake(runtime, principalId, chat) {
87
+ function createStimulusIntake(runtime, principalId, chat, roomChannel) {
84
88
  const ownerPayload = (input) => ({
85
89
  text: input.text,
90
+ ...(roomChannel === undefined ? {} : { roomChannel }),
86
91
  ...(input.payload === undefined ? {} : { input: input.payload }),
87
92
  ...(input.senderPrincipalId === undefined
88
93
  ? {}
89
94
  : { senderPrincipalId: input.senderPrincipalId }),
90
95
  });
96
+ // A common input handed to a member's room keeps its transport identity; the durable room
97
+ // input, read here, is the one record of where it went.
98
+ const handedOff = (sourceMessageRef) => {
99
+ const row = runtime.mailbox?.readInput(sourceMessageRef, principalId);
100
+ const sender = row?.payload && typeof row.payload === 'object' && !Array.isArray(row.payload)
101
+ ? row.payload.senderPrincipalId
102
+ : undefined;
103
+ if (typeof sender !== 'string' || sender === principalId)
104
+ return undefined;
105
+ const routed = runtime.mailbox?.readInput(sourceMessageRef, sender);
106
+ return routed?.payload &&
107
+ typeof routed.payload === 'object' &&
108
+ !Array.isArray(routed.payload) &&
109
+ routed.payload.roomChannel === row?.channelKey
110
+ ? routed
111
+ : undefined;
112
+ };
91
113
  return {
92
114
  accept: (stimulus) => runtime.accept({ ...stimulus, principalId }),
115
+ handedOffTo: (sourceMessageRef) => handedOff(sourceMessageRef)?.principalId,
93
116
  isPending: (sourceMessageRef) => {
94
- const row = runtime.mailbox?.readInput(sourceMessageRef, principalId);
117
+ // Recovery waits for a handed-off room input rather than replacing its answer.
118
+ const routed = handedOff(sourceMessageRef);
119
+ const row = routed ?? runtime.mailbox?.readInput(sourceMessageRef, principalId);
95
120
  // A failed accepted turn will never run again. Keep a recorded answer pending only
96
121
  // until reconciliation delivers it, so recovery cannot replace it with an interruption.
97
122
  if (row?.nativeDelivery?.state === 'uncertain') {
98
123
  const receipt = row.nativeDelivery.receipt;
99
- return Boolean(receipt && runtime.mailbox.nativeInputs.resultForReceipt(receipt, principalId));
124
+ return Boolean(receipt && runtime.mailbox.nativeInputs.resultForReceipt(receipt, row.principalId));
100
125
  }
101
- return row?.status === 'pending';
126
+ return row?.status === 'pending' || (routed !== undefined && row?.status === 'claimed');
102
127
  },
103
128
  recordOwnerReply: (input) => chat.saveReply(input),
129
+ ...(chat.hasOwnerMessage === undefined
130
+ ? {}
131
+ : { hasOwnerMessage: (ref) => chat.hasOwnerMessage(ref) }),
104
132
  acceptOwnerMessage: (input) => {
133
+ if (roomChannel !== undefined && input.channelKey !== roomChannel)
134
+ throw new Error('Room intake channel mismatch');
105
135
  const observationRef = chat.saveOwnerMessage(input);
106
136
  return runtime.accept({
107
137
  id: input.id,
@@ -327,9 +357,19 @@ function ownerText(row) {
327
357
  : '';
328
358
  }
329
359
  /** What a row's turn says, by kind; a live delta with only history lines has no turn. */
330
- function planTurn(row, options) {
360
+ async function planTurn(row, options) {
331
361
  const zone = options.timeZone.get();
332
362
  if (row.kind === 'owner_message') {
363
+ const sender = row.payload && typeof row.payload === 'object' && !Array.isArray(row.payload)
364
+ ? row.payload.senderPrincipalId
365
+ : undefined;
366
+ if (typeof sender === 'string' && options.ownerMessageSenderActive?.(sender) === false) {
367
+ const routed = await options.rerouteOwnerMessage?.(row, sender);
368
+ return {
369
+ kind: 'skip',
370
+ reason: routed ? 'owner_sender_routed_to_room' : 'inactive_owner_sender',
371
+ };
372
+ }
333
373
  return {
334
374
  kind: 'turn',
335
375
  lessonQuery: ownerText(row),
@@ -337,7 +377,56 @@ function planTurn(row, options) {
337
377
  messenger: row.stimulusId.split(':', 1)[0],
338
378
  occurredAt: row.occurredAt,
339
379
  payload: row.payload,
340
- }, lessons, { timeZone: zone }, options.member?.voice),
380
+ }, lessons, {
381
+ timeZone: zone,
382
+ principalRoles: options.principalRoles,
383
+ principalDisplayName: options.principalDisplayName,
384
+ commonPrincipalId: options.commonPrincipalId,
385
+ sessionPrincipalId: options.member?.principalId,
386
+ }, options.member?.voice),
387
+ };
388
+ }
389
+ const jobPayload = (0, personal_jobs_js_1.personalJobPayload)(row);
390
+ if (options.member && jobPayload) {
391
+ const job = options.personalJobs?.find(row.principalId, jobPayload.jobId);
392
+ if (!job || !job.enabled || job.version !== jobPayload.version)
393
+ return { kind: 'skip', reason: 'personal job changed or deleted' };
394
+ if (!options.personalJobs.isActive(row.principalId))
395
+ return { kind: 'skip', reason: 'personal job person is no longer active' };
396
+ const latest = (0, personal_job_cron_js_1.latestCronOccurrence)(job.cron, job.timeZone, Date.now(), job.scheduleFrom);
397
+ if (options.personalJobs.isClosed(row) ||
398
+ options.personalJobs.isSuperseded(row) ||
399
+ row.occurredAt <= job.scheduleFrom ||
400
+ (latest !== null && row.occurredAt < latest))
401
+ return {
402
+ kind: 'skip',
403
+ reason: 'personal job occurrence is no longer the latest due occurrence',
404
+ };
405
+ return {
406
+ kind: 'turn',
407
+ lessonQuery: jobPayload.instruction,
408
+ render: (lessons) => (0, turn_orders_js_1.personalJobOrder)(jobPayload, row.occurredAt, job.lastCompletedAt ?? job.createdAt, lessons),
409
+ };
410
+ }
411
+ const notice = (0, personal_notices_js_1.personalNoticePayload)(row);
412
+ if (options.member && notice) {
413
+ if (!options.personalNotices?.isActive(row.principalId))
414
+ return { kind: 'skip', reason: 'personal notice person is no longer active' };
415
+ if (options.personalNotices.isClosed(row))
416
+ return { kind: 'skip', reason: 'personal notice already closed' };
417
+ if (!options.personalNotices.isCurrent(row))
418
+ return { kind: 'skip', reason: 'personal notice person lifecycle changed' };
419
+ const refs = [];
420
+ for (const ref of notice.refs)
421
+ if (await options.readNoticeRef(ref))
422
+ refs.push(ref);
423
+ if (refs.length === 0)
424
+ return { kind: 'skip', reason: 'personal notice has no readable refs' };
425
+ await options.personalNotices.prepare(row, refs);
426
+ return {
427
+ kind: 'turn',
428
+ lessonQuery: null,
429
+ render: () => (0, turn_orders_js_1.personalNoticeOrder)({ ...notice, refs }, row.occurredAt),
341
430
  };
342
431
  }
343
432
  if (options.member)
@@ -395,7 +484,12 @@ function createStimulusDelivery(options) {
395
484
  // not observable, so a day bounds how long a lesson stays out of view.
396
485
  let shownLessons = new Set();
397
486
  let shownDay = '';
398
- const pickLessons = async (query, newSession) => {
487
+ const pickLessons = async (query, newSession, stateless) => {
488
+ // A job's fresh context must not consume guidance for the person's continuing DM context.
489
+ if (stateless)
490
+ return query?.trim() && options.lessons
491
+ ? [...(await options.lessons(query))].slice(0, 3)
492
+ : [];
399
493
  const day = (0, timezone_js_1.localDateKey)(Date.now(), options.timeZone.get());
400
494
  if (newSession || day !== shownDay) {
401
495
  shownLessons = new Set();
@@ -403,13 +497,33 @@ function createStimulusDelivery(options) {
403
497
  }
404
498
  if (query === null || query.trim() === '' || !options.lessons)
405
499
  return [];
500
+ let repeatedWorkflow = false;
406
501
  const fresh = (await options.lessons(query))
407
- .filter((lesson) => !shownLessons.has(lesson.id))
502
+ .filter((lesson) => {
503
+ if (!shownLessons.has(lesson.id))
504
+ return true;
505
+ if (lesson.skillId === undefined || repeatedWorkflow)
506
+ return false;
507
+ repeatedWorkflow = true;
508
+ return true;
509
+ })
408
510
  .slice(0, 3);
409
511
  for (const lesson of fresh)
410
512
  shownLessons.add(lesson.id);
411
513
  return fresh;
412
514
  };
515
+ const closePersonalInput = async (row) => {
516
+ if ((0, personal_notices_js_1.personalNoticePayload)(row)) {
517
+ await options.personalNotices?.close(row);
518
+ options.retirePersonalJobText?.(row.stimulusId);
519
+ return;
520
+ }
521
+ const payload = (0, personal_jobs_js_1.personalJobPayload)(row);
522
+ if (!payload)
523
+ return;
524
+ await options.personalJobs?.close(row);
525
+ options.retirePersonalJobText?.((0, personal_jobs_js_1.personalJobOccurrenceId)(payload.jobId, row.occurredAt));
526
+ };
413
527
  const deliverResult = async (row, result, modelRunId = result.modelRunId) => {
414
528
  if (row.kind === 'owner_message')
415
529
  await options.onOwnerResult?.(row, result);
@@ -421,8 +535,25 @@ function createStimulusDelivery(options) {
421
535
  if (row.kind === 'scheduled') {
422
536
  if (isRecordOrderRow(row))
423
537
  await options.recordOrders?.onResult(row, modelRunId ?? null);
424
- else
425
- await options.onScheduledResult?.(row, result);
538
+ else {
539
+ if (((0, personal_jobs_js_1.personalJobPayload)(row) && options.personalJobs?.isClosed(row)) ||
540
+ ((0, personal_notices_js_1.personalNoticePayload)(row) && options.personalNotices?.isClosed(row))) {
541
+ await closePersonalInput(row);
542
+ return;
543
+ }
544
+ try {
545
+ await options.onScheduledResult?.(row, result);
546
+ if ((0, personal_notices_js_1.personalNoticePayload)(row))
547
+ await closePersonalInput(row);
548
+ }
549
+ catch (error) {
550
+ if (!(error instanceof personal_turns_js_1.PersonalTurnFinalFailure))
551
+ throw error;
552
+ await closePersonalInput(row);
553
+ await options.onFailed?.(row, stimulusFailureReason(error), modelRunId ?? null);
554
+ return;
555
+ }
556
+ }
426
557
  }
427
558
  await options.onDelivered?.(row, modelRunId ?? null);
428
559
  };
@@ -431,8 +562,9 @@ function createStimulusDelivery(options) {
431
562
  try {
432
563
  const replaySourceEndMs = replaySourceCeiling(row);
433
564
  activeReplaySourceEndMs = replaySourceEndMs;
434
- const plan = planTurn(row, options);
565
+ const plan = await planTurn(row, options);
435
566
  if (plan.kind === 'skip') {
567
+ await closePersonalInput(row);
436
568
  // Kagemusha's backfill guard: only history lines, so no live turn and no record order.
437
569
  await options.onSkipped?.(row, plan.reason);
438
570
  await options.onDelivered?.(row, null);
@@ -441,21 +573,34 @@ function createStimulusDelivery(options) {
441
573
  const text = (blocks) => [
442
574
  { type: 'text', text: blocks.filter((block) => block !== '').join('\n\n') },
443
575
  ];
576
+ const sessionKey = ((0, personal_notices_js_1.personalNoticePayload)(row) && options.member
577
+ ? (0, personal_notices_js_1.personalNoticeSessionKey)(row)
578
+ : undefined) ??
579
+ ((0, personal_jobs_js_1.personalJobPayload)(row) && options.member
580
+ ? (0, personal_jobs_js_1.personalJobSessionKey)(row.principalId, (0, personal_jobs_js_1.personalJobPayload)(row).jobId)
581
+ : undefined) ??
582
+ options.member?.sessionKey ??
583
+ (replaySourceEndMs === undefined ? exports.OWNER_RUNTIME_SESSION_KEY : exports.OWNER_REPLAY_SESSION_KEY);
444
584
  const result = await context.run(text([plan.render([], new Date())]), {
445
585
  onModelRunStarted: (id) => {
446
586
  modelRunId = id;
447
587
  },
448
588
  prepareSessionContent: async ({ isNewSession }) => {
449
- const lessons = await pickLessons(plan.lessonQuery, isNewSession);
589
+ const stateless = options.member !== undefined &&
590
+ ((0, personal_jobs_js_1.personalJobPayload)(row) !== null || (0, personal_notices_js_1.personalNoticePayload)(row) !== null);
591
+ const lessons = await pickLessons(plan.lessonQuery, isNewSession, stateless);
450
592
  const start = isNewSession
451
- ? (0, turn_orders_js_1.sessionStartBlock)((await options.sessionStart?.(row)) ?? { exchanges: [], decisions: [] }, new Date(), { timeZone: options.timeZone.get() }, options.member?.voice)
593
+ ? (0, turn_orders_js_1.sessionStartBlock)((await options.sessionStart?.(row)) ?? { exchanges: [], decisions: [] }, new Date(), {
594
+ timeZone: options.timeZone.get(),
595
+ principalRoles: options.principalRoles,
596
+ principalDisplayName: options.principalDisplayName,
597
+ commonPrincipalId: options.commonPrincipalId,
598
+ }, options.member?.voice)
452
599
  : '';
453
- return text([start, plan.render(lessons, new Date())]);
600
+ const skills = (await options.skills?.(isNewSession, stateless, sessionKey)) ?? '';
601
+ return text([start, skills, plan.render(lessons, new Date())]);
454
602
  },
455
- sessionKey: options.member?.sessionKey ??
456
- (replaySourceEndMs === undefined
457
- ? exports.OWNER_RUNTIME_SESSION_KEY
458
- : exports.OWNER_REPLAY_SESSION_KEY),
603
+ sessionKey,
459
604
  source: row.kind,
460
605
  channelId: row.channelKey,
461
606
  sourceMessageRef: row.stimulusId,
@@ -495,6 +640,10 @@ function createStimulusDelivery(options) {
495
640
  await options.recordOrders.onLost(row, 'record order parked uncertain');
496
641
  return 'record check';
497
642
  }
643
+ if ((0, personal_notices_js_1.personalNoticePayload)(row))
644
+ return 'nothing further for this personal notice';
645
+ if ((0, personal_jobs_js_1.personalJobPayload)(row))
646
+ return 'the next personal job occurrence';
498
647
  if (row.kind === 'scheduled')
499
648
  return 'the next report tick';
500
649
  // Other kinds (native_event) have no producer left and owe nothing further.
@@ -508,6 +657,7 @@ function createStimulusDelivery(options) {
508
657
  await options.onUncertain?.(row, reason);
509
658
  },
510
659
  onDead: async (row, reason) => {
660
+ await closePersonalInput(row);
511
661
  await lost(row, reason);
512
662
  await options.onDead?.(row, reason);
513
663
  },
@@ -517,6 +667,23 @@ function createStimulusDelivery(options) {
517
667
  await deliverResult(row, { ...result, history: [] });
518
668
  return 'settled';
519
669
  }
670
+ if ((0, personal_jobs_js_1.personalJobPayload)(row) && options.personalJobs) {
671
+ const closed = options.personalJobs.isClosed(row);
672
+ await closePersonalInput(row);
673
+ if (!closed) {
674
+ await options.onFailed?.(row, options.personalJobs.isSuperseded(row)
675
+ ? 'Personal job occurrence superseded by a later occurrence'
676
+ : 'Personal job interrupted before completion; retry on the next occurrence', null);
677
+ }
678
+ return 'settled';
679
+ }
680
+ if ((0, personal_notices_js_1.personalNoticePayload)(row) && options.personalNotices) {
681
+ const closed = options.personalNotices.isClosed(row);
682
+ await closePersonalInput(row);
683
+ if (!closed)
684
+ await options.onFailed?.(row, 'Personal notice interrupted before completion', null);
685
+ return 'settled';
686
+ }
520
687
  // Core invokes reconciliation only when no delivery in this process owns
521
688
  // the input. Never rerun an orphan dispatched to a model without its final result.
522
689
  if (row.nativeDelivery?.state === 'dispatching' || row.nativeDelivery?.state === 'accepted') {
@@ -1 +1 @@
1
- {"version":3,"file":"stimulus-delivery.js","sourceRoot":"","sources":["../../src/runtime/stimulus-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stimulus-delivery.js","sourceRoot":"","sources":["../../src/runtime/stimulus-delivery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /** A shared parent must never supply executable code owned/writable by someone else. */
2
+ /** Only this uid may change what the installer copies; another account cannot swap a file in. */
3
+ export declare function assertOwnedDirectory(path: string): void;
4
+ export declare function assertToolsOwnership(root: string): void;
5
+ /** Like member_root, resolve existing ancestors before checking even a future install path. */
6
+ export declare function validateToolsRoot(root: string, forbiddenPaths: readonly string[]): string;
7
+ /** A configured owner data directory can introduce another deny at runtime. Never bypass it. */
8
+ export declare function assertToolsReadable(root: string, deniedPaths: readonly string[]): void;
9
+ //# sourceMappingURL=tools-paths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools-paths.d.ts","sourceRoot":"","sources":["../../src/runtime/tools-paths.ts"],"names":[],"mappings":"AAKA,wFAAwF;AACxF,iGAAiG;AACjG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CASvD;AAsBD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAyCvD;AAOD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CASzF;AAED,gGAAgG;AAChG,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAItF"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertOwnedDirectory = assertOwnedDirectory;
4
+ exports.assertToolsOwnership = assertToolsOwnership;
5
+ exports.validateToolsRoot = validateToolsRoot;
6
+ exports.assertToolsReadable = assertToolsReadable;
7
+ const node_path_1 = require("node:path");
8
+ const backend_security_js_1 = require("./backend-security.js");
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_2 = require("node:path");
11
+ /** A shared parent must never supply executable code owned/writable by someone else. */
12
+ /** Only this uid may change what the installer copies; another account cannot swap a file in. */
13
+ function assertOwnedDirectory(path) {
14
+ const uid = process.getuid?.();
15
+ if (uid === undefined)
16
+ throw new Error('tools_root ownership requires a POSIX uid');
17
+ const meta = (0, node_fs_1.lstatSync)(path);
18
+ // System font directories are root's; root-owned and not shared-writable is as safe.
19
+ if (!meta.isDirectory() || (meta.uid !== uid && meta.uid !== 0) || (meta.mode & 0o022) !== 0)
20
+ throw new Error(`Unsafe tools_root directory ${path}: require a real directory of uid ${uid} without group/other write`);
21
+ }
22
+ /** Sticky shared parents prevent another uid from renaming this uid's toolkit tree. */
23
+ function assertToolsAncestors(root) {
24
+ const uid = process.getuid?.();
25
+ if (uid === undefined)
26
+ throw new Error('tools_root ownership requires a POSIX uid');
27
+ for (let path = (0, node_path_1.dirname)(root);; path = (0, node_path_1.dirname)(path)) {
28
+ if ((0, node_fs_1.existsSync)(path)) {
29
+ const meta = (0, node_fs_1.statSync)(path);
30
+ if (!meta.isDirectory() ||
31
+ (meta.uid !== uid && meta.uid !== 0) ||
32
+ ((meta.mode & 0o022) !== 0 && (meta.mode & 0o1000) === 0))
33
+ throw new Error(`Unsafe tools_root ancestor ${path}: require uid ${uid} or root and no group/other write unless sticky`);
34
+ }
35
+ if ((0, node_path_1.dirname)(path) === path)
36
+ break;
37
+ }
38
+ }
39
+ function assertToolsOwnership(root) {
40
+ assertToolsAncestors((0, backend_security_js_1.physicalReadPath)(root));
41
+ if (!(0, node_fs_1.existsSync)(root))
42
+ return;
43
+ const uid = process.getuid?.();
44
+ if (uid === undefined)
45
+ throw new Error('tools_root ownership requires a POSIX uid');
46
+ if ((0, node_fs_1.lstatSync)(root).isSymbolicLink())
47
+ throw new Error(`Unsafe tools_root ${root}: root must be a directory, not a symlink`);
48
+ const directory = (path) => {
49
+ const meta = (0, node_fs_1.statSync)(path);
50
+ if (!meta.isDirectory() || meta.uid !== uid || (meta.mode & 0o022) !== 0)
51
+ throw new Error(`Unsafe tools_root directory ${path}: require uid ${uid} and no group/other write permission`);
52
+ };
53
+ directory(root);
54
+ for (const entry of (0, node_fs_1.readdirSync)(root)) {
55
+ const path = (0, node_path_2.join)(root, entry);
56
+ if (entry === 'current') {
57
+ const meta = (0, node_fs_1.lstatSync)(path);
58
+ if (!meta.isSymbolicLink() || meta.uid !== uid)
59
+ throw new Error(`Unsafe tools_root current ${path}: require a managed link owned by uid ${uid}`);
60
+ // A dangling current is a broken toolkit, handled by readDocumentToolkit.
61
+ if ((0, node_fs_1.existsSync)(path)) {
62
+ const target = (0, node_fs_1.realpathSync)(path);
63
+ if ((0, node_path_1.relative)((0, node_fs_1.realpathSync)(root), target) !== target.split(node_path_1.sep).at(-1) ||
64
+ !target.split(node_path_1.sep).at(-1)?.startsWith('v-'))
65
+ throw new Error(`Unsafe tools_root current ${path}: target must be a managed version directory`);
66
+ directory(path);
67
+ }
68
+ }
69
+ else if (entry.startsWith('v-')) {
70
+ if ((0, node_fs_1.lstatSync)(path).isSymbolicLink())
71
+ throw new Error(`Unsafe tools_root version ${path}: symlinks are not allowed`);
72
+ directory(path);
73
+ }
74
+ }
75
+ }
76
+ function contains(parent, child) {
77
+ const path = (0, node_path_1.relative)(parent, child);
78
+ return path === '' || (path !== '..' && !path.startsWith(`..${node_path_1.sep}`) && !(0, node_path_1.isAbsolute)(path));
79
+ }
80
+ /** Like member_root, resolve existing ancestors before checking even a future install path. */
81
+ function validateToolsRoot(root, forbiddenPaths) {
82
+ if (!(0, node_path_1.isAbsolute)(root))
83
+ throw new Error('tools_root must be absolute');
84
+ const physical = (0, backend_security_js_1.physicalReadPath)((0, node_path_1.resolve)(root));
85
+ assertToolsAncestors(physical);
86
+ for (const forbidden of forbiddenPaths.map(backend_security_js_1.physicalReadPath)) {
87
+ if (contains(forbidden, physical) || contains(physical, forbidden))
88
+ throw new Error('tools_root must not overlap HOME, the MAMA home or member_root');
89
+ }
90
+ return physical;
91
+ }
92
+ /** A configured owner data directory can introduce another deny at runtime. Never bypass it. */
93
+ function assertToolsReadable(root, deniedPaths) {
94
+ const physical = (0, backend_security_js_1.physicalReadPath)(root);
95
+ if (deniedPaths.some((path) => contains((0, backend_security_js_1.physicalReadPath)(path), physical)))
96
+ throw new Error('tools_root is under a session read deny; move it outside denied paths');
97
+ }
98
+ //# sourceMappingURL=tools-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools-paths.js","sourceRoot":"","sources":["../../src/runtime/tools-paths.ts"],"names":[],"mappings":"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"}