@cosmicdrift/kumiko-bundled-features 0.292.0 → 0.294.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 (122) hide show
  1. package/package.json +9 -9
  2. package/src/__tests__/access-invalidation-consumer.integration.test.ts +1 -2
  3. package/src/__tests__/access-invalidation-stream.integration.test.ts +1 -2
  4. package/src/__tests__/account-security-composition.integration.test.ts +0 -2
  5. package/src/__tests__/boot-seed-contract.integration.test.ts +1 -2
  6. package/src/__tests__/env-schemas.test.ts +1 -0
  7. package/src/__tests__/es-ops-e2e.integration.test.ts +0 -2
  8. package/src/agent-tools/__tests__/tool-dispatch.integration.test.ts +0 -2
  9. package/src/auth-email-password/__tests__/identity-v3-login.integration.test.ts +0 -2
  10. package/src/auth-email-password/__tests__/seed-admin-guarded.integration.test.ts +1 -2
  11. package/src/auth-email-password/__tests__/seed-admin.integration.test.ts +1 -2
  12. package/src/billing-foundation/__tests__/billing-foundation.integration.test.ts +1 -6
  13. package/src/billing-foundation/__tests__/subscription-tier-sync.integration.test.ts +0 -2
  14. package/src/cap-counter/__tests__/cap-counter.integration.test.ts +1 -2
  15. package/src/cap-counter/__tests__/stock-cap-guard.integration.test.ts +1 -3
  16. package/src/cap-counter/__tests__/with-cap-enforcement.integration.test.ts +1 -2
  17. package/src/cap-overview/__tests__/cap-overview-security.integration.test.ts +0 -2
  18. package/src/cap-overview/__tests__/caps-usage-escape-hatch.integration.test.ts +0 -2
  19. package/src/compliance-profiles/__tests__/compliance-profiles.integration.test.ts +0 -3
  20. package/src/compliance-profiles/__tests__/seeding.integration.test.ts +1 -2
  21. package/src/compliance-profiles-ops/__tests__/ops.integration.test.ts +0 -2
  22. package/src/config/__tests__/backing-secrets.integration.test.ts +0 -3
  23. package/src/crypto-shredding/__tests__/forget-subject-record.integration.test.ts +1 -4
  24. package/src/crypto-shredding/__tests__/forget-subject.integration.test.ts +1 -6
  25. package/src/custom-fields/__tests__/audit-integration.integration.test.ts +0 -2
  26. package/src/custom-fields/__tests__/cross-tenant-field-delete.integration.test.ts +0 -2
  27. package/src/custom-fields/__tests__/cross-tenant-set-write.integration.test.ts +0 -2
  28. package/src/custom-fields/__tests__/custom-fields.integration.test.ts +0 -2
  29. package/src/custom-fields/__tests__/field-access.integration.test.ts +0 -2
  30. package/src/custom-fields/__tests__/field-definition-role-config.integration.test.ts +0 -2
  31. package/src/custom-fields/__tests__/quota.integration.test.ts +0 -2
  32. package/src/custom-fields/__tests__/retention.integration.test.ts +0 -2
  33. package/src/custom-fields/__tests__/user-data-rights.integration.test.ts +0 -2
  34. package/src/file-foundation/__tests__/file-foundation.integration.test.ts +0 -2
  35. package/src/files-tenant-data/__tests__/hooks.integration.test.ts +1 -6
  36. package/src/files-tenant-data/__tests__/sweep-orphaned-derivatives.job.integration.test.ts +0 -2
  37. package/src/folders/__tests__/folders-parent-visibility.integration.test.ts +0 -2
  38. package/src/folders/__tests__/folders-read-gate.integration.test.ts +0 -2
  39. package/src/folders/__tests__/folders.integration.test.ts +0 -3
  40. package/src/folders-user-data/__tests__/hooks.integration.test.ts +0 -2
  41. package/src/form-draft/__tests__/cleanup.integration.test.ts +0 -2
  42. package/src/form-draft/__tests__/discard-file-refs.integration.test.ts +0 -2
  43. package/src/form-draft/__tests__/feature-optional-config.integration.test.ts +0 -2
  44. package/src/form-draft/__tests__/form-draft.integration.test.ts +0 -2
  45. package/src/form-draft/__tests__/limits.integration.test.ts +0 -2
  46. package/src/form-draft-user-data/__tests__/hooks-delete-failure.integration.test.ts +0 -2
  47. package/src/form-draft-user-data/__tests__/hooks.integration.test.ts +0 -2
  48. package/src/inbound-mail-foundation/__tests__/connect-routes.integration.test.ts +0 -2
  49. package/src/inbound-mail-foundation/__tests__/inbound-mail-foundation.integration.test.ts +0 -2
  50. package/src/inbound-mail-foundation/__tests__/retention.integration.test.ts +1 -2
  51. package/src/inbound-mail-foundation/__tests__/watch-supervisor.integration.test.ts +0 -2
  52. package/src/inbound-provider-imap/__tests__/imap-foundation.integration.test.ts +0 -2
  53. package/src/jobs/__tests__/job-system-user.integration.test.ts +1 -5
  54. package/src/jobs/__tests__/jobs-events.integration.test.ts +1 -2
  55. package/src/jobs/__tests__/jobs-feature.integration.test.ts +0 -2
  56. package/src/jobs/__tests__/jobs-pii-kms.integration.test.ts +1 -2
  57. package/src/jobs/__tests__/projection-rebuild-job.integration.test.ts +0 -2
  58. package/src/jobs/__tests__/reindex-entity-job.integration.test.ts +0 -2
  59. package/src/jobs/__tests__/tenant-job-failures.integration.test.ts +0 -2
  60. package/src/ledger/__tests__/ledger-reports-tenant-isolation.integration.test.ts +0 -2
  61. package/src/ledger/__tests__/ledger.integration.test.ts +0 -2
  62. package/src/legal-pages/__tests__/legal-pages.integration.test.ts +0 -5
  63. package/src/mail-foundation/__tests__/mail-foundation.integration.test.ts +0 -2
  64. package/src/managed-pages/__tests__/managed-pages.integration.test.ts +0 -4
  65. package/src/notes-history/__tests__/notes-history-ownership.integration.test.ts +0 -4
  66. package/src/notes-history/__tests__/notes-history-parent-visibility.integration.test.ts +0 -3
  67. package/src/notes-history/__tests__/notes-history.integration.test.ts +0 -2
  68. package/src/notes-history/__tests__/notes-read-gate.integration.test.ts +0 -3
  69. package/src/notes-history-user-data/__tests__/hooks.integration.test.ts +0 -2
  70. package/src/notes-history-user-data/__tests__/mention-forget.integration.test.ts +0 -2
  71. package/src/readiness/__tests__/readiness.integration.test.ts +1 -2
  72. package/src/secrets/__tests__/access-options.integration.test.ts +0 -2
  73. package/src/secrets/__tests__/secrets-events.integration.test.ts +1 -2
  74. package/src/secrets/__tests__/secrets.integration.test.ts +0 -2
  75. package/src/secrets/feature.ts +3 -1
  76. package/src/seo/__tests__/seo.integration.test.ts +0 -3
  77. package/src/sessions/__tests__/rebuild-survival.integration.test.ts +0 -2
  78. package/src/sessions/__tests__/sessions.integration.test.ts +1 -2
  79. package/src/subscription-mollie/__tests__/mollie-foundation.integration.test.ts +1 -2
  80. package/src/subscription-stripe/__tests__/stripe-foundation.integration.test.ts +1 -3
  81. package/src/tags/__tests__/tags-parent-visibility.integration.test.ts +0 -2
  82. package/src/tags/__tests__/tags-read-gate.integration.test.ts +0 -3
  83. package/src/tags/__tests__/tags.integration.test.ts +0 -4
  84. package/src/template-resolver/__tests__/collection-kinds.integration.test.ts +0 -2
  85. package/src/template-resolver/__tests__/collection-ownership.integration.test.ts +0 -2
  86. package/src/template-resolver/__tests__/handlers.integration.test.ts +0 -2
  87. package/src/template-resolver/__tests__/seed-legal-content.integration.test.ts +1 -2
  88. package/src/template-resolver/__tests__/text-blocks.integration.test.ts +1 -2
  89. package/src/tenant/__tests__/multi-tenant.integration.test.ts +0 -2
  90. package/src/tenant/__tests__/seed-testing.integration.test.ts +1 -2
  91. package/src/tenant/__tests__/tenant-security.integration.test.ts +1 -2
  92. package/src/tenant/__tests__/tenant.integration.test.ts +0 -2
  93. package/src/tenant/__tests__/update-cross-tenant.integration.test.ts +0 -2
  94. package/src/tenant-handover/__tests__/claim.integration.test.ts +1 -2
  95. package/src/tenant-lifecycle/__tests__/tenant-lifecycle.integration.test.ts +1 -10
  96. package/src/tenant-settings/__tests__/tenant-settings.integration.test.ts +0 -2
  97. package/src/tier-engine/__tests__/tier-engine.integration.test.ts +0 -2
  98. package/src/user/__tests__/email-unique-blind-index.integration.test.ts +0 -2
  99. package/src/user/__tests__/email-unique-plaintext-soft-delete.integration.test.ts +0 -2
  100. package/src/user/__tests__/seed-testing.integration.test.ts +1 -2
  101. package/src/user/__tests__/stream-tenant-backfill.integration.test.ts +1 -2
  102. package/src/user-data-rights/__tests__/anonymous-deletion-kms.integration.test.ts +1 -2
  103. package/src/user-data-rights/__tests__/anonymous-deletion.integration.test.ts +1 -3
  104. package/src/user-data-rights/__tests__/audit-log.integration.test.ts +1 -2
  105. package/src/user-data-rights/__tests__/download-by-token-resolver-trust.integration.test.ts +0 -2
  106. package/src/user-data-rights/__tests__/download.integration.test.ts +1 -2
  107. package/src/user-data-rights/__tests__/escape-hatch-audit.integration.test.ts +0 -2
  108. package/src/user-data-rights/__tests__/escape-hatch-declaration.integration.test.ts +0 -2
  109. package/src/user-data-rights/__tests__/export-job-list-cross-tenant.integration.test.ts +1 -2
  110. package/src/user-data-rights/__tests__/file-storage-unification.integration.test.ts +0 -2
  111. package/src/user-data-rights/__tests__/forget-cleanup-hook-ordering.integration.test.ts +0 -2
  112. package/src/user-data-rights/__tests__/forget-cleanup-search-purge-ordering.integration.test.ts +0 -2
  113. package/src/user-data-rights/__tests__/forget-hook-registry.integration.test.ts +0 -2
  114. package/src/user-data-rights/__tests__/read-users-rebuild-survives-lifecycle.integration.test.ts +1 -6
  115. package/src/user-data-rights/__tests__/request-cancel-deletion.integration.test.ts +1 -2
  116. package/src/user-data-rights/__tests__/request-deletion-callback.integration.test.ts +1 -2
  117. package/src/user-data-rights/__tests__/request-export.integration.test.ts +1 -2
  118. package/src/user-data-rights/__tests__/restriction-flow.integration.test.ts +1 -2
  119. package/src/user-data-rights/__tests__/run-export-jobs-cron-context.integration.test.ts +0 -2
  120. package/src/user-data-rights/__tests__/run-export-jobs.integration.test.ts +1 -3
  121. package/src/user-data-rights/__tests__/tenant-model-erasure.integration.test.ts +0 -2
  122. package/src/user-profile/__tests__/change-email.integration.test.ts +1 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cosmicdrift/kumiko-bundled-features",
