@wildo-ai/saas-models 1.1.2 → 1.1.4

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 (645) hide show
  1. package/dist/esm/__tests__/setup.d.ts.map +1 -1
  2. package/dist/esm/_inspect.d.ts.map +1 -1
  3. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
  4. package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -1
  5. package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
  6. package/dist/esm/applications/applications-context.schemas.d.ts +14 -10
  7. package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
  8. package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
  9. package/dist/esm/applications/applications.shared.resources-config.schemas.js +4 -3
  10. package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
  11. package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
  12. package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
  13. package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
  14. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +0 -4
  15. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
  16. package/dist/esm/billing/billing-configuration.shared.schemas.js +59 -17
  17. package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
  18. package/dist/esm/billing/billing-enums.shared.schemas.d.ts +77 -21
  19. package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
  20. package/dist/esm/billing/billing-enums.shared.schemas.js +85 -23
  21. package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
  22. package/dist/esm/billing/billing-types.shared.schemas.d.ts +4 -3
  23. package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
  24. package/dist/esm/billing/billing-types.shared.schemas.js +45 -0
  25. package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
  26. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
  27. package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
  28. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
  29. package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
  30. package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
  31. package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
  32. package/dist/esm/billing/price.shared.schemas.js +7 -1
  33. package/dist/esm/billing/price.shared.schemas.js.map +1 -1
  34. package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
  35. package/dist/esm/billing/product-behavior-policy.shared.schemas.js +52 -11
  36. package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
  37. package/dist/esm/billing/product-definition.shared.schemas.d.ts +2 -2
  38. package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
  39. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +2 -2
  40. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
  41. package/dist/esm/billing/product.shared.schemas.d.ts +2 -2
  42. package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
  43. package/dist/esm/billing/product.shared.schemas.js +7 -3
  44. package/dist/esm/billing/product.shared.schemas.js.map +1 -1
  45. package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
  46. package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
  47. package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
  48. package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
  49. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +1 -1
  50. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
  51. package/dist/esm/billing/subscription.shared.resources-config.schemas.js +15 -1
  52. package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
  53. package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
  54. package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
  55. package/dist/esm/billing/usage-record.shared.schemas.d.ts +7 -3
  56. package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
  57. package/dist/esm/billing/usage-record.shared.schemas.js +22 -3
  58. package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
  59. package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
  60. package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
  61. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +71 -2
  62. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -1
  63. package/dist/esm/companion/provider-discovery.shared.schemas.js +20 -1
  64. package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -1
  65. package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -1
  66. package/dist/esm/companion-exports.d.ts.map +1 -1
  67. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +85 -0
  68. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts.map +1 -0
  69. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js +157 -0
  70. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -0
  71. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -1
  72. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
  73. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +23 -0
  74. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -1
  75. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +56 -0
  76. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -1
  77. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +658 -26
  78. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
  79. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +873 -27
  80. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
  81. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
  82. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +104 -3
  83. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
  84. package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -1
  85. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -1
  86. package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -1
  87. package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +1 -1
  88. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -1
  89. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -1
  90. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts +54 -26
  91. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts.map +1 -1
  92. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js +132 -3
  93. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js.map +1 -1
  94. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -1
  95. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -1
  96. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -1
  97. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +17 -0
  98. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
  99. package/dist/esm/compliance/privacy/privacy.shared.schemas.js +27 -4
  100. package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
  101. package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts +82 -29
  102. package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
  103. package/dist/esm/compliance/privacy/redaction.shared.schemas.js +95 -29
  104. package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
  105. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -1
  106. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -1
  107. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -1
  108. package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -1
  109. package/dist/esm/compliance/privacy/subject-export.shared.schemas.js +12 -5
  110. package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -1
  111. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +21 -0
  112. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
  113. package/dist/esm/config/analytics-value-moments.shared.schemas.js +20 -0
  114. package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
  115. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +7 -5
  116. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
  117. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +8 -1
  118. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
  119. package/dist/esm/config/auth-config-resolution.shared.utils.js +29 -0
  120. package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
  121. package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -1
  122. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +95 -17
  123. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
  124. package/dist/esm/config/entity-identity-config.shared.schemas.js +86 -8
  125. package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
  126. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +26 -26
  127. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
  128. package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts +139 -3
  129. package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -1
  130. package/dist/esm/config/frontend/chart-registration-alignment.shared.js +151 -4
  131. package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -1
  132. package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
  133. package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
  134. package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -1
  135. package/dist/esm/config-authoring.entry.d.ts.map +1 -1
  136. package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
  137. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -1
  138. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +34 -0
  139. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
  140. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +34 -0
  141. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
  142. package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
  143. package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
  144. package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
  145. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +45 -12
  146. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -1
  147. package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
  148. package/dist/esm/external-data.exports.d.ts.map +1 -1
  149. package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -1
  150. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +110 -58
  151. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
  152. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +183 -15
  153. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -1
  154. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +15 -3
  155. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -1
  156. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +32 -5
  157. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -1
  158. package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
  159. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +87 -7
  160. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
  161. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +59 -0
  162. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts.map +1 -0
  163. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js +61 -0
  164. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js.map +1 -0
  165. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts +97 -0
  166. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts.map +1 -0
  167. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js +41 -0
  168. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js.map +1 -0
  169. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +205 -2
  170. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -1
  171. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +85 -1
  172. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -1
  173. package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts +175 -0
  174. package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts.map +1 -0
  175. package/dist/esm/external-providers/frontend-provider-public-config.shared.js +207 -0
  176. package/dist/esm/external-providers/frontend-provider-public-config.shared.js.map +1 -0
  177. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +5 -28
  178. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
  179. package/dist/esm/external-providers/provider-capability.shared.schemas.js +4 -2
  180. package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -1
  181. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +28 -8
  182. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -1
  183. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +15 -4
  184. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -1
  185. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts +165 -0
  186. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts.map +1 -0
  187. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js +39 -0
  188. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js.map +1 -0
  189. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts +338 -0
  190. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts.map +1 -0
  191. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js +332 -0
  192. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js.map +1 -0
  193. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +178 -9
  194. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -1
  195. package/dist/esm/external-providers/provider-metadata.shared.schemas.js +181 -9
  196. package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -1
  197. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +7 -5
  198. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
  199. package/dist/esm/external-providers/provider-protocol.shared.schemas.js +7 -5
  200. package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -1
  201. package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts +40 -0
  202. package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts.map +1 -0
  203. package/dist/esm/external-providers/provider-tier-rule.shared.utils.js +80 -0
  204. package/dist/esm/external-providers/provider-tier-rule.shared.utils.js.map +1 -0
  205. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -1
  206. package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -1
  207. package/dist/esm/features/application-features.shared.resources-config.schemas.js +12 -0
  208. package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -1
  209. package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
  210. package/dist/esm/features/core-feature-definitions.shared.js +7 -1
  211. package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
  212. package/dist/esm/features/feature-builders.shared.d.ts +32 -0
  213. package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
  214. package/dist/esm/features/feature-builders.shared.js +32 -0
  215. package/dist/esm/features/feature-builders.shared.js.map +1 -1
  216. package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
  217. package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
  218. package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
  219. package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
  220. package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
  221. package/dist/esm/features/user-features.shared.resources-config.schemas.js +12 -0
  222. package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
  223. package/dist/esm/files/file-remote-reference-link.shared.schemas.d.ts +73 -0
  224. package/dist/esm/files/file-remote-reference-link.shared.schemas.d.ts.map +1 -0
  225. package/dist/esm/files/file-remote-reference-link.shared.schemas.js +62 -0
  226. package/dist/esm/files/file-remote-reference-link.shared.schemas.js.map +1 -0
  227. package/dist/esm/files/file-upload-grant.shared.schemas.d.ts +14 -2
  228. package/dist/esm/files/file-upload-grant.shared.schemas.d.ts.map +1 -1
  229. package/dist/esm/files/file-upload-grant.shared.schemas.js +44 -5
  230. package/dist/esm/files/file-upload-grant.shared.schemas.js.map +1 -1
  231. package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
  232. package/dist/esm/files/files.shared.schemas.d.ts +15 -8
  233. package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
  234. package/dist/esm/files/files.shared.schemas.js +15 -8
  235. package/dist/esm/files/files.shared.schemas.js.map +1 -1
  236. package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
  237. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
  238. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -1
  239. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -1
  240. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -1
  241. package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
  242. package/dist/esm/flows-actors/actors.shared.schemas.js +3 -2
  243. package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
  244. package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
  245. package/dist/esm/flows-actors/agents.shared.schemas.d.ts +54 -5
  246. package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
  247. package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
  248. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +1 -1
  249. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +1 -1
  250. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +0 -3
  251. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -1
  252. package/dist/esm/flows-actors/deliberation.shared.schemas.js +0 -5
  253. package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -1
  254. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -1
  255. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +14 -0
  256. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -1
  257. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +40 -3
  258. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -1
  259. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -1
  260. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -1
  261. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +19 -0
  262. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
  263. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +33 -0
  264. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
  265. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
  266. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
  267. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts +14 -9
  268. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
  269. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +14 -9
  270. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
  271. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -1
  272. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
  273. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +3 -2
  274. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
  275. package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
  276. package/dist/esm/flows-actors/flows.shared.schemas.js +3 -2
  277. package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
  278. package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts +130 -0
  279. package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts.map +1 -0
  280. package/dist/esm/flows-actors/mcp-servers.shared.schemas.js +153 -0
  281. package/dist/esm/flows-actors/mcp-servers.shared.schemas.js.map +1 -0
  282. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -1
  283. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +0 -3
  284. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +1 -1
  285. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +1 -4
  286. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +1 -1
  287. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -1
  288. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts +0 -16
  289. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -1
  290. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js +1 -17
  291. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -1
  292. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +1 -1
  293. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +3 -3
  294. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -1
  295. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js +3 -3
  296. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -1
  297. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +2 -8
  298. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +1 -1
  299. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +4 -15
  300. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +1 -1
  301. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -1
  302. package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
  303. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +1 -1
  304. package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
  305. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts +112 -0
  306. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts.map +1 -0
  307. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js +113 -0
  308. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js.map +1 -0
  309. package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
  310. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
  311. package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
  312. package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -1
  313. package/dist/esm/guidance/guidance-state.shared.utils.js +1 -0
  314. package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -1
  315. package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
  316. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
  317. package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
  318. package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
  319. package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
  320. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +8 -0
  321. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
  322. package/dist/esm/guidance/progression-state.shared.schemas.d.ts +46 -0
  323. package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
  324. package/dist/esm/guidance/progression-state.shared.schemas.js +49 -0
  325. package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
  326. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -1
  327. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +320 -50
  328. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -1
  329. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +137 -36
  330. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
  331. package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
  332. package/dist/esm/index.d.ts +15 -0
  333. package/dist/esm/index.d.ts.map +1 -1
  334. package/dist/esm/index.js +15 -0
  335. package/dist/esm/index.js.map +1 -1
  336. package/dist/esm/meta-workflows.exports.d.ts.map +1 -1
  337. package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
  338. package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
  339. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +11 -2
  340. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
  341. package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
  342. package/dist/esm/notifications/email/email-template.shared.enums.d.ts +15 -0
  343. package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -1
  344. package/dist/esm/notifications/email/email-template.shared.enums.js +15 -0
  345. package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -1
  346. package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.d.ts.map +1 -1
  347. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
  348. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -1
  349. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +1 -0
  350. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -1
  351. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +19 -0
  352. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -1
  353. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +30 -0
  354. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -1
  355. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +65 -1
  356. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -1
  357. package/dist/esm/notifications/notification-badges.core.definitions.d.ts +6 -4
  358. package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
  359. package/dist/esm/notifications/notification-badges.core.definitions.js +6 -4
  360. package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
  361. package/dist/esm/notifications/notification-badges.schemas.d.ts +167 -5
  362. package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
  363. package/dist/esm/notifications/notification-badges.schemas.js +191 -6
  364. package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
  365. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
  366. package/dist/esm/notifications/notifications.shared.schemas.d.ts +158 -0
  367. package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
  368. package/dist/esm/notifications/notifications.shared.schemas.js +200 -1
  369. package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
  370. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
  371. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +13 -0
  372. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
  373. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
  374. package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
  375. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
  376. package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
  377. package/dist/esm/organizations/organization-notifications.shared.schemas.js +22 -1
  378. package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
  379. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  380. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +26 -0
  381. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
  382. package/dist/esm/organizations/organization-preferences.shared.schemas.js +25 -0
  383. package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
  384. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
  385. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +25 -0
  386. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
  387. package/dist/esm/organizations/organization-profile.shared.schemas.js +42 -17
  388. package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
  389. package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -1
  390. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -1
  391. package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -1
  392. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -1
  393. package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -1
  394. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +3 -2
  395. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
  396. package/dist/esm/organizations/organization-unit-narrowing.shared.js +9 -2
  397. package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
  398. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
  399. package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
  400. package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
  401. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +18 -3
  402. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
  403. package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
  404. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +13 -0
  405. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -1
  406. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +13 -0
  407. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -1
  408. package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
  409. package/dist/esm/public-runtime/index.d.ts +71 -2
  410. package/dist/esm/public-runtime/index.d.ts.map +1 -1
  411. package/dist/esm/public-runtime/index.js +62 -1
  412. package/dist/esm/public-runtime/index.js.map +1 -1
  413. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +6 -5
  414. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
  415. package/dist/esm/queue/jobs.shared.resources-config.schemas.js +6 -5
  416. package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
  417. package/dist/esm/queue/jobs.shared.schemas.d.ts +16 -3
  418. package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
  419. package/dist/esm/queue/jobs.shared.schemas.js +16 -3
  420. package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
  421. package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
  422. package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
  423. package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
  424. package/dist/esm/requests/manual-controllers-routes-documentation.d.ts +137 -0
  425. package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -0
  426. package/dist/esm/requests/manual-controllers-routes-documentation.js +1255 -0
  427. package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -0
  428. package/dist/esm/requests/manual-controllers-routes-urls.d.ts +114 -0
  429. package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
  430. package/dist/esm/requests/manual-controllers-routes-urls.js +129 -0
  431. package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
  432. package/dist/esm/requests/rate-limits.shared.schemas.d.ts +11 -1
  433. package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
  434. package/dist/esm/requests/rate-limits.shared.schemas.js +11 -1
  435. package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
  436. package/dist/esm/requests/websocket.shared.schemas.d.ts +28 -3
  437. package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
  438. package/dist/esm/requests/websocket.shared.schemas.js +52 -0
  439. package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
  440. package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
  441. package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
  442. package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
  443. package/dist/esm/resources/resources-config.shared.factory.d.ts +1 -0
  444. package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
  445. package/dist/esm/resources/resources-config.shared.factory.js +203 -25
  446. package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
  447. package/dist/esm/resources/resources-config.shared.schemas.d.ts +297 -68
  448. package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
  449. package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
  450. package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
  451. package/dist/esm/resources/resources-registry.shared.core.definitions.js +151 -5
  452. package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
  453. package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
  454. package/dist/esm/resources/resources-relationships.shared.factory.js +15 -0
  455. package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
  456. package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
  457. package/dist/esm/resources/resources.shared.core.definitions.d.ts +54 -0
  458. package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
  459. package/dist/esm/resources/resources.shared.core.definitions.js +69 -0
  460. package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
  461. package/dist/esm/resources/resources.shared.schemas.d.ts +11 -2
  462. package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
  463. package/dist/esm/resources/resources.shared.schemas.js +34 -3
  464. package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
  465. package/dist/esm/resources/resources.shared.utils.d.ts +32 -7
  466. package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
  467. package/dist/esm/resources/resources.shared.utils.js +32 -7
  468. package/dist/esm/resources/resources.shared.utils.js.map +1 -1
  469. package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -1
  470. package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -1
  471. package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -1
  472. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -1
  473. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -1
  474. package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts +51 -0
  475. package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts.map +1 -0
  476. package/dist/esm/resources/utils/field-value-disclosure.utils.js +53 -0
  477. package/dist/esm/resources/utils/field-value-disclosure.utils.js.map +1 -0
  478. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -1
  479. package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
  480. package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -1
  481. package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
  482. package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
  483. package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
  484. package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
  485. package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
  486. package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
  487. package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
  488. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
  489. package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
  490. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
  491. package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
  492. package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
  493. package/dist/esm/resources/utils/resources-summary.utils.d.ts +16 -2
  494. package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
  495. package/dist/esm/resources/utils/resources-summary.utils.js +19 -5
  496. package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
  497. package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
  498. package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
  499. package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
  500. package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
  501. package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
  502. package/dist/esm/resources/utils/shared-persistence-collection.utils.js +11 -0
  503. package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -1
  504. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -1
  505. package/dist/esm/runtime/domain-module.shared.definitions.d.ts +25 -0
  506. package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
  507. package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
  508. package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
  509. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +1 -0
  510. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
  511. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +38 -0
  512. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
  513. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +1 -0
  514. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
  515. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +38 -0
  516. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
  517. package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
  518. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -1
  519. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +5 -12
  520. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
  521. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +0 -1
  522. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
  523. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +84 -5
  524. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
  525. package/dist/esm/security/authentications/authentication.shared.schemas.js +83 -3
  526. package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
  527. package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
  528. package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
  529. package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
  530. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -1
  531. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
  532. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +1 -0
  533. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
  534. package/dist/esm/security/authentications/registration.shared.dto.schemas.js +11 -0
  535. package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
  536. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -1
  537. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
  538. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +15 -0
  539. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
  540. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +21 -4
  541. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
  542. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
  543. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
  544. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
  545. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
  546. package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.d.ts.map +1 -1
  547. package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.js.map +1 -1
  548. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
  549. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
  550. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts +61 -1
  551. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
  552. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +238 -6
  553. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
  554. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts +37 -27
  555. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
  556. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +134 -12
  557. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
  558. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
  559. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +2 -6
  560. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
  561. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +32 -8
  562. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
  563. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +45 -2
  564. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -1
  565. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +45 -2
  566. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -1
  567. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.d.ts +35 -0
  568. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.d.ts.map +1 -0
  569. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js +257 -0
  570. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js.map +1 -0
  571. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.d.ts +143 -0
  572. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.d.ts.map +1 -0
  573. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.js +219 -0
  574. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.js.map +1 -0
  575. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
  576. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +27 -0
  577. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -1
  578. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts +75 -7
  579. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -1
  580. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js +69 -8
  581. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -1
  582. package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
  583. package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
  584. package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -1
  585. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +31 -0
  586. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts.map +1 -0
  587. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js +198 -0
  588. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js.map +1 -0
  589. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts +31 -0
  590. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts.map +1 -0
  591. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js +191 -0
  592. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js.map +1 -0
  593. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts +307 -0
  594. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -0
  595. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +530 -0
  596. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -0
  597. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +4 -1
  598. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -1
  599. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +29 -0
  600. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -1
  601. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +4 -1
  602. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -1
  603. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +29 -0
  604. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -1
  605. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +6 -0
  606. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -1
  607. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +31 -0
  608. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -1
  609. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -1
  610. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts +13 -0
  611. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -1
  612. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js +24 -3
  613. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -1
  614. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -1
  615. package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
  616. package/dist/esm/testing.d.ts.map +1 -1
  617. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -1
  618. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
  619. package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
  620. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -1
  621. package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
  622. package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
  623. package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
  624. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
  625. package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
  626. package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -1
  627. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +4 -4
  628. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  629. package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  630. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +4 -4
  631. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  632. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  633. package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
  634. package/dist/esm/users/user-self.shared.resources-config.schemas.js +33 -3
  635. package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
  636. package/dist/esm/users/users.shared.resources-config.schemas.d.ts +17 -1
  637. package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
  638. package/dist/esm/users/users.shared.resources-config.schemas.js +136 -5
  639. package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
  640. package/dist/esm/users/users.shared.schemas.d.ts +60 -13
  641. package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
  642. package/dist/esm/users/users.shared.schemas.js +56 -9
  643. package/dist/esm/users/users.shared.schemas.js.map +1 -1
  644. package/dist/tsconfig.build.tsbuildinfo +1 -1
  645. package/package.json +4 -4
