@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
@@ -3,6 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OWNER_CONNECTORS = exports.OWNER_ACTIONS = exports.MEMBER_ACTIONS = void 0;
4
4
  exports.ownerMemoryScopes = ownerMemoryScopes;
5
5
  exports.createActionSurface = createActionSurface;
6
+ const skills_js_1 = require("./skills.js");
7
+ const skill_actions_js_1 = require("../api/skill-actions.js");
8
+ const member_notice_actions_js_1 = require("../api/member-notice-actions.js");
9
+ const personal_notices_js_1 = require("./personal-notices.js");
10
+ const document_actions_js_1 = require("../api/document-actions.js");
11
+ const runtime_1 = require("@jungjaehoon/mama-core/runtime/runtime");
12
+ const personal_jobs_js_1 = require("./personal-jobs.js");
13
+ const personal_job_actions_js_1 = require("../api/personal-job-actions.js");
6
14
  const member_enrollment_js_1 = require("../api/member-enrollment.js");
7
15
  const member_lifecycle_js_1 = require("../api/member-lifecycle.js");
8
16
  const member_records_js_1 = require("../api/member-records.js");
@@ -10,6 +18,7 @@ const trace_summary_1 = require("@jungjaehoon/mama-core/runtime/trace-summary");
10
18
  const native_tool_trace_observer_1 = require("@jungjaehoon/mama-core/runtime/native-tool-trace-observer");
11
19
  const outbound_attempts_js_1 = require("./outbound-attempts.js");
12
20
  const mama_core_1 = require("@jungjaehoon/mama-core");
21
+ const node_crypto_1 = require("node:crypto");
13
22
  const report_actions_js_1 = require("../api/report-actions.js");
14
23
  const report_handler_js_1 = require("../api/report-handler.js");
15
24
  const attachment_actions_js_1 = require("../api/attachment-actions.js");
@@ -32,6 +41,13 @@ const index_js_1 = require("../connectors/index.js");
32
41
  Object.defineProperty(exports, "OWNER_CONNECTORS", { enumerable: true, get: function () { return index_js_1.LOADABLE_CONNECTORS; } });
33
42
  const member_share_actions_js_1 = require("../api/member-share-actions.js");
