@cosmicdrift/kumiko-framework 0.5.0 → 0.5.2
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.
- package/CHANGELOG.md +34 -0
- package/package.json +2 -2
- package/src/es-ops/runner.ts +6 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @cosmicdrift/kumiko-framework
|
|
2
2
|
|
|
3
|
+
## 0.5.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4f0d781: fix(tenant): updateMemberRoles erlaubt "system"-Rolle (symmetrisch zu create)
|
|
8
|
+
|
|
9
|
+
Drift innerhalb des tenant-Features: `tenant:write:create` akzeptierte
|
|
10
|
+
`["system", "SystemAdmin"]`, `tenant:write:update-member-roles` aber
|
|
11
|
+
nur `["SystemAdmin"]`. Konsequenz: ops-tooling und seed-migrations
|
|
12
|
+
(`createSystemUser` mit `roles: ["system"]`) konnten den Handler nicht
|
|
13
|
+
aufrufen — `access_denied`.
|
|
14
|
+
|
|
15
|
+
Live entdeckt beim ersten Driver-Sample der es-ops Phase 1: publicstatus
|
|
16
|
+
seed `2026-05-20-fix-admin-roles.ts` rief `update-member-roles` via
|
|
17
|
+
`systemWriteAs` → access_denied → Pod CrashLoopBackOff.
|
|
18
|
+
|
|
19
|
+
Plus access-rule-Pinning-Test in `tenant.integration.ts`-scenario-7.
|
|
20
|
+
|
|
21
|
+
## 0.5.1
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- 0e00015: fix(es-ops): path.resolve statt path.join für seedsDir → seed-files
|
|
26
|
+
|
|
27
|
+
Bun's `await import()` braucht absolute Pfade. Wenn der App-Author
|
|
28
|
+
`runProdApp({ seedsDir: "./seeds" })` setzt (relativ), würde
|
|
29
|
+
`path.join("./seeds", "foo.ts")` einen relativen Pfad liefern → Bun's
|
|
30
|
+
Import-Resolver such relativ zum `runner.ts`-Modul (nicht zum
|
|
31
|
+
`process.cwd()`) → `Cannot find module 'seeds/...' from '<runner-path>'`.
|
|
32
|
+
|
|
33
|
+
`path.resolve` löst gegen `process.cwd()` auf → absolute Pfade →
|
|
34
|
+
Import funktioniert. Aufgedeckt beim ersten Live-Boot der publicstatus-
|
|
35
|
+
Driver-Migration (Pod CrashLoopBackOff).
|
|
36
|
+
|
|
3
37
|
## 0.5.0
|
|
4
38
|
|
|
5
39
|
### Minor Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cosmicdrift/kumiko-framework",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Framework core — engine, pipeline, API, DB, and every other bit that makes Kumiko go.",
|
|
5
5
|
"license": "BUSL-1.1",
|
|
6
6
|
"author": "Marc Frost <marc@cosmicdriftgamestudio.com>",
|
|
@@ -163,7 +163,7 @@
|
|
|
163
163
|
"zod": "^4.4.3"
|
|
164
164
|
},
|
|
165
165
|
"devDependencies": {
|
|
166
|
-
"@cosmicdrift/kumiko-dispatcher-live": "0.5.
|
|
166
|
+
"@cosmicdrift/kumiko-dispatcher-live": "0.5.2",
|
|
167
167
|
"@types/uuid": "^11.0.0",
|
|
168
168
|
"bun-types": "^1.3.13",
|
|
169
169
|
"drizzle-kit": "^0.31.10",
|
package/src/es-ops/runner.ts
CHANGED
|
@@ -160,7 +160,12 @@ async function listSeedFiles(seedsDir: string): Promise<readonly SeedFileEntry[]
|
|
|
160
160
|
.sort() // filename = chronologische ID (date-prefix-convention)
|
|
161
161
|
.map((name) => ({
|
|
162
162
|
id: name.replace(/\.(ts|mts|js)$/, ""),
|
|
163
|
-
|
|
163
|
+
// resolve, nicht join: Bun's await import() braucht absolute Pfade.
|
|
164
|
+
// Wenn seedsDir relativ ist (z.B. "./seeds" aus runProdApp-Option),
|
|
165
|
+
// wäre der join-Pfad auch relativ → Bun's import-resolver such
|
|
166
|
+
// relativ zum runner.ts-Modul, nicht zu process.cwd() → fail mit
|
|
167
|
+
// "Cannot find module 'seeds/...' from '<runner-path>'".
|
|
168
|
+
filePath: path.resolve(seedsDir, name),
|
|
164
169
|
}));
|
|
165
170
|
}
|
|
166
171
|
|