@cosmicdrift/kumiko-framework 0.368.0 → 0.370.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (453) hide show
  1. package/AGENTS.md +14 -1
  2. package/agents/examples/apex-surface-auth.md +2 -1
  3. package/agents/examples/app-config.md +98 -0
  4. package/agents/examples/auth-mfa.md +72 -0
  5. package/agents/examples/compose-stacks.md +188 -0
  6. package/agents/examples/env-composition.md +268 -0
  7. package/agents/examples/host-routing.md +181 -0
  8. package/agents/examples/legal-pages.md +52 -3
  9. package/agents/examples/managed-config.md +1 -0
  10. package/agents/examples/managed-pages.md +1 -0
  11. package/agents/examples/prod-boot-options.md +180 -0
  12. package/agents/examples/relations.md +4 -0
  13. package/agents/examples/secrets-demo.md +4 -2
  14. package/agents/examples/security-baseline.md +20 -17
  15. package/agents/examples.md +6 -1
  16. package/agents/features.md +17 -5
  17. package/dist/api/anonymous-cookie.d.ts +1 -1
  18. package/dist/api/anonymous-live-entities.d.ts +1 -1
  19. package/dist/api/auth-middleware.d.ts +2 -2
  20. package/dist/api/auth-routes.d.ts +7 -7
  21. package/dist/api/extra-route.d.ts +2 -2
  22. package/dist/api/index.d.ts +37 -37
  23. package/dist/api/jwt.d.ts +1 -1
  24. package/dist/api/observability-middleware.d.ts +1 -1
  25. package/dist/api/readiness.d.ts +1 -1
  26. package/dist/api/redis-sse-broker.d.ts +2 -2
  27. package/dist/api/request-context.d.ts +1 -1
  28. package/dist/api/request-id-middleware.d.ts +3 -3
  29. package/dist/api/route-registrars.d.ts +4 -4
  30. package/dist/api/routes.d.ts +1 -1
  31. package/dist/api/server.d.ts +16 -16
  32. package/dist/api/sse-broker.d.ts +1 -1
  33. package/dist/api/sse-route.d.ts +1 -1
  34. package/dist/api/websocket-route.d.ts +3 -3
  35. package/dist/auth/index.d.ts +2 -2
  36. package/dist/compliance/duration-spec.d.ts +2 -2
  37. package/dist/compliance/index.d.ts +6 -6
  38. package/dist/compliance/profiles.d.ts +1 -1
  39. package/dist/config/index.d.ts +44 -0
  40. package/dist/config/index.js +61 -0
  41. package/dist/crypto/blind-index.d.ts +1 -1
  42. package/dist/crypto/event-pii.d.ts +1 -1
  43. package/dist/crypto/in-memory-kms-adapter.d.ts +1 -1
  44. package/dist/crypto/index.d.ts +11 -11
  45. package/dist/crypto/is-self-pii-field.d.ts +1 -1
  46. package/dist/crypto/kms-wiring.d.ts +2 -2
  47. package/dist/crypto/owner-transition-rekey.d.ts +1 -1
  48. package/dist/crypto/pg-kms-adapter.d.ts +1 -1
  49. package/dist/crypto/pii-field-encryption.d.ts +4 -4
  50. package/dist/crypto/request-kms-cache.d.ts +1 -1
  51. package/dist/crypto/subject-resolver.d.ts +3 -3
  52. package/dist/db/apply-entity-event.d.ts +4 -4
  53. package/dist/db/assert-exists-in.d.ts +4 -4
  54. package/dist/db/blind-index-cleanup.d.ts +2 -2
  55. package/dist/db/collect-table-metas.d.ts +2 -2
  56. package/dist/db/compound-types.d.ts +1 -1
  57. package/dist/db/config-seed.d.ts +5 -5
  58. package/dist/db/connection.d.ts +1 -6
  59. package/dist/db/connection.js +15 -4
  60. package/dist/db/dialect.d.ts +1 -1
  61. package/dist/db/eagerload.d.ts +3 -3
  62. package/dist/db/entity-field-encryption.d.ts +3 -3
  63. package/dist/db/entity-field-encryption.js +3 -1
  64. package/dist/db/entity-table-from-registry.d.ts +3 -3
  65. package/dist/db/entity-table-meta.d.ts +3 -3
  66. package/dist/db/event-store-executor-context.d.ts +9 -9
  67. package/dist/db/event-store-executor-read.d.ts +2 -2
  68. package/dist/db/event-store-executor-write.d.ts +2 -2
  69. package/dist/db/event-store-executor.d.ts +8 -8
  70. package/dist/db/feature-table-sources.d.ts +1 -1
  71. package/dist/db/index.d.ts +39 -39
  72. package/dist/db/located-timestamp.d.ts +1 -1
  73. package/dist/db/lock-guard.d.ts +2 -2
  74. package/dist/db/migrate-generator.d.ts +2 -2
  75. package/dist/db/migrate-runner.d.ts +1 -1
  76. package/dist/db/money.d.ts +1 -1
  77. package/dist/db/parent-ref-clause.d.ts +4 -4
  78. package/dist/db/projection-registry-binding.d.ts +1 -1
  79. package/dist/db/queries/advisory-lock.d.ts +1 -1
  80. package/dist/db/queries/backfill-pii.d.ts +2 -2
  81. package/dist/db/queries/ddl.d.ts +1 -1
  82. package/dist/db/queries/entity-read.d.ts +1 -1
  83. package/dist/db/queries/es-ops.d.ts +1 -1
  84. package/dist/db/queries/event-consumer.d.ts +2 -2
  85. package/dist/db/queries/event-store-admin.d.ts +1 -1
  86. package/dist/db/queries/event-store-transfer.d.ts +1 -1
  87. package/dist/db/queries/event-store.d.ts +1 -1
  88. package/dist/db/queries/pii-backfill-state.d.ts +1 -1
  89. package/dist/db/queries/projection-rebuild.d.ts +1 -1
  90. package/dist/db/queries/raw-sql.d.ts +1 -1
  91. package/dist/db/queries/seed-context.d.ts +2 -2
  92. package/dist/db/queries/shadow-swap.d.ts +3 -3
  93. package/dist/db/queries/table-ops.d.ts +1 -1
  94. package/dist/db/queries/test-stack.d.ts +2 -2
  95. package/dist/db/query.d.ts +3 -3
  96. package/dist/db/rebuild-marker.d.ts +1 -1
  97. package/dist/db/reference-data.d.ts +3 -3
  98. package/dist/db/render-ddl.d.ts +1 -1
  99. package/dist/db/replay-migration-sql.d.ts +1 -1
  100. package/dist/db/retired-framework-tables.d.ts +1 -1
  101. package/dist/db/schema-inspection.d.ts +1 -1
  102. package/dist/db/table-builder.d.ts +4 -4
  103. package/dist/db/table-push.d.ts +3 -3
  104. package/dist/db/tenant-db-runner.d.ts +2 -2
  105. package/dist/db/tenant-db.d.ts +7 -9
  106. package/dist/db/tenant-db.js +2 -12
  107. package/dist/derivatives/derivatives-context.d.ts +3 -3
  108. package/dist/derivatives/field-variants.d.ts +1 -1
  109. package/dist/derivatives/index.d.ts +6 -6
  110. package/dist/engine/access.d.ts +1 -1
  111. package/dist/engine/active-membership.d.ts +2 -2
  112. package/dist/engine/boot-validator/access-declarations.d.ts +1 -1
  113. package/dist/engine/boot-validator/access-roles.d.ts +1 -1
  114. package/dist/engine/boot-validator/action-wiring.d.ts +1 -1
  115. package/dist/engine/boot-validator/api-ext.d.ts +1 -1
  116. package/dist/engine/boot-validator/boot-check.d.ts +1 -1
  117. package/dist/engine/boot-validator/card-meta-overflow.d.ts +1 -1
  118. package/dist/engine/boot-validator/config-deps.d.ts +1 -1
  119. package/dist/engine/boot-validator/detail-screens.d.ts +2 -2
  120. package/dist/engine/boot-validator/entity-handler.d.ts +1 -1
  121. package/dist/engine/boot-validator/entity-list-screens.d.ts +1 -1
  122. package/dist/engine/boot-validator/gdpr-storage.d.ts +1 -1
  123. package/dist/engine/boot-validator/global-tenancy.d.ts +1 -1
  124. package/dist/engine/boot-validator/handler-field-references.d.ts +1 -1
  125. package/dist/engine/boot-validator/i18n-keys.d.ts +1 -1
  126. package/dist/engine/boot-validator/index.d.ts +7 -7
  127. package/dist/engine/boot-validator/nav.d.ts +1 -1
  128. package/dist/engine/boot-validator/ownership.d.ts +2 -2
  129. package/dist/engine/boot-validator/parent-ref.d.ts +1 -1
  130. package/dist/engine/boot-validator/pii-retention.d.ts +2 -2
  131. package/dist/engine/boot-validator/projection-list-screens.d.ts +1 -1
  132. package/dist/engine/boot-validator/query-output-columns.d.ts +1 -1
  133. package/dist/engine/boot-validator/query-refs.d.ts +1 -1
  134. package/dist/engine/boot-validator/record-owned.d.ts +1 -1
  135. package/dist/engine/boot-validator/screens.d.ts +2 -2
  136. package/dist/engine/boot-validator/screens.js +29 -0
  137. package/dist/engine/boot-validator/security-baseline.d.ts +1 -1
  138. package/dist/engine/boot-validator/selector-owner-panels.d.ts +1 -1
  139. package/dist/engine/boot-validator/transfer-graph.d.ts +2 -2
  140. package/dist/engine/boot-validator/url-prefill-fields.d.ts +1 -1
  141. package/dist/engine/boot-validator/workspaces.d.ts +1 -1
  142. package/dist/engine/boot-validator.d.ts +1 -1
  143. package/dist/engine/bridge-stub.d.ts +1 -1
  144. package/dist/engine/build-app-schema.d.ts +2 -2
  145. package/dist/engine/build-config-feature-schema.d.ts +5 -5
  146. package/dist/engine/build-config-feature-schema.js +197 -65
  147. package/dist/engine/build-target.d.ts +2 -2
  148. package/dist/engine/changeset-changes.d.ts +1 -1
  149. package/dist/engine/codemod/index.d.ts +2 -2
  150. package/dist/engine/config-helpers.d.ts +1 -1
  151. package/dist/engine/constants.d.ts +1 -1
  152. package/dist/engine/create-app.d.ts +2 -2
  153. package/dist/engine/cross-tenant.d.ts +2 -2
  154. package/dist/engine/dedupe-features.d.ts +1 -1
  155. package/dist/engine/define-feature.d.ts +1 -1
  156. package/dist/engine/define-feature.js +2 -2
  157. package/dist/engine/define-handler.d.ts +4 -4
  158. package/dist/engine/define-step.d.ts +1 -1
  159. package/dist/engine/define-workflow.d.ts +2 -2
  160. package/dist/engine/effective-features.d.ts +1 -1
  161. package/dist/engine/embedded-derived.d.ts +1 -1
  162. package/dist/engine/entity-handlers.d.ts +6 -5
  163. package/dist/engine/entity-handlers.js +6 -3
  164. package/dist/engine/event-def.d.ts +15 -0
  165. package/dist/engine/event-def.js +123 -0
  166. package/dist/engine/event-helpers.d.ts +1 -1
  167. package/dist/engine/extension-names.d.ts +8 -8
  168. package/dist/engine/extension-selector-plugins.d.ts +4 -1
  169. package/dist/engine/extension-selector-plugins.js +14 -0
  170. package/dist/engine/extensions/escape-hatch-usage.d.ts +1 -1
  171. package/dist/engine/extensions/storage-provider.d.ts +1 -1
  172. package/dist/engine/extensions/tenant-data.d.ts +3 -3
  173. package/dist/engine/extensions/tenant-resource.d.ts +2 -2
  174. package/dist/engine/extensions/user-data.d.ts +2 -2
  175. package/dist/engine/factories.d.ts +1 -1
  176. package/dist/engine/feature-ast/extractors/ai-steps.d.ts +2 -2
  177. package/dist/engine/feature-ast/extractors/events.d.ts +2 -2
  178. package/dist/engine/feature-ast/extractors/handlers.d.ts +4 -4
  179. package/dist/engine/feature-ast/extractors/hooks.d.ts +5 -5
  180. package/dist/engine/feature-ast/extractors/index.d.ts +14 -14
  181. package/dist/engine/feature-ast/extractors/jobs-routes.d.ts +3 -3
  182. package/dist/engine/feature-ast/extractors/projections-screens.d.ts +3 -3
  183. package/dist/engine/feature-ast/extractors/round1.d.ts +2 -2
  184. package/dist/engine/feature-ast/extractors/round2.d.ts +2 -2
  185. package/dist/engine/feature-ast/extractors/round3.d.ts +4 -4
  186. package/dist/engine/feature-ast/extractors/round5.d.ts +2 -2
  187. package/dist/engine/feature-ast/extractors/round6.d.ts +2 -2
  188. package/dist/engine/feature-ast/extractors/shared.d.ts +2 -2
  189. package/dist/engine/feature-ast/index.d.ts +16 -16
  190. package/dist/engine/feature-ast/parse.d.ts +2 -2
  191. package/dist/engine/feature-ast/patch.d.ts +1 -1
  192. package/dist/engine/feature-ast/patcher.d.ts +15 -15
  193. package/dist/engine/feature-ast/pattern-change-schema.d.ts +10 -10
  194. package/dist/engine/feature-ast/patterns.d.ts +15 -15
  195. package/dist/engine/feature-ast/render.d.ts +1 -1
  196. package/dist/engine/feature-builder-state.d.ts +5 -5
  197. package/dist/engine/feature-config-events-jobs.d.ts +5 -3
  198. package/dist/engine/feature-config-events-jobs.js +9 -130
  199. package/dist/engine/feature-entity-handlers.d.ts +4 -4
  200. package/dist/engine/feature-entity-handlers.js +11 -5
  201. package/dist/engine/feature-manifest.d.ts +1 -1
  202. package/dist/engine/feature-ui-extensions.d.ts +7 -7
  203. package/dist/engine/feature-ui-extensions.js +2 -2
  204. package/dist/engine/field-access.d.ts +1 -1
  205. package/dist/engine/field-helpers.d.ts +1 -1
  206. package/dist/engine/handler-helpers.d.ts +1 -1
  207. package/dist/engine/index.d.ts +89 -88
  208. package/dist/engine/index.js +1 -0
  209. package/dist/engine/instruction-fields.d.ts +1 -1
  210. package/dist/engine/object-form.d.ts +1 -1
  211. package/dist/engine/object-form.js +5 -6
  212. package/dist/engine/ownership.d.ts +3 -3
  213. package/dist/engine/pattern-library/index.d.ts +2 -2
  214. package/dist/engine/pattern-library/library.d.ts +2 -2
  215. package/dist/engine/pattern-library/mixed-schemas.d.ts +1 -1
  216. package/dist/engine/pattern-library/opaque-schemas.d.ts +1 -1
  217. package/dist/engine/pattern-library/shared-fields.d.ts +1 -1
  218. package/dist/engine/pattern-library/static-schemas.d.ts +1 -1
  219. package/dist/engine/pattern-library/types.d.ts +1 -1
  220. package/dist/engine/personal-data-fields.d.ts +2 -2
  221. package/dist/engine/pipeline.d.ts +2 -2
  222. package/dist/engine/project-app-schema-for-roles.d.ts +1 -1
  223. package/dist/engine/projection-helpers.d.ts +4 -4
  224. package/dist/engine/read-claim.d.ts +1 -1
  225. package/dist/engine/registry-facade.d.ts +2 -2
  226. package/dist/engine/registry-ingest.d.ts +2 -2
  227. package/dist/engine/registry-state.d.ts +2 -2
  228. package/dist/engine/registry-validate.d.ts +3 -3
  229. package/dist/engine/registry.d.ts +1 -1
  230. package/dist/engine/resolve-config-or-param.d.ts +2 -2
  231. package/dist/engine/role-assignment.d.ts +1 -1
  232. package/dist/engine/run-in.d.ts +1 -1
  233. package/dist/engine/run-pipeline.d.ts +3 -3
  234. package/dist/engine/schema-builder.d.ts +1 -1
  235. package/dist/engine/screen-filter-ops.d.ts +1 -1
  236. package/dist/engine/screen-helpers.d.ts +2 -2
  237. package/dist/engine/soft-delete-cleanup.d.ts +2 -2
  238. package/dist/engine/steps/_event-match.d.ts +1 -1
  239. package/dist/engine/steps/_no-return-guard.d.ts +1 -1
  240. package/dist/engine/steps/_read-source.d.ts +4 -4
  241. package/dist/engine/steps/_resolver-utils.d.ts +1 -1
  242. package/dist/engine/steps/aggregate-append-event.d.ts +1 -1
  243. package/dist/engine/steps/aggregate-create.d.ts +2 -2
  244. package/dist/engine/steps/aggregate-update.d.ts +3 -3
  245. package/dist/engine/steps/branch.d.ts +1 -1
  246. package/dist/engine/steps/call-feature.d.ts +2 -2
  247. package/dist/engine/steps/compute.d.ts +1 -1
  248. package/dist/engine/steps/for-each.d.ts +1 -1
  249. package/dist/engine/steps/mail-send.d.ts +1 -1
  250. package/dist/engine/steps/read-find-many.d.ts +2 -2
  251. package/dist/engine/steps/read-find-one.d.ts +2 -2
  252. package/dist/engine/steps/retry.d.ts +1 -1
  253. package/dist/engine/steps/return.d.ts +2 -2
  254. package/dist/engine/steps/unsafe-projection-delete.d.ts +2 -2
  255. package/dist/engine/steps/unsafe-projection-upsert.d.ts +1 -1
  256. package/dist/engine/steps/wait-for-event.d.ts +1 -1
  257. package/dist/engine/steps/wait.d.ts +1 -1
  258. package/dist/engine/steps/webhook-send.d.ts +1 -1
  259. package/dist/engine/strip-disabled-features-from-app-schema.d.ts +4 -4
  260. package/dist/engine/system-user.d.ts +2 -2
  261. package/dist/engine/template-variables.d.ts +1 -1
  262. package/dist/engine/tier-resolver-extension.d.ts +4 -4
  263. package/dist/engine/transfer-adjacency.d.ts +1 -1
  264. package/dist/engine/types/index.d.ts +6 -6
  265. package/dist/engine/validate-projection-allowlist.d.ts +1 -1
  266. package/dist/engine/validation.d.ts +1 -1
  267. package/dist/entrypoint/index.d.ts +12 -12
  268. package/dist/env/dry-run.d.ts +14 -1
  269. package/dist/env/dry-run.js +50 -0
  270. package/dist/env/index.d.ts +54 -16
  271. package/dist/env/index.js +60 -6
  272. package/dist/errors/classes.d.ts +3 -3
  273. package/dist/errors/docs-url.d.ts +1 -1
  274. package/dist/errors/index.d.ts +18 -18
  275. package/dist/errors/member-resolution.d.ts +1 -1
  276. package/dist/errors/serialize.d.ts +2 -2
  277. package/dist/errors/subject-erased.d.ts +1 -1
  278. package/dist/errors/to-kumiko-error.d.ts +1 -1
  279. package/dist/errors/write-error-info.d.ts +1 -1
  280. package/dist/errors/zod-bridge.d.ts +1 -1
  281. package/dist/es-ops/context.d.ts +4 -4
  282. package/dist/es-ops/index.d.ts +4 -4
  283. package/dist/es-ops/operations-schema.d.ts +1 -1
  284. package/dist/es-ops/runner.d.ts +3 -3
  285. package/dist/es-ops/runner.js +9 -1
  286. package/dist/es-ops/types.d.ts +2 -2
  287. package/dist/event-store/admin-api.d.ts +3 -3
  288. package/dist/event-store/archive.d.ts +2 -2
  289. package/dist/event-store/event-store.d.ts +2 -2
  290. package/dist/event-store/events-schema.d.ts +1 -1
  291. package/dist/event-store/index.d.ts +15 -15
  292. package/dist/event-store/provenance-append.d.ts +3 -3
  293. package/dist/event-store/rebuild-dead-letter.d.ts +2 -2
  294. package/dist/event-store/row-to-stored-event.d.ts +2 -2
  295. package/dist/event-store/snapshot.d.ts +2 -2
  296. package/dist/event-store/tenant-db-append.d.ts +2 -2
  297. package/dist/event-store/transfer.d.ts +3 -3
  298. package/dist/event-store/upcaster-dead-letter.d.ts +2 -2
  299. package/dist/event-store/upcaster.d.ts +3 -3
  300. package/dist/files/assert-file-refs-belong-to-tenant.d.ts +2 -2
  301. package/dist/files/bind-pending-file-refs.d.ts +3 -3
  302. package/dist/files/create-file-ref-from-bytes.d.ts +4 -4
  303. package/dist/files/create-file-ref.d.ts +3 -3
  304. package/dist/files/dispose-removed-file-refs.d.ts +2 -2
  305. package/dist/files/feature.d.ts +3 -3
  306. package/dist/files/file-handle.d.ts +1 -1
  307. package/dist/files/file-ref-entity.d.ts +1 -1
  308. package/dist/files/file-ref-table.d.ts +1 -1
  309. package/dist/files/file-routes.d.ts +5 -5
  310. package/dist/files/in-memory-provider.d.ts +1 -1
  311. package/dist/files/index.d.ts +20 -20
  312. package/dist/files/load-save-file-refs.d.ts +2 -2
  313. package/dist/files/local-provider.d.ts +1 -1
  314. package/dist/files/provider-resolver.d.ts +5 -5
  315. package/dist/files/purge-expired-file-ref-bytes.d.ts +2 -2
  316. package/dist/files/record-read-check.d.ts +1 -1
  317. package/dist/files/record-write-check.d.ts +3 -3
  318. package/dist/files/storage-tracking.d.ts +2 -2
  319. package/dist/files/types.d.ts +1 -1
  320. package/dist/files/zip-stream.d.ts +1 -1
  321. package/dist/i18n/index.d.ts +4 -4
  322. package/dist/i18n/mail-registry.d.ts +1 -1
  323. package/dist/i18n/required-surface-keys.d.ts +1 -1
  324. package/dist/i18n/settings-hub-keys.d.ts +1 -1
  325. package/dist/i18n/settings-hub-keys.js +1 -2
  326. package/dist/internal/stack-support.d.ts +12 -12
  327. package/dist/internal/testing.d.ts +4 -4
  328. package/dist/jobs/index.d.ts +2 -2
  329. package/dist/jobs/job-runner.d.ts +1 -1
  330. package/dist/jobs/max-per-tenant.d.ts +1 -1
  331. package/dist/lifecycle/index.d.ts +2 -2
  332. package/dist/lifecycle/lifecycle.d.ts +1 -1
  333. package/dist/lifecycle/signal-handlers.d.ts +1 -1
  334. package/dist/logging/index.d.ts +4 -4
  335. package/dist/logging/pino-logger.d.ts +1 -1
  336. package/dist/logging/utils.d.ts +1 -1
  337. package/dist/migrations/index.d.ts +4 -4
  338. package/dist/migrations/kumiko-drift.d.ts +1 -1
  339. package/dist/migrations/pending-rebuilds.d.ts +5 -5
  340. package/dist/migrations/pii-event-backfill.d.ts +4 -4
  341. package/dist/migrations/projection-table-index.d.ts +1 -1
  342. package/dist/observability/console-provider.d.ts +1 -1
  343. package/dist/observability/context.d.ts +1 -1
  344. package/dist/observability/escape-hatch-report.d.ts +3 -3
  345. package/dist/observability/fallback.d.ts +1 -1
  346. package/dist/observability/index.d.ts +16 -16
  347. package/dist/observability/metric-validator.d.ts +1 -1
  348. package/dist/observability/metrics-handle.d.ts +1 -1
  349. package/dist/observability/metrics-wiring.d.ts +2 -2
  350. package/dist/observability/noop-provider.d.ts +1 -1
  351. package/dist/observability/prometheus-meter.d.ts +1 -1
  352. package/dist/observability/recording-meter.d.ts +1 -1
  353. package/dist/observability/recording-tracer.d.ts +1 -1
  354. package/dist/observability/redis-wrapper.d.ts +1 -1
  355. package/dist/observability/sensitive-filter.d.ts +1 -1
  356. package/dist/observability/standard-metrics.d.ts +1 -1
  357. package/dist/pipeline/active-membership.d.ts +4 -4
  358. package/dist/pipeline/append-event-core.d.ts +3 -3
  359. package/dist/pipeline/auth-claims-resolver.d.ts +2 -2
  360. package/dist/pipeline/cascade-handler.d.ts +3 -3
  361. package/dist/pipeline/dispatch-batch.d.ts +2 -2
  362. package/dist/pipeline/dispatch-query.d.ts +4 -4
  363. package/dist/pipeline/dispatch-shared.d.ts +17 -17
  364. package/dist/pipeline/dispatch-stream.d.ts +2 -2
  365. package/dist/pipeline/dispatch-write.d.ts +4 -4
  366. package/dist/pipeline/dispatcher-utils.d.ts +2 -2
  367. package/dist/pipeline/dispatcher.d.ts +12 -12
  368. package/dist/pipeline/event-consumer-state.d.ts +1 -1
  369. package/dist/pipeline/event-dispatcher-admin.d.ts +1 -1
  370. package/dist/pipeline/event-dispatcher-delivery.d.ts +7 -7
  371. package/dist/pipeline/event-dispatcher.d.ts +7 -7
  372. package/dist/pipeline/event-retention.d.ts +1 -1
  373. package/dist/pipeline/handler-access-error.d.ts +2 -2
  374. package/dist/pipeline/index.d.ts +42 -42
  375. package/dist/pipeline/irreversible-operation-gate.d.ts +1 -1
  376. package/dist/pipeline/lifecycle-pipeline.d.ts +2 -2
  377. package/dist/pipeline/member-read-only-transaction.d.ts +2 -2
  378. package/dist/pipeline/member-reader.d.ts +5 -5
  379. package/dist/pipeline/msp-rebuild.d.ts +4 -4
  380. package/dist/pipeline/multi-stream-apply-context.d.ts +3 -3
  381. package/dist/pipeline/notify-scope.d.ts +3 -3
  382. package/dist/pipeline/pending-gap-ranges.d.ts +2 -2
  383. package/dist/pipeline/pre-handler-gates.d.ts +3 -3
  384. package/dist/pipeline/pre-transaction-reservations.d.ts +4 -4
  385. package/dist/pipeline/projection-rebuild.d.ts +3 -3
  386. package/dist/pipeline/projection-state.d.ts +1 -1
  387. package/dist/pipeline/projections-runner.d.ts +3 -3
  388. package/dist/pipeline/projections-runner.js +3 -4
  389. package/dist/pipeline/system-hooks.d.ts +4 -4
  390. package/dist/pipeline/system-identity-switch.d.ts +3 -3
  391. package/dist/pipeline/tenant-timezone-cache.d.ts +1 -1
  392. package/dist/pipeline/write-origin.d.ts +3 -3
  393. package/dist/pipeline/write-result-masking.d.ts +2 -2
  394. package/dist/random/index.d.ts +2 -2
  395. package/dist/rate-limit/bucket.d.ts +1 -1
  396. package/dist/rate-limit/index.d.ts +3 -3
  397. package/dist/rate-limit/middleware.d.ts +3 -3
  398. package/dist/redis/cache-sync-bus.d.ts +2 -2
  399. package/dist/redis/cache-sync-topics.d.ts +1 -1
  400. package/dist/redis/index.d.ts +8 -8
  401. package/dist/redis/pubsub-signal.d.ts +1 -1
  402. package/dist/schema-cli.d.ts +1 -1
  403. package/dist/schema-cli.js +9 -1
  404. package/dist/search/derive-search-adapter-config.d.ts +2 -2
  405. package/dist/search/in-memory-adapter.d.ts +1 -1
  406. package/dist/search/index.d.ts +6 -6
  407. package/dist/search/meilisearch-adapter.d.ts +2 -2
  408. package/dist/search/purge-subject.d.ts +4 -4
  409. package/dist/search/reindex-entity.d.ts +3 -3
  410. package/dist/secrets/dek-cache.d.ts +1 -1
  411. package/dist/secrets/env-master-key-provider.d.ts +1 -1
  412. package/dist/secrets/env-master-key-provider.js +26 -11
  413. package/dist/secrets/envelope-cipher.d.ts +2 -2
  414. package/dist/secrets/envelope.d.ts +1 -1
  415. package/dist/secrets/index.d.ts +9 -9
  416. package/dist/secrets/rotation.d.ts +1 -1
  417. package/dist/secrets/stored-envelope.d.ts +1 -1
  418. package/dist/seeding/entity-seed.d.ts +1 -1
  419. package/dist/seeding/index.d.ts +3 -3
  420. package/dist/seeding/seed-users.d.ts +1 -1
  421. package/dist/time/index.d.ts +6 -6
  422. package/dist/ui-types/app-schema.d.ts +5 -5
  423. package/dist/ui-types/index.d.ts +23 -23
  424. package/dist/upgrade-cli.js +18 -6
  425. package/dist/utils/index.d.ts +9 -9
  426. package/package.json +19 -66
  427. package/presets/biome-app.json +80 -0
  428. package/presets/tsconfig.app.json +19 -0
  429. package/src/changes.json +84 -2
  430. package/src/scripts/codemod/README.md +18 -0
  431. package/src/scripts/codemod/codemod-support.ts +1 -1
  432. package/src/scripts/codemod/db-factory.ts +1 -1
  433. package/src/scripts/codemod/feature-factory.ts +1 -1
  434. package/src/scripts/codemod/import-extensions.ts +118 -0
  435. package/src/scripts/codemod/migrate-cross-tenant.ts +2 -2
  436. package/src/scripts/codemod/migrate-db-raw.ts +1 -1
  437. package/src/scripts/codemod/migrate-open-to-all.ts +1 -1
  438. package/src/scripts/codemod/object-form.ts +1 -1
  439. package/src/scripts/codemod/s3-imports.ts +1 -1
  440. package/src/scripts/codemod/tenant-db-options.ts +1 -1
  441. package/src/scripts/codemod/testing-move.ts +2 -2
  442. package/dist/db/bun-db-deprecated.d.ts +0 -10
  443. package/dist/db/bun-db-deprecated.js +0 -5
  444. package/dist/stack/index.d.ts +0 -10
  445. package/dist/stack/index.js +0 -11
  446. package/dist/testing/e2e-generator.d.ts +0 -5
  447. package/dist/testing/e2e-generator.js +0 -5
  448. package/dist/testing/handler-context.d.ts +0 -5
  449. package/dist/testing/handler-context.js +0 -5
  450. package/dist/testing/index.d.ts +0 -10
  451. package/dist/testing/index.js +0 -10
  452. package/dist/testing/real-providers.d.ts +0 -5
  453. package/dist/testing/real-providers.js +0 -5