34
43
  const OWNER_ACTIONS = [
44
+ 'skill.list',
45
+ 'skill.read',
46
+ 'skill.publish',
47
+ 'skill.unpublish',
48
+ 'member.directory',
49
+ 'member.notice',
50
+ 'document.render',
35
51
  'code_act',
36
52
  'graph.query',
37
53
  'source.search',
@@ -44,6 +60,7 @@ const OWNER_ACTIONS = [
44
60
  'judge',
45
61
  'owner.timezone.set',
46
62
  ...member_lifecycle_js_1.MEMBER_MANAGEMENT_ACTIONS,
63
+ 'manage.member.enroll',
47
64
  'owner.messages',
48
65
  'memory.checkpoint.list',
49
66
  'memory.checkpoint.save',
@@ -78,6 +95,10 @@ const OWNER_ACTIONS = [
78
95
  exports.OWNER_ACTIONS = OWNER_ACTIONS;
79
96
  /** The member role: Telegram file delivery honours the caller's DM. Exact catalog names only. */
80
97
  exports.MEMBER_ACTIONS = [
98
+ 'skill.list',
99
+ 'skill.read',
100
+ 'document.render',
101
+ ...personal_job_actions_js_1.PERSONAL_JOB_ACTIONS,
81
102
  'graph.query',
82
103
  'work.list',
83
104
  'work.show',
@@ -116,7 +137,23 @@ function ownerMemoryScopes(ownerPrincipalId, connectors = index_js_1.LOADABLE_CO
116
137
  return [...new Map(scopes.map((scope) => [`${scope.kind}\0${scope.id}`, scope])).values()];
117
138
  }
118
139
  function createActionSurface(options) {
140
+ // Whether the caller's own source reads (connectors, channels, enrollment floor) reach an
141
+ // observation; any refusal, erased or missing included, is not readable.
142
+ const observationReadable = (id, context) => {
143
+ if (!options.storedSourceReader)
144
+ return false;
145
+ try {
146
+ options.storedSourceReader.readObservation(id, context.access, undefined, {
147
+ content_limit: 1,
148
+ });
149
+ return true;
150
+ }
151
+ catch {
152
+ return false;
153
+ }
154
+ };
119
155
  let principals;
156
+ const memberDirectoryChange = options.memberDirectoryChange;
120
157
  const memberRecords = (0, member_records_js_1.createMemberRecords)({
121
158
  adapter: options.adapter,
122
159
  isMessageTurn: options.isOwnerMessageTurn,
@@ -126,10 +163,18 @@ function createActionSurface(options) {
126
163
  adapter: options.adapter,
127
164
  ownerPrincipalId: options.ownerPrincipalId,
128
165
  isOwnerMessageTurn: options.isOwnerMessageTurn,
166
+ commonChannelId: options.commonChannelId,
129
167
  ownerAccess: () => ownerAccess,
130
168
  ports: options.memberEnrollment,
169
+ directoryChange: memberDirectoryChange,
131
170
  });
132
171
  const defaultScopes = ownerMemoryScopes(options.ownerPrincipalId, options.connectors ?? index_js_1.LOADABLE_CONNECTORS);
172
+ const skills = (0, skills_js_1.createSkillStore)({
173
+ adapter: options.adapter,
174
+ commonPrincipalId: options.ownerPrincipalId,
175
+ commonScopes: () => defaultScopes,
176
+ paths: options.skillPaths,
177
+ });
133
178
  const core = (0, mama_core_1.coreActionRegistrations)(options.knowledge, options.adapter, {
134
179
  // The owner's checkpoint saves stay unscoped. A member's hand-off is personal,
135
180
  // irrespective of its shared read grants.
@@ -179,7 +224,7 @@ function createActionSurface(options) {
179
224
  // Only an owner-chat turn changes an owner rule (owner-authority.ts); a member's own chat
180
225
  // changes only its own records (member-share-actions.ts).
181
226
  .map((registration) => registration.contract.name === 'memory.save' || registration.contract.name === 'memory.retire'
182
- ? (0, member_share_actions_js_1.guardMemberSharedRecords)((0, owner_authority_js_1.guardOwnerRules)(registration, options.adapter, options.ownerPrincipalId), options.adapter, options.ownerPrincipalId)
227
+ ? (0, member_share_actions_js_1.guardMemberSharedRecords)((0, owner_authority_js_1.guardOwnerRules)(registration, options.adapter, options.ownerPrincipalId, options.commonChannelId, observationReadable), options.adapter, options.ownerPrincipalId)
183
228
  : registration);
184
229
  const reportSseClients = options.reportSseClients ?? new Set();
185
230
  const reportPorts = {
@@ -202,21 +247,125 @@ function createActionSurface(options) {
202
247
  },
203
248
  }),
204
249
  };
250
+ const lifecycle = (0, member_lifecycle_js_1.memberLifecycleRegistrations)({
251
+ adapter: options.adapter,
252
+ ownerPrincipalId: options.ownerPrincipalId,
253
+ ownerAccess: () => ownerAccess,
254
+ isOwnerMessageTurn: options.isOwnerMessageTurn,
255
+ commonChannelId: options.commonChannelId,
256
+ timeZone: options.timeZone,
257
+ ports: options.memberLifecycle,
258
+ scheduleChange: async (name, input, context) => {
259
+ const ports = options.memberLifecycle;
260
+ const { principalId } = input;
261
+ const earlier = context.operationId
262
+ ? ports.mailbox().readInput(`member-management:${context.operationId}`, principalId)
263
+ : null;
264
+ if (earlier)
265
+ return {
266
+ principalId,
267
+ change: name.slice('manage.member.'.length),
268
+ status: 'scheduled',
269
+ commandId: earlier.stimulusId,
270
+ };
271
+ // ACKed rows age out before their accepted identities. Do not turn their replay into
272
+ // an immediate change, or reject a resume whose activation already succeeded.
273
+ if (context.operationId &&
274
+ options.adapter
275
+ .prepare('SELECT 1 FROM mailbox_seen WHERE ref_id=?')
276
+ .get(`member-management:${context.operationId}`))
277
+ return {
278
+ principalId,
279
+ change: name.slice('manage.member.'.length),
280
+ status: 'duplicate',
281
+ commandId: `member-management:${context.operationId}`,
282
+ };
283
+ const chain = ports.turnChain(principalId);
284
+ const pendingHost = options.adapter
285
+ .prepare("SELECT 1 FROM mailbox_inputs WHERE principal_id=? AND kind='host_job' AND status IN ('pending','claimed') LIMIT 1")
286
+ .get(principalId) !== undefined;
287
+ // A new resume needs a suspended target, unless an earlier queued change still owns it.
288
+ // Executing the retained command later may instead find the target already activated.
289
+ if (name === 'manage.member.resume' && !pendingHost) {
290
+ const principal = (0, mama_core_1.createPrincipalRepository)(options.adapter).findById(principalId);
291
+ if (principal?.status !== 'suspended')
292
+ throw new Error(`Cannot resume a ${principal?.status} member`);
293
+ }
294
+ const changesDirectory = [
295
+ 'manage.member.suspend',
296
+ 'manage.member.resume',
297
+ 'manage.member.offboard',
298
+ ].includes(name);
299
+ if (!changesDirectory && !chain.isBusy() && !pendingHost)
300
+ return chain.afterCurrent(async () => lifecycle
301
+ .find((registration) => registration.contract.name === name)
302
+ .exec(input, { ...context, memberManagementQueued: true }));
303
+ if (!context.operationId)
304
+ throw new Error('Member management requires an operation id');
305
+ const commandId = `member-management:${context.operationId}`;
306
+ const rowId = ports.mailbox().enqueue({
307
+ id: commandId,
308
+ kind: 'host_job',
309
+ principalId,
310
+ channelKey: 'member-management',
311
+ occurredAt: Date.now(),
312
+ payload: JSON.parse(JSON.stringify({
313
+ action: name,
314
+ input,
315
+ callerPrincipalId: (0, owner_authority_js_1.activeOwnerMessageCaller)(context, options),
316
+ })),
317
+ });
318
+ if (rowId !== null)
319
+ ports.resumeQueued();
320
+ return {
321
+ principalId,
322
+ change: name.slice('manage.member.'.length),
323
+ status: rowId === null ? 'duplicate' : 'scheduled',
324
+ commandId,
325
+ };
326
+ },
327
+ });
328
+ const codeAct = (0, code_act_actions_js_1.codeActRegistration)(() => dispatch);
329
+ const personalJobs = (0, personal_jobs_js_1.createPersonalJobStore)(options.adapter, options.timeZone);
330
+ const personalNotices = (0, personal_notices_js_1.createPersonalNoticeStore)(options.adapter);
331
+ const readNoticeRef = async (ref, access) => {
332
+ const result = await dispatch({ action: 'observationRef' in ref ? 'source.read' : 'memory.read:record', input: ref }, { access });
333
+ if (result.status !== 'completed') {
334
+ if (result.error.kind === 'denied' ||
335
+ ['stored_source_out_of_scope', 'stored_source_not_found'].includes(result.error.code))
336
+ return false;
337
+ throw Object.assign(new Error(`${result.error.code}: ${result.error.message}`), {
338
+ name: result.error.code,
339
+ });
340
+ }
341
+ if ('observationRef' in ref)
342
+ return true;
343
+ const record = result.data.record;
344
+ return record !== null && !(0, mama_core_1.isErasedRecord)(record);
345
+ };
205
346
  const registrations = [
206
- ...core,
207
- ...(0, member_lifecycle_js_1.memberLifecycleRegistrations)({
347
+ ...(0, skill_actions_js_1.skillActionRegistrations)(skills, options),
348
+ ...(0, member_notice_actions_js_1.memberNoticeRegistrations)({
208
349
  adapter: options.adapter,
209
350
  ownerPrincipalId: options.ownerPrincipalId,
210
351
  ownerAccess: () => ownerAccess,
211
- isOwnerMessageTurn: options.isOwnerMessageTurn,
212
352
  timeZone: options.timeZone,
213
- ports: options.memberLifecycle,
353
+ notices: options.memberNotices,
354
+ read: readNoticeRef,
355
+ }),
356
+ ...(0, document_actions_js_1.documentActionRegistrations)({
357
+ ...options.documentPorts,
358
+ ownerPrincipalId: options.ownerPrincipalId,
214
359
  }),
360
+ ...(0, personal_job_actions_js_1.personalJobRegistrations)(personalJobs, options),
361
+ ...core,
362
+ ...lifecycle,
215
363
  ...memberRecords.registrations,
216
364
  ...(0, member_share_actions_js_1.memberShareActionRegistrations)({
217
365
  adapter: options.adapter,
218
366
  ownerPrincipalId: options.ownerPrincipalId,
219
367
  ownerDefaultScopes: defaultScopes,
368
+ isOwnerMessageTurn: options.isOwnerMessageTurn,
220
369
  }),
221
370
  ...(0, source_actions_js_1.sourceActionRegistrations)({
222
371
  stored: options.storedSourceReader,
@@ -231,9 +380,12 @@ function createActionSurface(options) {
231
380
  configPath: options.configPath,
232
381
  ownerPrincipalId: options.ownerPrincipalId,
233
382
  setting: options.timeZone,
383
+ adapter: options.adapter,
234
384
  isOwnerMessageTurn: options.isOwnerMessageTurn,
385
+ commonChannelId: options.commonChannelId,
235
386
  }),
236
387
  ...(0, owner_policy_actions_js_1.ownerPolicyActionRegistrations)({
388
+ commonChannelId: options.commonChannelId,
237
389
  runtimeRoot: options.runtimeRoot,
238
390
  adapter: options.adapter,
239
391
  ownerPrincipalId: options.ownerPrincipalId,
@@ -257,6 +409,9 @@ function createActionSurface(options) {
257
409
  ...(options.attachmentPorts?.downloadsDir === undefined
258
410
  ? {}
259
411
  : { downloadsDir: options.attachmentPorts.downloadsDir }),
412
+ ...(options.attachmentPorts?.principalPaths === undefined
413
+ ? {}
414
+ : { principalPaths: options.attachmentPorts.principalPaths }),
260
415
  }),
261
416
  ...(options.driveDelivery === undefined
262
417
  ? []
@@ -267,9 +422,28 @@ function createActionSurface(options) {
267
422
  ...(0, work_actions_js_1.workListActionRegistrations)({ knowledge: options.knowledge, timeZone: options.timeZone }),
268
423
  ...(0, work_actions_js_1.minimalWorkActionRegistrations)({
269
424
  knowledge: options.knowledge,
270
- observationExists: (observationId) => options.adapter
271
- .prepare('SELECT 1 FROM observation_versions WHERE observation_id = ? LIMIT 1')
272
- .get(observationId) !== undefined,
425
+ observationExists: (observationId, context) => context.access.principalId === options.ownerPrincipalId
426
+ ? options.adapter
427
+ .prepare('SELECT 1 FROM observation_versions WHERE observation_id = ? LIMIT 1')
428
+ .get(observationId) !== undefined
429
+ : observationReadable(observationId, context),
430
+ workBindings: (commitmentId) => options.adapter
431
+ .prepare(`SELECT s.kind, s.external_id FROM commitments c
432
+ JOIN memory_scope_bindings b ON b.memory_id = c.head_record_id
433
+ JOIN memory_scopes s ON s.id = b.scope_id
434
+ WHERE c.commitment_id = ?`)
435
+ .all(commitmentId).map((row) => ({ kind: row.kind, id: row.external_id })),
436
+ edgeObservations: (edgeId) => {
437
+ const edge = options.adapter
438
+ .prepare('SELECT subject_kind, subject_id, object_kind, object_id FROM twin_edges WHERE edge_id = ?')
439
+ .get(edgeId);
440
+ return edge === undefined
441
+ ? []
442
+ : [
443
+ ...(edge.subject_kind === 'observation' ? [edge.subject_id] : []),
444
+ ...(edge.object_kind === 'observation' ? [edge.object_id] : []),
445
+ ];
446
+ },
273
447
  }),
274
448
  ...(0, report_actions_js_1.reportActionRegistrations)(reportPorts),
275
449
  ...(0, wiki_actions_js_1.wikiActionRegistrations)(options.wikiPorts ?? {}),
@@ -287,37 +461,55 @@ function createActionSurface(options) {
287
461
  }),
288
462
  // Claude calls every action from inside code_act, as Kagemusha's code_act; the inner calls go
289
463
  // through the dispatcher below, so each is granted and traced as the caller's.
290
- (0, code_act_actions_js_1.codeActRegistration)(() => dispatch),
464
+ codeAct,
291
465
  ];
292
466
  const catalog = (0, mama_core_1.createCatalog)(registrations);
293
- const dispatch = (0, mama_core_1.createDispatcher)(catalog, {
294
- observeCall: async ({ action, operationId, input, result, durationMs, context }) => {
295
- const session = context.session;
296
- const common = {
297
- tool_name: action,
298
- gateway_call_id: session?.gatewayCallId ?? null,
299
- input_summary: (0, trace_summary_1.traceSummary)(input),
300
- output_summary: (0, trace_summary_1.traceSummary)(result),
301
- execution_status: result.status,
302
- duration_ms: durationMs,
303
- ...(result.status === 'failed' ? { failure_code: result.error.code } : {}),
304
- };
305
- if (session?.modelRunId) {
306
- const trace = await (0, mama_core_1.appendToolTrace)(options.adapter, {
307
- ...common,
308
- model_run_id: session.modelRunId,
309
- });
310
- return trace.trace_id;
311
- }
312
- if (!operationId)
313
- return undefined;
314
- const trace = (0, mama_core_1.appendOperationToolTrace)(options.adapter, {
467
+ const observeCall = async ({ action, operationId, input, result, durationMs, context, }) => {
468
+ const session = context.session;
469
+ const caller = action.startsWith('manage.member.')
470
+ ? (0, owner_authority_js_1.messageTurnCaller)(context, options)
471
+ : undefined;
472
+ if (action !== 'manage.member.list' &&
473
+ caller &&
474
+ (context.memberManagementQueued ||
475
+ (0, owner_authority_js_1.activeOwnerMessageCaller)(context, options) === caller) &&
476
+ !(result.status === 'completed' &&
477
+ ['scheduled', 'duplicate'].includes(result.data?.status ?? ''))) {
478
+ options.recordManagementReceipt?.({
479
+ callerPrincipalId: caller,
480
+ operationId: operationId ?? (0, node_crypto_1.randomUUID)(),
481
+ action,
482
+ input,
483
+ result,
484
+ });
485
+ }
486
+ const common = {
487
+ tool_name: action,
488
+ gateway_call_id: session?.gatewayCallId ?? null,
489
+ input_summary: (0, trace_summary_1.traceSummary)(caller ? { callerPrincipalId: caller, input } : input),
490
+ output_summary: (0, trace_summary_1.traceSummary)(result),
491
+ execution_status: result.status,
492
+ duration_ms: durationMs,
493
+ ...(result.status === 'failed' ? { failure_code: result.error.code } : {}),
494
+ };
495
+ if (session?.modelRunId) {
496
+ const trace = await (0, mama_core_1.appendToolTrace)(options.adapter, {
315
497
  ...common,
316
- operation_id: operationId,
317
- actor_principal_id: context.access.principalId,
498
+ model_run_id: session.modelRunId,
318
499
  });
319
500
  return trace.trace_id;
320
- },
501
+ }
502
+ if (!operationId)
503
+ return undefined;
504
+ const trace = (0, mama_core_1.appendOperationToolTrace)(options.adapter, {
505
+ ...common,
506
+ operation_id: operationId,
507
+ actor_principal_id: caller ?? context.access.principalId,
508
+ });
509
+ return trace.trace_id;
510
+ };
511
+ const dispatch = (0, mama_core_1.createDispatcher)(catalog, {
512
+ observeCall,
321
513
  });
322
514
  // Built on the first scopes read, so constructing a surface touches no table.
323
515
  const ownerAccess = {
@@ -354,7 +546,96 @@ function createActionSurface(options) {
354
546
  }),
355
547
  };
356
548
  return {
549
+ skills,
550
+ personalNotices,
551
+ readNoticeRef,
552
+ personalJobs,
357
553
  memberRecords,
554
+ releasePrincipal: codeAct.releasePrincipal,
555
+ onManagementDead: (row, reason) => {
556
+ if (row.kind !== 'host_job' || row.channelKey !== 'member-management')
557
+ return;
558
+ if (options.adapter
559
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
560
+ .get(`host:management:${row.stimulusId}:reply`))
561
+ return;
562
+ const payload = row.payload;
563
+ options.recordManagementReceipt?.({
564
+ ...(typeof payload?.callerPrincipalId === 'string'
565
+ ? { callerPrincipalId: payload.callerPrincipalId }
566
+ : {}),
567
+ operationId: row.stimulusId,
568
+ action: typeof payload?.action === 'string' ? payload.action : 'member-management',
569
+ input: payload?.input ?? null,
570
+ result: {
571
+ status: 'failed',
572
+ error: { kind: 'internal', code: 'member_management_failed', message: reason },
573
+ },
574
+ });
575
+ },
576
+ deliverManagement: async (row) => {
577
+ if (row.kind !== 'host_job' || row.channelKey !== 'member-management')
578
+ return 'unhandled';
579
+ const ports = options.memberLifecycle;
580
+ if (!ports)
581
+ throw new runtime_1.StimulusQuarantine('Member management job requires lifecycle ports');
582
+ const job = row.payload;
583
+ if (!job ||
584
+ !lifecycle.some((r) => r.contract.name === job.action) ||
585
+ typeof job.callerPrincipalId !== 'string' ||
586
+ !job.callerPrincipalId.trim())
587
+ throw new runtime_1.StimulusQuarantine('Invalid member management job');
588
+ const execute = async () => {
589
+ if (ports.isStopping())
590
+ return 'deferred';
591
+ // The common receipt is also the command's durable completion marker. A replay after
592
+ // receipt storage but before mailbox ACK must not reset or move the session again.
593
+ const receipt = options.adapter
594
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
595
+ .get(`host:management:${row.stimulusId}:reply`);
596
+ if (!receipt) {
597
+ const result = await dispatch({ action: job.action, input: job.input, operationId: row.stimulusId }, {
598
+ access: {
599
+ principalId: job.callerPrincipalId,
600
+ agentId: 'member-management-host',
601
+ scopes: [],
602
+ actions: [job.action],
603
+ },
604
+ operationId: row.stimulusId,
605
+ memberManagementQueued: true,
606
+ memberManagementCaller: job.callerPrincipalId,
607
+ });
608
+ // The authenticated caller id survives even if that caller erased the requesting
609
+ // message while the target was busy; a denied change still owes its common receipt.
610
+ if (!options.adapter
611
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
612
+ .get(`host:management:${row.stimulusId}:reply`))
613
+ options.recordManagementReceipt?.({
614
+ callerPrincipalId: job.callerPrincipalId,
615
+ operationId: row.stimulusId,
616
+ action: job.action,
617
+ input: job.input,
618
+ result,
619
+ });
620
+ }
621
+ return 'handled';
622
+ };
623
+ let completion = Promise.resolve('deferred');
624
+ await ports.turnChain(row.principalId).afterCurrent(async () => {
625
+ if (ports.isStopping())
626
+ return;
627
+ if (['manage.member.suspend', 'manage.member.resume', 'manage.member.offboard'].includes(job.action)) {
628
+ // Release this reservation before the directory lane drains all current member work.
629
+ // Awaiting that lane here would make it wait for its own target reservation.
630
+ completion = memberDirectoryChange(execute);
631
+ }
632
+ else {
633
+ completion = execute();
634
+ await completion;
635
+ }
636
+ });
637
+ return completion;
638
+ },
358
639
  createNativeEffectObserver: (modelRunId, access = ownerAccess) => {
359
640
  const traces = (0, native_tool_trace_observer_1.createNativeToolTraceObserver)(options.adapter, modelRunId);
360
641
  return options.outboundAttempts === undefined
@@ -362,6 +643,7 @@ function createActionSurface(options) {
362
643
  : (0, outbound_attempts_js_1.withOutboundAttempts)(traces, modelRunId, options.outboundAttempts, {
363
644
  principalId: access.principalId,
364
645
  ownerPrincipalId: options.ownerPrincipalId,
646
+ ownerRole: (0, owner_authority_js_1.holdsOwnerRole)((principals ??= (0, mama_core_1.createPrincipalRepository)(options.adapter)), access.principalId),
365
647
  });
366
648
  },
367
649
  catalog,
@@ -1 +1 @@
1
- {"version":3,"file":"action-surface.js","sourceRoot":"","sources":["../../src/runtime/action-surface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-surface.js","sourceRoot":"","sources":["../../src/runtime/action-surface.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,10 @@ export declare function physicalReadPath(path: string): string;
4
4
  export declare function normalizeReadPaths(paths: readonly string[]): string[];
5
5
  /** Parent of each member's short Claude temp root (member-paths.ts). */
6
6
  export declare const MEMBER_CLAUDE_TMP_PARENT: string;
7
+ /** Short enough for a principal and room component plus Claude's sandbox suffix. */
8
+ export declare const MEMBER_ROOM_TMP_PARENT: string;
9
+ /** Host renders contain every principal's staged input and trusted LibreOffice profile. */
10
+ export declare const HOST_DOCUMENT_RENDER_ROOT: string;
7
11
  /** P6: owner native tools cannot bypass action access through shared storage or member files. */
8
12
  export declare function ownerNativeDataReadPaths(options: OwnerRuntimeOptions): string[];
9
13
  /** Member-only boundary. The owner's credential list and driver options do not use this list. */
@@ -1 +1 @@
1
- {"version":3,"file":"backend-security.d.ts","sourceRoot":"","sources":["../../src/runtime/backend-security.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,mGAAmG;AACnG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASrD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAErE;AAED,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,QAAyB,CAAC;AAE/D,iGAAiG;AACjG,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAa/E;AAED,iGAAiG;AACjG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CA4CzE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAS1F;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,EAAE,CAWV"}
1
+ {"version":3,"file":"backend-security.d.ts","sourceRoot":"","sources":["../../src/runtime/backend-security.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,mGAAmG;AACnG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASrD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAErE;AAED,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,QAAyB,CAAC;AAC/D,oFAAoF;AACpF,eAAO,MAAM,sBAAsB,QAAoB,CAAC;AAExD,2FAA2F;AAC3F,eAAO,MAAM,yBAAyB,QAAqD,CAAC;AAE5F,iGAAiG;AACjG,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAe/E;AAED,iGAAiG;AACjG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CA6CzE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAS1F;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,EAAE,CAWV"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MEMBER_CLAUDE_TMP_PARENT = void 0;
3
+ exports.HOST_DOCUMENT_RENDER_ROOT = exports.MEMBER_ROOM_TMP_PARENT = exports.MEMBER_CLAUDE_TMP_PARENT = void 0;
4
4
  exports.physicalReadPath = physicalReadPath;
5
5
  exports.normalizeReadPaths = normalizeReadPaths;
6
6
  exports.ownerNativeDataReadPaths = ownerNativeDataReadPaths;
@@ -28,6 +28,10 @@ function normalizeReadPaths(paths) {
28
28
  }
29
29
  /** Parent of each member's short Claude temp root (member-paths.ts). */
30
30
  exports.MEMBER_CLAUDE_TMP_PARENT = (0, node_path_1.join)('/tmp', 'mama-m');
31
+ /** Short enough for a principal and room component plus Claude's sandbox suffix. */
32
+ exports.MEMBER_ROOM_TMP_PARENT = (0, node_path_1.join)('/tmp', 'm');
33
+ /** Host renders contain every principal's staged input and trusted LibreOffice profile. */
34
+ exports.HOST_DOCUMENT_RENDER_ROOT = (0, node_path_1.join)('/tmp', `mama-office-host-${(0, node_os_1.userInfo)().uid}`);
31
35
  /** P6: owner native tools cannot bypass action access through shared storage or member files. */
32
36
  function ownerNativeDataReadPaths(options) {
33
37
  const database = physicalReadPath(options.databasePath);
@@ -41,6 +45,8 @@ function ownerNativeDataReadPaths(options) {
41
45
  options.rawPath,
42
46
  ...(options.memberRoot === undefined ? [] : [options.memberRoot]),
43
47
  exports.MEMBER_CLAUDE_TMP_PARENT,
48
+ exports.MEMBER_ROOM_TMP_PARENT,
49
+ exports.HOST_DOCUMENT_RENDER_ROOT,
44
50
  ];
45
51
  }
46
52
  /** Member-only boundary. The owner's credential list and driver options do not use this list. */
@@ -86,6 +92,7 @@ function ownerDataReadPaths(options) {
86
92
  (0, node_path_1.join)(root, 'logs'),
87
93
  // The Claude sandbox temp dir every session of this OS user falls back to, the owner's included.
88
94
  (0, node_path_1.join)('/tmp', `claude-${(0, node_os_1.userInfo)().uid}`),
95
+ exports.HOST_DOCUMENT_RENDER_ROOT,
89
96
  ...(options.ownerDeniedReadPaths ?? []),
90
97
  ]);
91
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"backend-security.js","sourceRoot":"","sources":["../../src/runtime/backend-security.ts"],"names":[],"mappings":";;;AAMA,4CASC;AAED,gDAEC;AAMD,4DAaC;AAGD,gDA4CC;AAKD,gDASC;AAGD,kDAeC;AArHD,qCAAuC;AACvC,qCAA4C;AAC5C,yCAA+D;AAG/D,mGAAmG;AACnG,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,IAAI,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,IAAA,sBAAY,EAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;QACpE,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAA,gBAAI,EAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAwB;IACzD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,wEAAwE;AAC3D,QAAA,wBAAwB,GAAG,IAAA,gBAAI,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE/D,iGAAiG;AACjG,SAAgB,wBAAwB,CAAC,OAA4B;IACnE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACxD,OAAO;QACL,OAAO,CAAC,YAAY;QACpB,GAAG,OAAO,CAAC,YAAY,MAAM;QAC7B,GAAG,OAAO,CAAC,YAAY,MAAM;QAC7B,QAAQ;QACR,GAAG,QAAQ,MAAM;QACjB,GAAG,QAAQ,MAAM;QACjB,OAAO,CAAC,OAAO;QACf,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjE,gCAAwB;KACzB,CAAC;AACJ,CAAC;AAED,iGAAiG;AACjG,SAAgB,kBAAkB,CAAC,OAA4B;IAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;IACjC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,OAAO,kBAAkB,CAAC;QACxB,IAAA,iBAAO,GAAE;QACT,IAAI;QACJ,OAAO,CAAC,YAAY;QACpB,GAAG,OAAO,CAAC,YAAY,MAAM;QAC7B,GAAG,OAAO,CAAC,YAAY,MAAM;QAC7B,QAAQ;QACR,GAAG,QAAQ,MAAM;QACjB,GAAG,QAAQ,MAAM;QACjB,OAAO,CAAC,OAAO;QACf,GAAG,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,IAAI,CAAC,SAAS;gBACd,IAAA,sBAAU,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,gBAAI,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC;aAC7E;YACH,CAAC,CAAC,EAAE,CAAC;QACP,yFAAyF;QACzF,OAAO,CAAC,UAAU,IAAI,IAAA,gBAAI,EAAC,IAAI,EAAE,mBAAmB,CAAC;QACrD,IAAA,mBAAO,EAAC,OAAO,CAAC,UAAU,IAAI,IAAA,gBAAI,EAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC9D,OAAO,CAAC,eAAe,EAAE,YAAY,IAAI,IAAA,gBAAI,EAAC,IAAI,EAAE,WAAW,CAAC;QAChE,OAAO,CAAC,aAAa,EAAE,UAAU,IAAI,IAAA,gBAAI,EAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;QACtE,OAAO,CAAC,YAAY;QACpB,IAAA,gBAAI,EAAC,IAAI,EAAE,iBAAiB,CAAC;QAC7B,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC;QACtE,IAAA,gBAAI,EAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC;QACnC,IAAA,gBAAI,EAAC,IAAI,EAAE,eAAe,EAAE,SAAS,CAAC;QACtC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,mEAAmE;QACnE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B;YAC7C,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC;YAC/C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,CAAC,aAAa,IAAI,IAAA,gBAAI,EAAC,IAAI,EAAE,sBAAsB,CAAC;QAC3D,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,cAAc;QACtB,IAAA,gBAAI,EAAC,IAAI,EAAE,MAAM,CAAC;QAClB,iGAAiG;QACjG,IAAA,gBAAI,EAAC,MAAM,EAAE,UAAU,IAAA,kBAAQ,GAAE,CAAC,GAAG,EAAE,CAAC;QACxC,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;KACxC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACrE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;IACxB,gFAAgF;IAChF,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CACT,IAAI,KAAK,qBAAqB;QAC9B,CAAC,yDAAyD,CAAC,IAAI,CAAC,IAAI,CAAC,CACxE,CACF,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,SAAgB,mBAAmB,CACjC,WAAmB,EACnB,SAAkB,EAClB,aAAsB;IAEtB,OAAO;QACL,GAAG,IAAI,GAAG,CAAC;YACT,IAAA,mBAAO,EAAC,WAAW,EAAE,UAAU,CAAC;YAChC,IAAA,mBAAO,EAAC,WAAW,EAAE,aAAa,CAAC;YACnC,IAAA,mBAAO,EAAC,WAAW,EAAE,SAAS,CAAC;YAC/B,IAAA,mBAAO,EAAC,WAAW,EAAE,QAAQ,CAAC;YAC9B,IAAA,mBAAO,EAAC,aAAa,IAAI,IAAA,mBAAO,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YACzD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3C,CAAC;KACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"backend-security.js","sourceRoot":"","sources":["../../src/runtime/backend-security.ts"],"names":[],"mappings":"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"}