@jungjaehoon/mama-os 0.78.0 → 0.79.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 (288) hide show
  1. package/CHANGELOG.md +311 -0
  2. package/README.md +38 -24
  3. package/db/migrations/002-model-runs-parent-index.sql +11 -0
  4. package/db/migrations/003-upkeep-settled.sql +15 -0
  5. package/dist/api/google-read-actions.d.ts +30 -0
  6. package/dist/api/google-read-actions.d.ts.map +1 -0
  7. package/dist/api/google-read-actions.js +256 -0
  8. package/dist/api/google-read-actions.js.map +1 -0
  9. package/dist/api/record-actions.d.ts.map +1 -1
  10. package/dist/api/record-actions.js +23 -5
  11. package/dist/api/record-actions.js.map +1 -1
  12. package/dist/api/report-handler.d.ts +0 -6
  13. package/dist/api/report-handler.d.ts.map +1 -1
  14. package/dist/api/report-handler.js +0 -54
  15. package/dist/api/report-handler.js.map +1 -1
  16. package/dist/api/security-events.d.ts +1 -1
  17. package/dist/api/security-events.d.ts.map +1 -1
  18. package/dist/api/security-events.js.map +1 -1
  19. package/dist/api/source-actions.d.ts +9 -0
  20. package/dist/api/source-actions.d.ts.map +1 -1
  21. package/dist/api/source-actions.js +49 -0
  22. package/dist/api/source-actions.js.map +1 -1
  23. package/dist/api/viewer-request-security.d.ts +14 -1
  24. package/dist/api/viewer-request-security.d.ts.map +1 -1
  25. package/dist/api/viewer-request-security.js +26 -3
  26. package/dist/api/viewer-request-security.js.map +1 -1
  27. package/dist/api/viewer-server.d.ts +7 -0
  28. package/dist/api/viewer-server.d.ts.map +1 -1
  29. package/dist/api/viewer-server.js +32 -0
  30. package/dist/api/viewer-server.js.map +1 -1
  31. package/dist/api/work-actions.d.ts +19 -2
  32. package/dist/api/work-actions.d.ts.map +1 -1
  33. package/dist/api/work-actions.js +15 -0
  34. package/dist/api/work-actions.js.map +1 -1
  35. package/dist/cli/commands/backup.d.ts +7 -6
  36. package/dist/cli/commands/backup.d.ts.map +1 -1
  37. package/dist/cli/commands/backup.js +44 -7
  38. package/dist/cli/commands/backup.js.map +1 -1
  39. package/dist/cli/commands/control.d.ts +22 -4
  40. package/dist/cli/commands/control.d.ts.map +1 -1
  41. package/dist/cli/commands/control.js +172 -11
  42. package/dist/cli/commands/control.js.map +1 -1
  43. package/dist/cli/commands/daemon.d.ts +13 -2
  44. package/dist/cli/commands/daemon.d.ts.map +1 -1
  45. package/dist/cli/commands/daemon.js +211 -5
  46. package/dist/cli/commands/daemon.js.map +1 -1
  47. package/dist/cli/commands/init-questions.d.ts +98 -0
  48. package/dist/cli/commands/init-questions.d.ts.map +1 -0
  49. package/dist/cli/commands/init-questions.js +420 -0
  50. package/dist/cli/commands/init-questions.js.map +1 -0
  51. package/dist/cli/commands/init-section.d.ts +13 -0
  52. package/dist/cli/commands/init-section.d.ts.map +1 -0
  53. package/dist/cli/commands/init-section.js +375 -0
  54. package/dist/cli/commands/init-section.js.map +1 -0
  55. package/dist/cli/commands/init.d.ts +56 -2
  56. package/dist/cli/commands/init.d.ts.map +1 -1
  57. package/dist/cli/commands/init.js +562 -351
  58. package/dist/cli/commands/init.js.map +1 -1
  59. package/dist/cli/commands/node-move.d.ts +20 -0
  60. package/dist/cli/commands/node-move.d.ts.map +1 -0
  61. package/dist/cli/commands/node-move.js +289 -0
  62. package/dist/cli/commands/node-move.js.map +1 -0
  63. package/dist/cli/commands/register-owner.d.ts +3 -0
  64. package/dist/cli/commands/register-owner.d.ts.map +1 -1
  65. package/dist/cli/commands/register-owner.js +2 -0
  66. package/dist/cli/commands/register-owner.js.map +1 -1
  67. package/dist/cli/commands/restore.d.ts +2 -0
  68. package/dist/cli/commands/restore.d.ts.map +1 -1
  69. package/dist/cli/commands/restore.js +7 -0
  70. package/dist/cli/commands/restore.js.map +1 -1
  71. package/dist/cli/commands/service.d.ts +16 -0
  72. package/dist/cli/commands/service.d.ts.map +1 -1
  73. package/dist/cli/commands/service.js +36 -8
  74. package/dist/cli/commands/service.js.map +1 -1
  75. package/dist/cli/commands/tools.d.ts +1 -1
  76. package/dist/cli/commands/tools.d.ts.map +1 -1
  77. package/dist/cli/commands/tools.js +8 -3
  78. package/dist/cli/commands/tools.js.map +1 -1
  79. package/dist/cli/commands/uninstall.d.ts.map +1 -1
  80. package/dist/cli/commands/uninstall.js +78 -5
  81. package/dist/cli/commands/uninstall.js.map +1 -1
  82. package/dist/cli/commands/update.d.ts +59 -0
  83. package/dist/cli/commands/update.d.ts.map +1 -0
  84. package/dist/cli/commands/update.js +948 -0
  85. package/dist/cli/commands/update.js.map +1 -0
  86. package/dist/cli/index.js +8 -4
  87. package/dist/cli/index.js.map +1 -1
  88. package/dist/cli/launch-files.d.ts +36 -0
  89. package/dist/cli/launch-files.d.ts.map +1 -1
  90. package/dist/cli/launch-files.js +94 -1
  91. package/dist/cli/launch-files.js.map +1 -1
  92. package/dist/cli/prompt.d.ts +2 -1
  93. package/dist/cli/prompt.d.ts.map +1 -1
  94. package/dist/cli/prompt.js +5 -2
  95. package/dist/cli/prompt.js.map +1 -1
  96. package/dist/cli/runtime/backup.d.ts +17 -1
  97. package/dist/cli/runtime/backup.d.ts.map +1 -1
  98. package/dist/cli/runtime/backup.js +32 -4
  99. package/dist/cli/runtime/backup.js.map +1 -1
  100. package/dist/cli/runtime/daemon-control.d.ts +92 -7
  101. package/dist/cli/runtime/daemon-control.d.ts.map +1 -1
  102. package/dist/cli/runtime/daemon-control.js +183 -8
  103. package/dist/cli/runtime/daemon-control.js.map +1 -1
  104. package/dist/cli/runtime/default-roots.d.ts +27 -0
  105. package/dist/cli/runtime/default-roots.d.ts.map +1 -0
  106. package/dist/cli/runtime/default-roots.js +61 -0
  107. package/dist/cli/runtime/default-roots.js.map +1 -0
  108. package/dist/cli/runtime/diagnostics.d.ts +25 -0
  109. package/dist/cli/runtime/diagnostics.d.ts.map +1 -1
  110. package/dist/cli/runtime/diagnostics.js +249 -63
  111. package/dist/cli/runtime/diagnostics.js.map +1 -1
  112. package/dist/cli/runtime/init-state.d.ts +20 -0
  113. package/dist/cli/runtime/init-state.d.ts.map +1 -0
  114. package/dist/cli/runtime/init-state.js +51 -0
  115. package/dist/cli/runtime/init-state.js.map +1 -0
  116. package/dist/cli/runtime/install-kind.d.ts +54 -0
  117. package/dist/cli/runtime/install-kind.d.ts.map +1 -0
  118. package/dist/cli/runtime/install-kind.js +164 -0
  119. package/dist/cli/runtime/install-kind.js.map +1 -0
  120. package/dist/cli/runtime/node-move-journal.d.ts +44 -0
  121. package/dist/cli/runtime/node-move-journal.d.ts.map +1 -0
  122. package/dist/cli/runtime/node-move-journal.js +48 -0
  123. package/dist/cli/runtime/node-move-journal.js.map +1 -0
  124. package/dist/cli/runtime/release-check.d.ts +94 -0
  125. package/dist/cli/runtime/release-check.d.ts.map +1 -0
  126. package/dist/cli/runtime/release-check.js +316 -0
  127. package/dist/cli/runtime/release-check.js.map +1 -0
  128. package/dist/cli/runtime/setup-page.d.ts +57 -0
  129. package/dist/cli/runtime/setup-page.d.ts.map +1 -0
  130. package/dist/cli/runtime/setup-page.js +266 -0
  131. package/dist/cli/runtime/setup-page.js.map +1 -0
  132. package/dist/cli/runtime/source-tools.d.ts +60 -0
  133. package/dist/cli/runtime/source-tools.d.ts.map +1 -0
  134. package/dist/cli/runtime/source-tools.js +170 -0
  135. package/dist/cli/runtime/source-tools.js.map +1 -0
  136. package/dist/cli/runtime/telegram-pairing.d.ts +73 -0
  137. package/dist/cli/runtime/telegram-pairing.d.ts.map +1 -0
  138. package/dist/cli/runtime/telegram-pairing.js +184 -0
  139. package/dist/cli/runtime/telegram-pairing.js.map +1 -0
  140. package/dist/cli/runtime/update-journal.d.ts +135 -0
  141. package/dist/cli/runtime/update-journal.d.ts.map +1 -0
  142. package/dist/cli/runtime/update-journal.js +144 -0
  143. package/dist/cli/runtime/update-journal.js.map +1 -0
  144. package/dist/cli/runtime/update-progress.d.ts +95 -0
  145. package/dist/cli/runtime/update-progress.d.ts.map +1 -0
  146. package/dist/cli/runtime/update-progress.js +154 -0
  147. package/dist/cli/runtime/update-progress.js.map +1 -0
  148. package/dist/cli/runtime/update-request.d.ts +58 -0
  149. package/dist/cli/runtime/update-request.d.ts.map +1 -0
  150. package/dist/cli/runtime/update-request.js +172 -0
  151. package/dist/cli/runtime/update-request.js.map +1 -0
  152. package/dist/connectors/calendar/index.d.ts +5 -1
  153. package/dist/connectors/calendar/index.d.ts.map +1 -1
  154. package/dist/connectors/calendar/index.js +19 -28
  155. package/dist/connectors/calendar/index.js.map +1 -1
  156. package/dist/connectors/chatwork/index.d.ts.map +1 -1
  157. package/dist/connectors/chatwork/index.js +7 -3
  158. package/dist/connectors/chatwork/index.js.map +1 -1
  159. package/dist/connectors/config-loader.d.ts +5 -0
  160. package/dist/connectors/config-loader.d.ts.map +1 -1
  161. package/dist/connectors/config-loader.js +8 -0
  162. package/dist/connectors/config-loader.js.map +1 -1
  163. package/dist/connectors/discord/index.d.ts.map +1 -1
  164. package/dist/connectors/discord/index.js +4 -3
  165. package/dist/connectors/discord/index.js.map +1 -1
  166. package/dist/connectors/drive/index.d.ts.map +1 -1
  167. package/dist/connectors/drive/index.js +15 -13
  168. package/dist/connectors/drive/index.js.map +1 -1
  169. package/dist/connectors/framework/gws-utils.d.ts +62 -0
  170. package/dist/connectors/framework/gws-utils.d.ts.map +1 -1
  171. package/dist/connectors/framework/gws-utils.js +133 -3
  172. package/dist/connectors/framework/gws-utils.js.map +1 -1
  173. package/dist/connectors/framework/types.d.ts +24 -0
  174. package/dist/connectors/framework/types.d.ts.map +1 -1
  175. package/dist/connectors/framework/types.js +9 -0
  176. package/dist/connectors/framework/types.js.map +1 -1
  177. package/dist/connectors/gmail/index.d.ts.map +1 -1
  178. package/dist/connectors/gmail/index.js +14 -13
  179. package/dist/connectors/gmail/index.js.map +1 -1
  180. package/dist/connectors/index.d.ts +4 -4
  181. package/dist/connectors/index.d.ts.map +1 -1
  182. package/dist/connectors/index.js +4 -10
  183. package/dist/connectors/index.js.map +1 -1
  184. package/dist/connectors/notion/index.d.ts.map +1 -1
  185. package/dist/connectors/notion/index.js +5 -3
  186. package/dist/connectors/notion/index.js.map +1 -1
  187. package/dist/connectors/sheets/index.d.ts.map +1 -1
  188. package/dist/connectors/sheets/index.js +17 -12
  189. package/dist/connectors/sheets/index.js.map +1 -1
  190. package/dist/connectors/slack/index.d.ts.map +1 -1
  191. package/dist/connectors/slack/index.js +9 -3
  192. package/dist/connectors/slack/index.js.map +1 -1
  193. package/dist/connectors/telegram/index.d.ts.map +1 -1
  194. package/dist/connectors/telegram/index.js +4 -3
  195. package/dist/connectors/telegram/index.js.map +1 -1
  196. package/dist/connectors/trello/index.d.ts +1 -1
  197. package/dist/connectors/trello/index.d.ts.map +1 -1
  198. package/dist/connectors/trello/index.js +10 -5
  199. package/dist/connectors/trello/index.js.map +1 -1
  200. package/dist/gateways/discord.d.ts +6 -0
  201. package/dist/gateways/discord.d.ts.map +1 -1
  202. package/dist/gateways/discord.js +38 -27
  203. package/dist/gateways/discord.js.map +1 -1
  204. package/dist/gateways/slack.d.ts +6 -0
  205. package/dist/gateways/slack.d.ts.map +1 -1
  206. package/dist/gateways/slack.js +38 -27
  207. package/dist/gateways/slack.js.map +1 -1
  208. package/dist/gateways/telegram-commands.d.ts +124 -0
  209. package/dist/gateways/telegram-commands.d.ts.map +1 -0
  210. package/dist/gateways/telegram-commands.js +131 -0
  211. package/dist/gateways/telegram-commands.js.map +1 -0
  212. package/dist/gateways/telegram.d.ts +20 -0
  213. package/dist/gateways/telegram.d.ts.map +1 -1
  214. package/dist/gateways/telegram.js +138 -34
  215. package/dist/gateways/telegram.js.map +1 -1
  216. package/dist/gateways/turn-contract.d.ts +11 -0
  217. package/dist/gateways/turn-contract.d.ts.map +1 -1
  218. package/dist/runtime/action-surface.d.ts +1 -1
  219. package/dist/runtime/action-surface.d.ts.map +1 -1
  220. package/dist/runtime/action-surface.js +10 -0
  221. package/dist/runtime/action-surface.js.map +1 -1
  222. package/dist/runtime/backend-security.d.ts +23 -2
  223. package/dist/runtime/backend-security.d.ts.map +1 -1
  224. package/dist/runtime/backend-security.js +50 -5
  225. package/dist/runtime/backend-security.js.map +1 -1
  226. package/dist/runtime/member-paths.d.ts +15 -7
  227. package/dist/runtime/member-paths.d.ts.map +1 -1
  228. package/dist/runtime/member-paths.js +64 -12
  229. package/dist/runtime/member-paths.js.map +1 -1
  230. package/dist/runtime/member-session.d.ts +4 -0
  231. package/dist/runtime/member-session.d.ts.map +1 -1
  232. package/dist/runtime/member-session.js +23 -2
  233. package/dist/runtime/member-session.js.map +1 -1
  234. package/dist/runtime/native-session.d.ts +2 -0
  235. package/dist/runtime/native-session.d.ts.map +1 -1
  236. package/dist/runtime/native-session.js +1 -0
  237. package/dist/runtime/native-session.js.map +1 -1
  238. package/dist/runtime/owner-runtime.d.ts +63 -1
  239. package/dist/runtime/owner-runtime.d.ts.map +1 -1
  240. package/dist/runtime/owner-runtime.js +180 -3
  241. package/dist/runtime/owner-runtime.js.map +1 -1
  242. package/dist/runtime/owner-system-prompt.d.ts.map +1 -1
  243. package/dist/runtime/owner-system-prompt.js +0 -1
  244. package/dist/runtime/owner-system-prompt.js.map +1 -1
  245. package/dist/runtime/principal-access.d.ts +2 -0
  246. package/dist/runtime/principal-access.d.ts.map +1 -1
  247. package/dist/runtime/principal-access.js +7 -0
  248. package/dist/runtime/principal-access.js.map +1 -1
  249. package/dist/runtime/principal-sessions.d.ts.map +1 -1
  250. package/dist/runtime/principal-sessions.js +8 -1
  251. package/dist/runtime/principal-sessions.js.map +1 -1
  252. package/dist/runtime/record-orders.d.ts.map +1 -1
  253. package/dist/runtime/record-orders.js +3 -29
  254. package/dist/runtime/record-orders.js.map +1 -1
  255. package/dist/runtime/report-scheduler.d.ts +9 -2
  256. package/dist/runtime/report-scheduler.d.ts.map +1 -1
  257. package/dist/runtime/report-scheduler.js +37 -10
  258. package/dist/runtime/report-scheduler.js.map +1 -1
  259. package/dist/runtime/stimulus-delivery.d.ts +3 -0
  260. package/dist/runtime/stimulus-delivery.d.ts.map +1 -1
  261. package/dist/runtime/stimulus-delivery.js +19 -3
  262. package/dist/runtime/stimulus-delivery.js.map +1 -1
  263. package/dist/runtime/tools-paths.d.ts +7 -0
  264. package/dist/runtime/tools-paths.d.ts.map +1 -1
  265. package/dist/runtime/tools-paths.js +11 -5
  266. package/dist/runtime/tools-paths.js.map +1 -1
  267. package/dist/runtime/upkeep-close.d.ts +17 -0
  268. package/dist/runtime/upkeep-close.d.ts.map +1 -0
  269. package/dist/runtime/upkeep-close.js +127 -0
  270. package/dist/runtime/upkeep-close.js.map +1 -0
  271. package/dist/runtime/upkeep-orders.d.ts +124 -0
  272. package/dist/runtime/upkeep-orders.d.ts.map +1 -0
  273. package/dist/runtime/upkeep-orders.js +310 -0
  274. package/dist/runtime/upkeep-orders.js.map +1 -0
  275. package/dist/runtime/upkeep-reconcile.d.ts +25 -0
  276. package/dist/runtime/upkeep-reconcile.d.ts.map +1 -0
  277. package/dist/runtime/upkeep-reconcile.js +231 -0
  278. package/dist/runtime/upkeep-reconcile.js.map +1 -0
  279. package/dist/runtime/upkeep-writeback.d.ts +22 -0
  280. package/dist/runtime/upkeep-writeback.d.ts.map +1 -0
  281. package/dist/runtime/upkeep-writeback.js +203 -0
  282. package/dist/runtime/upkeep-writeback.js.map +1 -0
  283. package/dist/utils/untrusted-content.d.ts.map +1 -1
  284. package/dist/utils/untrusted-content.js +8 -1
  285. package/dist/utils/untrusted-content.js.map +1 -1
  286. package/install/install.sh +457 -0
  287. package/install/node.json +9 -0
  288. package/package.json +3 -4