@@ -70,8 +70,38 @@ export declare const ProviderSecretContractShapeSchema: z.ZodArray<z.ZodObject<{
70
70
  description: z.ZodString;
71
71
  }, z.core.$strict>>;
72
72
  export type ProviderSecretContractShape = z.infer<typeof ProviderSecretContractShapeSchema>;
73
+ /**
74
+ * A contribution is a wire record produced by one package version and read by
75
+ * another (the CLI, the companion, a generated artifact), so it is a LOOSE
76
+ * object: an additive field from a newer producer rides through an older
77
+ * consumer instead of hard-failing the parse (#328 — it used to be strict,
78
+ * which made every additive field a five-surface change and every old/new
79
+ * mix a boot failure). Required fields stay required; only UNKNOWN keys are
80
+ * tolerated, and they are kept rather than stripped so a re-emitting
81
+ * consumer does not silently drop what it did not understand.
82
+ */
73
83
  export declare const ProviderCompanionContributionSchema: z.ZodObject<{
74
84
  ref: z.ZodString;
85
+ /**
86
+ * The provider's identity (package, tier, vendor, origin) as declared on
87
+ * its module metadata, so tooling can display tiers and group vendors
88
+ * without loading the runtime module. Optional on the wire for one
89
+ * reason only: contributions emitted before #328 carry none, and a
90
+ * discovery walk must still read them.
91
+ */
92
+ identity: z.ZodOptional<z.ZodObject<{
93
+ origin: z.ZodObject<{
94
+ kind: z.ZodEnum<typeof import("..").ProviderOriginKind>;
95
+ catalogue: z.ZodOptional<z.ZodObject<{
96
+ source: z.ZodEnum<typeof import("..").ProviderCatalogueSource>;
97
+ sourceRef: z.ZodString;
98
+ sourceVersion: z.ZodString;
99
+ }, z.core.$strip>>;
100
+ }, z.core.$strip>;
101
+ packageName: z.ZodString;
102
+ tier: z.ZodEnum<typeof import("..").ProviderTier>;
103
+ vendor: z.ZodString;
104
+ }, z.core.$strip>>;
75
105
  /**
76
106
  * Stable package import path that makes the provider implementation reachable
77
107
  * from the contributing package at runtime. This validates owner-package
@@ -110,6 +140,17 @@ export declare const ProviderCompanionContributionSchema: z.ZodObject<{
110
140
  frontendEntry: z.ZodOptional<z.ZodObject<{
111
141
  metadata: z.ZodObject<{
112
142
  ref: z.ZodString;
143
+ packageName: z.ZodString;
144
+ tier: z.ZodEnum<typeof import("..").ProviderTier>;
145
+ vendor: z.ZodString;
146
+ origin: z.ZodObject<{
147
+ kind: z.ZodEnum<typeof import("..").ProviderOriginKind>;
148
+ catalogue: z.ZodOptional<z.ZodObject<{
149
+ source: z.ZodEnum<typeof import("..").ProviderCatalogueSource>;
150
+ sourceRef: z.ZodString;
151
+ sourceVersion: z.ZodString;
152
+ }, z.core.$strip>>;
153
+ }, z.core.$strip>;
113
154
  displayNameLabelKey: z.ZodOptional<z.ZodString>;
114
155
  displayName: z.ZodOptional<z.ZodString>;
115
156
  iconRef: z.ZodOptional<z.ZodString>;
@@ -117,13 +158,41 @@ export declare const ProviderCompanionContributionSchema: z.ZodObject<{
117
158
  providerCapabilities: z.ZodArray<z.ZodString>;
118
159
  protocols: z.ZodArray<z.ZodString>;
119
160
  publicConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
120
- }, z.core.$strip>>;
161
+ csp: z.ZodOptional<z.ZodObject<{
162
+ scriptOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
163
+ connectOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
164
+ frameOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
165
+ imgOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
166
+ styleOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
167
+ fontOrigins: z.ZodDefault<z.ZodArray<z.ZodString>>;
168
+ derivedOrigins: z.ZodDefault<z.ZodArray<z.ZodObject<{
169
+ publicConfigKey: z.ZodString;
170
+ bucket: z.ZodEnum<typeof import("..").ProviderFrontendCspOriginBucket>;
171
+ }, z.core.$strict>>>;
172
+ }, z.core.$strict>>;
173
+ sdk: z.ZodOptional<z.ZodObject<{
174
+ packageName: z.ZodString;
175
+ versionRange: z.ZodOptional<z.ZodString>;
176
+ }, z.core.$strict>>;
177
+ scripts: z.ZodOptional<z.ZodArray<z.ZodObject<{
178
+ src: z.ZodString;
179
+ integrity: z.ZodOptional<z.ZodString>;
180
+ crossOrigin: z.ZodOptional<z.ZodEnum<typeof import("..").ProviderFrontendScriptCrossOrigin>>;
181
+ async: z.ZodOptional<z.ZodBoolean>;
182
+ defer: z.ZodOptional<z.ZodBoolean>;
183
+ }, z.core.$strict>>>;
184
+ components: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
185
+ selectionDelivery: z.ZodOptional<z.ZodEnum<typeof import("..").ProviderFrontendSelectionDelivery>>;
186
+ }, z.core.$strict>>>;
187
+ publicConfigKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
188
+ fileStorage: z.ZodOptional<z.ZodEnum<typeof import("@wildo-ai/zod-decorators").FileStorageAccepted>>;
189
+ }, z.core.$loose>>;
121
190
  /**
122
191
  * Optional app module owner when the provider implementation belongs to one
123
192
  * concrete module instead of the whole package/runtime.
124
193
  */
125
194
  sourceModuleId: z.ZodOptional<z.ZodString>;
126
- }, z.core.$strict>;
195
+ }, z.core.$loose>;
127
196
  export type ProviderCompanionContribution = z.infer<typeof ProviderCompanionContributionSchema>;
