@jungjaehoon/mama-os 0.74.0 → 0.76.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 (254) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/README.md +6 -1
  3. package/dist/api/code-act-actions.d.ts +3 -1
  4. package/dist/api/code-act-actions.d.ts.map +1 -1
  5. package/dist/api/code-act-actions.js +16 -7
  6. package/dist/api/code-act-actions.js.map +1 -1
  7. package/dist/api/document-actions.d.ts +13 -0
  8. package/dist/api/document-actions.d.ts.map +1 -0
  9. package/dist/api/document-actions.js +55 -0
  10. package/dist/api/document-actions.js.map +1 -0
  11. package/dist/api/drive-actions.d.ts +3 -1
  12. package/dist/api/drive-actions.d.ts.map +1 -1
  13. package/dist/api/drive-actions.js +6 -1
  14. package/dist/api/drive-actions.js.map +1 -1
  15. package/dist/api/member-enrollment.d.ts +7 -4
  16. package/dist/api/member-enrollment.d.ts.map +1 -1
  17. package/dist/api/member-enrollment.js +65 -33
  18. package/dist/api/member-enrollment.js.map +1 -1
  19. package/dist/api/member-export.d.ts.map +1 -1
  20. package/dist/api/member-export.js +14 -6
  21. package/dist/api/member-export.js.map +1 -1
  22. package/dist/api/member-lifecycle.d.ts +23 -4
  23. package/dist/api/member-lifecycle.d.ts.map +1 -1
  24. package/dist/api/member-lifecycle.js +90 -19
  25. package/dist/api/member-lifecycle.js.map +1 -1
  26. package/dist/api/member-notice-actions.d.ts +18 -0
  27. package/dist/api/member-notice-actions.d.ts.map +1 -0
  28. package/dist/api/member-notice-actions.js +184 -0
  29. package/dist/api/member-notice-actions.js.map +1 -0
  30. package/dist/api/member-records.d.ts +17 -2
  31. package/dist/api/member-records.d.ts.map +1 -1
  32. package/dist/api/member-records.js +440 -82
  33. package/dist/api/member-records.js.map +1 -1
  34. package/dist/api/member-share-actions.d.ts +3 -3
  35. package/dist/api/member-share-actions.d.ts.map +1 -1
  36. package/dist/api/member-share-actions.js +49 -22
  37. package/dist/api/member-share-actions.js.map +1 -1
  38. package/dist/api/member-smoke-state.d.ts +3 -0
  39. package/dist/api/member-smoke-state.d.ts.map +1 -0
  40. package/dist/api/member-smoke-state.js +20 -0
  41. package/dist/api/member-smoke-state.js.map +1 -0
  42. package/dist/api/owner-policy-actions.d.ts +1 -0
  43. package/dist/api/owner-policy-actions.d.ts.map +1 -1
  44. package/dist/api/owner-policy-actions.js +8 -4
  45. package/dist/api/owner-policy-actions.js.map +1 -1
  46. package/dist/api/owner-timezone-actions.d.ts +3 -2
  47. package/dist/api/owner-timezone-actions.d.ts.map +1 -1
  48. package/dist/api/owner-timezone-actions.js +4 -6
  49. package/dist/api/owner-timezone-actions.js.map +1 -1
  50. package/dist/api/personal-job-actions.d.ts +6 -0
  51. package/dist/api/personal-job-actions.d.ts.map +1 -0
  52. package/dist/api/personal-job-actions.js +72 -0
  53. package/dist/api/personal-job-actions.js.map +1 -0
  54. package/dist/api/security-events.d.ts +6 -1
  55. package/dist/api/security-events.d.ts.map +1 -1
  56. package/dist/api/security-events.js +34 -15
  57. package/dist/api/security-events.js.map +1 -1
  58. package/dist/api/skill-actions.d.ts +5 -0
  59. package/dist/api/skill-actions.d.ts.map +1 -0
  60. package/dist/api/skill-actions.js +66 -0
  61. package/dist/api/skill-actions.js.map +1 -0
  62. package/dist/api/source-actions.d.ts.map +1 -1
  63. package/dist/api/source-actions.js +4 -2
  64. package/dist/api/source-actions.js.map +1 -1
  65. package/dist/api/stored-source-reader.d.ts.map +1 -1
  66. package/dist/api/stored-source-reader.js +9 -2
  67. package/dist/api/stored-source-reader.js.map +1 -1
  68. package/dist/api/trello-actions.d.ts +1 -1
  69. package/dist/api/trello-actions.d.ts.map +1 -1
  70. package/dist/api/trello-actions.js +19 -4
  71. package/dist/api/trello-actions.js.map +1 -1
  72. package/dist/api/work-actions.d.ts +12 -2
  73. package/dist/api/work-actions.d.ts.map +1 -1
  74. package/dist/api/work-actions.js +57 -10
  75. package/dist/api/work-actions.js.map +1 -1
  76. package/dist/cli/commands/daemon.d.ts +12 -2
  77. package/dist/cli/commands/daemon.d.ts.map +1 -1
  78. package/dist/cli/commands/daemon.js +80 -13
  79. package/dist/cli/commands/daemon.js.map +1 -1
  80. package/dist/cli/commands/init.d.ts +4 -0
  81. package/dist/cli/commands/init.d.ts.map +1 -1
  82. package/dist/cli/commands/init.js +27 -5
  83. package/dist/cli/commands/init.js.map +1 -1
  84. package/dist/cli/commands/register-owner.d.ts +14 -5
  85. package/dist/cli/commands/register-owner.d.ts.map +1 -1
  86. package/dist/cli/commands/register-owner.js +145 -42
  87. package/dist/cli/commands/register-owner.js.map +1 -1
  88. package/dist/cli/commands/tools.d.ts +12 -0
  89. package/dist/cli/commands/tools.d.ts.map +1 -0
  90. package/dist/cli/commands/tools.js +109 -0
  91. package/dist/cli/commands/tools.js.map +1 -0
  92. package/dist/cli/index.js +8 -4
  93. package/dist/cli/index.js.map +1 -1
  94. package/dist/connectors/framework/polling-scheduler.d.ts +6 -1
  95. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  96. package/dist/connectors/framework/polling-scheduler.js +25 -3
  97. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  98. package/dist/connectors/framework/stored-index-read.d.ts +2 -2
  99. package/dist/connectors/framework/stored-index-read.d.ts.map +1 -1
  100. package/dist/connectors/framework/stored-index-read.js +10 -3
  101. package/dist/connectors/framework/stored-index-read.js.map +1 -1
  102. package/dist/gateways/base-gateway.d.ts +7 -0
  103. package/dist/gateways/base-gateway.d.ts.map +1 -1
  104. package/dist/gateways/base-gateway.js +24 -0
  105. package/dist/gateways/base-gateway.js.map +1 -1
  106. package/dist/gateways/discord.d.ts +4 -0
  107. package/dist/gateways/discord.d.ts.map +1 -1
  108. package/dist/gateways/discord.js +24 -6
  109. package/dist/gateways/discord.js.map +1 -1
  110. package/dist/gateways/slack.d.ts +3 -0
  111. package/dist/gateways/slack.d.ts.map +1 -1
  112. package/dist/gateways/slack.js +15 -2
  113. package/dist/gateways/slack.js.map +1 -1
  114. package/dist/gateways/telegram-errors.d.ts +3 -0
  115. package/dist/gateways/telegram-errors.d.ts.map +1 -1
  116. package/dist/gateways/telegram-errors.js +5 -0
  117. package/dist/gateways/telegram-errors.js.map +1 -1
  118. package/dist/gateways/telegram-message-ledger.d.ts +7 -0
  119. package/dist/gateways/telegram-message-ledger.d.ts.map +1 -1
  120. package/dist/gateways/telegram-message-ledger.js +27 -2
  121. package/dist/gateways/telegram-message-ledger.js.map +1 -1
  122. package/dist/gateways/telegram.d.ts +33 -7
  123. package/dist/gateways/telegram.d.ts.map +1 -1
  124. package/dist/gateways/telegram.js +297 -59
  125. package/dist/gateways/telegram.js.map +1 -1
  126. package/dist/gateways/turn-contract.d.ts +8 -0
  127. package/dist/gateways/turn-contract.d.ts.map +1 -1
  128. package/dist/runtime/action-surface.d.ts +28 -3
  129. package/dist/runtime/action-surface.d.ts.map +1 -1
  130. package/dist/runtime/action-surface.js +316 -39
  131. package/dist/runtime/action-surface.js.map +1 -1
  132. package/dist/runtime/backend-security.d.ts +4 -0
  133. package/dist/runtime/backend-security.d.ts.map +1 -1
  134. package/dist/runtime/backend-security.js +8 -1
  135. package/dist/runtime/backend-security.js.map +1 -1
  136. package/dist/runtime/config.d.ts +1 -1
  137. package/dist/runtime/config.d.ts.map +1 -1
  138. package/dist/runtime/config.js +18 -11
  139. package/dist/runtime/config.js.map +1 -1
  140. package/dist/runtime/connectors.js +1 -1
  141. package/dist/runtime/connectors.js.map +1 -1
  142. package/dist/runtime/egress-proxy.d.ts +3 -3
  143. package/dist/runtime/egress-proxy.d.ts.map +1 -1
  144. package/dist/runtime/egress-proxy.js +16 -3
  145. package/dist/runtime/egress-proxy.js.map +1 -1
  146. package/dist/runtime/member-paths.d.ts +9 -1
  147. package/dist/runtime/member-paths.d.ts.map +1 -1
  148. package/dist/runtime/member-paths.js +67 -5
  149. package/dist/runtime/member-paths.js.map +1 -1
  150. package/dist/runtime/member-session.d.ts +21 -21
  151. package/dist/runtime/member-session.d.ts.map +1 -1
  152. package/dist/runtime/member-session.js +289 -34
  153. package/dist/runtime/member-session.js.map +1 -1
  154. package/dist/runtime/member-system-prompt.d.ts +1 -0
  155. package/dist/runtime/member-system-prompt.d.ts.map +1 -1
  156. package/dist/runtime/member-system-prompt.js +26 -4
  157. package/dist/runtime/member-system-prompt.js.map +1 -1
  158. package/dist/runtime/native-session.d.ts +6 -0
  159. package/dist/runtime/native-session.d.ts.map +1 -1
  160. package/dist/runtime/native-session.js +80 -13
  161. package/dist/runtime/native-session.js.map +1 -1
  162. package/dist/runtime/outbound-attempts.d.ts +5 -2
  163. package/dist/runtime/outbound-attempts.d.ts.map +1 -1
  164. package/dist/runtime/outbound-attempts.js +3 -2
  165. package/dist/runtime/outbound-attempts.js.map +1 -1
  166. package/dist/runtime/owner-authority.d.ts +15 -13
  167. package/dist/runtime/owner-authority.d.ts.map +1 -1
  168. package/dist/runtime/owner-authority.js +164 -8
  169. package/dist/runtime/owner-authority.js.map +1 -1
  170. package/dist/runtime/owner-runtime.d.ts +19 -4
  171. package/dist/runtime/owner-runtime.d.ts.map +1 -1
  172. package/dist/runtime/owner-runtime.js +446 -44
  173. package/dist/runtime/owner-runtime.js.map +1 -1
  174. package/dist/runtime/owner-system-prompt.d.ts +3 -1
  175. package/dist/runtime/owner-system-prompt.d.ts.map +1 -1
  176. package/dist/runtime/owner-system-prompt.js +15 -5
  177. package/dist/runtime/owner-system-prompt.js.map +1 -1
  178. package/dist/runtime/personal-job-cron.d.ts +6 -0
  179. package/dist/runtime/personal-job-cron.d.ts.map +1 -0
  180. package/dist/runtime/personal-job-cron.js +154 -0
  181. package/dist/runtime/personal-job-cron.js.map +1 -0
  182. package/dist/runtime/personal-jobs.d.ts +107 -0
  183. package/dist/runtime/personal-jobs.d.ts.map +1 -0
  184. package/dist/runtime/personal-jobs.js +353 -0
  185. package/dist/runtime/personal-jobs.js.map +1 -0
  186. package/dist/runtime/personal-notices.d.ts +38 -0
  187. package/dist/runtime/personal-notices.d.ts.map +1 -0
  188. package/dist/runtime/personal-notices.js +137 -0
  189. package/dist/runtime/personal-notices.js.map +1 -0
  190. package/dist/runtime/personal-turns.d.ts +23 -0
  191. package/dist/runtime/personal-turns.d.ts.map +1 -0
  192. package/dist/runtime/personal-turns.js +51 -0
  193. package/dist/runtime/personal-turns.js.map +1 -0
  194. package/dist/runtime/principal-access.d.ts +8 -0
  195. package/dist/runtime/principal-access.d.ts.map +1 -1
  196. package/dist/runtime/principal-access.js +99 -4
  197. package/dist/runtime/principal-access.js.map +1 -1
  198. package/dist/runtime/principal-sessions.d.ts +16 -2
  199. package/dist/runtime/principal-sessions.d.ts.map +1 -1
  200. package/dist/runtime/principal-sessions.js +104 -21
  201. package/dist/runtime/principal-sessions.js.map +1 -1
  202. package/dist/runtime/skills.d.ts +86 -0
  203. package/dist/runtime/skills.d.ts.map +1 -0
  204. package/dist/runtime/skills.js +560 -0
  205. package/dist/runtime/skills.js.map +1 -0
  206. package/dist/runtime/stimulus-delivery.d.ts +22 -1
  207. package/dist/runtime/stimulus-delivery.d.ts.map +1 -1
  208. package/dist/runtime/stimulus-delivery.js +192 -19
  209. package/dist/runtime/stimulus-delivery.js.map +1 -1
  210. package/dist/runtime/tools-paths.d.ts +9 -0
  211. package/dist/runtime/tools-paths.d.ts.map +1 -0
  212. package/dist/runtime/tools-paths.js +98 -0
  213. package/dist/runtime/tools-paths.js.map +1 -0
  214. package/dist/runtime/turn-orders.d.ts +22 -2
  215. package/dist/runtime/turn-orders.d.ts.map +1 -1
  216. package/dist/runtime/turn-orders.js +60 -6
  217. package/dist/runtime/turn-orders.js.map +1 -1
  218. package/dist/storage/chat-sources.d.ts +21 -0
  219. package/dist/storage/chat-sources.d.ts.map +1 -1
  220. package/dist/storage/chat-sources.js +66 -4
  221. package/dist/storage/chat-sources.js.map +1 -1
  222. package/dist/storage/source-archive.d.ts +13 -0
  223. package/dist/storage/source-archive.d.ts.map +1 -1
  224. package/dist/storage/source-archive.js +103 -0
  225. package/dist/storage/source-archive.js.map +1 -1
  226. package/dist/tools/command-runner.d.ts +12 -0
  227. package/dist/tools/command-runner.d.ts.map +1 -0
  228. package/dist/tools/command-runner.js +65 -0
  229. package/dist/tools/command-runner.js.map +1 -0
  230. package/dist/tools/document-render.d.ts +24 -0
  231. package/dist/tools/document-render.d.ts.map +1 -0
  232. package/dist/tools/document-render.js +208 -0
  233. package/dist/tools/document-render.js.map +1 -0
  234. package/dist/tools/document-toolkit.d.ts +15 -0
  235. package/dist/tools/document-toolkit.d.ts.map +1 -0
  236. package/dist/tools/document-toolkit.js +501 -0
  237. package/dist/tools/document-toolkit.js.map +1 -0
  238. package/dist/tools/office-render.d.ts +28 -0
  239. package/dist/tools/office-render.d.ts.map +1 -0
  240. package/dist/tools/office-render.js +98 -0
  241. package/dist/tools/office-render.js.map +1 -0
  242. package/dist/tools/toolkit-process.d.ts +9 -0
  243. package/dist/tools/toolkit-process.d.ts.map +1 -0
  244. package/dist/tools/toolkit-process.js +148 -0
  245. package/dist/tools/toolkit-process.js.map +1 -0
  246. package/dist/tools/toolkit-state.d.ts +22 -0
  247. package/dist/tools/toolkit-state.d.ts.map +1 -0
  248. package/dist/tools/toolkit-state.js +116 -0
  249. package/dist/tools/toolkit-state.js.map +1 -0
  250. package/package.json +3 -2
  251. package/toolkit/inspect-office-zip.py +16 -0
  252. package/toolkit/rasterize.py +29 -0
  253. package/toolkit/requirements.lock +664 -0
  254. 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',