@@ -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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"}
@@ -1,6 +1,13 @@
1
1
  /** A shared parent must never supply executable code owned/writable by someone else. */
2
2
  /** Only this uid may change what the installer copies; another account cannot swap a file in. */
3
3
  export declare function assertOwnedDirectory(path: string): void;
4
+ /** Sticky shared parents prevent another uid from renaming this uid's toolkit tree. */
5
+ /**
6
+ * Every existing folder above a root must be this account's or root's, and writable by others
7
+ * only when sticky: otherwise another account could rename the root away from the path the
8
+ * session denies and allows were written for.
9
+ */
10
+ export declare function assertRootAncestors(root: string, label?: string): void;
4
11
  export declare function assertToolsOwnership(root: string): void;
5
12
  /** Like member_root, resolve existing ancestors before checking even a future install path. */
6
13
  export declare function validateToolsRoot(root: string, forbiddenPaths: readonly string[]): string;
@@ -1 +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"}
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;AAED,uFAAuF;AACvF;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAe,GAAG,IAAI,CAiB5E;AAED,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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.assertOwnedDirectory = assertOwnedDirectory;
4
+ exports.assertRootAncestors = assertRootAncestors;
4
5
  exports.assertToolsOwnership = assertToolsOwnership;
5
6
  exports.validateToolsRoot = validateToolsRoot;