128
197
  export interface RuntimeOwnerCompanionExports {
129
198
  providerContributions?: ProviderCompanionContribution[];
@@ -1 +1 @@
1
- {"version":3,"file":"provider-discovery.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/companion/provider-discovery.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAG5F;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0CAA0C;;;kBAGrD,CAAC;AACH,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0CAA0C,CAAC,CAAC;AAE9G,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;4BAgB/C,CAAC;AACH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAElG;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC;;;;;kBAKjD,CAAC;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC;AAEtG;;;;;;;;;GASG;AACH,eAAO,MAAM,iCAAiC;;;;;mBA+B5C,CAAC;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F,eAAO,MAAM,mCAAmC;;IAE9C;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;IAOH;;;;;OAKG;;;;;;;;;;;;IAEH;;;OAGG;;kBAEH,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG,MAAM,WAAW,4BAA4B;IAC3C,qBAAqB,CAAC,EAAE,6BAA6B,EAAE,CAAC;CACzD"}
1
+ {"version":3,"file":"provider-discovery.shared.schemas.d.ts","sourceRoot":"","sources":["../../../src/companion/provider-discovery.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAI5F;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0CAA0C;;;kBAGrD,CAAC;AACH,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0CAA0C,CAAC,CAAC;AAE9G,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;4BAgB/C,CAAC;AACH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAElG;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC;;;;;kBAKjD,CAAC;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC;AAEtG;;;;;;;;;GASG;AACH,eAAO,MAAM,iCAAiC;;;;;mBA+B5C,CAAC;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F;;;;;;;;;GASG;AACH,eAAO,MAAM,mCAAmC;;IAE9C;;;;;;OAMG;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;IAOH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;iBAEH,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG,MAAM,WAAW,4BAA4B;IAC3C,qBAAqB,CAAC,EAAE,6BAA6B,EAAE,CAAC;CACzD"}
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { AppFrontendType } from '../config/app-frontend-type.shared.schemas.js';
3
3
  import { EngineCapability } from '../external-providers/engine-capabilities.shared.schemas.js';
4
4
  import { FrontendProviderEntrySchema } from '../external-providers/frontend-bootstrap.shared.schemas.js';
5
+ import { ProviderIdentitySchema } from '../external-providers/provider-metadata.shared.schemas.js';
5
6
  /**
6
7
  * Companion-safe provider implementation declaration.
7
8
  *
@@ -93,8 +94,26 @@ export const ProviderSecretContractShapeSchema = z.array(ProviderSecretContractS
93
94
  }
94
95
  }
95
96
  });
96
- export const ProviderCompanionContributionSchema = z.strictObject({
97
+ /**
98
+ * A contribution is a wire record produced by one package version and read by
99
+ * another (the CLI, the companion, a generated artifact), so it is a LOOSE
100
+ * object: an additive field from a newer producer rides through an older
101
+ * consumer instead of hard-failing the parse (#328 — it used to be strict,
102
+ * which made every additive field a five-surface change and every old/new
103
+ * mix a boot failure). Required fields stay required; only UNKNOWN keys are
104
+ * tolerated, and they are kept rather than stripped so a re-emitting
105
+ * consumer does not silently drop what it did not understand.
106
+ */
107
+ export const ProviderCompanionContributionSchema = z.looseObject({
97
108
  ref: z.string().min(1),
109
+ /**
110
+ * The provider's identity (package, tier, vendor, origin) as declared on
111
+ * its module metadata, so tooling can display tiers and group vendors
112
+ * without loading the runtime module. Optional on the wire for one
113
+ * reason only: contributions emitted before #328 carry none, and a
114
+ * discovery walk must still read them.
115
+ */
116
+ identity: ProviderIdentitySchema.optional(),
98
117
  /**
99
118
  * Stable package import path that makes the provider implementation reachable
100
119
  * from the contributing package at runtime. This validates owner-package
@@ -1 +1 @@
1
- {"version":3,"file":"provider-discovery.shared.schemas.js","sourceRoot":"","sources":["../../../../src/companion/provider-discovery.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,yDAAyD,CAAC;AAEtG;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,CAAC,YAAY,CAAC;IACvE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;CACrC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/E,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;KAC3B,CAAC;IACF,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;KAC7B,CAAC;IACF,0CAA0C;IAC1C,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC7B,CAAC;IACF,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC7B,CAAC;CACH,CAAC,CAAC;AAGH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,YAAY,CAAC;IACnE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAGH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IAChI,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/C,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,QAAQ,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,OAAO,EAAE,4CAA4C,KAAK,CAAC,IAAI,IAAI;aACpE,CAAC,CAAC;QACL,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO,CAAC,QAAQ,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;gBAC3B,OAAO,EAAE,kDAAkD,KAAK,CAAC,UAAU,IAAI;aAChF,CAAC,CAAC;QACL,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAEtC,IAAI,KAAK,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,QAAQ,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,OAAO,EAAE,0DAA0D;aACpE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,YAAY,CAAC;IAChE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB;;;;OAIG;IACH,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACjE,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5D,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,oBAAoB,EAAE,iCAAiC;IACvD;;;;;OAKG;IACH,aAAa,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IACrD;;;OAGG;IACH,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { AppFrontendType } from '../config/app-frontend-type.shared.schemas';\nimport { EngineCapability } from '../external-providers/engine-capabilities.shared.schemas';\nimport { FrontendProviderEntrySchema } from '../external-providers/frontend-bootstrap.shared.schemas';\n\n/**\n * Companion-safe provider implementation declaration.\n *\n * App/runtime-owner packages expose these entries through their `./companion`\n * default export so tooling can discover which provider refs are actually\n * reachable from which runtime owners before materializing generated artifacts.\n */\n\n/**\n * Discriminator branch for `frontendService` runtime targets.\n *\n * Targets a frontend service by its `AppFrontendType` (the closed kind set\n * — SAAS_APP, STATIC_WEBSITE, TECH_DOC) rather than by an app-defined\n * `serviceKey` string. Engine-shipped packages (`external-connectors-public`,\n * etc.) have no way to know app-defined service keys, so the discovery\n * contract is keyed on the type. Apps with multiple frontend services of\n * the same type currently broadcast the contribution to all of them; if\n * per-service-key targeting becomes a need, add a second variant.\n */\nexport const ProviderFrontendServiceRuntimeTargetSchema = z.strictObject({\n kind: z.literal('frontendService'),\n serviceType: z.enum(AppFrontendType),\n});\nexport type ProviderFrontendServiceRuntimeTarget = z.infer<typeof ProviderFrontendServiceRuntimeTargetSchema>;\n\nexport const ProviderCompanionRuntimeTargetSchema = z.discriminatedUnion('kind', [\n z.strictObject({\n kind: z.literal('backend'),\n }),\n z.strictObject({\n kind: z.literal('companion'),\n }),\n ProviderFrontendServiceRuntimeTargetSchema,\n z.strictObject({\n kind: z.literal('minion'),\n minionKey: z.string().min(1),\n }),\n z.strictObject({\n kind: z.literal('worker'),\n workerKey: z.string().min(1),\n }),\n]);\nexport type ProviderCompanionRuntimeTarget = z.infer<typeof ProviderCompanionRuntimeTargetSchema>;\n\n/**\n * Values-free projection of one backend provider secret requirement.\n *\n * The stable provider-owned `slug` is preserved separately from the concrete\n * environment-variable name so a rename on either axis changes the lockfile\n * integrity digest. Secret values never cross this companion-safe boundary.\n */\nexport const ProviderSecretContractShapeEntrySchema = z.strictObject({\n slug: z.string().min(1),\n envVarName: z.string().min(1),\n required: z.boolean(),\n description: z.string().min(1),\n});\nexport type ProviderSecretContractShapeEntry = z.infer<typeof ProviderSecretContractShapeEntrySchema>;\n\n/**\n * Deterministic, values-free secret-contract shape used by provider discovery\n * and lockfile integrity checks.\n *\n * Every contribution must declare this field. `[]` means the provider is\n * authoritatively known to require no secrets; omission is rejected rather\n * than being silently interpreted as an empty contract. Entries must be\n * sorted by `slug`, and both slugs and environment-variable names are unique,\n * so independently contributed facets cannot produce order-dependent digests.\n */\nexport const ProviderSecretContractShapeSchema = z.array(ProviderSecretContractShapeEntrySchema).superRefine((entries, context) => {\n const seenSlugs = new Set<string>();\n const seenEnvVarNames = new Set<string>();\n\n for (const [index, entry] of entries.entries()) {\n if (seenSlugs.has(entry.slug)) {\n context.addIssue({\n code: 'custom',\n path: [index, 'slug'],\n message: `Duplicate provider secret-contract slug \"${entry.slug}\".`,\n });\n }\n seenSlugs.add(entry.slug);\n\n if (seenEnvVarNames.has(entry.envVarName)) {\n context.addIssue({\n code: 'custom',\n path: [index, 'envVarName'],\n message: `Duplicate provider secret-contract envVarName \"${entry.envVarName}\".`,\n });\n }\n seenEnvVarNames.add(entry.envVarName);\n\n if (index > 0 && entries[index - 1].slug.localeCompare(entry.slug) >= 0) {\n context.addIssue({\n code: 'custom',\n path: [index, 'slug'],\n message: 'Provider secret-contract entries must be sorted by slug.',\n });\n }\n }\n});\nexport type ProviderSecretContractShape = z.infer<typeof ProviderSecretContractShapeSchema>;\n\nexport const ProviderCompanionContributionSchema = z.strictObject({\n ref: z.string().min(1),\n /**\n * Stable package import path that makes the provider implementation reachable\n * from the contributing package at runtime. This validates owner-package\n * reachability without coupling discovery to source-file paths.\n */\n runtimeImportPath: z.string().min(1),\n runtimeTargets: z.array(ProviderCompanionRuntimeTargetSchema).min(1),\n engineCapabilities: z.array(z.enum(EngineCapability)).default([]),\n providerCapabilities: z.array(z.string().min(1)).default([]),\n protocols: z.array(z.string().min(1)).default([]),\n secretsContractShape: ProviderSecretContractShapeSchema,\n /**\n * Optional frontend-safe provider payload for `frontendService` runtime\n * targets. Tooling materializes this into generated runtime artifacts so the\n * backend bootstrap endpoint can serve app-owned public providers without\n * importing frontend packages at runtime.\n */\n frontendEntry: FrontendProviderEntrySchema.optional(),\n /**\n * Optional app module owner when the provider implementation belongs to one\n * concrete module instead of the whole package/runtime.\n */\n sourceModuleId: z.string().min(1).optional(),\n});\nexport type ProviderCompanionContribution = z.infer<typeof ProviderCompanionContributionSchema>;\n\nexport interface RuntimeOwnerCompanionExports {\n providerContributions?: ProviderCompanionContribution[];\n}\n"]}
1
+ {"version":3,"file":"provider-discovery.shared.schemas.js","sourceRoot":"","sources":["../../../src/companion/provider-discovery.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { AppFrontendType } from '../config/app-frontend-type.shared.schemas';\nimport { EngineCapability } from '../external-providers/engine-capabilities.shared.schemas';\nimport { FrontendProviderEntrySchema } from '../external-providers/frontend-bootstrap.shared.schemas';\nimport { ProviderIdentitySchema } from '../external-providers/provider-metadata.shared.schemas';\n\n/**\n * Companion-safe provider implementation declaration.\n *\n * App/runtime-owner packages expose these entries through their `./companion`\n * default export so tooling can discover which provider refs are actually\n * reachable from which runtime owners before materializing generated artifacts.\n */\n\n/**\n * Discriminator branch for `frontendService` runtime targets.\n *\n * Targets a frontend service by its `AppFrontendType` (the closed kind set\n * — SAAS_APP, STATIC_WEBSITE, TECH_DOC) rather than by an app-defined\n * `serviceKey` string. Engine-shipped packages (`external-connectors-public`,\n * etc.) have no way to know app-defined service keys, so the discovery\n * contract is keyed on the type. Apps with multiple frontend services of\n * the same type currently broadcast the contribution to all of them; if\n * per-service-key targeting becomes a need, add a second variant.\n */\nexport const ProviderFrontendServiceRuntimeTargetSchema = z.strictObject({\n kind: z.literal('frontendService'),\n serviceType: z.enum(AppFrontendType),\n});\nexport type ProviderFrontendServiceRuntimeTarget = z.infer<typeof ProviderFrontendServiceRuntimeTargetSchema>;\n\nexport const ProviderCompanionRuntimeTargetSchema = z.discriminatedUnion('kind', [\n z.strictObject({\n kind: z.literal('backend'),\n }),\n z.strictObject({\n kind: z.literal('companion'),\n }),\n ProviderFrontendServiceRuntimeTargetSchema,\n z.strictObject({\n kind: z.literal('minion'),\n minionKey: z.string().min(1),\n }),\n z.strictObject({\n kind: z.literal('worker'),\n workerKey: z.string().min(1),\n }),\n]);\nexport type ProviderCompanionRuntimeTarget = z.infer<typeof ProviderCompanionRuntimeTargetSchema>;\n\n/**\n * Values-free projection of one backend provider secret requirement.\n *\n * The stable provider-owned `slug` is preserved separately from the concrete\n * environment-variable name so a rename on either axis changes the lockfile\n * integrity digest. Secret values never cross this companion-safe boundary.\n */\nexport const ProviderSecretContractShapeEntrySchema = z.strictObject({\n slug: z.string().min(1),\n envVarName: z.string().min(1),\n required: z.boolean(),\n description: z.string().min(1),\n});\nexport type ProviderSecretContractShapeEntry = z.infer<typeof ProviderSecretContractShapeEntrySchema>;\n\n/**\n * Deterministic, values-free secret-contract shape used by provider discovery\n * and lockfile integrity checks.\n *\n * Every contribution must declare this field. `[]` means the provider is\n * authoritatively known to require no secrets; omission is rejected rather\n * than being silently interpreted as an empty contract. Entries must be\n * sorted by `slug`, and both slugs and environment-variable names are unique,\n * so independently contributed facets cannot produce order-dependent digests.\n */\nexport const ProviderSecretContractShapeSchema = z.array(ProviderSecretContractShapeEntrySchema).superRefine((entries, context) => {\n const seenSlugs = new Set<string>();\n const seenEnvVarNames = new Set<string>();\n\n for (const [index, entry] of entries.entries()) {\n if (seenSlugs.has(entry.slug)) {\n context.addIssue({\n code: 'custom',\n path: [index, 'slug'],\n message: `Duplicate provider secret-contract slug \"${entry.slug}\".`,\n });\n }\n seenSlugs.add(entry.slug);\n\n if (seenEnvVarNames.has(entry.envVarName)) {\n context.addIssue({\n code: 'custom',\n path: [index, 'envVarName'],\n message: `Duplicate provider secret-contract envVarName \"${entry.envVarName}\".`,\n });\n }\n seenEnvVarNames.add(entry.envVarName);\n\n if (index > 0 && entries[index - 1].slug.localeCompare(entry.slug) >= 0) {\n context.addIssue({\n code: 'custom',\n path: [index, 'slug'],\n message: 'Provider secret-contract entries must be sorted by slug.',\n });\n }\n }\n});\nexport type ProviderSecretContractShape = z.infer<typeof ProviderSecretContractShapeSchema>;\n\n/**\n * A contribution is a wire record produced by one package version and read by\n * another (the CLI, the companion, a generated artifact), so it is a LOOSE\n * object: an additive field from a newer producer rides through an older\n * consumer instead of hard-failing the parse (#328 — it used to be strict,\n * which made every additive field a five-surface change and every old/new\n * mix a boot failure). Required fields stay required; only UNKNOWN keys are\n * tolerated, and they are kept rather than stripped so a re-emitting\n * consumer does not silently drop what it did not understand.\n */\nexport const ProviderCompanionContributionSchema = z.looseObject({\n ref: z.string().min(1),\n /**\n * The provider's identity (package, tier, vendor, origin) as declared on\n * its module metadata, so tooling can display tiers and group vendors\n * without loading the runtime module. Optional on the wire for one\n * reason only: contributions emitted before #328 carry none, and a\n * discovery walk must still read them.\n */\n identity: ProviderIdentitySchema.optional(),\n /**\n * Stable package import path that makes the provider implementation reachable\n * from the contributing package at runtime. This validates owner-package\n * reachability without coupling discovery to source-file paths.\n */\n runtimeImportPath: z.string().min(1),\n runtimeTargets: z.array(ProviderCompanionRuntimeTargetSchema).min(1),\n engineCapabilities: z.array(z.enum(EngineCapability)).default([]),\n providerCapabilities: z.array(z.string().min(1)).default([]),\n protocols: z.array(z.string().min(1)).default([]),\n secretsContractShape: ProviderSecretContractShapeSchema,\n /**\n * Optional frontend-safe provider payload for `frontendService` runtime\n * targets. Tooling materializes this into generated runtime artifacts so the\n * backend bootstrap endpoint can serve app-owned public providers without\n * importing frontend packages at runtime.\n */\n frontendEntry: FrontendProviderEntrySchema.optional(),\n /**\n * Optional app module owner when the provider implementation belongs to one\n * concrete module instead of the whole package/runtime.\n */\n sourceModuleId: z.string().min(1).optional(),\n});\nexport type ProviderCompanionContribution = z.infer<typeof ProviderCompanionContributionSchema>;\n\nexport interface RuntimeOwnerCompanionExports {\n providerContributions?: ProviderCompanionContribution[];\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"shared-library-companion.shared.definitions.d.ts","sourceRoot":"","sources":["../../../../src/companion/shared-library-companion.shared.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAExF,MAAM,WAAW,6BAA6B,CAC5C,aAAa,SAAS,gBAAgB,GAAG,gBAAgB,CACzD,SAAQ,4BAA4B;IACpC,iBAAiB,EAAE,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;CACnD"}
1
+ {"version":3,"file":"shared-library-companion.shared.definitions.d.ts","sourceRoot":"","sources":["../../../src/companion/shared-library-companion.shared.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAExF,MAAM,WAAW,6BAA6B,CAC5C,aAAa,SAAS,gBAAgB,GAAG,gBAAgB,CACzD,SAAQ,4BAA4B;IACpC,iBAAiB,EAAE,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;CACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"companion-exports.d.ts","sourceRoot":"","sources":["../../../src/companion-exports.ts"],"names":[],"mappings":"AAAA,cAAc,mDAAmD,CAAC;AAClE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,yDAAyD,CAAC"}
1
+ {"version":3,"file":"companion-exports.d.ts","sourceRoot":"","sources":["../../src/companion-exports.ts"],"names":[],"mappings":"AAAA,cAAc,mDAAmD,CAAC;AAClE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,yDAAyD,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { z } from 'zod';
2
+ import { AuditEventCategory, AuditEventSeverity } from './auditable-events.shared.schema';
3
+ import { CoreResourceOperation } from '../../resources/resources.shared.core.definitions';
4
+ import { ResourceOperationRiskLevel, ResourceRelationship } from '../../resources/resources.shared.schemas';
5
+ /**
6
+ * The APPLICATION-scoped door onto the audit trail.
7
+ *
8
+ * ## Why this exists at all
9
+ *
10
+ * `AUDIT_LOGS` is organization-scoped and its only route is
11
+ * `/organizations/{organizationId}/audit-logs`, so it returns exactly the rows carrying that
12
+ * tenant. A large share of security events carry NO organization by design — `logUserLogin` takes
13
+ * `organizationId` as optional because no organization is selected at login, and the same is true
14
+ * of session eviction, token refresh and application-wide authentication-policy changes. Measured
15
+ * on a dogfood application (#317): **94 of 127 rows had no organization**, and were reachable
16
+ * through no API. An operator could see 26% of the trail and could not attest the rest, while a
17
+ * reader querying the only available surface saw `user_login: 0` for a control that had emitted 21.
18
+ *
19
+ * ## Why a SEPARATE resource type rather than a second route
20
+ *
21
+ * `generateParentCombinations` composes every URL as
22
+ * `[...primaryScope, ...mandatoryContext, ...optionalCombo]`, so a routed application edge on
23
+ * `AUDIT_LOGS` would appear in EVERY combination and rewrite the organization route to
24
+ * `/applications/{applicationId}/organizations/{organizationId}/audit-logs` — breaking all eight of
25
+ * its documented paths and their consumers. Making the organization edge optional does not help:
26
+ * the empty combination is skipped whenever any parent exists, so no bare route is emitted either.
27
+ * A sibling type carrying ONE application parent takes the route it needs and leaves the existing
28
+ * door byte-identical. The pattern is the engine's own: notification badges are dual-scope with a
29
+ * type per scope, `APPLICATION_API_KEYS` shows the application routing shape, and `USER_SELF`
30
+ * shows a distinct type addressing another's rows.
31
+ *
32
+ * ## Two doors, ONE record set — the security contract
33
+ *
34
+ * Both types resolve to the `auditLogs` collection through
35
+ * `RESOURCE_SHARED_PERSISTENCE_COLLECTION_ALIASES`. That makes the isolation properties a
36
+ * per-DOOR obligation rather than a property of the rows:
37
+ *
38
+ * - the organization door keeps its tenant filter and its organization roles, unchanged;
39
+ * - this door is `APP_ADMIN_SUPER_ADMIN`-ONLY on every operation. An organization role must never
40
+ * reach it — the rows behind it span every tenant;
41
+ * - a read here that touches a tenant-attributed row is a CROSS-TENANT read and OWES an audit
42
+ * emission. **It is wired**, by the two halves below acting together, and neither is optional:
43
+ * each read variant declares `admitsCrossTenantPlatformAdministration`, and
44
+ * `ServicesRegistryHandler.recordCrossTenantReadAccess` observes every enrolled read and emits
45
+ * `CROSS_TENANT_ADMINISTRATIVE_ACCESS` once per TENANT the returned rows belong to. The
46
+ * declaration is what enrols the read: `authorizeOrganizations` — where that event is otherwise
47
+ * emitted — runs only for ORGANIZATIONS-scoped resources and decides on ONE fetched row, so it
48
+ * never sees this door at all. Grouping per tenant is what makes the crossing visible to the
49
+ * REACHED tenant, in its own organization-scoped viewer, rather than only to the operator.
50
+ * `.claude/rules/administrative-continuity-floors.md` requires every crossing to be named in the
51
+ * trail, and the trail is the worst possible surface on which to make an operator read invisible.
52
+ * See `security/authorizations/cross-tenant-read-observation.backend.ts` for why an UNDECLARED
53
+ * door is deliberately not observed instead of being observed with a false `admissionDeclared`.
54
+ *
55
+ * ## Deliberately mirrored from the organization resource
56
+ *
57
+ * `isSystemResource`, `systemAccessPolicy.exportSubject: FORBIDDEN` and the ABSENCE of a
58
+ * `retentionPolicy` are copied ON PURPOSE. They are properties of the ROWS, and the rows are the
59
+ * same ones — a second door that disagreed about whether the audit trail is subject-exportable, or
60
+ * about how long it is kept, would be a policy fork over one record set. See the organization
61
+ * config for the reasoning behind each; do not change one without the other.
62
+ *
63
+ * ## Deliberately NOT mirrored
64
+ *
65
+ * There is no CREATE. The organization resource carries a `REPOSITORY_ONLY` CREATE because that is
66
+ * how audit rows are written; writing is not a scope question and must keep exactly one door.
67
+ */
68
+ export declare const applicationAuditLogsResourceConfiguration_InitializationFactory: (resourcesRelationships: ResourceRelationship[]) => import("../..").ResourceConfiguration<undefined, CoreResourceOperation.READ | CoreResourceOperation.LIST | CoreResourceOperation.SEARCH, z.ZodObject<{
69
+ _id: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
70
+ eventId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
71
+ userId: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
72
+ organizationId: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
73
+ applicationId: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
74
+ correlationId: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
75
+ frontendServiceName: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
76
+ clientInstanceId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>;
77
+ riskLevel: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ResourceOperationRiskLevel>>;
78
+ eventType: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
79
+ eventData: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodRecord<z.ZodString, z.ZodAny>>;
80
+ eventCategory: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AuditEventCategory>>;
81
+ severity: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AuditEventSeverity>>;
82
+ createdAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodDate>>>>;
83
+ updatedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodDate>>>;
84
+ }, z.core.$strip>>;
85
+ //# sourceMappingURL=application-audit-logs.shared.resources-config.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application-audit-logs.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["../../../../src/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,kCAAkC,CAAC;AAErH,OAAO,EAAE,qBAAqB,EAAwD,MAAM,mDAAmD,CAAC;AAChJ,OAAO,EAAE,0BAA0B,EAAgC,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAI1I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,eAAO,MAAM,+DAA+D,GAC1E,wBAAwB,oBAAoB,EAAE;;;;;;;;;;;;;;;;kBA8F9C,CAAC"}
@@ -0,0 +1,157 @@
1
+ import { z } from 'zod';
2
+ import { AuditEventCategory, AuditEventSeverity, AuditableEvent_BaseSchema } from './auditable-events.shared.schema.js';
3
+ import { createResourceConfiguration_Initialization } from '../../resources/resources-config.shared.factory.js';
4
+ import { CoreResourceOperation, CoreResourceType, coreResourceShared_FieldIdentifier } from '../../resources/resources.shared.core.definitions.js';
5
+ import { ResourceOperationRiskLevel, ResourceOperationVariantType } from '../../resources/resources.shared.schemas.js';
6
+ import { CORE_APP_ROLES } from '../../security/authorizations/roles.shared.schemas.js';
7
+ import { ResourceSystemAccessMode } from '../../resources/resources-config.shared.schemas.js';
8
+ /**
9
+ * The APPLICATION-scoped door onto the audit trail.
10
+ *
11
+ * ## Why this exists at all
12
+ *
13
+ * `AUDIT_LOGS` is organization-scoped and its only route is
14
+ * `/organizations/{organizationId}/audit-logs`, so it returns exactly the rows carrying that
15
+ * tenant. A large share of security events carry NO organization by design — `logUserLogin` takes
16
+ * `organizationId` as optional because no organization is selected at login, and the same is true
17
+ * of session eviction, token refresh and application-wide authentication-policy changes. Measured
18
+ * on a dogfood application (#317): **94 of 127 rows had no organization**, and were reachable
19
+ * through no API. An operator could see 26% of the trail and could not attest the rest, while a
20
+ * reader querying the only available surface saw `user_login: 0` for a control that had emitted 21.
21
+ *
22
+ * ## Why a SEPARATE resource type rather than a second route
23
+ *
24
+ * `generateParentCombinations` composes every URL as
25
+ * `[...primaryScope, ...mandatoryContext, ...optionalCombo]`, so a routed application edge on
26
+ * `AUDIT_LOGS` would appear in EVERY combination and rewrite the organization route to
27
+ * `/applications/{applicationId}/organizations/{organizationId}/audit-logs` — breaking all eight of
28
+ * its documented paths and their consumers. Making the organization edge optional does not help:
29
+ * the empty combination is skipped whenever any parent exists, so no bare route is emitted either.
30
+ * A sibling type carrying ONE application parent takes the route it needs and leaves the existing
31
+ * door byte-identical. The pattern is the engine's own: notification badges are dual-scope with a
32
+ * type per scope, `APPLICATION_API_KEYS` shows the application routing shape, and `USER_SELF`
33
+ * shows a distinct type addressing another's rows.
34
+ *
35
+ * ## Two doors, ONE record set — the security contract
36
+ *
37
+ * Both types resolve to the `auditLogs` collection through
38
+ * `RESOURCE_SHARED_PERSISTENCE_COLLECTION_ALIASES`. That makes the isolation properties a
39
+ * per-DOOR obligation rather than a property of the rows:
40
+ *
41
+ * - the organization door keeps its tenant filter and its organization roles, unchanged;
42
+ * - this door is `APP_ADMIN_SUPER_ADMIN`-ONLY on every operation. An organization role must never
43
+ * reach it — the rows behind it span every tenant;
44
+ * - a read here that touches a tenant-attributed row is a CROSS-TENANT read and OWES an audit
45
+ * emission. **It is wired**, by the two halves below acting together, and neither is optional:
46
+ * each read variant declares `admitsCrossTenantPlatformAdministration`, and
47
+ * `ServicesRegistryHandler.recordCrossTenantReadAccess` observes every enrolled read and emits
48
+ * `CROSS_TENANT_ADMINISTRATIVE_ACCESS` once per TENANT the returned rows belong to. The
49
+ * declaration is what enrols the read: `authorizeOrganizations` — where that event is otherwise
50
+ * emitted — runs only for ORGANIZATIONS-scoped resources and decides on ONE fetched row, so it
51
+ * never sees this door at all. Grouping per tenant is what makes the crossing visible to the
52
+ * REACHED tenant, in its own organization-scoped viewer, rather than only to the operator.
53
+ * `.claude/rules/administrative-continuity-floors.md` requires every crossing to be named in the
54
+ * trail, and the trail is the worst possible surface on which to make an operator read invisible.
55
+ * See `security/authorizations/cross-tenant-read-observation.backend.ts` for why an UNDECLARED
56
+ * door is deliberately not observed instead of being observed with a false `admissionDeclared`.
57
+ *
58
+ * ## Deliberately mirrored from the organization resource
59
+ *
60
+ * `isSystemResource`, `systemAccessPolicy.exportSubject: FORBIDDEN` and the ABSENCE of a
61
+ * `retentionPolicy` are copied ON PURPOSE. They are properties of the ROWS, and the rows are the
62
+ * same ones — a second door that disagreed about whether the audit trail is subject-exportable, or
63
+ * about how long it is kept, would be a policy fork over one record set. See the organization
64
+ * config for the reasoning behind each; do not change one without the other.
65
+ *
66
+ * ## Deliberately NOT mirrored
67
+ *
68
+ * There is no CREATE. The organization resource carries a `REPOSITORY_ONLY` CREATE because that is
69
+ * how audit rows are written; writing is not a scope question and must keep exactly one door.
70
+ */
71
+ export const applicationAuditLogsResourceConfiguration_InitializationFactory = (resourcesRelationships) => createResourceConfiguration_Initialization({
72
+ mainSchema: AuditableEvent_BaseSchema,
73
+ resourceIdentifier: CoreResourceType.APPLICATION_AUDIT_LOGS,
74
+ resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.APPLICATION_AUDIT_LOGS],
75
+ resourceRelationships: resourcesRelationships,
76
+ isSystemResource: true,
77
+ /** Mirrored from the organization door — the same rows, so the same answer. Disclosing the monitoring trail to its own subject is self-defeating and out of Art. 20 scope. */
78
+ systemAccessPolicy: { exportSubject: ResourceSystemAccessMode.FORBIDDEN },
79
+ coreOperations: [
80
+ CoreResourceOperation.READ,
81
+ CoreResourceOperation.LIST,
82
+ CoreResourceOperation.SEARCH,
83
+ ],
84
+ operationsConfiguration: {
85
+ [CoreResourceOperation.READ]: {
86
+ variants: [{
87
+ variantType: ResourceOperationVariantType.API_CALL,
88
+ isDefault: true,
89
+ /** APP_ADMIN_SUPER_ADMIN ONLY — never an organization role. The rows behind this door span every tenant. */
90
+ roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],
91
+ riskLevel: ResourceOperationRiskLevel.MEDIUM,
92
+ /**
93
+ * Reading ONE tenant's audit row through the application door IS a crossing, so the cheapest
94
+ * reach — fetch by id — is declared and audited exactly like the collection verbs. Declaring
95
+ * it is also what stops `assignInitiatorOrganizationConfinementToFilter` silently narrowing
96
+ * this door to an operator who happens to carry an ambient organization, which would make a
97
+ * surface documented as spanning every tenant return one tenant and report success.
98
+ */
99
+ admitsCrossTenantPlatformAdministration: true,
100
+ }],
101
+ },
102
+ [CoreResourceOperation.LIST]: {
103
+ variants: [{
104
+ variantType: ResourceOperationVariantType.API_CALL,
105
+ isDefault: true,
106
+ roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],
107
+ riskLevel: ResourceOperationRiskLevel.MEDIUM,
108
+ /** The declared crossing — see READ. Every enrolled read emits one crossing per tenant reached. */
109
+ admitsCrossTenantPlatformAdministration: true,
110
+ filterFields: {
111
+ eventType: z.string(),
112
+ eventCategory: z.enum(AuditEventCategory),
113
+ severity: z.enum(AuditEventSeverity),
114
+ userId: z.string(),
115
+ /**
116
+ * Filterable so an operator can narrow to one tenant THROUGH this door, which is the
117
+ * cross-tenant investigation this surface exists for. It is a FILTER, never the isolation
118
+ * boundary: isolation on this door is the role gate above, and narrowing to a tenant does
119
+ * not make the read any less cross-tenant for audit purposes.
120
+ */
121
+ organizationId: z.string(),
122
+ correlationId: z.string(),
123
+ clientInstanceId: z.string(),
124
+ createdAt: z.date(),
125
+ },
126
+ /** `eventId` last, as the keyset tie-breaker — `createdAt` is not unique under boot/seed bursts. Mirrors the organization door; removing it reintroduces a paging data-loss path. */
127
+ sortFields: ['createdAt', 'severity', 'eventType', 'eventId'],
128
+ maxPaginatedResultPerPageLimit: 100,
129
+ }],
130
+ },
131
+ [CoreResourceOperation.SEARCH]: {
132
+ variants: [{
133
+ variantType: ResourceOperationVariantType.API_CALL,
134
+ isDefault: true,
135
+ roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],
136
+ riskLevel: ResourceOperationRiskLevel.MEDIUM,
137
+ /** The declared crossing — see READ. Every enrolled read emits one crossing per tenant reached. */
138
+ admitsCrossTenantPlatformAdministration: true,
139
+ isSearchable: false,
140
+ searchableFields: [],
141
+ filterFields: {
142
+ eventType: z.string(),
143
+ eventCategory: z.enum(AuditEventCategory),
144
+ severity: z.enum(AuditEventSeverity),
145
+ userId: z.string(),
146
+ organizationId: z.string(),
147
+ correlationId: z.string(),
148
+ clientInstanceId: z.string(),
149
+ createdAt: z.date(),
150
+ },
151
+ sortFields: ['createdAt', 'severity', 'eventType'],
152
+ maxPaginatedResultPerPageLimit: 100,
153
+ }],
154
+ },
155
+ },
156
+ });
157
+ //# sourceMappingURL=application-audit-logs.shared.resources-config.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application-audit-logs.shared.resources-config.schemas.js","sourceRoot":"","sources":["../../../../src/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\n\nimport { AuditEventCategory, AuditEventSeverity, AuditableEvent_BaseSchema } from './auditable-events.shared.schema';\nimport { createResourceConfiguration_Initialization } from '../../resources/resources-config.shared.factory';\nimport { CoreResourceOperation, CoreResourceType, coreResourceShared_FieldIdentifier } from '../../resources/resources.shared.core.definitions';\nimport { ResourceOperationRiskLevel, ResourceOperationVariantType, ResourceRelationship } from '../../resources/resources.shared.schemas';\nimport { CORE_APP_ROLES } from '../../security/authorizations/roles.shared.schemas';\nimport { ResourceSystemAccessMode } from '../../resources/resources-config.shared.schemas';\n\n/**\n * The APPLICATION-scoped door onto the audit trail.\n *\n * ## Why this exists at all\n *\n * `AUDIT_LOGS` is organization-scoped and its only route is\n * `/organizations/{organizationId}/audit-logs`, so it returns exactly the rows carrying that\n * tenant. A large share of security events carry NO organization by design — `logUserLogin` takes\n * `organizationId` as optional because no organization is selected at login, and the same is true\n * of session eviction, token refresh and application-wide authentication-policy changes. Measured\n * on a dogfood application (#317): **94 of 127 rows had no organization**, and were reachable\n * through no API. An operator could see 26% of the trail and could not attest the rest, while a\n * reader querying the only available surface saw `user_login: 0` for a control that had emitted 21.\n *\n * ## Why a SEPARATE resource type rather than a second route\n *\n * `generateParentCombinations` composes every URL as\n * `[...primaryScope, ...mandatoryContext, ...optionalCombo]`, so a routed application edge on\n * `AUDIT_LOGS` would appear in EVERY combination and rewrite the organization route to\n * `/applications/{applicationId}/organizations/{organizationId}/audit-logs` — breaking all eight of\n * its documented paths and their consumers. Making the organization edge optional does not help:\n * the empty combination is skipped whenever any parent exists, so no bare route is emitted either.\n * A sibling type carrying ONE application parent takes the route it needs and leaves the existing\n * door byte-identical. The pattern is the engine's own: notification badges are dual-scope with a\n * type per scope, `APPLICATION_API_KEYS` shows the application routing shape, and `USER_SELF`\n * shows a distinct type addressing another's rows.\n *\n * ## Two doors, ONE record set — the security contract\n *\n * Both types resolve to the `auditLogs` collection through\n * `RESOURCE_SHARED_PERSISTENCE_COLLECTION_ALIASES`. That makes the isolation properties a\n * per-DOOR obligation rather than a property of the rows:\n *\n * - the organization door keeps its tenant filter and its organization roles, unchanged;\n * - this door is `APP_ADMIN_SUPER_ADMIN`-ONLY on every operation. An organization role must never\n * reach it — the rows behind it span every tenant;\n * - a read here that touches a tenant-attributed row is a CROSS-TENANT read and OWES an audit\n * emission. **It is wired**, by the two halves below acting together, and neither is optional:\n * each read variant declares `admitsCrossTenantPlatformAdministration`, and\n * `ServicesRegistryHandler.recordCrossTenantReadAccess` observes every enrolled read and emits\n * `CROSS_TENANT_ADMINISTRATIVE_ACCESS` once per TENANT the returned rows belong to. The\n * declaration is what enrols the read: `authorizeOrganizations` — where that event is otherwise\n * emitted — runs only for ORGANIZATIONS-scoped resources and decides on ONE fetched row, so it\n * never sees this door at all. Grouping per tenant is what makes the crossing visible to the\n * REACHED tenant, in its own organization-scoped viewer, rather than only to the operator.\n * `.claude/rules/administrative-continuity-floors.md` requires every crossing to be named in the\n * trail, and the trail is the worst possible surface on which to make an operator read invisible.\n * See `security/authorizations/cross-tenant-read-observation.backend.ts` for why an UNDECLARED\n * door is deliberately not observed instead of being observed with a false `admissionDeclared`.\n *\n * ## Deliberately mirrored from the organization resource\n *\n * `isSystemResource`, `systemAccessPolicy.exportSubject: FORBIDDEN` and the ABSENCE of a\n * `retentionPolicy` are copied ON PURPOSE. They are properties of the ROWS, and the rows are the\n * same ones — a second door that disagreed about whether the audit trail is subject-exportable, or\n * about how long it is kept, would be a policy fork over one record set. See the organization\n * config for the reasoning behind each; do not change one without the other.\n *\n * ## Deliberately NOT mirrored\n *\n * There is no CREATE. The organization resource carries a `REPOSITORY_ONLY` CREATE because that is\n * how audit rows are written; writing is not a scope question and must keep exactly one door.\n */\nexport const applicationAuditLogsResourceConfiguration_InitializationFactory = (\n resourcesRelationships: ResourceRelationship[]\n) => createResourceConfiguration_Initialization<\n undefined,\n CoreResourceOperation.READ | CoreResourceOperation.LIST | CoreResourceOperation.SEARCH,\n typeof AuditableEvent_BaseSchema\n>({\n mainSchema: AuditableEvent_BaseSchema,\n resourceIdentifier: CoreResourceType.APPLICATION_AUDIT_LOGS,\n resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.APPLICATION_AUDIT_LOGS],\n resourceRelationships: resourcesRelationships,\n isSystemResource: true,\n /** Mirrored from the organization door — the same rows, so the same answer. Disclosing the monitoring trail to its own subject is self-defeating and out of Art. 20 scope. */\n systemAccessPolicy: { exportSubject: ResourceSystemAccessMode.FORBIDDEN },\n\n coreOperations: [\n CoreResourceOperation.READ,\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n ],\n\n operationsConfiguration: {\n [CoreResourceOperation.READ]: {\n variants: [{\n variantType: ResourceOperationVariantType.API_CALL,\n isDefault: true,\n /** APP_ADMIN_SUPER_ADMIN ONLY — never an organization role. The rows behind this door span every tenant. */\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.MEDIUM,\n /**\n * Reading ONE tenant's audit row through the application door IS a crossing, so the cheapest\n * reach — fetch by id — is declared and audited exactly like the collection verbs. Declaring\n * it is also what stops `assignInitiatorOrganizationConfinementToFilter` silently narrowing\n * this door to an operator who happens to carry an ambient organization, which would make a\n * surface documented as spanning every tenant return one tenant and report success.\n */\n admitsCrossTenantPlatformAdministration: true,\n }],\n },\n\n [CoreResourceOperation.LIST]: {\n variants: [{\n variantType: ResourceOperationVariantType.API_CALL,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.MEDIUM,\n /** The declared crossing — see READ. Every enrolled read emits one crossing per tenant reached. */\n admitsCrossTenantPlatformAdministration: true,\n filterFields: {\n eventType: z.string(),\n eventCategory: z.enum(AuditEventCategory),\n severity: z.enum(AuditEventSeverity),\n userId: z.string(),\n /**\n * Filterable so an operator can narrow to one tenant THROUGH this door, which is the\n * cross-tenant investigation this surface exists for. It is a FILTER, never the isolation\n * boundary: isolation on this door is the role gate above, and narrowing to a tenant does\n * not make the read any less cross-tenant for audit purposes.\n */\n organizationId: z.string(),\n correlationId: z.string(),\n clientInstanceId: z.string(),\n createdAt: z.date(),\n },\n /** `eventId` last, as the keyset tie-breaker — `createdAt` is not unique under boot/seed bursts. Mirrors the organization door; removing it reintroduces a paging data-loss path. */\n sortFields: ['createdAt', 'severity', 'eventType', 'eventId'] as const,\n maxPaginatedResultPerPageLimit: 100,\n }],\n },\n\n [CoreResourceOperation.SEARCH]: {\n variants: [{\n variantType: ResourceOperationVariantType.API_CALL,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.MEDIUM,\n /** The declared crossing — see READ. Every enrolled read emits one crossing per tenant reached. */\n admitsCrossTenantPlatformAdministration: true,\n isSearchable: false,\n searchableFields: [],\n filterFields: {\n eventType: z.string(),\n eventCategory: z.enum(AuditEventCategory),\n severity: z.enum(AuditEventSeverity),\n userId: z.string(),\n organizationId: z.string(),\n correlationId: z.string(),\n clientInstanceId: z.string(),\n createdAt: z.date(),\n },\n sortFields: ['createdAt', 'severity', 'eventType'] as const,\n maxPaginatedResultPerPageLimit: 100,\n }],\n },\n },\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"audit-log-sink.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/compliance/audit-trails/audit-log-sink.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAE3E;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE;;;;OAIG;IACH,QAAQ,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,oBAAY,0BAA0B;IACpC,2EAA2E;IAC3E,QAAQ,aAAa;IACrB,0GAA0G;IAC1G,MAAM,WAAW;IACjB,oGAAoG;IACpG,QAAQ,aAAa;IACrB,yGAAyG;IACzG,YAAY,iBAAiB;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,OAAO,CAAC;IAClB,4FAA4F;IAC5F,MAAM,EAAE,0BAA0B,CAAC;IACnC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACxE;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,6BAA6B;IAC5C,qHAAqH;IACrH,2BAA2B,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,qFAAqF;IACrF,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D"}
1
+ {"version":3,"file":"audit-log-sink.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/compliance/audit-trails/audit-log-sink.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAE3E;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE;;;;OAIG;IACH,QAAQ,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,oBAAY,0BAA0B;IACpC,2EAA2E;IAC3E,QAAQ,aAAa;IACrB,0GAA0G;IAC1G,MAAM,WAAW;IACjB,oGAAoG;IACpG,QAAQ,aAAa;IACrB,yGAAyG;IACzG,YAAY,iBAAiB;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,OAAO,CAAC;IAClB,4FAA4F;IAC5F,MAAM,EAAE,0BAA0B,CAAC;IACnC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACxE;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,6BAA6B;IAC5C,qHAAqH;IACrH,2BAA2B,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,qFAAqF;IACrF,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/compliance/audit-trails/audit-logs.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,kCAAkC,CAAC;AAErH,OAAO,EAAE,qBAAqB,EAAwD,MAAM,mDAAmD,CAAC;AAChJ,OAAO,EACL,0BAA0B,EAE1B,oBAAoB,EAErB,MAAM,0CAA0C,CAAC;AAOlD,oBAAY,oBAAoB;IAC9B,iBAAiB,oBAAoB;CACtC;AAID,eAAO,MAAM,0BAA0B;;;;;;;;;;kBAa5B,CAAC;AAEZ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAExF;;;;;;;;;;;GAWG;AACH,oBAAY,sBAAsB;IAChC,IAAI,SAAS;CACd;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;kBAI7B,CAAC;AAEZ,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAO1F;;;;;GAKG;AACH,eAAO,MAAM,oDAAoD,GAC/D,wBAAwB,oBAAoB,EAAE;;;;;;;;;;;;;;;;kBA8K9C,CAAC"}
1
+ {"version":3,"file":"audit-logs.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["../../../../src/compliance/audit-trails/audit-logs.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,kCAAkC,CAAC;AAErH,OAAO,EAAE,qBAAqB,EAAwD,MAAM,mDAAmD,CAAC;AAChJ,OAAO,EACL,0BAA0B,EAE1B,oBAAoB,EAErB,MAAM,0CAA0C,CAAC;AAOlD,oBAAY,oBAAoB;IAC9B,iBAAiB,oBAAoB;CACtC;AAID,eAAO,MAAM,0BAA0B;;;;;;;;;;kBAa5B,CAAC;AAEZ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAExF;;;;;;;;;;;GAWG;AACH,oBAAY,sBAAsB;IAChC,IAAI,SAAS;CACd;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;kBAI7B,CAAC;AAEZ,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAO1F;;;;;GAKG;AACH,eAAO,MAAM,oDAAoD,GAC/D,wBAAwB,oBAAoB,EAAE;;;;;;;;;;;;;;;;kBA8K9C,CAAC"}
@@ -1,8 +1,24 @@
1
1
  import { z } from 'zod';
2
2
  /**
3
+ * @wildo_source:part:start saas.models.audit.trail-config facet:layer:shared facet:audience:app-developer
4
+ *
3
5
  * `AuditTrailConfig` — application-level operator-tunable configuration for the
4
6
  * compliance audit-trail subsystem.
5
7
  *
8
+ * ⚠️ **`archiveAfterDays` IS the opt-in, and it never deletes anything.** While it is unset the
9
+ * archival job still runs and does nothing, and every audit record stays in the primary store
10
+ * indefinitely — so an application that has never set it is accumulating, not rotating.
11
+ *
12
+ * Setting it does not shrink the primary store either. `AUDIT_LOGS` is immutable by invariant: it
13
+ * has no UPDATE and no DELETE, so records older than the horizon are COPIED to durable archival
14
+ * artifacts in file storage while the originals remain. The field is named `archiveAfterDays` rather
15
+ * than `retentionDays` for exactly that reason — nothing is retained-then-deleted, and an operator
16
+ * expecting the primary store to shrink has misread it.
17
+ *
18
+ * The decision is taken at each tick from live configuration, so changing the value takes effect
19
+ * without a restart, and a misconfigured value cannot orphan the schedule. An application that turns
20
+ * this on after it already has aged data seeds the archive with a one-off wider look-back run.
21
+ *
6
22
  * Phase 5 / F1 (audit-logging plan). Mirrors {@link DataSeedingConfigSchema} /
7
23
  * {@link LifecycleConfigSchema} in shape and intent: a small, OPTIONAL block on
8
24
  * the shared application configuration ({@link AppConfiguration_Shared_Schema})
@@ -10,6 +26,11 @@ import { z } from 'zod';
10
26
  * `compliance:audit-logs-archive` cron batch — without forking the factory's
11
27
  * built-in defaults.
12
28
  *
29
+ * It also carries the subsystem's one EGRESS posture
30
+ * ({@link allowPrivateNetworkSiemCollectors}), which belongs to the operator rather
31
+ * than to the tenant who authors a SIEM destination — see that field's own JSDoc
32
+ * for why the distinction is the whole control.
33
+ *
13
34
  * --------------------------------------------------------------------------
14
35
  * Archival, NOT deletion — audit logs are immutable
15
36
  * --------------------------------------------------------------------------
@@ -53,6 +74,8 @@ import { z } from 'zod';
53
74
  */
54
75
  export declare const AuditTrailConfigSchema: z.ZodObject<{
55
76
  archiveAfterDays: z.ZodOptional<z.ZodNumber>;
77
+ allowPrivateNetworkSiemCollectors: z.ZodOptional<z.ZodBoolean>;
56
78
  }, z.core.$strip>;
57
79
  export type AuditTrailConfig = z.infer<typeof AuditTrailConfigSchema>;
80
+ /** @wildo_source:part:end saas.models.audit.trail-config */
58
81
  //# sourceMappingURL=audit-trail-config.shared.schemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audit-trail-config.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/compliance/audit-trails/audit-trail-config.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,eAAO,MAAM,sBAAsB;;iBAmBjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"audit-trail-config.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/compliance/audit-trails/audit-trail-config.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH,eAAO,MAAM,sBAAsB;;;iBAsDjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,4DAA4D"}