3
- "version": "0.292.0",
3
+ "version": "0.294.0",
4
4
  "description": "Built-in features — tenant, user, auth, delivery. The stuff you'd rewrite anyway, already typed.",
5
5
  "license": "BUSL-1.1",
6
6
  "author": "Marc Frost <marc@cosmicdriftgamestudio.com>",
@@ -133,12 +133,12 @@
133
133
  "./workflow-runner": "./src/workflow-runner/index.ts"
134
134
  },
135
135
  "dependencies": {
136
- "@cosmicdrift/kumiko-dispatcher-live": "0.292.0",
137
- "@cosmicdrift/kumiko-framework": "0.292.0",
138
- "@cosmicdrift/kumiko-headless": "0.292.0",
139
- "@cosmicdrift/kumiko-renderer": "0.292.0",
140
- "@cosmicdrift/kumiko-renderer-web": "0.292.0",
141
- "@cosmicdrift/kumiko-types": "0.292.0",
136
+ "@cosmicdrift/kumiko-dispatcher-live": "0.294.0",
137
+ "@cosmicdrift/kumiko-framework": "0.294.0",
138
+ "@cosmicdrift/kumiko-headless": "0.294.0",
139
+ "@cosmicdrift/kumiko-renderer": "0.294.0",
140
+ "@cosmicdrift/kumiko-renderer-web": "0.294.0",
141
+ "@cosmicdrift/kumiko-types": "0.294.0",
142
142
  "@mollie/api-client": "^4.5.0",
143
143
  "@node-rs/argon2": "^2.0.2",
144
144
  "@types/mailparser": "^3.4.6",
@@ -167,8 +167,8 @@
167
167
  ],