6
7
  exports.assertToolsReadable = assertToolsReadable;
@@ -20,24 +21,29 @@ function assertOwnedDirectory(path) {
20
21
  throw new Error(`Unsafe tools_root directory ${path}: require a real directory of uid ${uid} without group/other write`);
21
22
  }
22
23
  /** Sticky shared parents prevent another uid from renaming this uid's toolkit tree. */
23
- function assertToolsAncestors(root) {
24
+ /**
25
+ * Every existing folder above a root must be this account's or root's, and writable by others
26
+ * only when sticky: otherwise another account could rename the root away from the path the
27
+ * session denies and allows were written for.
28
+ */
29
+ function assertRootAncestors(root, label = 'tools_root') {
24
30
  const uid = process.getuid?.();
25
31
  if (uid === undefined)
26
- throw new Error('tools_root ownership requires a POSIX uid');
32
+ throw new Error(`${label} ownership requires a POSIX uid`);
27
33
  for (let path = (0, node_path_1.dirname)(root);; path = (0, node_path_1.dirname)(path)) {
28
34
  if ((0, node_fs_1.existsSync)(path)) {
29
35
  const meta = (0, node_fs_1.statSync)(path);
30
36
  if (!meta.isDirectory() ||
31
37
  (meta.uid !== uid && meta.uid !== 0) ||
32
38
  ((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`);
39
+ throw new Error(`Unsafe ${label} ancestor ${path}: require uid ${uid} or root and no group/other write unless sticky`);
34
40
  }
35
41
  if ((0, node_path_1.dirname)(path) === path)
36
42
  break;
37
43
  }
38
44
  }
39
45
  function assertToolsOwnership(root) {
40
- assertToolsAncestors((0, backend_security_js_1.physicalReadPath)(root));
46
+ assertRootAncestors((0, backend_security_js_1.physicalReadPath)(root));
41
47
  if (!(0, node_fs_1.existsSync)(root))
42
48
  return;
43
49
  const uid = process.getuid?.();
@@ -82,7 +88,7 @@ function validateToolsRoot(root, forbiddenPaths) {
82
88
  if (!(0, node_path_1.isAbsolute)(root))
83
89
  throw new Error('tools_root must be absolute');
84
90
  const physical = (0, backend_security_js_1.physicalReadPath)((0, node_path_1.resolve)(root));
85
- assertToolsAncestors(physical);
91
+ assertRootAncestors(physical);
86
92
  for (const forbidden of forbiddenPaths.map(backend_security_js_1.physicalReadPath)) {
87
93
  if (contains(forbidden, physical) || contains(physical, forbidden))
88
94
  throw new Error('tools_root must not overlap HOME, the MAMA home or member_root');
@@ -1 +1 @@
1
- {"version":3,"file":"tools-paths.js","sourceRoot":"","sources":["../../src/runtime/tools-paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools-paths.js","sourceRoot":"","sources":["../../src/runtime/tools-paths.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { type JudgmentAccess } from '@jungjaehoon/mama-core/knowledge';
2
+ import { type UpkeepKind } from './upkeep-orders.js';
3
+ export declare const CLOSE_ORDER_CHANNEL = "operator:close";
4
+ export interface CloseKindOptions {
5
+ /** Closing revisions written before this instant are not ordered (a script summarizes them). */
6
+ since: number;
7
+ /** The common session's access: only work it can read is chosen. */
8
+ access: () => JudgmentAccess;
9
+ timeZone: () => string;
10
+ }
11
+ /**
12
+ * U1, closing summaries. A subject is one closing revision: a reopened item that closes again is
13
+ * a new subject. It is checked by a revision from the order's runs that sets a description, or by
14
+ * a work.no_update naming the item; a revision that only sets the status again does not count.
15
+ */
16
+ export declare function closeUpkeepKind(options: CloseKindOptions): UpkeepKind;
17
+ //# sourceMappingURL=upkeep-close.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upkeep-close.d.ts","sourceRoot":"","sources":["../../src/runtime/upkeep-close.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGzF,OAAO,EAIL,KAAK,UAAU,EAEhB,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAGpD,MAAM,WAAW,gBAAgB;IAC/B,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,MAAM,EAAE,MAAM,cAAc,CAAC;IAC7B,QAAQ,EAAE,MAAM,MAAM,CAAC;CACxB;AAWD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,UAAU,CA4IrE"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CLOSE_ORDER_CHANNEL = void 0;
4
+ exports.closeUpkeepKind = closeUpkeepKind;
5
+ const knowledge_1 = require("@jungjaehoon/mama-core/knowledge");
6
+ const untrusted_content_js_1 = require("../utils/untrusted-content.js");
7
+ const timezone_js_1 = require("./timezone.js");
8
+ const upkeep_orders_js_1 = require("./upkeep-orders.js");
9
+ exports.CLOSE_ORDER_CHANNEL = 'operator:close';
10
+ const CLOSED_STATUSES = ['done', 'cancelled'];
11
+ /**
12
+ * U1, closing summaries. A subject is one closing revision: a reopened item that closes again is
13
+ * a new subject. It is checked by a revision from the order's runs that sets a description, or by
14
+ * a work.no_update naming the item; a revision that only sets the status again does not count.
15
+ */
16
+ function closeUpkeepKind(options) {
17
+ return {
18
+ name: 'close',
19
+ channel: exports.CLOSE_ORDER_CHANNEL,
20
+ intervalMs: 60 * 60 * 1000,
21
+ maxPerOrder: 10,
22
+ scan: (adapter, now, page) => {
23
+ const scopes = (0, knowledge_1.readableScopeIds)(options.access());
24
+ // Visibility as core's readWork applies it: an unbound head, or one bound to a read scope.
25
+ const visible = `(NOT EXISTS (SELECT 1 FROM memory_scope_bindings b WHERE b.memory_id = c.head_record_id)${scopes.length === 0
26
+ ? ''
27
+ : ` OR EXISTS (SELECT 1 FROM memory_scope_bindings b WHERE b.memory_id = c.head_record_id
28
+ AND b.scope_id IN (${scopes.map(() => '?').join(',')}))`})`;
29
+ const closed = CLOSED_STATUSES.map(() => '?').join(',');
30
+ const rows = adapter
31
+ .prepare(
32
+ // Core folds revisions in the order they were written and drops one whose applies_until
33
+ // has passed; a revision that clears the status leaves the item without one. The subject
34
+ // is the transition: the first closed revision after the last one that was not closed,
35
+ // so a later revision that sets the status to done again is not a new subject.
36
+ `WITH live AS (
37
+ SELECT * FROM commitment_assignments WHERE applies_until IS NULL OR applies_until > ?),
38
+ statuses AS (
39
+ SELECT commitment_id, revision, created_at,
40
+ CASE WHEN EXISTS (SELECT 1 FROM json_each(live.clear_json) WHERE value = 'status')
41
+ THEN NULL ELSE json_extract(set_json, '$.status') END AS status
42
+ FROM live
43
+ WHERE json_extract(set_json, '$.status') IS NOT NULL
44
+ OR EXISTS (SELECT 1 FROM json_each(live.clear_json) WHERE value = 'status')),
45
+ latest AS (
46
+ SELECT commitment_id, MAX(revision) AS revision FROM statuses GROUP BY commitment_id),
47
+ reopened AS (
48
+ SELECT commitment_id, MAX(revision) AS revision FROM statuses
49
+ WHERE status IS NULL OR status NOT IN (${closed}) GROUP BY commitment_id),
50
+ closing AS (
51
+ SELECT s.commitment_id, MIN(s.revision) AS revision FROM statuses s
52
+ LEFT JOIN reopened o ON o.commitment_id = s.commitment_id
53
+ WHERE s.status IN (${closed}) AND s.revision > coalesce(o.revision, 0)
54
+ GROUP BY s.commitment_id),
55
+ titles AS (
56
+ SELECT x.commitment_id, json_extract(x.set_json, '$.title') AS title FROM live x
57
+ WHERE x.revision = (SELECT MAX(y.revision) FROM live y
58
+ WHERE y.commitment_id = x.commitment_id
59
+ AND json_extract(y.set_json, '$.title') IS NOT NULL))
60
+ SELECT k.commitment_id, k.revision, s.created_at, now.status, coalesce(t.title, '') AS title
61
+ FROM closing k
62
+ JOIN latest l ON l.commitment_id = k.commitment_id
63
+ JOIN statuses now ON now.commitment_id = l.commitment_id AND now.revision = l.revision
64
+ JOIN statuses s ON s.commitment_id = k.commitment_id AND s.revision = k.revision
65
+ JOIN commitments c ON c.commitment_id = k.commitment_id AND c.withdrawn = 0
66
+ LEFT JOIN titles t ON t.commitment_id = k.commitment_id
67
+ WHERE now.status IN (${closed}) AND s.created_at >= ? AND ${visible}
68
+ ORDER BY s.created_at, k.commitment_id
69
+ LIMIT ? OFFSET ?`)
70
+ .all(now, ...CLOSED_STATUSES, ...CLOSED_STATUSES, ...CLOSED_STATUSES,
71
+ // A subject older than the attempt window would count its attempts from zero again.
72
+ Math.max(options.since, now - upkeep_orders_js_1.UPKEEP_WINDOW_MS), ...scopes, upkeep_orders_js_1.UPKEEP_SCAN_PAGE, page * upkeep_orders_js_1.UPKEEP_SCAN_PAGE);
73
+ return rows.map((row) => ({
74
+ key: `${row.commitment_id}:${row.revision}`,
75
+ commitmentId: row.commitment_id,
76
+ revision: row.revision,
77
+ title: row.title,
78
+ status: row.status,
79
+ closedAt: row.created_at,
80
+ }));
81
+ },
82
+ checked: (adapter, subject, runIds) => {
83
+ const { commitmentId, revision } = subject;
84
+ if (runIds.length === 0)
85
+ return false;
86
+ // The description as core folds it now: the latest live revision that sets or clears it.
87
+ // The summary counts when that revision is the order's own, after the closing revision,
88
+ // and leaves text there.
89
+ const current = adapter
90
+ .prepare(`SELECT revision, model_run_id,
91
+ CASE WHEN EXISTS (SELECT 1 FROM json_each(clear_json) WHERE value = 'description')
92
+ THEN '' ELSE coalesce(json_extract(set_json, '$.description'), '') END AS text
93
+ FROM commitment_assignments
94
+ WHERE commitment_id = ? AND (applies_until IS NULL OR applies_until > ?)
95
+ AND (json_extract(set_json, '$.description') IS NOT NULL
96
+ OR EXISTS (SELECT 1 FROM json_each(clear_json) WHERE value = 'description'))
97
+ ORDER BY revision DESC LIMIT 1`)
98
+ .get(commitmentId, Date.now());
99
+ const summarized = current !== undefined &&
100
+ current.revision > revision &&
101
+ current.text.trim() !== '' &&
102
+ current.model_run_id !== null &&
103
+ runIds.includes(current.model_run_id);
104
+ return (summarized ||
105
+ (0, upkeep_orders_js_1.noUpdateCites)(adapter, runIds, { field: 'commitmentIds', values: [commitmentId] }));
106
+ },
107
+ render: (subjects, now) => {
108
+ const zone = options.timeZone();
109
+ // Titles come from stored work, which sources can shape: they are data, never instructions.
110
+ const ids = subjects.map((subject) => `- ${subject.commitmentId} (${subject.status} ${(0, timezone_js_1.localNow)(subject.closedAt, zone)})`);
111
+ const titles = subjects.map((subject) => `${subject.commitmentId}: ${subject.title.replace(/\s+/g, ' ').slice(0, 200)}`);
112
+ return [
113
+ `[upkeep_close] ${subjects.length} closed work item${subjects.length === 1 ? '' : 's'}`,
114
+ `Current time: ${(0, timezone_js_1.localNow)(now.getTime(), zone)} (${zone})`,
115
+ "Write each item's closing summary, so a later question about it reads one place:",
116
+ '1. Read each item with its history: work.list view=detail with ids (up to 4 per call); page older revisions with history_offset until the first one.',
117
+ "2. Write one work.revise per item that sets description to the summary: the rounds (each submission, each round of outside feedback with the points raised, each internal review, with dates), who did what, how it ended, and what is worth reusing. Link the revisions' evidence with derived_from. Do not change its status, stage or other fields.",
118
+ '3. An item whose description is already such a summary: work.no_update with commitmentIds naming it and the reason.',
119
+ '4. The order is checked when it ends: each item needs step 2 or 3. Correct a refused write (help gives its contract) and write it again.',
120
+ '5. Reply exactly [ack].',
121
+ ...ids,
122
+ (0, untrusted_content_js_1.wrapUntrustedContent)('work_titles', titles.join('\n')),
123
+ ].join('\n');
124
+ },
125
+ };
126
+ }
127
+ //# sourceMappingURL=upkeep-close.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upkeep-close.js","sourceRoot":"","sources":["../../src/runtime/upkeep-close.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,124 @@
1
+ import type { DatabaseAdapter } from '@jungjaehoon/mama-core/db-manager';
2
+ import type { JsonValue } from '@jungjaehoon/mama-core/knowledge';
3
+ import type { MailboxRow, Stimulus } from '@jungjaehoon/mama-core/runtime/mailbox';
4
+ import type { StimulusReceipt } from '@jungjaehoon/mama-core/runtime/runtime';
5
+ /**
6
+ * Ledger upkeep orders (docs/development/work/ledger-upkeep.md). The host chooses the subjects,
7
+ * the agent judges and writes in the common session, and the host checks each subject when the
8
+ * order's run ends. Record orders (record-orders.ts) stay a separate lane: they follow live deltas
9
+ * and carry batches; upkeep follows the ledger's own state.
10
+ *
11
+ * tick(kind) ── scan ──> subjects not checked, not in an open order, under the attempt limit
12
+ * │ │
13
+ * │ accept(order on kind.channel)
14
+ * ▼ ▼
15
+ * onResult / onLost ──> per subject: checked │ waiting (picked by the next tick) │ lost
16
+ *
17
+ * Checked and lost subjects are also written to upkeep_settled: the mailbox deletes acked order
18
+ * rows after seven days, and a settled subject must never be ordered again.
19
+ */
20
+ /** A subject is ordered at most this many times; then it is reported lost and left alone. */
21
+ export declare const UPKEEP_MAX_ATTEMPTS = 3;
22
+ /** How far back stored orders are read to count a subject's attempts. */
23
+ export declare const UPKEEP_WINDOW_MS: number;
24
+ /** Candidates per scan page. */
25
+ export declare const UPKEEP_SCAN_PAGE = 200;
26
+ /** Every order of a kind has an id with this prefix; its runs carry it as sourceMessageRef. */
27
+ export declare function upkeepOrderIdPrefix(kindName: string): string;
28
+ export interface UpkeepSubject {
29
+ /** Stable per subject: the same fact always gets the same key. */
30
+ key: string;
31
+ [field: string]: JsonValue;
32
+ }
33
+ export interface UpkeepKind {
34
+ name: string;
35
+ /** The order's mailbox channel, `operator:<name>`. */
36
+ channel: string;
37
+ /** How often the host scans. */
38
+ intervalMs: number;
39
+ maxPerOrder: number;
40
+ /**
41
+ * The subject's group, when the kind's subjects come in kinds of their own: maxPerOrder then
42
+ * bounds each group, so one group never starves the other.
43
+ */
44
+ group?(subject: UpkeepSubject): string;
45
+ /**
46
+ * Candidate subjects, oldest first, one page at a time: the runner reads further pages while
47
+ * settled subjects fill the earlier ones.
48
+ */
49
+ scan(adapter: DatabaseAdapter, now: number, page: number): UpkeepSubject[];
50
+ /** Whether the subject's work is done, judged from the runs of the orders that carried it. */
51
+ checked(adapter: DatabaseAdapter, subject: UpkeepSubject, runIds: readonly string[]): boolean;
52
+ render(subjects: readonly UpkeepSubject[], now: Date): string;
53
+ }
54
+ export interface UpkeepOrderPayload {
55
+ order: 'upkeep';
56
+ kind: string;
57
+ subjects: UpkeepSubject[];
58
+ }
59
+ export type UpkeepEvent = {
60
+ type: 'ordered';
61
+ kind: string;
62
+ order: string;
63
+ subjects: number;
64
+ } | {
65
+ type: 'checked';
66
+ kind: string;
67
+ subject: string;
68
+ }
69
+ /** The subject is picked again by the kind's next tick. */
70
+ | {
71
+ type: 'waiting';
72
+ kind: string;
73
+ subject: string;
74
+ attempt: number;
75
+ reason: string;
76
+ } | {
77
+ type: 'lost';
78
+ kind: string;
79
+ subject: string;
80
+ attempt: number;
81
+ reason: string;
82
+ };
83
+ export interface UpkeepOrdersOptions {
84
+ adapter: DatabaseAdapter;
85
+ accept(stimulus: Omit<Stimulus, 'principalId'>): StimulusReceipt;
86
+ kinds: readonly UpkeepKind[];
87
+ /** When this daemon process started: runs begun earlier can no longer write. */
88
+ processStartedAt: number;
89
+ onEvent?(event: UpkeepEvent): void;
90
+ /** How long to wait for an order run's child runs to end before checking. */
91
+ childWaitMs?: number;
92
+ sleep?(ms: number): Promise<void>;
93
+ now?(): number;
94
+ /** The first scan after start, so work closed while the daemon was down is not left an hour. */
95
+ firstTickDelayMs?: number;
96
+ }
97
+ export interface UpkeepOrders {
98
+ isUpkeepRow(row: Pick<MailboxRow, 'kind' | 'channelKey'>): boolean;
99
+ render(row: MailboxRow, now: Date): string;
100
+ onResult(row: MailboxRow, modelRunId: string | null): void;
101
+ /** An order row that went uncertain or dead: the same check, run at once. */
102
+ onLost(row: MailboxRow, reason: string): void;
103
+ /** Scan one kind and place its next order; at most one open order per kind. */
104
+ tick(kindName: string): void;
105
+ start(): void;
106
+ stop(): void;
107
+ }
108
+ export declare function parseUpkeepOrder(payload: JsonValue | undefined): UpkeepOrderPayload;
109
+ /** The runs an order produced: its own turn and the child runs that turn started. */
110
+ export declare function orderRunIds(adapter: DatabaseAdapter, orderIds: readonly string[]): string[];
111
+ /**
112
+ * A completed work.no_update in these runs. With `cites`, the no-update must name one of the
113
+ * values in that input field (`commitmentIds` for a work item, `observationRefs` for a source);
114
+ * with `cites` null, any no-update in the runs counts. The field name is a fixed union, never
115
+ * caller text, so it interpolates into the json path safely.
116
+ */
117
+ export declare function noUpdateCites(adapter: DatabaseAdapter, runIds: readonly string[], cites: {
118
+ field: 'commitmentIds' | 'observationRefs';
119
+ values: readonly string[];
120
+ } | null): boolean;
121
+ /** Child runs of an order run that this process started and that have not ended yet. */
122
+ export declare function runningChildren(adapter: DatabaseAdapter, modelRunId: string, startedAt: number): number;
123
+ export declare function createUpkeepOrders(options: UpkeepOrdersOptions): UpkeepOrders;
124
+ //# sourceMappingURL=upkeep-orders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upkeep-orders.d.ts","sourceRoot":"","sources":["../../src/runtime/upkeep-orders.ts"],"names":[],"mappings":"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"}