@@ -1,5 +1,5 @@
1
- import { type Registry, type SaveContext } from "../engine/types/index.js";
2
- import type { FileRefRows } from "./load-save-file-refs.js";
1
+ import { type Registry, type SaveContext } from "../engine/types/index.ts";
2
+ import type { FileRefRows } from "./load-save-file-refs.ts";
3
3
  export declare function assertFileRefsBelongToTenant(args: {
4
4
  readonly registry: Registry;
5
5
  readonly result: SaveContext;
@@ -1,6 +1,6 @@
1
- import type { TenantDb } from "../db/tenant-db.js";
2
- import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.js";
3
- import type { FileRefRows } from "./load-save-file-refs.js";
1
+ import type { TenantDb } from "../db/tenant-db.ts";
2
+ import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.ts";
3
+ import type { FileRefRows } from "./load-save-file-refs.ts";
4
4
  export declare function fileRefIdsOf(value: unknown): readonly string[];
5
5
  export declare function bindPendingFileRefs(args: {
6
6
  readonly registry: Registry;
@@ -1,7 +1,7 @@
1
- import type { TenantDb } from "../db/tenant-db.js";
2
- import type { BeforeTransactionResult, Registry, SessionUser, WriteResult } from "../engine/types/index.js";
3
- import { type CreatedFileRef, type UploadedFileBytes } from "./create-file-ref.js";
4
- import type { FileContext } from "./file-handle.js";
1
+ import type { TenantDb } from "../db/tenant-db.ts";
2
+ import type { BeforeTransactionResult, Registry, SessionUser, WriteResult } from "../engine/types/index.ts";
3
+ import { type CreatedFileRef, type UploadedFileBytes } from "./create-file-ref.ts";
4
+ import type { FileContext } from "./file-handle.ts";
5
5
  export type { CreatedFileRef, UploadedFileBytes };
6
6
  export type CreateFileRefContext = {
7
7
  readonly db: TenantDb;
@@ -1,6 +1,6 @@
1
- import { type TenantDb } from "../db/tenant-db.js";
2
- import { type AnyFileFieldDef, type Registry, type SessionUser } from "../engine/types/index.js";
3
- import type { WriteFailure } from "../errors/index.js";
1
+ import { type TenantDb } from "../db/tenant-db.ts";
2
+ import { type AnyFileFieldDef, type Registry, type SessionUser } from "../engine/types/index.ts";
3
+ import type { WriteFailure } from "../errors/index.ts";
4
4
  export declare const DEFAULT_MAX_UPLOAD_SIZE = "10mb";
5
5
  declare function buildFileRefExecutor(): import("@cosmicdrift/kumiko-types/event-store-executor-types").EventStoreExecutor;
6
6
  export declare function getFileRefExecutor(): ReturnType<typeof buildFileRefExecutor>;
@@ -1,5 +1,5 @@
1
- import type { TenantDb } from "../db/tenant-db.js";
2
- import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.js";
1
+ import type { TenantDb } from "../db/tenant-db.ts";
2
+ import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.ts";
3
3
  export declare function disposeRemovedFileRefs(args: {
4
4
  readonly registry: Registry;
5
5
  readonly result: SaveContext;
@@ -1,6 +1,6 @@
1
- import { type FeatureDefinition } from "../engine/index.js";
2
- import type { FileAccessGuard } from "./file-routes.js";
3
- export { fileRefEntity } from "./file-ref-entity.js";
1
+ import { type FeatureDefinition } from "../engine/index.ts";
2
+ import type { FileAccessGuard } from "./file-routes.ts";
3
+ export { fileRefEntity } from "./file-ref-entity.ts";
4
4
  export type FilesFeatureOptions = {
5
5
  readonly accessGuard?: FileAccessGuard;
6
6
  readonly privilegedRoles?: readonly string[];
@@ -1,5 +1,5 @@
1
1
  import type { FileContext, FileHandle } from "@cosmicdrift/kumiko-types/file-handle-types";
2
- import { type FileStorageProvider } from "./types.js";
2
+ import { type FileStorageProvider } from "./types.ts";
3
3
  export type { FileContext, FileHandle };
4
4
  export declare function createFileHandle(key: string, getProvider: () => Promise<FileStorageProvider>): FileHandle;
5
5
  export declare function createFileContext(resolve: () => Promise<FileStorageProvider>, tenantId?: string): FileContext;
@@ -1,4 +1,4 @@
1
- export { FILE_REF_ENTITY_NAME } from "./types.js";
1
+ export { FILE_REF_ENTITY_NAME } from "./types.ts";
2
2
  export declare const fileRefEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
3
3
  storageKey: {
4
4
  readonly type: "text";
@@ -1,4 +1,4 @@
1
- export declare const fileRefsTable: import("../db/table-builder.js").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
1
+ export declare const fileRefsTable: import("../db/table-builder.ts").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
2
2
  storageKey: {
3
3
  readonly type: "text";
4
4
  readonly description?: string;
@@ -1,9 +1,9 @@
1
1
  import { Hono } from "hono";
2
- import type { DbConnection } from "../db/connection.js";
3
- import { type Registry, type SessionUser, type TenantId } from "../engine/types/index.js";
4
- import type { FileProviderResolver } from "./provider-resolver.js";
5
- import type { RecordReadCheck } from "./record-read-check.js";
6
- import { type RecordWriteCheck } from "./record-write-check.js";
2
+ import type { DbConnection } from "../db/connection.ts";
3
+ import { type Registry, type SessionUser, type TenantId } from "../engine/types/index.ts";
4
+ import type { FileProviderResolver } from "./provider-resolver.ts";
5
+ import type { RecordReadCheck } from "./record-read-check.ts";
6
+ import { type RecordWriteCheck } from "./record-write-check.ts";
7
7
  export type FileAccessDecision = "allow" | "deny";
8
8
  export type FileRef = {
9
9
  id: string;
@@ -1,4 +1,4 @@
1
- import type { FileStorageProvider } from "./types.js";
1
+ import type { FileStorageProvider } from "./types.ts";
2
2
  export type InMemoryFileProvider = FileStorageProvider & {
3
3
  keys(): readonly string[];
4
4
  mimeTypeOf(key: string): string | undefined;
@@ -1,20 +1,20 @@
1
- export type { CreatedFileRef, CreateFileRefContext, CreateFileRefInput, UploadedFileBytes, UploadFileBytesContext, } from "./create-file-ref-from-bytes.js";
2
- export { createFileRefFromBytes, createFileRefFromUploadedBytes, uploadFileBytesBeforeTransaction, } from "./create-file-ref-from-bytes.js";
3
- export { createFilesFeature, FILES_FEATURE } from "./feature.js";
4
- export type { FileContext, FileHandle } from "./file-handle.js";
5
- export { createFileContext, deriveKey, storageKeyStemPrefix } from "./file-handle.js";
6
- export { fileRefEntity } from "./file-ref-entity.js";
7
- export { fileRefsTable } from "./file-ref-table.js";
8
- export type { FileAccessDecision, FileAccessGuard, FileRef, FileRoutesOptions, } from "./file-routes.js";
9
- export { createFileRoutes, readFilesRouteOptions, resolveMaxUploadBodyBytes, } from "./file-routes.js";
10
- export type { InMemoryFileProvider } from "./in-memory-provider.js";
11
- export { createInMemoryFileProvider } from "./in-memory-provider.js";
12
- export { createLocalProvider } from "./local-provider.js";
13
- export type { FileProviderContext, FileProviderPlugin, FileProviderResolver, FileProviderResolverDeps, } from "./provider-resolver.js";
14
- export { createFileProviderForTenant, isFileProviderPlugin, makeFileProviderResolver, } from "./provider-resolver.js";
15
- export { resolveContentType } from "./resolve-content-type.js";
16
- export { fileRefStorageDelta, filesStorageTrackingFeature, tenantStorageUsageTable, transferTenantStorageUsage, } from "./storage-tracking.js";
17
- export type { FileContentValidationResult, FileMetadata, FileStorageProvider, FileValidationOptions, SignedUrlOptions, UploadMimeTypeResolution, WriteStreamOptions, } from "./types.js";
18
- export { assertSafeStorageKey, buildStorageKey, normalizeMimeType, parseMaxSize, resolveUploadMimeType, sniffMimeType, tenantExportPrefix, tenantStoragePrefixes, validateFile, validateFileContent, } from "./types.js";
19
- export type { ZipEntry } from "./zip-stream.js";
20
- export { createZipStream } from "./zip-stream.js";
1
+ export type { CreatedFileRef, CreateFileRefContext, CreateFileRefInput, UploadedFileBytes, UploadFileBytesContext, } from "./create-file-ref-from-bytes.ts";
2
+ export { createFileRefFromBytes, createFileRefFromUploadedBytes, uploadFileBytesBeforeTransaction, } from "./create-file-ref-from-bytes.ts";
3
+ export { createFilesFeature, FILES_FEATURE } from "./feature.ts";
4
+ export type { FileContext, FileHandle } from "./file-handle.ts";
5
+ export { createFileContext, deriveKey, storageKeyStemPrefix } from "./file-handle.ts";
6
+ export { fileRefEntity } from "./file-ref-entity.ts";
7
+ export { fileRefsTable } from "./file-ref-table.ts";
8
+ export type { FileAccessDecision, FileAccessGuard, FileRef, FileRoutesOptions, } from "./file-routes.ts";
9
+ export { createFileRoutes, readFilesRouteOptions, resolveMaxUploadBodyBytes, } from "./file-routes.ts";
10
+ export type { InMemoryFileProvider } from "./in-memory-provider.ts";
11
+ export { createInMemoryFileProvider } from "./in-memory-provider.ts";
12
+ export { createLocalProvider } from "./local-provider.ts";
13
+ export type { FileProviderContext, FileProviderPlugin, FileProviderResolver, FileProviderResolverDeps, } from "./provider-resolver.ts";
14
+ export { createFileProviderForTenant, isFileProviderPlugin, makeFileProviderResolver, } from "./provider-resolver.ts";
15
+ export { resolveContentType } from "./resolve-content-type.ts";
16
+ export { fileRefStorageDelta, filesStorageTrackingFeature, tenantStorageUsageTable, transferTenantStorageUsage, } from "./storage-tracking.ts";
17
+ export type { FileContentValidationResult, FileMetadata, FileStorageProvider, FileValidationOptions, SignedUrlOptions, UploadMimeTypeResolution, WriteStreamOptions, } from "./types.ts";
18
+ export { assertSafeStorageKey, buildStorageKey, normalizeMimeType, parseMaxSize, resolveUploadMimeType, sniffMimeType, tenantExportPrefix, tenantStoragePrefixes, validateFile, validateFileContent, } from "./types.ts";
19
+ export type { ZipEntry } from "./zip-stream.ts";
20
+ export { createZipStream } from "./zip-stream.ts";
@@ -1,5 +1,5 @@
1
- import type { TenantDb } from "../db/tenant-db.js";
2
- import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.js";
1
+ import type { TenantDb } from "../db/tenant-db.ts";
2
+ import { type Registry, type SaveContext, type SessionUser } from "../engine/types/index.ts";
3
3
  export type FileRefRows = ReadonlyMap<string, Readonly<Record<string, unknown>>>;
4
4
  export declare function loadSaveFileRefs(args: {
5
5
  readonly registry: Registry;
@@ -1,2 +1,2 @@
1
- import { type FileStorageProvider } from "./types.js";
1
+ import { type FileStorageProvider } from "./types.ts";
2
2
  export declare function createLocalProvider(basePath: string): FileStorageProvider;
@@ -1,10 +1,10 @@
1
1
  import type { CacheSyncBus } from "@cosmicdrift/kumiko-types/cache-sync-types";
2
2
  import type { FileProviderResolver } from "@cosmicdrift/kumiko-types/file-provider-resolver-types";
3
- import type { DbConnection } from "../db/connection.js";
4
- import type { TenantDb } from "../db/tenant-db.js";
5
- import type { ConfigAccessor, ConfigAccessorFactory, Registry } from "../engine/types/index.js";
6
- import type { SecretsContext } from "../secrets/index.js";
7
- import type { FileStorageProvider } from "./types.js";
3
+ import type { DbConnection } from "../db/connection.ts";
4
+ import type { TenantDb } from "../db/tenant-db.ts";
5
+ import type { ConfigAccessor, ConfigAccessorFactory, Registry } from "../engine/types/index.ts";
6
+ import type { SecretsContext } from "../secrets/index.ts";
7
+ import type { FileStorageProvider } from "./types.ts";
8
8
  /**
9
9
  * Schmaler Surface-Type fuer Provider-Plugins. HandlerContext ist zu fett
10
10
  * (haelt tx, actor, signal etc.) — Provider sollen sich auf die read-Felder
@@ -1,7 +1,7 @@
1
1
  import type { FileContext } from "@cosmicdrift/kumiko-types/file-handle-types";
2
2
  import type { Logger } from "@cosmicdrift/kumiko-types/logger";
3
- import { deleteMany, type WhereObject } from "../db/query.js";
4
- import type { TenantDb } from "../db/tenant-db.js";
3
+ import { deleteMany, type WhereObject } from "../db/query.ts";
4
+ import type { TenantDb } from "../db/tenant-db.ts";
5
5
  export declare const EXPIRED_FILE_REF_PURGE_BATCH = 500;
6
6
  type PurgeLog = Pick<Logger, "warn"> | undefined;
7
7
  type PurgeTable = Parameters<typeof deleteMany>[1];
@@ -1,4 +1,4 @@
1
- import type { Registry, SessionUser } from "../engine/types/index.js";
1
+ import type { Registry, SessionUser } from "../engine/types/index.ts";
2
2
  export type RecordReadCheck = (args: {
3
3
  readonly entityType: string;
4
4
  readonly entityId: string;
@@ -1,6 +1,6 @@
1
- import type { TenantDb } from "../db/tenant-db.js";
2
- import type { Registry, SessionUser, TenantId } from "../engine/types/index.js";
3
- import type { RecordReadCheck } from "./record-read-check.js";
1
+ import type { TenantDb } from "../db/tenant-db.ts";
2
+ import type { Registry, SessionUser, TenantId } from "../engine/types/index.ts";
3
+ import type { RecordReadCheck } from "./record-read-check.ts";
4
4
  export declare const RecordWriteDecisions: {
5
5
  readonly writable: "writable";
6
6
  readonly notFound: "not_found";
@@ -1,5 +1,5 @@
1
- import { type DbRunner } from "../db/index.js";
2
- import { type Registry } from "../engine/index.js";
1
+ import { type DbRunner } from "../db/index.ts";
2
+ import { type Registry } from "../engine/index.ts";
3
3
  export declare function fileRefStorageDelta(event: {
4
4
  readonly type: string;
5
5
  readonly payload: Record<string, unknown>;
@@ -1,4 +1,4 @@
1
- import type { TenantId } from "../engine/types/identifiers.js";
1
+ import type { TenantId } from "../engine/types/identifiers.ts";
2
2
  export declare const FILE_REF_ENTITY_NAME = "fileRef";
3
3
  export type FileMetadata = {
4
4
  readonly fileName: string;
@@ -1,4 +1,4 @@
1
- import { getTemporal } from "../time/index.js";
1
+ import { getTemporal } from "../time/index.ts";
2
2
  export interface ZipEntry {
3
3
  /** Pfad im ZIP, slash-separated. ASCII (kein UTF-8-Flag gesetzt). */
4
4
  readonly path: string;
@@ -1,7 +1,7 @@
1
- import type { Registry } from "../engine/types/index.js";
2
- export { hasMailTranslationKey, hasMailTranslations, listMailLocales, mailT, registerMailTranslations, resolveMailLocale, } from "./mail-registry.js";
3
- export { canonicalizeLocaleTag, DEFAULT_LOCALE, isValidLocaleTag, pickAcceptLanguage, resolveHeaderLocale, } from "./request-locale.js";
4
- export { SETTINGS_HUB_I18N } from "./settings-hub-keys.js";
1
+ import type { Registry } from "../engine/types/index.ts";
2
+ export { hasMailTranslationKey, hasMailTranslations, listMailLocales, mailT, registerMailTranslations, resolveMailLocale, } from "./mail-registry.ts";
3
+ export { canonicalizeLocaleTag, DEFAULT_LOCALE, isValidLocaleTag, pickAcceptLanguage, resolveHeaderLocale, } from "./request-locale.ts";
4
+ export { SETTINGS_HUB_I18N } from "./settings-hub-keys.ts";
5
5
  export type I18nOptions = {
6
6
  defaultLocale: string;
7
7
  };
@@ -1,4 +1,4 @@
1
- import { type TranslationValue } from "../ui-types/plural.js";
1
+ import { type TranslationValue } from "../ui-types/plural.ts";
2
2
  export declare function registerMailTranslations(locale: string, bundle: Readonly<Record<string, TranslationValue>>): void;
3
3
  export declare function listMailLocales(): readonly string[];
4
4
  export declare function hasMailTranslationKey(locale: string, key: string): boolean;
@@ -1,4 +1,4 @@
1
- import type { FeatureDefinition, NavDefinition, ScreenDefinition, WorkspaceDefinition } from "../engine/types/index.js";
1
+ import type { FeatureDefinition, NavDefinition, ScreenDefinition, WorkspaceDefinition } from "../engine/types/index.ts";
2
2
  /** Pseudo-entity for actionForm field labels (renderer action-form-shim). */
3
3
  export declare const ACTION_FORM_ENTITY = "__action-form__";
4
4
  /** Pseudo-entity for configEdit field labels (renderer config-edit-shim). */
@@ -1,4 +1,4 @@
1
- import type { TranslationKeys } from "../engine/types/config.js";
1
+ import type { TranslationKeys } from "../engine/types/config.ts";
2
2
  /**
3
3
  * Settings-Hub chrome keys (parent-nav labels, secrets-screen title/strings)
4
4
  * needed by ANY app that mounts a foundation feature producing a hub nav —
@@ -16,10 +16,9 @@ export const SETTINGS_HUB_I18N = {
16
16
  "config.settings.tenant": { en: "Tenant" },
17
17
  "config.settings.user": { en: "Personal" },
18
18
  "config.settings.extensionSelectorHint": {
19
- en: "Choose a provider and save. Its settings appear below.",
19
+ en: "Choose a provider. Its settings appear below and are saved together with it.",
20
20
  },
21
21
  "config.settings.provider": { en: "Provider" },
22
- "config.settings.saveProvider": { en: "Save provider" },
23
22
  "config.settings.audience.system": {
24
23
  en: "Applies to every tenant unless a tenant sets its own value.",
25
24
  },
@@ -1,12 +1,12 @@
1
- export { createDbConnection } from "../db/connection.js";
2
- export { createDatabase, databaseExists, dropDatabaseIfExists, truncateTablesRestartIdentity, } from "../db/queries/test-stack.js";
3
- export { type AnyDb, isClosedConnectionError } from "../db/query.js";
4
- export { columnNamesOf } from "../db/schema-inspection.js";
5
- export { schemaTableName } from "../db/table-introspection.js";
6
- export { addMissingColumns, addMissingIndexes, tableToMeta, unsafeCreateEntityTable, unsafeEnsureEntityTable, unsafePushTables, } from "../db/table-push.js";
7
- export { SEARCHABLE_FALSE_WHITELIST } from "../engine/boot-validator/entity-list-screens.js";
8
- export { validateNavBootSubset } from "../engine/boot-validator/index.js";
9
- export { validateOwnershipBoot } from "../engine/boot-validator/ownership.js";
10
- export { featureHasI18nSurface, requiredKeysFromFeature } from "../i18n/required-surface-keys.js";
11
- export type { Lifecycle } from "../lifecycle/index.js";
12
- export { createRateLimitResolver } from "../rate-limit/index.js";
1
+ export { createDbConnection } from "../db/connection.ts";
2
+ export { createDatabase, databaseExists, dropDatabaseIfExists, truncateTablesRestartIdentity, } from "../db/queries/test-stack.ts";
3
+ export { type AnyDb, isClosedConnectionError } from "../db/query.ts";
4
+ export { columnNamesOf } from "../db/schema-inspection.ts";
5
+ export { schemaTableName } from "../db/table-introspection.ts";
6
+ export { addMissingColumns, addMissingIndexes, tableToMeta, unsafeCreateEntityTable, unsafeEnsureEntityTable, unsafePushTables, } from "../db/table-push.ts";
7
+ export { SEARCHABLE_FALSE_WHITELIST } from "../engine/boot-validator/entity-list-screens.ts";
8
+ export { validateNavBootSubset } from "../engine/boot-validator/index.ts";
9
+ export { validateOwnershipBoot } from "../engine/boot-validator/ownership.ts";
10
+ export { featureHasI18nSurface, requiredKeysFromFeature } from "../i18n/required-surface-keys.ts";
11
+ export type { Lifecycle } from "../lifecycle/index.ts";
12
+ export { createRateLimitResolver } from "../rate-limit/index.ts";
@@ -1,4 +1,4 @@
1
- export { resetBlindIndexKeyForTests } from "../crypto/blind-index.js";
2
- export { resetEventPiiCatalogForTests } from "../crypto/event-pii.js";
3
- export { resetPiiSubjectKmsForTests } from "../crypto/pii-field-encryption.js";
4
- export { resetEntityFieldEncryptionCacheForTests } from "../db/entity-field-encryption.js";
1
+ export { resetBlindIndexKeyForTests } from "../crypto/blind-index.ts";
2
+ export { resetEventPiiCatalogForTests } from "../crypto/event-pii.ts";
3
+ export { resetPiiSubjectKmsForTests } from "../crypto/pii-field-encryption.ts";
4
+ export { resetEntityFieldEncryptionCacheForTests } from "../db/entity-field-encryption.ts";
@@ -1,2 +1,2 @@
1
- export type { JobDroppedMeta, JobLogEntry, JobMeta, JobOutcomeMeta, JobQueuedMeta, JobRunner, JobRunnerOptions, JobSubjectValue, } from "./job-runner.js";
2
- export { createJobRunner, serializeJobSubject } from "./job-runner.js";
1
+ export type { JobDroppedMeta, JobLogEntry, JobMeta, JobOutcomeMeta, JobQueuedMeta, JobRunner, JobRunnerOptions, JobSubjectValue, } from "./job-runner.ts";
2
+ export { createJobRunner, serializeJobSubject } from "./job-runner.ts";
@@ -1,5 +1,5 @@
1
1
  /// <reference types="temporal-polyfill/global" preserve="true" />
2
- import { type AppContext, type DispatchWriteRef, type JobRunIn, type JobTriggerEvent, type Registry, type SessionUser, type TenantId } from "../engine/types/index.js";
2
+ import { type AppContext, type DispatchWriteRef, type JobRunIn, type JobTriggerEvent, type Registry, type SessionUser, type TenantId } from "../engine/types/index.ts";
3
3
  /**
4
4
  * BullMQ job ids are `repeat:<schedulerId>:<millis>`. Colons inside the
5
5
  * scheduler id push the segment count to ≥5, which BullMQ's legacy heuristic
@@ -1,4 +1,4 @@
1
- import type { JobDefinition } from "../engine/types/index.js";
1
+ import type { JobDefinition } from "../engine/types/index.ts";
2
2
  export declare const DEFAULT_MAX_PER_TENANT_DEFER_MS = 1000;
3
3
  export type ResolvedMaxPerTenant = {
4
4
  readonly limit: number;
@@ -1,2 +1,2 @@
1
- export { createLifecycle, type Lifecycle, type LifecycleOptions, type LifecycleState, type ShutdownHookFn, type StateChangeListener, } from "./lifecycle.js";
2
- export { type AttachSignalHandlersOptions, attachSignalHandlers, type SignalHandlerHandle, } from "./signal-handlers.js";
1
+ export { createLifecycle, type Lifecycle, type LifecycleOptions, type LifecycleState, type ShutdownHookFn, type StateChangeListener, } from "./lifecycle.ts";
2
+ export { type AttachSignalHandlersOptions, attachSignalHandlers, type SignalHandlerHandle, } from "./signal-handlers.ts";
@@ -1,4 +1,4 @@
1
- import type { Logger } from "../logging/types.js";
1
+ import type { Logger } from "../logging/types.ts";
2
2
  export type LifecycleState = "starting" | "ready" | "draining" | "stopped";
3
3
  export type StateChangeListener = (from: LifecycleState, to: LifecycleState) => void;
4
4
  export type ShutdownHookFn = (signal: string) => Promise<void>;
@@ -1,4 +1,4 @@
1
- import type { Lifecycle } from "./lifecycle.js";
1
+ import type { Lifecycle } from "./lifecycle.ts";
2
2
  export type AttachSignalHandlersOptions = {
3
3
  readonly timeoutMs?: number;
4
4
  readonly signals?: readonly NodeJS.Signals[];
@@ -1,4 +1,4 @@
1
- export type { LoggerOptions } from "./pino-logger.js";
2
- export { createLogger } from "./pino-logger.js";
3
- export type { Logger } from "./types.js";
4
- export { createFallbackLogger } from "./utils.js";
1
+ export type { LoggerOptions } from "./pino-logger.ts";
2
+ export { createLogger } from "./pino-logger.ts";
3
+ export type { Logger } from "./types.ts";
4
+ export { createFallbackLogger } from "./utils.ts";
@@ -1,5 +1,5 @@
1
1
  import { type DestinationStream } from "pino";
2
- import type { Logger } from "./types.js";
2
+ import type { Logger } from "./types.ts";
3
3
  export type LoggerOptions = {
4
4
  level?: "debug" | "info" | "warn" | "error";
5
5
  pretty?: boolean;
@@ -1,4 +1,4 @@
1
- import type { Logger } from "./types.js";
1
+ import type { Logger } from "./types.ts";
2
2
  type FallbackLogger = {
3
3
  error(msg: string, data?: Record<string, unknown>): void;
4
4
  warn(msg: string, data?: Record<string, unknown>): void;
@@ -1,4 +1,4 @@
1
- export { assertKumikoSchemaCurrent, type ChecksumMismatch, detectKumikoDrift, formatKumikoDriftReport, type KumikoDriftReport, SchemaDriftError, } from "./kumiko-drift.js";
2
- export { createPendingRebuildsTable, type EnqueueProjectionRebuildDeps, type EnqueueProjectionRebuildResult, enqueueProjectionRebuild, listPendingRebuilds, type PendingRebuildRun, PROJECTION_REBUILD_JOB, pendingRebuildsTable, queueRebuildsFromMarkers, type RunPendingRebuildsOptions, rebuildProjectionOrMultiStream, reportPendingRebuildRun, runPendingRebuilds, } from "./pending-rebuilds.js";
3
- export { createPiiBackfillStateTable, type PiiEventBackfillOptions, type PiiEventBackfillResult, type PiiRebuildRun, piiAnnotationFingerprint, piiBackfillStateTable, runPiiEventBackfill, } from "./pii-event-backfill.js";
4
- export { buildProjectionTableIndex } from "./projection-table-index.js";
1
+ export { assertKumikoSchemaCurrent, type ChecksumMismatch, detectKumikoDrift, formatKumikoDriftReport, type KumikoDriftReport, SchemaDriftError, } from "./kumiko-drift.ts";
2
+ export { createPendingRebuildsTable, type EnqueueProjectionRebuildDeps, type EnqueueProjectionRebuildResult, enqueueProjectionRebuild, listPendingRebuilds, type PendingRebuildRun, PROJECTION_REBUILD_JOB, pendingRebuildsTable, queueRebuildsFromMarkers, type RunPendingRebuildsOptions, rebuildProjectionOrMultiStream, reportPendingRebuildRun, runPendingRebuilds, } from "./pending-rebuilds.ts";
3
+ export { createPiiBackfillStateTable, type PiiEventBackfillOptions, type PiiEventBackfillResult, type PiiRebuildRun, piiAnnotationFingerprint, piiBackfillStateTable, runPiiEventBackfill, } from "./pii-event-backfill.ts";
4
+ export { buildProjectionTableIndex } from "./projection-table-index.ts";
@@ -1,4 +1,4 @@
1
- import type { DbConnection } from "../db/connection.js";
1
+ import type { DbConnection } from "../db/connection.ts";
2
2
  export type ChecksumMismatch = {
3
3
  readonly id: string;
4
4
  readonly expected: string;
@@ -1,8 +1,8 @@
1
- import type { DbConnection } from "../db/connection.js";
2
- import type { Registry } from "../engine/types/index.js";
3
- import type { JobRunner } from "../jobs/index.js";
4
- import type { Logger } from "../logging/types.js";
5
- import { type RebuildResult } from "../pipeline/index.js";
1
+ import type { DbConnection } from "../db/connection.ts";
2
+ import type { Registry } from "../engine/types/index.ts";
3
+ import type { JobRunner } from "../jobs/index.ts";
4
+ import type { Logger } from "../logging/types.ts";
5
+ import { type RebuildResult } from "../pipeline/index.ts";
6
6
  export declare const pendingRebuildsTable: import("@cosmicdrift/kumiko-types/schema-table-types").SchemaTable;
7
7
  export declare function createPendingRebuildsTable(db: DbConnection): Promise<void>;
8
8
  /** Liest die rebuild-Marker der frisch applizierten Migrations und queued
@@ -1,7 +1,7 @@
1
- import type { DbConnection } from "../db/connection.js";
2
- import { type PiiBackfillFailure } from "../db/queries/backfill-pii.js";
3
- import type { Registry } from "../engine/types/index.js";
4
- import type { Logger } from "../logging/types.js";
1
+ import type { DbConnection } from "../db/connection.ts";
2
+ import { type PiiBackfillFailure } from "../db/queries/backfill-pii.ts";
3
+ import type { Registry } from "../engine/types/index.ts";
4
+ import type { Logger } from "../logging/types.ts";
5
5
  export declare const piiBackfillStateTable: import("@cosmicdrift/kumiko-types/schema-table-types").SchemaTable;
6
6
  export declare function createPiiBackfillStateTable(db: DbConnection): Promise<void>;
7
7
  export declare function piiAnnotationEntries(registry: Registry): readonly string[];
@@ -1,4 +1,4 @@
1
- import type { Registry } from "../engine/types/feature.js";
1
+ import type { Registry } from "../engine/types/feature.ts";
2
2
  /** Index `tableName → projection-name` aus der Registry. Nur Projections mit
3
3
  * table-Definition (single-stream + multi-stream-with-table) zählen.
4
4
  * Side-effect-only MSPs (table omitted) haben keinen Rebuild-Sinn. */
@@ -1,4 +1,4 @@
1
- import type { ObservabilityOptions, ObservabilityProvider } from "./types/index.js";
1
+ import type { ObservabilityOptions, ObservabilityProvider } from "./types/index.ts";
2
2
  type ConsoleWriter = {
3
3
  readonly log: (line: string) => void;
4
4
  };
@@ -1,4 +1,4 @@
1
- import type { Span } from "./types/index.js";
1
+ import type { Span } from "./types/index.ts";
2
2
  type ObservabilityContextData = {
3
3
  readonly activeSpan?: Span;
4
4
  };
@@ -1,6 +1,6 @@
1
- import type { EscapeHatchAuditSink, EscapeHatchKind, EscapeHatchReporter, EscapeHatchUseEvent, TenantId } from "../engine/types/index.js";
2
- import type { Logger } from "../logging/types.js";
3
- import type { Meter } from "./types/index.js";
1
+ import type { EscapeHatchAuditSink, EscapeHatchKind, EscapeHatchReporter, EscapeHatchUseEvent, TenantId } from "../engine/types/index.ts";
2
+ import type { Logger } from "../logging/types.ts";
3
+ import type { Meter } from "./types/index.ts";
4
4
  export declare const ESCAPE_HATCH_USED_SIGNAL = "security:escape-hatch-used";
5
5
  export type EscapeHatchReportWindow = {
6
6
  shouldReport(key: string, nowMs: number): boolean;
@@ -1,4 +1,4 @@
1
- import type { Meter, ObservabilityProvider, Tracer } from "./types/index.js";
1
+ import type { Meter, ObservabilityProvider, Tracer } from "./types/index.ts";
2
2
  export declare function getFallbackProvider(): ObservabilityProvider;
3
3
  export declare function getFallbackTracer(): Tracer;
4
4
  export declare function getFallbackMeter(): Meter;
@@ -1,16 +1,16 @@
1
- export { type ConsoleProviderOptions, createConsoleProvider } from "./console-provider.js";
2
- export { observabilityContext } from "./context.js";
3
- export { createEscapeHatchProcessDedup, createEscapeHatchReporter, createEscapeHatchReportWindow, ESCAPE_HATCH_USED_SIGNAL, type EscapeHatchProcessDedup, type EscapeHatchReportWindow, fallbackEscapeHatchReporter, flushEscapeHatchAudits, reportEscapeHatchUse, UNATTRIBUTED_ACTOR, withEscapeHatchAuditScope, } from "./escape-hatch-report.js";
4
- export { getFallbackMeter, getFallbackProvider, getFallbackTracer } from "./fallback.js";
5
- export { generateSpanId, generateTraceId } from "./ids.js";
6
- export { buildMetricName, validateLabelKey, validateMetricName, } from "./metric-validator.js";
7
- export { createMetricsForFactory, createMetricsHandle, createNoopMetricsHandle, createSafeMetricsHandle, createUnboundMetricsHandle, } from "./metrics-handle.js";
8
- export { type ObservabilityWiring, prometheusMetricsEnvSchema, resolveObservabilityWiring, } from "./metrics-wiring.js";
9
- export { createNoopProvider } from "./noop-provider.js";
10
- export { createPrometheusMeter, type PrometheusMeter, type PrometheusMeterSnapshot, serializeOpenMetrics, } from "./prometheus-meter.js";
11
- export { type MetricEvent, type MetricEventHandler, RecordingMeter, } from "./recording-meter.js";
12
- export { type RecordedSpan, RecordingTracer, type RecordingTracerOptions, serializeSpanContext, } from "./recording-tracer.js";
13
- export { wrapRedisClient } from "./redis-wrapper.js";
14
- export { DEFAULT_SENSITIVE_CONFIG, mergeSensitiveConfig, REDACTED, redactAttributes, redactHeaders, redactQueryString, redactValue, shouldRedactAttribute, } from "./sensitive-filter.js";
15
- export { emitDbQuery, emitDispatcherError, emitDispatcherHandler, emitEscapeHatchUse, emitEventConsumerLag, emitEventConsumerPassOutcome, emitEventConsumerPassSkipped, emitEventConsumerPendingGaps, emitEventConsumerRearmExhausted, emitEventDispatcherListenConnected, emitHttpRequest, emitJobLastSuccess, emitJobQueueDepth, registerStandardMetrics, STANDARD_METRIC_DEFS, } from "./standard-metrics.js";
16
- export type { Counter, Gauge, Histogram, Meter, MetricDefinition, MetricLabels, MetricsHandle, MetricType, ObservabilityOptions, ObservabilityProvider, SamplingConfig, SensitiveFilterConfig, SerializedTraceContext, Span, SpanAttributes, SpanAttributeValue, SpanKind, SpanStatus, StartSpanOptions, Tracer, } from "./types/index.js";
1
+ export { type ConsoleProviderOptions, createConsoleProvider } from "./console-provider.ts";
2
+ export { observabilityContext } from "./context.ts";
3
+ export { createEscapeHatchProcessDedup, createEscapeHatchReporter, createEscapeHatchReportWindow, ESCAPE_HATCH_USED_SIGNAL, type EscapeHatchProcessDedup, type EscapeHatchReportWindow, fallbackEscapeHatchReporter, flushEscapeHatchAudits, reportEscapeHatchUse, UNATTRIBUTED_ACTOR, withEscapeHatchAuditScope, } from "./escape-hatch-report.ts";
4
+ export { getFallbackMeter, getFallbackProvider, getFallbackTracer } from "./fallback.ts";
5
+ export { generateSpanId, generateTraceId } from "./ids.ts";
6
+ export { buildMetricName, validateLabelKey, validateMetricName, } from "./metric-validator.ts";
7
+ export { createMetricsForFactory, createMetricsHandle, createNoopMetricsHandle, createSafeMetricsHandle, createUnboundMetricsHandle, } from "./metrics-handle.ts";
8
+ export { type ObservabilityWiring, prometheusMetricsEnvSchema, resolveObservabilityWiring, } from "./metrics-wiring.ts";
9
+ export { createNoopProvider } from "./noop-provider.ts";
10
+ export { createPrometheusMeter, type PrometheusMeter, type PrometheusMeterSnapshot, serializeOpenMetrics, } from "./prometheus-meter.ts";
11
+ export { type MetricEvent, type MetricEventHandler, RecordingMeter, } from "./recording-meter.ts";
12
+ export { type RecordedSpan, RecordingTracer, type RecordingTracerOptions, serializeSpanContext, } from "./recording-tracer.ts";
13
+ export { wrapRedisClient } from "./redis-wrapper.ts";
14
+ export { DEFAULT_SENSITIVE_CONFIG, mergeSensitiveConfig, REDACTED, redactAttributes, redactHeaders, redactQueryString, redactValue, shouldRedactAttribute, } from "./sensitive-filter.ts";
15
+ export { emitDbQuery, emitDispatcherError, emitDispatcherHandler, emitEscapeHatchUse, emitEventConsumerLag, emitEventConsumerPassOutcome, emitEventConsumerPassSkipped, emitEventConsumerPendingGaps, emitEventConsumerRearmExhausted, emitEventDispatcherListenConnected, emitHttpRequest, emitJobLastSuccess, emitJobQueueDepth, registerStandardMetrics, STANDARD_METRIC_DEFS, } from "./standard-metrics.ts";
16
+ export type { Counter, Gauge, Histogram, Meter, MetricDefinition, MetricLabels, MetricsHandle, MetricType, ObservabilityOptions, ObservabilityProvider, SamplingConfig, SensitiveFilterConfig, SerializedTraceContext, Span, SpanAttributes, SpanAttributeValue, SpanKind, SpanStatus, StartSpanOptions, Tracer, } from "./types/index.ts";
@@ -1,4 +1,4 @@
1
- import type { MetricType } from "./types/index.js";
1
+ import type { MetricType } from "./types/index.ts";
2
2
  export declare function validateMetricName(name: string, type: MetricType): void;
3
3
  export declare function buildMetricName(featureName: string, shortName: string): string;
4
4
  export declare function validateLabelKey(key: string): void;
@@ -1,4 +1,4 @@
1
- import type { Meter, MetricsHandle } from "./types/index.js";
1
+ import type { Meter, MetricsHandle } from "./types/index.ts";
2
2
  export declare function createMetricsHandle(meter: Meter, featureName: string): MetricsHandle;
3
3
  export declare function createSafeMetricsHandle(meter: Meter, featureName: string): MetricsHandle;
4
4
  export declare function createUnboundMetricsHandle(meter: Meter): MetricsHandle;
@@ -1,6 +1,6 @@
1
1
  import * as z from "zod";
2
- import { type PrometheusMeter } from "./prometheus-meter.js";
3
- import type { ObservabilityProvider } from "./types/index.js";
2
+ import { type PrometheusMeter } from "./prometheus-meter.ts";
3
+ import type { ObservabilityProvider } from "./types/index.ts";
4
4
  export declare const prometheusMetricsEnvSchema: z.ZodObject<{
5
5
  PROMETHEUS_METRICS_TOKEN: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodLiteral<"">, z.ZodTransform<undefined, "">>, z.ZodString]>>;
6
6
  }, z.core.$strip>;
@@ -1,2 +1,2 @@
1
- import type { ObservabilityProvider } from "./types/index.js";
1
+ import type { ObservabilityProvider } from "./types/index.ts";
2
2
  export declare function createNoopProvider(): ObservabilityProvider;
@@ -1,4 +1,4 @@
1
- import type { Meter, MetricDefinition, MetricLabels } from "./types/index.js";
1
+ import type { Meter, MetricDefinition, MetricLabels } from "./types/index.ts";
2
2
  type CounterState = {
3
3
  labels: MetricLabels | undefined;
4
4
  value: number;
@@ -1,4 +1,4 @@
1
- import type { Counter, Gauge, Histogram, Meter, MetricDefinition, MetricLabels } from "./types/index.js";
1
+ import type { Counter, Gauge, Histogram, Meter, MetricDefinition, MetricLabels } from "./types/index.ts";
2
2
  export type MetricEvent = {
3
3
  readonly type: "counter.inc";
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import type { SensitiveFilterConfig, SerializedTraceContext, Span, SpanAttributeValue, SpanKind, SpanStatus, StartSpanOptions, Tracer } from "./types/index.js";
1
+ import type { SensitiveFilterConfig, SerializedTraceContext, Span, SpanAttributeValue, SpanKind, SpanStatus, StartSpanOptions, Tracer } from "./types/index.ts";
2
2
  export type RecordedSpan = {
3
3
  readonly traceId: string;
4
4
  readonly spanId: string;
@@ -1,3 +1,3 @@
1
1
  import type { Redis } from "ioredis";
2
- import type { Tracer } from "./types/index.js";
2
+ import type { Tracer } from "./types/index.ts";
3
3
  export declare function wrapRedisClient(client: Redis, tracer: Tracer): Redis;