168
168
  "devDependencies": {
169
169
  "@testing-library/user-event": "^14.6.1",
170
- "@cosmicdrift/kumiko-locale-de": "0.292.0",
171
- "@cosmicdrift/kumiko-locale-es": "0.292.0",
170
+ "@cosmicdrift/kumiko-locale-de": "0.294.0",
171
+ "@cosmicdrift/kumiko-locale-es": "0.294.0",
172
172
  "jsqr": "^1.4.0"
173
173
  }
174
174
  }
@@ -25,7 +25,7 @@ import { randomBytes } from "node:crypto";
25
25
  import { authFoundationFeature } from "@cosmicdrift/kumiko-bundled-features/auth-foundation";
26
26
  import type { SessionCreator } from "@cosmicdrift/kumiko-framework/api";
27
27
  import { fetchOne, selectMany } from "@cosmicdrift/kumiko-framework/bun-db";
28
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
28
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
29
29
  import {
30
30
  setupTestStack,
31
31
  type TestStack,
@@ -108,7 +108,6 @@ beforeAll(async () => {
108
108
  await unsafeCreateEntityTable(stack.db, tenantEntity);
109
109
  await unsafeCreateEntityTable(stack.db, userSessionEntity);
110
110
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
111
- await createEventsTable(stack.db);
112
111
  });
113
112
 
114
113
  afterAll(async () => {
@@ -12,7 +12,7 @@ import { createLiveDispatcher } from "@cosmicdrift/kumiko-dispatcher-live";
12
12
  import type { SessionCreator } from "@cosmicdrift/kumiko-framework/api";
13
13
  import { generateToken } from "@cosmicdrift/kumiko-framework/api";
14
14
  import { defineFeature } from "@cosmicdrift/kumiko-framework/engine";
15
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
15
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
16
16
  import {
17
17
  setupTestStack,
18
18
  type TestStack,
@@ -133,7 +133,6 @@ beforeAll(async () => {
133
133
  await unsafeCreateEntityTable(stack.db, tenantEntity);
134
134
  await unsafeCreateEntityTable(stack.db, userSessionEntity);
135
135
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
136
- await createEventsTable(stack.db);
137
136
  });
138
137
 
139
138
  afterAll(async () => {
@@ -1,7 +1,6 @@
1
1
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
2
2
  import { configureEntityFieldEncryption } from "@cosmicdrift/kumiko-framework/db";
3
3
  import { buildAppSchema, type TenantId } from "@cosmicdrift/kumiko-framework/engine";
4
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
5
4
  import {
6
5
  setupTestStack,
7
6
  type TestStack,
@@ -78,7 +77,6 @@ beforeAll(async () => {
78
77
  await unsafeCreateEntityTable(stack.db, userSessionEntity);
79
78
  await unsafeCreateEntityTable(stack.db, userMfaEntity);
80
79
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
81
- await createEventsTable(stack.db);
82
80
  });
83
81
 
84
82
  afterAll(async () => {
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
6
6
  import { fetchOne, selectMany } from "@cosmicdrift/kumiko-framework/db";
7
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
7
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
8
8
  import {
9
9
  setupTestStack,
10
10
  type TestStack,
@@ -33,7 +33,6 @@ beforeAll(async () => {
33
33
  });
34
34
  await unsafeCreateEntityTable(stack.db, templateResourceEntity);
35
35
  await unsafeCreateEntityTable(stack.db, tenantComplianceProfileEntity);
36
- await createEventsTable(stack.db);
37
36
  });
38
37
 
39
38
  afterAll(async () => {
@@ -211,6 +211,7 @@ describe("compose across all Phase-2 features", () => {
211
211
  "JWT_SECRET",
212
212
  "KUMIKO_SECRETS_MASTER_KEY_CURRENT_VERSION",
213
213
  "KUMIKO_SECRETS_MASTER_KEY_V1",
214
+ "KUMIKO_SECRETS_MASTER_KEY_V1_CIPHERTEXT",
214
215
  "MOLLIE_API_KEY",
215
216
  "STRIPE_API_KEY",
216
217
  "STRIPE_WEBHOOK_SECRET",
@@ -29,7 +29,6 @@ import {
29
29
  esOperationsTable,
30
30
  runPendingSeedMigrations,
31
31
  } from "@cosmicdrift/kumiko-framework/es-ops";
32
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
33
32
  import { createDispatcher, type Dispatcher } from "@cosmicdrift/kumiko-framework/pipeline";
34
33
  import {
35
34
  createTestDb,
@@ -60,7 +59,6 @@ beforeAll(async () => {
60
59
  testDb = await createTestDb();
61
60
  await unsafeCreateEntityTable(testDb.db, tenantEntity);
62
61
  await unsafePushTables(testDb.db, { tenantMembershipsTable, configValuesTable });
63
- await createEventsTable(testDb.db);
64
62
  await createEsOperationsTable(testDb.db);
65
63
 
66
64
  registry = createRegistry([createConfigFeature(), createTenantFeature()]);
@@ -9,7 +9,6 @@
9
9
  import { afterAll, beforeAll, beforeEach, describe, expect, test } from "bun:test";
10
10
  import { asRawClient } from "@cosmicdrift/kumiko-framework/bun-db";
11
11
  import { createEntity, createTextField, defineFeature } from "@cosmicdrift/kumiko-framework/engine";
12
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
13
12
  import {
14
13
  createTestUser,
15
14
  setupTestStack,
@@ -53,7 +52,6 @@ let stack: TestStack;
53
52
  beforeAll(async () => {
54
53
  stack = await setupTestStack({ features: [vendorFeature] });
55
54
  await unsafeCreateEntityTable(stack.db, vendorEntity);
56
- await createEventsTable(stack.db);
57
55
  }, 20000);
58
56
 
59
57
  afterAll(async () => {
@@ -9,7 +9,6 @@ import { afterAll, beforeAll, beforeEach, describe, expect, test } from "bun:tes
9
9
  import { pbkdf2Sync, randomBytes } from "node:crypto";
10
10
  import { asRawClient } from "@cosmicdrift/kumiko-framework/bun-db";
11
11
  import type { TenantId } from "@cosmicdrift/kumiko-framework/engine";
12
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
13
12
  import {
14
13
  setupTestStack,
15
14
  type TestStack,
@@ -74,7 +73,6 @@ beforeAll(async () => {
74
73
  await unsafeCreateEntityTable(stack.db, userEntity);
75
74
  await unsafeCreateEntityTable(stack.db, tenantEntity);
76
75
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
77
- await createEventsTable(stack.db);
78
76
  });
79
77
 
80
78
  afterAll(async () => {
@@ -13,7 +13,7 @@ import {
13
13
  InMemoryKmsAdapter,
14
14
  } from "@cosmicdrift/kumiko-framework/crypto";
15
15
  import type { TenantId } from "@cosmicdrift/kumiko-framework/engine";
16
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
16
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
17
17
  import {
18
18
  setupTestStack,
19
19
  type TestStack,
@@ -60,7 +60,6 @@ beforeAll(async () => {
60
60
  await unsafeCreateEntityTable(stack.db, tenantEntity);
61
61
  await unsafeCreateEntityTable(stack.db, userEntity);
62
62
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
63
- await createEventsTable(stack.db);
64
63
  }, 60_000);
65
64
 
66
65
  afterAll(async () => {
@@ -13,7 +13,7 @@
13
13
  import { afterAll, beforeAll, beforeEach, describe, expect, test } from "bun:test";
14
14
  import { asRawClient, selectMany } from "@cosmicdrift/kumiko-framework/bun-db";
15
15
  import type { TenantId } from "@cosmicdrift/kumiko-framework/engine";
16
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
16
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
17
17
  import {
18
18
  setupTestStack,
19
19
  type TestStack,
@@ -45,7 +45,6 @@ beforeAll(async () => {
45
45
  await unsafeCreateEntityTable(stack.db, tenantEntity);
46
46
  await unsafeCreateEntityTable(stack.db, userEntity);
47
47
  await unsafePushTables(stack.db, { configValuesTable, tenantMembershipsTable });
48
- await createEventsTable(stack.db);
49
48
  });
50
49
 
51
50
  afterAll(async () => {
@@ -23,11 +23,7 @@ import {
23
23
  } from "@cosmicdrift/kumiko-framework/crypto";
24
24
  import type { DbConnection } from "@cosmicdrift/kumiko-framework/db";
25
25
  import { defineFeature, type TenantId } from "@cosmicdrift/kumiko-framework/engine";
26
- import {
27
- createEventsTable,
28
- isStreamArchived,
29
- loadAggregate,
30
- } from "@cosmicdrift/kumiko-framework/event-store";
26
+ import { isStreamArchived, loadAggregate } from "@cosmicdrift/kumiko-framework/event-store";
31
27
  import {
32
28
  createTestUser,
33
29
  setupTestStack,
@@ -147,7 +143,6 @@ beforeAll(async () => {
147
143
  db = stack.db;
148
144
  // subscriptionsProjectionTable wird von setupTestStack automatisch
149
145
  // gepusht (r.projection mit `table`-Property → auto-push).
150
- await createEventsTable(db);
151
146
  await unsafeCreateEntityTable(db, tenantEntity);
152
147
  await unsafeCreateEntityTable(db, tenantComplianceProfileEntity);
153
148
  // providerCustomerId/providerSubscriptionId are `personal: "tenant"`
@@ -13,7 +13,6 @@ import {
13
13
  type EntityDefinition,
14
14
  type TenantId,
15
15
  } from "@cosmicdrift/kumiko-framework/engine";
16
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
17
16
  import {
18
17
  createTestUser,
19
18
  setupTestStack,
@@ -112,7 +111,6 @@ beforeAll(async () => {
112
111
  mockProviderFeature,
113
112
  ],
114
113
  });
115
- await createEventsTable(stack.db);
116
114
  await unsafeCreateEntityTable(stack.db, tenantEntity);
117
115
  await unsafeCreateEntityTable(stack.db, tenantComplianceProfileEntity);
118
116
  await unsafePushTables(stack.db, { tier_assignments: tierAssignmentTable });
@@ -13,7 +13,7 @@ import {
13
13
  defineFeature,
14
14
  type WriteHandlerDef,
15
15
  } from "@cosmicdrift/kumiko-framework/engine";
16
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
16
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
17
17
  import {
18
18
  createTestUser,
19
19
  setupTestStack,
@@ -186,7 +186,6 @@ beforeAll(async () => {
186
186
  db = stack.db;
187
187
 
188
188
  await unsafeCreateEntityTable(db, capCounterEntity);
189
- await createEventsTable(db);
190
189
  });
191
190
 
192
191
  afterAll(async () => {
@@ -14,7 +14,7 @@ import {
14
14
  type SessionUser,
15
15
  type WriteHandlerDef,
16
16
  } from "@cosmicdrift/kumiko-framework/engine";
17
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
17
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
18
18
  import {
19
19
  createTestUser,
20
20
  setupTestStack,
@@ -36,7 +36,6 @@ beforeAll(async () => {
36
36
  stack = await setupTestStack({ features: [] });
37
37
  db = stack.db;
38
38
  await unsafeCreateEntityTable(db, capCounterEntity, "cap-counter");
39
- await createEventsTable(db);
40
39
  });
41
40
 
42
41
  afterAll(async () => {
@@ -157,7 +156,6 @@ describe("withStockCap over HTTP — TenantAdmin-only caller, no escapeHatch", (
157
156
  beforeAll(async () => {
158
157
  httpStack = await setupTestStack({ features: [stockItemFeature] });
159
158
  await unsafeCreateEntityTable(httpStack.db, capCounterEntity, "cap-counter");
160
- await createEventsTable(httpStack.db);
161
159
  });
162
160
 
163
161
  afterAll(async () => {
@@ -15,7 +15,7 @@ import {
15
15
  defineFeature,
16
16
  type WriteHandlerDef,
17
17
  } from "@cosmicdrift/kumiko-framework/engine";
18
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
18
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
19
19
  import {
20
20
  createTestUser,
21
21
  setupTestStack,
@@ -153,7 +153,6 @@ beforeAll(async () => {
153
153
  stack = await setupTestStack({ features: [capCounterFeature, newsletterFeature] });
154
154
  db = stack.db;
155
155
  await unsafeCreateEntityTable(db, capCounterEntity);
156
- await createEventsTable(db);
157
156
  });
158
157
 
159
158
  afterAll(async () => {
@@ -1,7 +1,6 @@
1
1
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
2
2
  import { configurePiiSubjectKms, InMemoryKmsAdapter } from "@cosmicdrift/kumiko-framework/crypto";
3
3
  import type { DbConnection } from "@cosmicdrift/kumiko-framework/db";
4
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
5
4
  import {
6
5
  createTestUser,
7
6
  setupTestStack,
@@ -67,7 +66,6 @@ beforeAll(async () => {
67
66
  ],
68
67
  });
69
68
  db = stack.db;
70
- await createEventsTable(db);
71
69
  await unsafeCreateEntityTable(db, tenantEntity);
72
70
  await unsafeCreateEntityTable(db, tierAssignmentEntity);
73
71
  await unsafeCreateEntityTable(db, tenantComplianceProfileEntity);
@@ -9,7 +9,6 @@ import { afterAll, beforeAll, describe, expect, test } from "bun:test";
9
9
  import { configurePiiSubjectKms, InMemoryKmsAdapter } from "@cosmicdrift/kumiko-framework/crypto";
10
10
  import type { DbConnection } from "@cosmicdrift/kumiko-framework/db";
11
11
  import { asRawClient } from "@cosmicdrift/kumiko-framework/db";
12
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
13
12
  import {
14
13
  createTestUser,
15
14
  setupTestStack,
@@ -68,7 +67,6 @@ beforeAll(async () => {
68
67
  ],
69
68
  });
70
69
  db = stack.db;
71
- await createEventsTable(db);
72
70
  await unsafeCreateEntityTable(db, tenantEntity);
73
71
  await unsafeCreateEntityTable(db, tierAssignmentEntity);
74
72
  await unsafeCreateEntityTable(db, tenantComplianceProfileEntity);
@@ -1,7 +1,6 @@
1
1
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
2
2
  import type { DbConnection } from "@cosmicdrift/kumiko-framework/db";
3
3
  import { access } from "@cosmicdrift/kumiko-framework/engine";
4
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
5
4
  import {
6
5
  createTestUser,
7
6
  setupTestStack,
@@ -36,7 +35,6 @@ beforeAll(async () => {
36
35
  stack = await setupTestStack({ features: [feature] });
37
36
  db = stack.db;
38
37
  await unsafeCreateEntityTable(db, tenantComplianceProfileEntity);
39
- await createEventsTable(db);
40
38
  });
41
39
 
42
40
  afterAll(async () => {
@@ -317,7 +315,6 @@ describe("compliance-profiles :: needs-profile mit access.systemAdmin-Narrowing
317
315
  narrowedStack = await setupTestStack({ features: [narrowedFeature] });
318
316
  narrowedDb = narrowedStack.db;
319
317
  await unsafeCreateEntityTable(narrowedDb, tenantComplianceProfileEntity);
320
- await createEventsTable(narrowedDb);
321
318
  });
322
319
 
323
320
  afterAll(async () => {
@@ -9,7 +9,7 @@
9
9
 
10
10
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
11
11
  import { fetchOne, selectMany } from "@cosmicdrift/kumiko-framework/db";
12
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
12
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
13
13
  import {
14
14
  createTestUser,
15
15
  setupTestStack,
@@ -33,7 +33,6 @@ const feature = createComplianceProfilesFeature();
33
33
  beforeAll(async () => {
34
34
  stack = await setupTestStack({ features: [feature] });
35
35
  await unsafeCreateEntityTable(stack.db, tenantComplianceProfileEntity);
36
- await createEventsTable(stack.db);
37
36
  });
38
37
 
39
38
  afterAll(async () => {
@@ -1,5 +1,4 @@
1
1
  import { afterAll, beforeAll, describe, expect, test } from "bun:test";
2
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
3
2
  import {
4
3
  createTestUser,
5
4
  setupTestStack,
@@ -38,7 +37,6 @@ beforeAll(async () => {
38
37
  });
39
38
  await unsafeCreateEntityTable(stack.db, tenantEntity);
40
39
  await unsafeCreateEntityTable(stack.db, tenantComplianceProfileEntity);
41
- await createEventsTable(stack.db);
42
40
 
43
41
  for (const [id, key] of [
44
42
  [tenantWithProfile, "with-profile"],
@@ -7,7 +7,6 @@ import {
7
7
  createSystemConfig,
8
8
  defineFeature,
9
9
  } from "@cosmicdrift/kumiko-framework/engine";
10
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
11
10
  import { createEnvMasterKeyProvider } from "@cosmicdrift/kumiko-framework/secrets";
12
11
  import {
13
12
  setupTestStack,
@@ -88,7 +87,6 @@ beforeAll(async () => {
88
87
  },
89
88
  });
90
89
  await unsafePushTables(stack.db, { configValuesTable, tenantSecretsTable });
91
- await createEventsTable(stack.db);
92
90
  });
93
91
 
94
92
  afterAll(async () => {
@@ -185,7 +183,6 @@ describe("config backing=secrets — fail-loud when secrets unwired", () => {
185
183
  },
186
184
  });
187
185
  await unsafePushTables(unwired.db, { configValuesTable, tenantSecretsTable });
188
- await createEventsTable(unwired.db);
189
186
 
190
187
  try {
191
188
  const err = await unwired.http.writeErr(
@@ -29,7 +29,7 @@ import {
29
29
  defineFeature,
30
30
  type TenantId,
31
31
  } from "@cosmicdrift/kumiko-framework/engine";
32
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
32
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
33
33
  import {
34
34
  setupTestStack,
35
35
  type TestStack,
@@ -92,7 +92,6 @@ beforeAll(async () => {
92
92
  features: [createCryptoShreddingFeature(), recordProbeFeature],
93
93
  });
94
94
  await unsafeCreateEntityTable(stack.db, recordProbeEntity, RECORD_PROBE_ENTITY_NAME);
95
- await createEventsTable(stack.db);
96
95
  });
97
96
 
98
97
  afterAll(async () => {
@@ -258,7 +257,6 @@ describe("crypto-shredding :: forget-subject (record subject) tenant gate, #2786
258
257
  });
259
258
  await unsafeCreateEntityTable(gateStack.db, recordProbeEntity, RECORD_PROBE_ENTITY_NAME);
260
259
  await unsafePushTables(gateStack.db, { tenantMembershipsTable });
261
- await createEventsTable(gateStack.db);
262
260
  });
263
261
 
264
262
  afterAll(async () => {
@@ -367,7 +365,6 @@ describe("crypto-shredding :: forget-subject (record subject) retention gate, #2
367
365
  blockDeleteProbeEntity,
368
366
  BLOCK_DELETE_PROBE_ENTITY_NAME,
369
367
  );
370
- await createEventsTable(retentionStack.db);
371
368
  });
372
369
 
373
370
  afterAll(async () => {
@@ -22,7 +22,7 @@ import {
22
22
  SYSTEM_TENANT_ID,
23
23
  type TenantId,
24
24
  } from "@cosmicdrift/kumiko-framework/engine";
25
- import { createEventsTable, eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
25
+ import { eventsTable } from "@cosmicdrift/kumiko-framework/event-store";
26
26
  import { reindexEntity } from "@cosmicdrift/kumiko-framework/search";
27
27
  import {
28
28
  setupTestStack,
@@ -73,7 +73,6 @@ const memberUser = {
73
73
 
74
74
  beforeAll(async () => {
75
75
  stack = await setupTestStack({ features: [createCryptoShreddingFeature()] });
76
- await createEventsTable(stack.db);
77
76
  });
78
77
 
79
78
  afterAll(async () => {
@@ -291,7 +290,6 @@ describe("crypto-shredding :: forget-subject purges the derived search index (#1
291
290
  features: [createCryptoShreddingFeature(), probeFeature],
292
291
  });
293
292
  await unsafeCreateEntityTable(searchStack.db, probeEntity, "probe");
294
- await createEventsTable(searchStack.db);
295
293
  });
296
294
 
297
295
  afterAll(async () => {
@@ -432,7 +430,6 @@ describe("crypto-shredding :: forget-subject closes the login door (user feature
432
430
  await unsafeCreateEntityTable(stack.db, tenantInvitationEntity);
433
431
  await unsafeCreateEntityTable(stack.db, shareLikeEntity, "probe");
434
432
  await unsafePushTables(stack.db, { tenantMembershipsTable });
435
- await createEventsTable(stack.db);
436
433
  });
437
434
 
438
435
  afterAll(async () => {
@@ -664,7 +661,6 @@ describe("crypto-shredding :: forget-subject subjectRowExistsInTenant missing ta
664
661
  ],
665
662
  });
666
663
  await unsafePushTables(missingTableStack.db, { tenantMembershipsTable });
667
- await createEventsTable(missingTableStack.db);
668
664
  // No unsafeCreateEntityTable for missingTableProbeEntity — that's the point.
669
665
  });
670
666
 
@@ -708,7 +704,6 @@ describe("crypto-shredding :: forget-subject purges user.email from the search i
708
704
  features: [createCryptoShreddingFeature(), createUserFeature()],
709
705
  });
710
706
  await unsafeCreateEntityTable(emailSearchStack.db, userEntity);
711
- await createEventsTable(emailSearchStack.db);
712
707
  });
713
708
 
714
709
  afterAll(async () => {
@@ -19,7 +19,6 @@ import {
19
19
  createTextField,
20
20
  defineFeature,
21
21
  } from "@cosmicdrift/kumiko-framework/engine";
22
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
23
22
  import {
24
23
  createTestUser,
25
24
  resetEventStore,
@@ -93,7 +92,6 @@ beforeAll(async () => {
93
92
  });
94
93
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
95
94
  await unsafeCreateEntityTable(stack.db, propertyEntity);
96
- await createEventsTable(stack.db);
97
95
  });
98
96
 
99
97
  afterAll(async () => {
@@ -20,7 +20,6 @@ import {
20
20
  defineFeature,
21
21
  type SessionUser,
22
22
  } from "@cosmicdrift/kumiko-framework/engine";
23
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
24
23
  import {
25
24
  createTestUser,
26
25
  setupTestStack,
@@ -90,7 +89,6 @@ beforeAll(async () => {
90
89
  stack = await setupTestStack({ features: [customFieldsFeature, propertyFeature] });
91
90
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
92
91
  await unsafeCreateEntityTable(stack.db, propertyEntity);
93
- await createEventsTable(stack.db);
94
92
  });
95
93
 
96
94
  afterAll(async () => {
@@ -16,7 +16,6 @@ import {
16
16
  defineFeature,
17
17
  type SessionUser,
18
18
  } from "@cosmicdrift/kumiko-framework/engine";
19
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
20
19
  import {
21
20
  createTestUser,
22
21
  setupTestStack,
@@ -86,7 +85,6 @@ beforeAll(async () => {
86
85
  stack = await setupTestStack({ features: [customFieldsFeature, propertyFeature] });
87
86
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
88
87
  await unsafeCreateEntityTable(stack.db, propertyEntity);
89
- await createEventsTable(stack.db);
90
88
  });
91
89
 
92
90
  afterAll(async () => {
@@ -21,7 +21,6 @@ import {
21
21
  defineFeature,
22
22
  SYSTEM_TENANT_ID,
23
23
  } from "@cosmicdrift/kumiko-framework/engine";
24
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
25
24
  import {
26
25
  createProjectionStateTable,
27
26
  rebuildProjection,
@@ -87,7 +86,6 @@ beforeAll(async () => {
87
86
 
88
87
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
89
88
  await unsafeCreateEntityTable(stack.db, propertyEntity);
90
- await createEventsTable(stack.db);
91
89
  await createProjectionStateTable(stack.db);
92
90
  });
93
91
 
@@ -18,7 +18,6 @@ import {
18
18
  createTextField,
19
19
  defineFeature,
20
20
  } from "@cosmicdrift/kumiko-framework/engine";
21
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
22
21
  import {
23
22
  createTestUser,
24
23
  resetEventStore,
@@ -75,7 +74,6 @@ beforeAll(async () => {
75
74
  });
76
75
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
77
76
  await unsafeCreateEntityTable(stack.db, propertyEntity);
78
- await createEventsTable(stack.db);
79
77
  });
80
78
 
81
79
  afterAll(async () => {
@@ -8,7 +8,6 @@
8
8
 
9
9
  import { afterAll, beforeAll, beforeEach, describe, expect, test } from "bun:test";
10
10
  import { asRawClient } from "@cosmicdrift/kumiko-framework/bun-db";
11
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
12
11
  import {
13
12
  createTestUser,
14
13
  setupTestStack,
@@ -40,7 +39,6 @@ describe("custom-fields — fieldDefinitionWriteRoles (#2296)", () => {
40
39
  features: [createCustomFieldsFeature({ fieldDefinitionWriteRoles: ["Admin"] })],
41
40
  });
42
41
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
43
- await createEventsTable(stack.db);
44
42
  });
45
43
 
46
44
  afterAll(async () => {
@@ -14,7 +14,6 @@ import {
14
14
  createTextField,
15
15
  defineFeature,
16
16
  } from "@cosmicdrift/kumiko-framework/engine";
17
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
18
17
  import {
19
18
  createTestUser,
20
19
  resetEventStore,
@@ -65,7 +64,6 @@ beforeAll(async () => {
65
64
  stack = await setupTestStack({ features: [customFieldsFeature, propertyFeature] });
66
65
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
67
66
  await unsafeCreateEntityTable(stack.db, propertyEntity);
68
- await createEventsTable(stack.db);
69
67
  });
70
68
 
71
69
  afterAll(async () => {
@@ -18,7 +18,6 @@ import {
18
18
  createTextField,
19
19
  defineFeature,
20
20
  } from "@cosmicdrift/kumiko-framework/engine";
21
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
22
21
  import {
23
22
  createTestUser,
24
23
  resetEventStore,
@@ -73,7 +72,6 @@ beforeAll(async () => {
73
72
  });
74
73
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
75
74
  await unsafeCreateEntityTable(stack.db, propertyEntity);
76
- await createEventsTable(stack.db);
77
75
  });
78
76
 
79
77
  afterAll(async () => {
@@ -30,7 +30,6 @@ import {
30
30
  type UserDataDeleteHook,
31
31
  type UserDataExportHook,
32
32
  } from "@cosmicdrift/kumiko-framework/engine";
33
- import { createEventsTable } from "@cosmicdrift/kumiko-framework/event-store";
34
33
  import {
35
34
  createTestUser,
36
35
  resetEventStore,
@@ -158,7 +157,6 @@ beforeAll(async () => {
158
157
  await unsafeCreateEntityTable(stack.db, fieldDefinitionEntity);
159
158
  await unsafeCreateEntityTable(stack.db, propertyEntity);
160
159
  await unsafeCreateEntityTable(stack.db, tenantRetentionOverrideEntity);
161
- await createEventsTable(stack.db);
162
160
 
163
161
  // runForgetCleanup + runUserExport iterate the user's memberships. Provide a
164
162
  // minimal membership read-model (same shape the user-data-rights suite uses).