@@ -43,8 +59,8 @@ const OWNER_ACTIONS = [
43
59
  'drive.download',
44
60
  'judge',
45
61
  'owner.timezone.set',
46
- 'manage.member.enroll',
47
62
  ...member_lifecycle_js_1.MEMBER_MANAGEMENT_ACTIONS,
63
+ 'manage.member.enroll',
48
64
  'owner.messages',
49
65
  'memory.checkpoint.list',
50
66
  'memory.checkpoint.save',
@@ -79,6 +95,10 @@ const OWNER_ACTIONS = [
79
95
  exports.OWNER_ACTIONS = OWNER_ACTIONS;
80
96
  /** The member role: Telegram file delivery honours the caller's DM. Exact catalog names only. */
81
97
  exports.MEMBER_ACTIONS = [
98
+ 'skill.list',
99
+ 'skill.read',
100
+ 'document.render',
101
+ ...personal_job_actions_js_1.PERSONAL_JOB_ACTIONS,
82
102
  'graph.query',
83
103
  'work.list',
84
104
  'work.show',
@@ -117,6 +137,23 @@ function ownerMemoryScopes(ownerPrincipalId, connectors = index_js_1.LOADABLE_CO
117
137
  return [...new Map(scopes.map((scope) => [`${scope.kind}\0${scope.id}`, scope])).values()];
118
138
  }
119
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
+ };
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,
@@ -128,8 +165,15 @@ function createActionSurface(options) {
128
165
  isOwnerMessageTurn: options.isOwnerMessageTurn,
129
166
  ownerAccess: () => ownerAccess,
130
167
  ports: options.memberEnrollment,
168
+ directoryChange: memberDirectoryChange,
131
169
  });
132
170
  const defaultScopes = ownerMemoryScopes(options.ownerPrincipalId, options.connectors ?? index_js_1.LOADABLE_CONNECTORS);
171
+ const skills = (0, skills_js_1.createSkillStore)({
172
+ adapter: options.adapter,
173
+ commonPrincipalId: options.ownerPrincipalId,
174
+ commonScopes: () => defaultScopes,
175
+ paths: options.skillPaths,
176
+ });
133
177
  const core = (0, mama_core_1.coreActionRegistrations)(options.knowledge, options.adapter, {
134
178
  // The owner's checkpoint saves stay unscoped. A member's hand-off is personal,
135
179
  // irrespective of its shared read grants.
@@ -179,7 +223,7 @@ function createActionSurface(options) {
179
223
  // Only an owner-chat turn changes an owner rule (owner-authority.ts); a member's own chat
180
224
  // changes only its own records (member-share-actions.ts).
181
225
  .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)
226
+ ? (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
227
  : registration);
184
228
  const reportSseClients = options.reportSseClients ?? new Set();
185
229
  const reportPorts = {
@@ -202,21 +246,124 @@ function createActionSurface(options) {
202
246
  },
203
247
  }),
204
248
  };
249
+ const lifecycle = (0, member_lifecycle_js_1.memberLifecycleRegistrations)({
250
+ adapter: options.adapter,
251
+ ownerPrincipalId: options.ownerPrincipalId,
252
+ ownerAccess: () => ownerAccess,
253
+ isOwnerMessageTurn: options.isOwnerMessageTurn,
254
+ timeZone: options.timeZone,
255
+ ports: options.memberLifecycle,
256
+ scheduleChange: async (name, input, context) => {
257
+ const ports = options.memberLifecycle;
258
+ const { principalId } = input;
259
+ const earlier = context.operationId
260
+ ? ports.mailbox().readInput(`member-management:${context.operationId}`, principalId)
261
+ : null;
262
+ if (earlier)
263
+ return {
264
+ principalId,
265
+ change: name.slice('manage.member.'.length),
266
+ status: 'scheduled',
267
+ commandId: earlier.stimulusId,
268
+ };
269
+ // ACKed rows age out before their accepted identities. Do not turn their replay into
270
+ // an immediate change, or reject a resume whose activation already succeeded.
271
+ if (context.operationId &&
272
+ options.adapter
273
+ .prepare('SELECT 1 FROM mailbox_seen WHERE ref_id=?')
274
+ .get(`member-management:${context.operationId}`))
275
+ return {
276
+ principalId,
277
+ change: name.slice('manage.member.'.length),
278
+ status: 'duplicate',
279
+ commandId: `member-management:${context.operationId}`,
280
+ };
281
+ const chain = ports.turnChain(principalId);
282
+ const pendingHost = options.adapter
283
+ .prepare("SELECT 1 FROM mailbox_inputs WHERE principal_id=? AND kind='host_job' AND status IN ('pending','claimed') LIMIT 1")
284
+ .get(principalId) !== undefined;
285
+ // A new resume needs a suspended target, unless an earlier queued change still owns it.
286
+ // Executing the retained command later may instead find the target already activated.
287
+ if (name === 'manage.member.resume' && !pendingHost) {
288
+ const principal = (0, mama_core_1.createPrincipalRepository)(options.adapter).findById(principalId);
289
+ if (principal?.status !== 'suspended')
290
+ throw new Error(`Cannot resume a ${principal?.status} member`);
291
+ }
292
+ const changesDirectory = [
293
+ 'manage.member.suspend',
294
+ 'manage.member.resume',
295
+ 'manage.member.offboard',
296
+ ].includes(name);
297
+ if (!changesDirectory && !chain.isBusy() && !pendingHost)
298
+ return chain.afterCurrent(async () => lifecycle
299
+ .find((registration) => registration.contract.name === name)
300
+ .exec(input, { ...context, memberManagementQueued: true }));
301
+ if (!context.operationId)
302
+ throw new Error('Member management requires an operation id');
303
+ const commandId = `member-management:${context.operationId}`;
304
+ const rowId = ports.mailbox().enqueue({
305
+ id: commandId,
306
+ kind: 'host_job',
307
+ principalId,
308
+ channelKey: 'member-management',
309
+ occurredAt: Date.now(),
310
+ payload: JSON.parse(JSON.stringify({
311
+ action: name,
312
+ input,
313
+ callerPrincipalId: (0, owner_authority_js_1.activeOwnerMessageCaller)(context, options),
314
+ })),
315
+ });
316
+ if (rowId !== null)
317
+ ports.resumeQueued();
318
+ return {
319
+ principalId,
320
+ change: name.slice('manage.member.'.length),
321
+ status: rowId === null ? 'duplicate' : 'scheduled',
322
+ commandId,
323
+ };
324
+ },
325
+ });
326
+ const codeAct = (0, code_act_actions_js_1.codeActRegistration)(() => dispatch);
327
+ const personalJobs = (0, personal_jobs_js_1.createPersonalJobStore)(options.adapter, options.timeZone);
328
+ const personalNotices = (0, personal_notices_js_1.createPersonalNoticeStore)(options.adapter);
329
+ const readNoticeRef = async (ref, access) => {
330
+ const result = await dispatch({ action: 'observationRef' in ref ? 'source.read' : 'memory.read:record', input: ref }, { access });
331
+ if (result.status !== 'completed') {
332
+ if (result.error.kind === 'denied' ||
333
+ ['stored_source_out_of_scope', 'stored_source_not_found'].includes(result.error.code))
334
+ return false;
335
+ throw Object.assign(new Error(`${result.error.code}: ${result.error.message}`), {
336
+ name: result.error.code,
337
+ });
338
+ }
339
+ if ('observationRef' in ref)
340
+ return true;
341
+ const record = result.data.record;
342
+ return record !== null && !(0, mama_core_1.isErasedRecord)(record);
343
+ };
205
344
  const registrations = [
206
- ...core,
207
- ...(0, member_lifecycle_js_1.memberLifecycleRegistrations)({
345
+ ...(0, skill_actions_js_1.skillActionRegistrations)(skills, options),
346
+ ...(0, member_notice_actions_js_1.memberNoticeRegistrations)({
208
347
  adapter: options.adapter,
209
348
  ownerPrincipalId: options.ownerPrincipalId,
210
349
  ownerAccess: () => ownerAccess,
211
- isOwnerMessageTurn: options.isOwnerMessageTurn,
212
350
  timeZone: options.timeZone,
213
- ports: options.memberLifecycle,
351
+ notices: options.memberNotices,
352
+ read: readNoticeRef,
214
353
  }),
354
+ ...(0, document_actions_js_1.documentActionRegistrations)({
355
+ ...options.documentPorts,
356
+ ownerPrincipalId: options.ownerPrincipalId,
357
+ }),
358
+ ...(0, personal_job_actions_js_1.personalJobRegistrations)(personalJobs, options),
359
+ ...core,
360
+ ...lifecycle,
215
361
  ...memberRecords.registrations,
216
362
  ...(0, member_share_actions_js_1.memberShareActionRegistrations)({
217
363
  adapter: options.adapter,
218
364
  ownerPrincipalId: options.ownerPrincipalId,
219
365
  ownerDefaultScopes: defaultScopes,
366
+ isOwnerMessageTurn: options.isOwnerMessageTurn,
220
367
  }),
221
368
  ...(0, source_actions_js_1.sourceActionRegistrations)({
222
369
  stored: options.storedSourceReader,
@@ -231,9 +378,11 @@ function createActionSurface(options) {
231
378
  configPath: options.configPath,
232
379
  ownerPrincipalId: options.ownerPrincipalId,
233
380
  setting: options.timeZone,
381
+ adapter: options.adapter,
234
382
  isOwnerMessageTurn: options.isOwnerMessageTurn,
235
383
  }),
236
384
  ...(0, owner_policy_actions_js_1.ownerPolicyActionRegistrations)({
385
+ commonChannelId: options.commonChannelId,
237
386
  runtimeRoot: options.runtimeRoot,
238
387
  adapter: options.adapter,
239
388
  ownerPrincipalId: options.ownerPrincipalId,
@@ -252,6 +401,7 @@ function createActionSurface(options) {
252
401
  }),
253
402
  // Drive has no running connector (its poller stays off), so drive.* call gws directly.
254
403
  ...(0, drive_actions_js_1.driveActionRegistrations)({
404
+ adapter: options.adapter,
255
405
  ownerPrincipalId: options.ownerPrincipalId,
256
406
  ...(options.attachmentPorts?.downloadsDir === undefined
257
407
  ? {}
@@ -266,9 +416,28 @@ function createActionSurface(options) {
266
416
  ...(0, work_actions_js_1.workListActionRegistrations)({ knowledge: options.knowledge, timeZone: options.timeZone }),
267
417
  ...(0, work_actions_js_1.minimalWorkActionRegistrations)({
268
418
  knowledge: options.knowledge,
269
- observationExists: (observationId) => options.adapter
270
- .prepare('SELECT 1 FROM observation_versions WHERE observation_id = ? LIMIT 1')
271
- .get(observationId) !== undefined,
419
+ observationExists: (observationId, context) => context.access.principalId === options.ownerPrincipalId
420
+ ? options.adapter
421
+ .prepare('SELECT 1 FROM observation_versions WHERE observation_id = ? LIMIT 1')
422
+ .get(observationId) !== undefined
423
+ : observationReadable(observationId, context),
424
+ workBindings: (commitmentId) => options.adapter
425
+ .prepare(`SELECT s.kind, s.external_id FROM commitments c
426
+ JOIN memory_scope_bindings b ON b.memory_id = c.head_record_id
427
+ JOIN memory_scopes s ON s.id = b.scope_id
428
+ WHERE c.commitment_id = ?`)
429
+ .all(commitmentId).map((row) => ({ kind: row.kind, id: row.external_id })),
430
+ edgeObservations: (edgeId) => {
431
+ const edge = options.adapter
432
+ .prepare('SELECT subject_kind, subject_id, object_kind, object_id FROM twin_edges WHERE edge_id = ?')
433
+ .get(edgeId);
434
+ return edge === undefined
435
+ ? []
436
+ : [
437
+ ...(edge.subject_kind === 'observation' ? [edge.subject_id] : []),
438
+ ...(edge.object_kind === 'observation' ? [edge.object_id] : []),
439
+ ];
440
+ },
272
441
  }),
273
442
  ...(0, report_actions_js_1.reportActionRegistrations)(reportPorts),
274
443
  ...(0, wiki_actions_js_1.wikiActionRegistrations)(options.wikiPorts ?? {}),
@@ -278,47 +447,65 @@ function createActionSurface(options) {
278
447
  ? []
279
448
  : (0, owner_message_actions_js_1.ownerMessageActionRegistrations)(options.ownerMessages)),
280
449
  ...(0, help_actions_js_1.helpActionRegistrations)({
281
- // The procedures are the owner's (reports, publishing, corrections); a member's would point it
282
- // at actions it is not granted.
283
- topics: (access) => access.principalId === options.ownerPrincipalId ? (options.helpTopics ?? {}) : {},
450
+ topics: (access) => access.principalId === options.ownerPrincipalId ||
451
+ (0, owner_authority_js_1.holdsOwnerRole)((principals ??= (0, mama_core_1.createPrincipalRepository)(options.adapter)), access.principalId)
452
+ ? (options.helpTopics ?? {})
453
+ : {},
284
454
  contracts: () => catalog.list().filter((contract) => contract.name !== code_act_actions_js_1.CODE_ACT_CONTRACT.name),
285
455
  }),
286
456
  // Claude calls every action from inside code_act, as Kagemusha's code_act; the inner calls go
287
457
  // through the dispatcher below, so each is granted and traced as the caller's.
288
- (0, code_act_actions_js_1.codeActRegistration)(() => dispatch),
458
+ codeAct,
289
459
  ];
290
460
  const catalog = (0, mama_core_1.createCatalog)(registrations);
291
- const dispatch = (0, mama_core_1.createDispatcher)(catalog, {
292
- observeCall: async ({ action, operationId, input, result, durationMs, context }) => {
293
- const session = context.session;
294
- const common = {
295
- tool_name: action,
296
- gateway_call_id: session?.gatewayCallId ?? null,
297
- input_summary: (0, trace_summary_1.traceSummary)(input),
298
- output_summary: (0, trace_summary_1.traceSummary)(result),
299
- execution_status: result.status,
300
- duration_ms: durationMs,
301
- ...(result.status === 'failed' ? { failure_code: result.error.code } : {}),
302
- };
303
- if (session?.modelRunId) {
304
- const trace = await (0, mama_core_1.appendToolTrace)(options.adapter, {
305
- ...common,
306
- model_run_id: session.modelRunId,
307
- });
308
- return trace.trace_id;
309
- }
310
- if (!operationId)
311
- return undefined;
312
- const trace = (0, mama_core_1.appendOperationToolTrace)(options.adapter, {
461
+ const observeCall = async ({ action, operationId, input, result, durationMs, context, }) => {
462
+ const session = context.session;
463
+ const caller = action.startsWith('manage.member.')
464
+ ? (0, owner_authority_js_1.messageTurnCaller)(context, options)
465
+ : undefined;
466
+ if (action !== 'manage.member.list' &&
467
+ caller &&
468
+ (context.memberManagementQueued ||
469
+ (0, owner_authority_js_1.activeOwnerMessageCaller)(context, options) === caller) &&
470
+ !(result.status === 'completed' &&
471
+ ['scheduled', 'duplicate'].includes(result.data?.status ?? ''))) {
472
+ options.recordManagementReceipt?.({
473
+ callerPrincipalId: caller,
474
+ operationId: operationId ?? (0, node_crypto_1.randomUUID)(),
475
+ action,
476
+ input,
477
+ result,
478
+ });
479
+ }
480
+ const common = {
481
+ tool_name: action,
482
+ gateway_call_id: session?.gatewayCallId ?? null,
483
+ input_summary: (0, trace_summary_1.traceSummary)(caller ? { callerPrincipalId: caller, input } : input),
484
+ output_summary: (0, trace_summary_1.traceSummary)(result),
485
+ execution_status: result.status,
486
+ duration_ms: durationMs,
487
+ ...(result.status === 'failed' ? { failure_code: result.error.code } : {}),
488
+ };
489
+ if (session?.modelRunId) {
490
+ const trace = await (0, mama_core_1.appendToolTrace)(options.adapter, {
313
491
  ...common,
314
- operation_id: operationId,
315
- actor_principal_id: context.access.principalId,
492
+ model_run_id: session.modelRunId,
316
493
  });
317
494
  return trace.trace_id;
318
- },
495
+ }
496
+ if (!operationId)
497
+ return undefined;
498
+ const trace = (0, mama_core_1.appendOperationToolTrace)(options.adapter, {
499
+ ...common,
500
+ operation_id: operationId,
501
+ actor_principal_id: caller ?? context.access.principalId,
502
+ });
503
+ return trace.trace_id;
504
+ };
505
+ const dispatch = (0, mama_core_1.createDispatcher)(catalog, {
506
+ observeCall,
319
507
  });
320
508
  // Built on the first scopes read, so constructing a surface touches no table.
321
- let principals;
322
509
  const ownerAccess = {
323
510
  principalId: options.ownerPrincipalId,
324
511
  agentId: options.agentId,
@@ -353,7 +540,96 @@ function createActionSurface(options) {
353
540
  }),
354
541
  };
355
542
  return {
543
+ skills,
544
+ personalNotices,
545
+ readNoticeRef,
546
+ personalJobs,
356
547
  memberRecords,
548
+ releasePrincipal: codeAct.releasePrincipal,
549
+ onManagementDead: (row, reason) => {
550
+ if (row.kind !== 'host_job' || row.channelKey !== 'member-management')
551
+ return;
552
+ if (options.adapter
553
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
554
+ .get(`host:management:${row.stimulusId}:reply`))
555
+ return;
556
+ const payload = row.payload;
557
+ options.recordManagementReceipt?.({
558
+ ...(typeof payload?.callerPrincipalId === 'string'
559
+ ? { callerPrincipalId: payload.callerPrincipalId }
560
+ : {}),
561
+ operationId: row.stimulusId,
562
+ action: typeof payload?.action === 'string' ? payload.action : 'member-management',
563
+ input: payload?.input ?? null,
564
+ result: {
565
+ status: 'failed',
566
+ error: { kind: 'internal', code: 'member_management_failed', message: reason },
567
+ },
568
+ });
569
+ },
570
+ deliverManagement: async (row) => {
571
+ if (row.kind !== 'host_job' || row.channelKey !== 'member-management')
572
+ return 'unhandled';
573
+ const ports = options.memberLifecycle;
574
+ if (!ports)
575
+ throw new runtime_1.StimulusQuarantine('Member management job requires lifecycle ports');
576
+ const job = row.payload;
577
+ if (!job ||
578
+ !lifecycle.some((r) => r.contract.name === job.action) ||
579
+ typeof job.callerPrincipalId !== 'string' ||
580
+ !job.callerPrincipalId.trim())
581
+ throw new runtime_1.StimulusQuarantine('Invalid member management job');
582
+ const execute = async () => {
583
+ if (ports.isStopping())
584
+ return 'deferred';
585
+ // The common receipt is also the command's durable completion marker. A replay after
586
+ // receipt storage but before mailbox ACK must not reset or move the session again.
587
+ const receipt = options.adapter
588
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
589
+ .get(`host:management:${row.stimulusId}:reply`);
590
+ if (!receipt) {
591
+ const result = await dispatch({ action: job.action, input: job.input, operationId: row.stimulusId }, {
592
+ access: {
593
+ principalId: job.callerPrincipalId,
594
+ agentId: 'member-management-host',
595
+ scopes: [],
596
+ actions: [job.action],
597
+ },
598
+ operationId: row.stimulusId,
599
+ memberManagementQueued: true,
600
+ memberManagementCaller: job.callerPrincipalId,
601
+ });
602
+ // The authenticated caller id survives even if that caller erased the requesting
603
+ // message while the target was busy; a denied change still owes its common receipt.
604
+ if (!options.adapter
605
+ .prepare('SELECT 1 FROM connector_event_index WHERE source_entity_id=?')
606
+ .get(`host:management:${row.stimulusId}:reply`))
607
+ options.recordManagementReceipt?.({
608
+ callerPrincipalId: job.callerPrincipalId,
609
+ operationId: row.stimulusId,
610
+ action: job.action,
611
+ input: job.input,
612
+ result,
613
+ });
614
+ }
615
+ return 'handled';
616
+ };
617
+ let completion = Promise.resolve('deferred');
618
+ await ports.turnChain(row.principalId).afterCurrent(async () => {
619
+ if (ports.isStopping())
620
+ return;
621
+ if (['manage.member.suspend', 'manage.member.resume', 'manage.member.offboard'].includes(job.action)) {
622
+ // Release this reservation before the directory lane drains all current member work.
623
+ // Awaiting that lane here would make it wait for its own target reservation.
624
+ completion = memberDirectoryChange(execute);
625
+ }
626
+ else {
627
+ completion = execute();
628
+ await completion;
629
+ }
630
+ });
631
+ return completion;
632
+ },
357
633
  createNativeEffectObserver: (modelRunId, access = ownerAccess) => {
358
634
  const traces = (0, native_tool_trace_observer_1.createNativeToolTraceObserver)(options.adapter, modelRunId);
359
635
  return options.outboundAttempts === undefined
@@ -361,6 +637,7 @@ function createActionSurface(options) {
361
637
  : (0, outbound_attempts_js_1.withOutboundAttempts)(traces, modelRunId, options.outboundAttempts, {
362
638
  principalId: access.principalId,
363
639
  ownerPrincipalId: options.ownerPrincipalId,
640
+ ownerRole: (0, owner_authority_js_1.holdsOwnerRole)((principals ??= (0, mama_core_1.createPrincipalRepository)(options.adapter)), access.principalId),
364
641
  });
365
642
  },
366
643
  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":"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"}
1
+ {"version":3,"file":"backend-security.js","sourceRoot":"","sources":["../../src/runtime/backend-security.ts"],"names":[],"mappings":"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"}