@beignet/cli 0.0.24 → 0.0.26
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 +21 -0
- package/README.md +48 -5
- package/dist/config.d.ts +21 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +51 -0
- package/dist/config.js.map +1 -1
- package/dist/db.d.ts +30 -0
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +201 -1
- package/dist/db.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +109 -0
- package/dist/index.js.map +1 -1
- package/dist/inspect.d.ts.map +1 -1
- package/dist/inspect.js +157 -235
- package/dist/inspect.js.map +1 -1
- package/dist/provider-audit.d.ts +131 -0
- package/dist/provider-audit.d.ts.map +1 -0
- package/dist/provider-audit.js +1013 -0
- package/dist/provider-audit.js.map +1 -0
- package/dist/templates/agents.js +2 -2
- package/dist/templates/agents.js.map +1 -1
- package/dist/templates/base.d.ts.map +1 -1
- package/dist/templates/base.js +8 -1
- package/dist/templates/base.js.map +1 -1
- package/package.json +2 -2
- package/skills/app-structure/SKILL.md +27 -4
- package/src/config.ts +99 -0
- package/src/db.ts +316 -1
- package/src/index.ts +180 -1
- package/src/inspect.ts +298 -369
- package/src/provider-audit.ts +1681 -0
- package/src/templates/agents.ts +2 -2
- package/src/templates/base.ts +8 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @beignet/cli
|
|
2
2
|
|
|
3
|
+
## 0.0.26
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 104302c: Refresh package-shipped TanStack Intent skills and add package skills for Drizzle database providers, Better Auth, React Hook Form, and React uploads.
|
|
8
|
+
- Updated dependencies [104302c]
|
|
9
|
+
- @beignet/core@0.0.26
|
|
10
|
+
|
|
11
|
+
## 0.0.25
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- 7c83da7: Allow `beignet.config.*` to declare app-owned audit, idempotency, and outbox table names for doctor checks.
|
|
16
|
+
- 32d717b: Add `beignet providers audit` to report installed provider metadata, registration, variants, env, tables, app ports, and watchers.
|
|
17
|
+
- 1f84b39: Add provider table metadata diagnostics, Drizzle operational schema exports, and `beignet db schema generate` for app-owned migration flows.
|
|
18
|
+
- ac8abd6: Teach doctor and provider audits to resolve configured/shared database schema sources and make durable Drizzle table detection import-aware.
|
|
19
|
+
- 7c83da7: Refresh package-shipped TanStack Intent skills to match current Beignet app structure, generators, route helpers, and React Query cache helpers.
|
|
20
|
+
- Updated dependencies [1f84b39]
|
|
21
|
+
- Updated dependencies [7c83da7]
|
|
22
|
+
- @beignet/core@0.0.25
|
|
23
|
+
|
|
3
24
|
## 0.0.24
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -145,8 +145,12 @@ Generated apps also trust Beignet's package-shipped TanStack Intent skills via
|
|
|
145
145
|
`package.json#intent.skills`. Run `bunx @tanstack/intent@latest install` (or
|
|
146
146
|
the matching runner for your package manager) to add Intent's managed guidance
|
|
147
147
|
block, then load matching skills such as `@beignet/core#app-architecture`,
|
|
148
|
-
`@beignet/next#routes-server`, `@beignet/
|
|
149
|
-
`@beignet/
|
|
148
|
+
`@beignet/next#routes-server`, `@beignet/provider-db-drizzle#database-provider`,
|
|
149
|
+
`@beignet/provider-auth-better-auth#auth-provider`,
|
|
150
|
+
`@beignet/react-query#client`, `@beignet/react-hook-form#forms`, and
|
|
151
|
+
`@beignet/cli#app-structure` before substantial Beignet changes. The CLI skill
|
|
152
|
+
covers generators, full-slice recipes, db schema generation, lint, doctor, and
|
|
153
|
+
MCP tooling.
|
|
150
154
|
|
|
151
155
|
Inspect the app, then generate the next feature:
|
|
152
156
|
|
|
@@ -199,6 +203,7 @@ beignet db reset [--dry-run] [--json]
|
|
|
199
203
|
beignet routes [--json] [--cwd <dir>]
|
|
200
204
|
beignet lint [--json] [--cwd <dir>] [--format human|json|github]
|
|
201
205
|
beignet doctor [--json] [--strict] [--fix] [--cwd <dir>] [--format human|json|github]
|
|
206
|
+
beignet providers audit [--json] [--cwd <dir>]
|
|
202
207
|
beignet mcp
|
|
203
208
|
beignet completion install [--shell bash|zsh] [--json]
|
|
204
209
|
beignet completion uninstall [--shell bash|zsh] [--json]
|
|
@@ -214,7 +219,7 @@ Options:
|
|
|
214
219
|
--force Write into a non-empty directory.
|
|
215
220
|
--dry-run Preview create/make writes without changing files.
|
|
216
221
|
--json Print machine-readable output.
|
|
217
|
-
--cwd path/to/app Run routes, lint, or
|
|
222
|
+
--cwd path/to/app Run routes, lint, doctor, or provider audit against another app directory.
|
|
218
223
|
--format github Output format for lint and doctor: human, json, or github.
|
|
219
224
|
--input '{"dryRun":true}' JSON input for `beignet task run`.
|
|
220
225
|
--payload '{"date":"..."}' JSON payload for `beignet schedule run`.
|
|
@@ -364,6 +369,36 @@ config before inspecting or writing files. When `appContext` is moved under a
|
|
|
364
369
|
source root such as `src/app-context.ts`, client setup follows that root at
|
|
365
370
|
`src/client/index.ts`.
|
|
366
371
|
|
|
372
|
+
The same config can declare app-owned names for Beignet operational database
|
|
373
|
+
tables when an app uses names other than the provider defaults:
|
|
374
|
+
|
|
375
|
+
```ts
|
|
376
|
+
// beignet.config.ts
|
|
377
|
+
import { defineConfig } from "@beignet/cli/config";
|
|
378
|
+
|
|
379
|
+
export default defineConfig({
|
|
380
|
+
database: {
|
|
381
|
+
tables: {
|
|
382
|
+
audit: "audit_events",
|
|
383
|
+
idempotency: "idempotency_records",
|
|
384
|
+
outbox: "outbox_messages",
|
|
385
|
+
},
|
|
386
|
+
schemaSources: ["@acme/db/schema"],
|
|
387
|
+
},
|
|
388
|
+
});
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
`doctor` uses these names when checking Drizzle-backed audit, idempotency, and
|
|
392
|
+
outbox wiring. Runtime code still needs the matching provider `tableName`
|
|
393
|
+
option wherever the Drizzle setup statements and ports are created.
|
|
394
|
+
|
|
395
|
+
Use `database.schemaSources` when operational table definitions live outside
|
|
396
|
+
the app's canonical `infra/db/schema/`, `drizzle/`, or `infra/db/` files. Each
|
|
397
|
+
entry can be an app-relative file or directory, an `@/` app path, or a package
|
|
398
|
+
specifier such as `@acme/db/schema`. `doctor` and `providers audit` also
|
|
399
|
+
follow schema-like imports from app database files, but explicit schema
|
|
400
|
+
sources make shared-package layouts predictable.
|
|
401
|
+
|
|
367
402
|
## Generate a contract
|
|
368
403
|
|
|
369
404
|
Use `make contract` when you want to start with the HTTP contract only:
|
|
@@ -853,8 +888,8 @@ Today it detects:
|
|
|
853
888
|
- Repository ports whose infra folder has no repository adapter
|
|
854
889
|
- Missing Drizzle config, schema index exports, database scripts, or standard seed/reset entrypoints
|
|
855
890
|
- Drizzle-backed idempotency, outbox, or audit ports without matching table
|
|
856
|
-
setup in schema files, migrations, provider setup
|
|
857
|
-
setup files
|
|
891
|
+
setup in schema files, configured schema sources, migrations, provider setup
|
|
892
|
+
statements, or app database setup files
|
|
858
893
|
- Single-file `infra/db/schema.ts` schemas that should move to the
|
|
859
894
|
`infra/db/schema/` directory form
|
|
860
895
|
- Feature tests placed directly under `features/<feature>/` instead of
|
|
@@ -893,6 +928,14 @@ metadata in installed package manifests. The CLI does not import provider
|
|
|
893
928
|
implementation modules to discover those facts, and it reports malformed
|
|
894
929
|
metadata before using provider-derived doctor rules.
|
|
895
930
|
|
|
931
|
+
Use `beignet providers audit` when you want a report-only inventory of the
|
|
932
|
+
provider packages installed in an app. The human audit prints provider metadata
|
|
933
|
+
validity, registration status, required env, required tables, and declared app
|
|
934
|
+
ports. `beignet providers audit --json` returns a versioned
|
|
935
|
+
`schemaVersion: 1` payload with active variants and watchers for scripts and
|
|
936
|
+
coding agents. The command does not fail CI for missing setup; stable,
|
|
937
|
+
actionable findings belong in `doctor`.
|
|
938
|
+
|
|
896
939
|
Use `beignet doctor --strict` for CI-oriented checks that may be noisy locally,
|
|
897
940
|
such as missing generated feature tests, canonical app conformance drift, and
|
|
898
941
|
feature-owned route errors that appear unused. Strict mode fails on warnings as
|
package/dist/config.d.ts
CHANGED
|
@@ -28,12 +28,29 @@ export type BeignetPaths = {
|
|
|
28
28
|
tasksBuilder: string;
|
|
29
29
|
tests: string;
|
|
30
30
|
};
|
|
31
|
+
/**
|
|
32
|
+
* Configurable database table names used by CLI doctor checks for Beignet's
|
|
33
|
+
* operational provider ports.
|
|
34
|
+
*/
|
|
35
|
+
export type BeignetDatabaseTables = {
|
|
36
|
+
audit: string;
|
|
37
|
+
idempotency: string;
|
|
38
|
+
outbox: string;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Database-related Beignet CLI config.
|
|
42
|
+
*/
|
|
43
|
+
export type BeignetDatabaseConfig = {
|
|
44
|
+
tables?: Partial<BeignetDatabaseTables>;
|
|
45
|
+
schemaSources?: string[];
|
|
46
|
+
};
|
|
31
47
|
/**
|
|
32
48
|
* User-authored Beignet CLI config.
|
|
33
49
|
*/
|
|
34
50
|
export type BeignetConfig = {
|
|
35
51
|
framework?: BeignetFramework;
|
|
36
52
|
paths?: Partial<BeignetPaths>;
|
|
53
|
+
database?: BeignetDatabaseConfig;
|
|
37
54
|
};
|
|
38
55
|
/**
|
|
39
56
|
* Beignet config after defaults and path normalization have been applied.
|
|
@@ -41,6 +58,10 @@ export type BeignetConfig = {
|
|
|
41
58
|
export type ResolvedBeignetConfig = {
|
|
42
59
|
framework: BeignetFramework;
|
|
43
60
|
paths: BeignetPaths;
|
|
61
|
+
database: {
|
|
62
|
+
tables: BeignetDatabaseTables;
|
|
63
|
+
schemaSources: string[];
|
|
64
|
+
};
|
|
44
65
|
configFile?: string;
|
|
45
66
|
};
|
|
46
67
|
/**
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE;QACR,MAAM,EAAE,qBAAqB,CAAC;QAC9B,aAAa,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,qBAgClC,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAEjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,GAAE,aAAkB,EAC1B,UAAU,CAAC,EAAE,MAAM,GAClB,qBAAqB,CAqBvB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,qBAAqB,CAAC,CA+ChC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAGjE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAGnE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAErE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAErE"}
|
package/dist/config.js
CHANGED
|
@@ -29,6 +29,14 @@ export const defaultBeignetConfig = {
|
|
|
29
29
|
tasksBuilder: "lib/tasks.ts",
|
|
30
30
|
tests: "tests",
|
|
31
31
|
},
|
|
32
|
+
database: {
|
|
33
|
+
tables: {
|
|
34
|
+
audit: "audit_log",
|
|
35
|
+
idempotency: "idempotency_records",
|
|
36
|
+
outbox: "outbox_messages",
|
|
37
|
+
},
|
|
38
|
+
schemaSources: [],
|
|
39
|
+
},
|
|
32
40
|
};
|
|
33
41
|
/**
|
|
34
42
|
* Preserve a Beignet config object with type inference.
|
|
@@ -44,9 +52,18 @@ export function resolveConfig(config = {}, configFile) {
|
|
|
44
52
|
...defaultBeignetConfig.paths,
|
|
45
53
|
...config.paths,
|
|
46
54
|
};
|
|
55
|
+
const database = {
|
|
56
|
+
tables: {
|
|
57
|
+
...defaultBeignetConfig.database.tables,
|
|
58
|
+
...config.database?.tables,
|
|
59
|
+
},
|
|
60
|
+
schemaSources: config.database?.schemaSources ??
|
|
61
|
+
defaultBeignetConfig.database.schemaSources,
|
|
62
|
+
};
|
|
47
63
|
return {
|
|
48
64
|
framework: config.framework ?? defaultBeignetConfig.framework,
|
|
49
65
|
paths: normalizeConfigPaths(paths),
|
|
66
|
+
database: normalizeDatabaseConfig(database),
|
|
50
67
|
configFile,
|
|
51
68
|
};
|
|
52
69
|
}
|
|
@@ -150,6 +167,19 @@ function assertConfigObject(config, configFile) {
|
|
|
150
167
|
if (config.paths !== undefined && !isRecord(config.paths)) {
|
|
151
168
|
throw new Error(`${configFile} paths must be an object.`);
|
|
152
169
|
}
|
|
170
|
+
if (config.database !== undefined && !isRecord(config.database)) {
|
|
171
|
+
throw new Error(`${configFile} database must be an object.`);
|
|
172
|
+
}
|
|
173
|
+
if (config.database !== undefined &&
|
|
174
|
+
config.database.tables !== undefined &&
|
|
175
|
+
!isRecord(config.database.tables)) {
|
|
176
|
+
throw new Error(`${configFile} database.tables must be an object.`);
|
|
177
|
+
}
|
|
178
|
+
if (config.database !== undefined &&
|
|
179
|
+
config.database.schemaSources !== undefined &&
|
|
180
|
+
!Array.isArray(config.database.schemaSources)) {
|
|
181
|
+
throw new Error(`${configFile} database.schemaSources must be an array.`);
|
|
182
|
+
}
|
|
153
183
|
return config;
|
|
154
184
|
}
|
|
155
185
|
function normalizeConfigPaths(paths) {
|
|
@@ -171,6 +201,27 @@ function normalizeConfigPath(key, value) {
|
|
|
171
201
|
}
|
|
172
202
|
return directoryPath(normalized);
|
|
173
203
|
}
|
|
204
|
+
function normalizeDatabaseConfig(database) {
|
|
205
|
+
return {
|
|
206
|
+
tables: Object.fromEntries(Object.entries(database.tables).map(([key, value]) => [
|
|
207
|
+
key,
|
|
208
|
+
normalizeDatabaseTableName(key, value),
|
|
209
|
+
])),
|
|
210
|
+
schemaSources: database.schemaSources.map((source, index) => normalizeDatabaseSchemaSource(index, source)),
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
function normalizeDatabaseTableName(key, value) {
|
|
214
|
+
if (typeof value !== "string" || value.trim() === "") {
|
|
215
|
+
throw new Error(`Beignet config database table "${key}" must be a string.`);
|
|
216
|
+
}
|
|
217
|
+
return value.trim();
|
|
218
|
+
}
|
|
219
|
+
function normalizeDatabaseSchemaSource(index, value) {
|
|
220
|
+
if (typeof value !== "string" || value.trim() === "") {
|
|
221
|
+
throw new Error(`Beignet config database.schemaSources[${index}] must be a string.`);
|
|
222
|
+
}
|
|
223
|
+
return value.trim();
|
|
224
|
+
}
|
|
174
225
|
function isRecord(value) {
|
|
175
226
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
176
227
|
}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/db.d.ts
CHANGED
|
@@ -26,6 +26,28 @@ export type RunDatabaseCommandResult = {
|
|
|
26
26
|
dryRun: boolean;
|
|
27
27
|
exitCode: number;
|
|
28
28
|
};
|
|
29
|
+
export type DatabaseSchemaDialect = "sqlite" | "postgres" | "mysql";
|
|
30
|
+
export type DatabaseSchemaTable = "audit" | "idempotency" | "outbox";
|
|
31
|
+
export type GenerateDatabaseSchemaOptions = {
|
|
32
|
+
cwd?: string;
|
|
33
|
+
dialect?: DatabaseSchemaDialect;
|
|
34
|
+
tables?: readonly DatabaseSchemaTable[];
|
|
35
|
+
output?: string;
|
|
36
|
+
dryRun?: boolean;
|
|
37
|
+
};
|
|
38
|
+
export type GenerateDatabaseSchemaResult = {
|
|
39
|
+
schemaVersion: 1;
|
|
40
|
+
command: "schema:generate";
|
|
41
|
+
cwd: string;
|
|
42
|
+
dialect: DatabaseSchemaDialect;
|
|
43
|
+
tables: DatabaseSchemaTable[];
|
|
44
|
+
output: string;
|
|
45
|
+
indexFile: string;
|
|
46
|
+
createdFiles: string[];
|
|
47
|
+
updatedFiles: string[];
|
|
48
|
+
skippedFiles: string[];
|
|
49
|
+
dryRun: boolean;
|
|
50
|
+
};
|
|
29
51
|
/**
|
|
30
52
|
* Run an app-owned database lifecycle script.
|
|
31
53
|
*
|
|
@@ -34,4 +56,12 @@ export type RunDatabaseCommandResult = {
|
|
|
34
56
|
* database URLs, and destructive reset behavior explicit in app code.
|
|
35
57
|
*/
|
|
36
58
|
export declare function runDatabaseCommand(options: RunDatabaseCommandOptions): Promise<RunDatabaseCommandResult>;
|
|
59
|
+
/**
|
|
60
|
+
* Generate the app-owned Drizzle schema entrypoint for Beignet provider tables.
|
|
61
|
+
*
|
|
62
|
+
* This only writes schema source. The app still owns SQL migration generation
|
|
63
|
+
* through `beignet db generate` and migration application through
|
|
64
|
+
* `beignet db migrate`.
|
|
65
|
+
*/
|
|
66
|
+
export declare function generateDatabaseSchema(options?: GenerateDatabaseSchemaOptions): Promise<GenerateDatabaseSchemaResult>;
|
|
37
67
|
//# sourceMappingURL=db.d.ts.map
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,eAAe,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,eAAe,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,aAAa,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,MAAM,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,qBAAqB,CAAC;IAC/B,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAmBF;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC,CA6CnC;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,4BAA4B,CAAC,CAkDvC"}
|
package/dist/db.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
|
-
import { access, readFile } from "node:fs/promises";
|
|
2
|
+
import { access, mkdir, readFile, writeFile } from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
const databaseScripts = {
|
|
5
5
|
generate: "db:generate",
|
|
@@ -7,6 +7,11 @@ const databaseScripts = {
|
|
|
7
7
|
seed: "db:seed",
|
|
8
8
|
reset: "db:reset",
|
|
9
9
|
};
|
|
10
|
+
const allDatabaseSchemaTables = [
|
|
11
|
+
"audit",
|
|
12
|
+
"idempotency",
|
|
13
|
+
"outbox",
|
|
14
|
+
];
|
|
10
15
|
/**
|
|
11
16
|
* Run an app-owned database lifecycle script.
|
|
12
17
|
*
|
|
@@ -54,6 +59,41 @@ export async function runDatabaseCommand(options) {
|
|
|
54
59
|
: {}),
|
|
55
60
|
};
|
|
56
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Generate the app-owned Drizzle schema entrypoint for Beignet provider tables.
|
|
64
|
+
*
|
|
65
|
+
* This only writes schema source. The app still owns SQL migration generation
|
|
66
|
+
* through `beignet db generate` and migration application through
|
|
67
|
+
* `beignet db migrate`.
|
|
68
|
+
*/
|
|
69
|
+
export async function generateDatabaseSchema(options = {}) {
|
|
70
|
+
const cwd = path.resolve(options.cwd ?? process.cwd());
|
|
71
|
+
const dialect = await resolveDatabaseSchemaDialect(cwd, options.dialect);
|
|
72
|
+
const tables = uniqueSchemaTables(options.tables ?? allDatabaseSchemaTables);
|
|
73
|
+
const output = normalizeAppRelativePath(cwd, options.output ?? "infra/db/schema/beignet.ts", "schema output");
|
|
74
|
+
const indexFile = normalizeAppRelativePath(cwd, path.join(path.dirname(output), "index.ts"), "schema index");
|
|
75
|
+
if (output === indexFile) {
|
|
76
|
+
throw new Error("Schema output must not be the schema index file.");
|
|
77
|
+
}
|
|
78
|
+
const result = {
|
|
79
|
+
schemaVersion: 1,
|
|
80
|
+
command: "schema:generate",
|
|
81
|
+
cwd,
|
|
82
|
+
dialect,
|
|
83
|
+
tables,
|
|
84
|
+
output,
|
|
85
|
+
indexFile,
|
|
86
|
+
createdFiles: [],
|
|
87
|
+
updatedFiles: [],
|
|
88
|
+
skippedFiles: [],
|
|
89
|
+
dryRun: Boolean(options.dryRun),
|
|
90
|
+
};
|
|
91
|
+
const schemaStatus = await writeProjectFile(cwd, output, renderDatabaseSchema(dialect, tables), result.dryRun);
|
|
92
|
+
recordFileStatus(result, output, schemaStatus);
|
|
93
|
+
const indexStatus = await updateSchemaIndex(cwd, indexFile, output, result.dryRun);
|
|
94
|
+
recordFileStatus(result, indexFile, indexStatus);
|
|
95
|
+
return result;
|
|
96
|
+
}
|
|
57
97
|
async function assertDatabaseCommandPreflight(cwd, command, scriptCommand) {
|
|
58
98
|
if ((command === "generate" || command === "migrate") &&
|
|
59
99
|
/\bdrizzle-kit\b/.test(scriptCommand) &&
|
|
@@ -75,6 +115,166 @@ async function assertDatabaseCommandPreflight(cwd, command, scriptCommand) {
|
|
|
75
115
|
throw new Error(`Missing database ${command} entrypoint ${standardEntrypoint}. beignet db ${command} runs "${scriptCommand}", so restore ${standardEntrypoint} or update package.json script "${databaseScripts[command]}".`);
|
|
76
116
|
}
|
|
77
117
|
}
|
|
118
|
+
async function resolveDatabaseSchemaDialect(cwd, explicitDialect) {
|
|
119
|
+
if (explicitDialect !== undefined)
|
|
120
|
+
return explicitDialect;
|
|
121
|
+
const providerDialect = await inferDialectFromProviders(cwd);
|
|
122
|
+
if (providerDialect !== undefined)
|
|
123
|
+
return providerDialect;
|
|
124
|
+
const drizzleDialect = await inferDialectFromDrizzleConfig(cwd);
|
|
125
|
+
if (drizzleDialect !== undefined)
|
|
126
|
+
return drizzleDialect;
|
|
127
|
+
throw new Error("Could not infer the Drizzle dialect. Pass --dialect sqlite, --dialect postgres, or --dialect mysql.");
|
|
128
|
+
}
|
|
129
|
+
async function inferDialectFromProviders(cwd) {
|
|
130
|
+
const sources = await Promise.all(["server/providers.ts", "server/index.ts"].map(async (file) => {
|
|
131
|
+
try {
|
|
132
|
+
return await readFile(path.join(cwd, file), "utf8");
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
if (error.code === "ENOENT")
|
|
136
|
+
return "";
|
|
137
|
+
throw error;
|
|
138
|
+
}
|
|
139
|
+
}));
|
|
140
|
+
const source = sources.join("\n");
|
|
141
|
+
const matches = new Set();
|
|
142
|
+
if (/\b(?:drizzleSqliteProvider|createDrizzleSqliteProvider)\b/.test(source)) {
|
|
143
|
+
matches.add("sqlite");
|
|
144
|
+
}
|
|
145
|
+
if (/\b(?:drizzlePostgresProvider|createDrizzlePostgresProvider)\b/.test(source)) {
|
|
146
|
+
matches.add("postgres");
|
|
147
|
+
}
|
|
148
|
+
if (/\b(?:drizzleMysqlProvider|createDrizzleMysqlProvider)\b/.test(source)) {
|
|
149
|
+
matches.add("mysql");
|
|
150
|
+
}
|
|
151
|
+
return singleInferredDialect(matches, "registered Drizzle providers");
|
|
152
|
+
}
|
|
153
|
+
async function inferDialectFromDrizzleConfig(cwd) {
|
|
154
|
+
for (const file of [
|
|
155
|
+
"drizzle.config.ts",
|
|
156
|
+
"drizzle.config.mts",
|
|
157
|
+
"drizzle.config.js",
|
|
158
|
+
"drizzle.config.mjs",
|
|
159
|
+
]) {
|
|
160
|
+
let source;
|
|
161
|
+
try {
|
|
162
|
+
source = await readFile(path.join(cwd, file), "utf8");
|
|
163
|
+
}
|
|
164
|
+
catch (error) {
|
|
165
|
+
if (error.code === "ENOENT")
|
|
166
|
+
continue;
|
|
167
|
+
throw error;
|
|
168
|
+
}
|
|
169
|
+
const matches = new Set();
|
|
170
|
+
if (/\bdialect\s*:\s*["'](?:sqlite|turso)["']/.test(source)) {
|
|
171
|
+
matches.add("sqlite");
|
|
172
|
+
}
|
|
173
|
+
if (/\bdialect\s*:\s*["']postgresql["']/.test(source)) {
|
|
174
|
+
matches.add("postgres");
|
|
175
|
+
}
|
|
176
|
+
if (/\bdialect\s*:\s*["']mysql["']/.test(source)) {
|
|
177
|
+
matches.add("mysql");
|
|
178
|
+
}
|
|
179
|
+
const inferred = singleInferredDialect(matches, file);
|
|
180
|
+
if (inferred !== undefined)
|
|
181
|
+
return inferred;
|
|
182
|
+
}
|
|
183
|
+
return undefined;
|
|
184
|
+
}
|
|
185
|
+
function singleInferredDialect(matches, source) {
|
|
186
|
+
if (matches.size === 0)
|
|
187
|
+
return undefined;
|
|
188
|
+
if (matches.size === 1)
|
|
189
|
+
return [...matches][0];
|
|
190
|
+
throw new Error(`Could not infer a single Drizzle dialect from ${source}. Pass --dialect sqlite, --dialect postgres, or --dialect mysql.`);
|
|
191
|
+
}
|
|
192
|
+
function normalizeAppRelativePath(cwd, input, label) {
|
|
193
|
+
const absolute = path.resolve(cwd, input);
|
|
194
|
+
const relative = path.relative(cwd, absolute);
|
|
195
|
+
if (relative.startsWith("..") || path.isAbsolute(relative)) {
|
|
196
|
+
throw new Error(`The ${label} path must be inside the app directory.`);
|
|
197
|
+
}
|
|
198
|
+
return relative.split(path.sep).join("/");
|
|
199
|
+
}
|
|
200
|
+
function renderDatabaseSchema(dialect, tables) {
|
|
201
|
+
const selectedTables = tables.map((table) => schemaTableDefinitions[table]);
|
|
202
|
+
const tableNames = selectedTables.map((table) => table.tableName);
|
|
203
|
+
const exportNames = selectedTables.map((table) => table.exportName).sort();
|
|
204
|
+
return `// Generated by beignet db schema generate.
|
|
205
|
+
// Required tables: ${tableNames.join(", ")}.
|
|
206
|
+
// Re-run this command after upgrading @beignet/provider-db-drizzle.
|
|
207
|
+
|
|
208
|
+
export {
|
|
209
|
+
${exportNames.map((name) => ` ${name},`).join("\n")}
|
|
210
|
+
} from "@beignet/provider-db-drizzle/${dialect}/schema";
|
|
211
|
+
`;
|
|
212
|
+
}
|
|
213
|
+
const schemaTableDefinitions = {
|
|
214
|
+
audit: { exportName: "auditLog", tableName: "audit_log" },
|
|
215
|
+
idempotency: {
|
|
216
|
+
exportName: "idempotencyRecords",
|
|
217
|
+
tableName: "idempotency_records",
|
|
218
|
+
},
|
|
219
|
+
outbox: { exportName: "outboxMessages", tableName: "outbox_messages" },
|
|
220
|
+
};
|
|
221
|
+
function uniqueSchemaTables(tables) {
|
|
222
|
+
const unique = allDatabaseSchemaTables.filter((table) => tables.includes(table));
|
|
223
|
+
if (unique.length === 0) {
|
|
224
|
+
throw new Error("At least one schema table must be selected.");
|
|
225
|
+
}
|
|
226
|
+
return unique;
|
|
227
|
+
}
|
|
228
|
+
async function writeProjectFile(cwd, relativePath, contents, dryRun) {
|
|
229
|
+
const absolute = path.join(cwd, relativePath);
|
|
230
|
+
const existing = await readTextIfExists(absolute);
|
|
231
|
+
if (existing === contents)
|
|
232
|
+
return "unchanged";
|
|
233
|
+
if (!dryRun) {
|
|
234
|
+
await mkdir(path.dirname(absolute), { recursive: true });
|
|
235
|
+
await writeFile(absolute, contents);
|
|
236
|
+
}
|
|
237
|
+
return existing === undefined ? "created" : "updated";
|
|
238
|
+
}
|
|
239
|
+
async function updateSchemaIndex(cwd, indexFile, output, dryRun) {
|
|
240
|
+
const indexAbsolute = path.join(cwd, indexFile);
|
|
241
|
+
const existing = await readTextIfExists(indexAbsolute);
|
|
242
|
+
const exportLine = `export * from "./${schemaIndexSpecifier(indexFile, output)}";`;
|
|
243
|
+
const contents = existing === undefined
|
|
244
|
+
? `${exportLine}\n`
|
|
245
|
+
: existing.includes(exportLine)
|
|
246
|
+
? existing
|
|
247
|
+
: `${existing.trimEnd()}\n${exportLine}\n`;
|
|
248
|
+
return writeProjectFile(cwd, indexFile, contents, dryRun);
|
|
249
|
+
}
|
|
250
|
+
function schemaIndexSpecifier(indexFile, output) {
|
|
251
|
+
const relative = path.relative(path.dirname(indexFile), output);
|
|
252
|
+
return stripTsExtension(relative).split(path.sep).join("/");
|
|
253
|
+
}
|
|
254
|
+
function stripTsExtension(file) {
|
|
255
|
+
return file.replace(/\.(?:ts|mts|cts)$/, "");
|
|
256
|
+
}
|
|
257
|
+
async function readTextIfExists(file) {
|
|
258
|
+
try {
|
|
259
|
+
return await readFile(file, "utf8");
|
|
260
|
+
}
|
|
261
|
+
catch (error) {
|
|
262
|
+
if (error.code === "ENOENT")
|
|
263
|
+
return undefined;
|
|
264
|
+
throw error;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
function recordFileStatus(result, file, status) {
|
|
268
|
+
if (status === "created") {
|
|
269
|
+
result.createdFiles.push(file);
|
|
270
|
+
}
|
|
271
|
+
else if (status === "updated") {
|
|
272
|
+
result.updatedFiles.push(file);
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
result.skippedFiles.push(file);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
78
278
|
function hasExplicitDrizzleConfigFlag(scriptCommand) {
|
|
79
279
|
return /(?:^|\s)--config(?:=|\s)/.test(scriptCommand);
|
|
80
280
|
}
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAsBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAsBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;AAkuDF,wBAAsB,IAAI,CACxB,MAAM,WAAwB,EAC9B,OAAO,GAAE,4BAA4B,CAAC,UAAU,CAAe,GAC9D,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|