@chaim-tools/chaim 0.1.14 → 0.1.16

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/README.md CHANGED
@@ -30,11 +30,14 @@ npm install -g @chaim-tools/chaim
30
30
  cd my-cdk-project
31
31
  cdk synth
32
32
 
33
- # 2. Generate the Java SDK (run from your Java application directory)
34
- cd ../my-java-app
35
- chaim generate --package com.mycompany.myapp.model
33
+ # 2. Generate the Java SDK
34
+ # If you have chaim.json in the project root (recommended):
35
+ chaim generate
36
36
 
37
- # Your Java SDK is now in ./src/main/java/
37
+ # Or one-off without chaim.json:
38
+ chaim generate --package com.mycompany.myapp.model --output ./src/main/java
39
+
40
+ # Your Java SDK is now written under the configured source root
38
41
  ```
39
42
 
40
43
  The CLI reads snapshots from the OS cache (`~/.chaim/cache/snapshots/`). You can run it from any directory.
@@ -52,28 +55,67 @@ Before running `chaim generate`, your CDK project must produce valid snapshots v
52
55
 
53
56
  Generates Java SDK code from local snapshots.
54
57
 
58
+ **With `chaim.json` (recommended for multi-stack projects):**
59
+ ```bash
60
+ chaim generate
61
+ ```
62
+
63
+ **Single-stack / one-off:**
55
64
  ```bash
56
- chaim generate --package com.mycompany.myapp.model
65
+ chaim generate --package com.mycompany.myapp.model --output ./src/main/java
57
66
  ```
58
67
 
59
68
  | Option | Required | Default | Description |
60
69
  |--------|----------|---------|-------------|
61
- | `--package <name>` | Yes | — | Java package name (e.g., `com.mycompany.myapp.model`) |
70
+ | `--package <name>` | No* | — | Java package name (e.g., `com.mycompany.myapp.model`). Required when no `chaim.json` is present. |
62
71
  | `-l, --language <lang>` | No | `java` | Target language |
63
- | `--output <dir>` | No | `./src/main/java` | Output directory |
64
- | `--stack <name>` | No | — | Filter snapshots by CDK stack name |
72
+ | `--output <javaRoot>` | No | `./src/main/java` | Java source root. **Do not include the package path** — it is appended automatically (e.g., `--output ./src/main/java` with `--package com.example.sdk` writes to `./src/main/java/com/example/sdk/`). |
73
+ | `--stack <name>` | No | — | Filter to a single CDK stack (or narrow config-driven runs) |
65
74
  | `--snapshot-dir <path>` | No | OS cache | Override snapshot directory |
66
75
  | `--skip-checks` | No | `false` | Skip environment validation |
67
76
 
77
+ *`--package` is optional when a `chaim.json` with `generate.stacks` is present in the project.
78
+
68
79
  **What it does**:
69
80
 
70
- 1. Scans the OS cache for snapshot files produced by `chaim-cdk`
71
- 2. Filters by stack name (if provided) and discards DELETE-action snapshots
72
- 3. Groups entities by physical DynamoDB table (using table ARN or composite key)
73
- 4. Validates that all entities sharing a table have matching partition/sort key field names
74
- 5. Detects field name collisions from `nameOverride` or auto-conversion
75
- 6. Passes schemas and table metadata (including GSI/LSI definitions) to the Java generator. LSI metadata does not include `partitionKey` the generator uses the table's own partition key since LSIs always share it
76
- 7. Writes generated `.java` files to the output directory
81
+ 1. Loads `chaim.json` from the project root (if present) for multi-stack configuration
82
+ 2. For each stack in `generate.stacks` (or the single CLI-specified run), scans the OS cache for matching snapshot files
83
+ 3. Filters by stack name and discards DELETE-action snapshots; deduplicates by `bindingId` (newest snapshot wins)
84
+ 4. Groups entities by physical DynamoDB table (using table ARN or composite key)
85
+ 5. Validates that all entities sharing a table have matching partition/sort key field names
86
+ 6. Detects field name collisions from `nameOverride` or auto-conversion
87
+ 7. Passes schemas and table metadata (including GSI/LSI definitions) to the Java generator
88
+ 8. Writes generated `.java` files under `javaRoot/<package-as-path>/` (e.g., `src/main/java/com/example/sdk/`)
89
+
90
+ #### Project Config: `chaim.json`
91
+
92
+ For projects with multiple CDK stacks, place a `chaim.json` in the project root:
93
+
94
+ ```json
95
+ {
96
+ "generate": {
97
+ "javaRoot": "./application/src/main/java",
98
+ "stacks": {
99
+ "OrdersInfrastructureStack": {
100
+ "package": "com.example.orders.sdk"
101
+ },
102
+ "ProductsInfrastructureStack": {
103
+ "package": "com.example.products.sdk"
104
+ }
105
+ }
106
+ }
107
+ }
108
+ ```
109
+
110
+ | Field | Required | Description |
111
+ |-------|----------|-------------|
112
+ | `generate.javaRoot` | No | Shared Java source root. Default: `./src/main/java`. Never include the package path. |
113
+ | `generate.stacks` | Yes | Map of CDK stack name → `{ package, javaRoot? }` |
114
+ | `generate.stacks.<name>.package` | Yes | Java package name for this stack's SDK |
115
+ | `generate.stacks.<name>.javaRoot` | No | Per-stack source root override |
116
+ | `generate.language` | No | Target language (default: `java`) |
117
+
118
+ A single `chaim generate` call processes all stacks. Use `--stack <name>` to narrow to one.
77
119
 
78
120
  ### `chaim validate`
79
121
 
@@ -311,28 +353,41 @@ The CLI shows existing snapshots that did not match your `--stack` filter, helpi
311
353
 
312
354
  ## Using in Your Application Codebase
313
355
 
314
- A typical project layout:
315
-
316
- ```
317
- my-cdk-project/ # CDK infrastructure
318
- ├── schemas/
319
- ├── user.bprint
320
- └── order.bprint
321
- ├── lib/my-stack.ts
322
- └── package.json
323
-
324
- my-java-app/ # Java application
325
- ├── src/main/java/com/example/model/ # generated by `chaim generate`
326
- │ ├── User.java
327
- ├── Order.java
328
- └── ...
329
- ├── src/main/java/com/example/ # Your application code
330
- │ └── service/UserService.java
331
- ├── build.gradle.kts
332
- └── ...
356
+ A typical multi-stack project layout:
357
+
358
+ ```
359
+ my-project/
360
+ ├── chaim.json # ← commit this
361
+ ├── infrastructure/ # CDK infrastructure
362
+ ├── schemas/
363
+ │ │ ├── user.bprint
364
+ │ │ └── order.bprint
365
+ │ ├── lib/my-stack.ts
366
+ │ └── package.json
367
+ └── application/ # Java application
368
+ └── src/main/java/
369
+ ├── com/example/orders/sdk/ # ← generated (gitignore this)
370
+ ├── Order.java
371
+ ├── OrderRepository.java
372
+ │ └── ...
373
+ └── com/example/ # Your application code
374
+ └── service/OrderService.java
375
+ ```
376
+
377
+ **`chaim.json`:**
378
+ ```json
379
+ {
380
+ "generate": {
381
+ "javaRoot": "./application/src/main/java",
382
+ "stacks": {
383
+ "OrdersInfrastructureStack": { "package": "com.example.orders.sdk" },
384
+ "ProductsInfrastructureStack": { "package": "com.example.products.sdk" }
385
+ }
386
+ }
387
+ }
333
388
  ```
334
389
 
335
- Run `cdk synth` once, then `chaim generate --package com.example.model` in your Java project. Re-run whenever you change a `.bprint` file or add a new entity.
390
+ Run `cdk synth && chaim generate` to regenerate all stacks at once. Re-run whenever you change a `.bprint` file or add a new entity.
336
391
 
337
392
  ## Development
338
393
 
@@ -1,7 +1,7 @@
1
1
  interface GenerateOptions {
2
2
  stack?: string;
3
- package: string;
4
- output: string;
3
+ package?: string;
4
+ output?: string;
5
5
  language?: string;
6
6
  snapshotDir?: string;
7
7
  skipChecks?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAuBA,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA8C7E"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AA6BA,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAWD,wBAAsB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAuI7E"}
@@ -35,17 +35,16 @@ const snapshot_discovery_1 = require("../services/snapshot-discovery");
35
35
  const os_cache_paths_1 = require("../services/os-cache-paths");
36
36
  const types_1 = require("../config/types");
37
37
  const name_resolver_1 = require("../services/name-resolver");
38
+ const chaim_config_loader_1 = require("../services/chaim-config-loader");
38
39
  const path = __importStar(require("path"));
40
+ const vscode_settings_1 = require("../services/vscode-settings");
39
41
  async function generateCommand(options) {
40
42
  try {
41
- // Validate required options
42
- if (!options.package) {
43
- console.error(chalk_1.default.red('Error: --package is required'));
44
- console.error(chalk_1.default.gray(' Example: chaim generate --package com.mycompany.myapp.model'));
45
- process.exit(1);
46
- }
43
+ // Load project-level chaim.json (if present)
44
+ const repoConfig = (0, chaim_config_loader_1.loadRepoConfig)();
45
+ const generateConfig = repoConfig?.generate;
47
46
  // Resolve and validate language (defaults to Java)
48
- const language = resolveLanguage(options.language);
47
+ const language = resolveLanguage(options.language ?? generateConfig?.language);
49
48
  // Pre-generation checks (unless skipped)
50
49
  if (!options.skipChecks) {
51
50
  await runPreGenerationChecks();
@@ -54,19 +53,94 @@ async function generateCommand(options) {
54
53
  const snapshotDir = options.snapshotDir
55
54
  ? (0, snapshot_discovery_1.getSnapshotDirPath)(options.snapshotDir)
56
55
  : (0, os_cache_paths_1.getSnapshotBaseDir)();
57
- // Build discovery options from CLI args (only --stack filter)
58
- const discoveryOptions = {
59
- stackName: options.stack,
60
- };
61
- // Resolve all matching snapshots
62
- const resolvedSnapshots = (0, snapshot_discovery_1.resolveAllSnapshots)(snapshotDir, discoveryOptions);
63
- if (resolvedSnapshots.length === 0) {
64
- // No snapshots found - provide helpful error message
65
- printSnapshotNotFoundError(snapshotDir, discoveryOptions);
56
+ // ── Determine which runs to execute ──────────────────────────────────────
57
+ //
58
+ // Three modes:
59
+ // A) Config-driven (no --package CLI flag):
60
+ // Loop over every stack in chaim.json → generate.stacks.
61
+ // A specific --stack flag narrows this to just that one entry.
62
+ //
63
+ // B) CLI flags only (--package required):
64
+ // Single run, no chaim.json needed.
65
+ //
66
+ // C) Mixed (--package + chaim.json present):
67
+ // CLI flags win; treat as a single explicit run.
68
+ // ─────────────────────────────────────────────────────────────────────────
69
+ let runs;
70
+ if (!options.package && generateConfig?.stacks) {
71
+ // Mode A: config-driven multi-stack
72
+ const stackEntries = Object.entries(generateConfig.stacks);
73
+ if (stackEntries.length === 0) {
74
+ console.error(chalk_1.default.red('Error: chaim.json → generate.stacks is empty'));
75
+ console.error(chalk_1.default.gray(' Add at least one stack entry, e.g.:'));
76
+ console.error(chalk_1.default.gray(' { "generate": { "stacks": { "MyStack": { "package": "com.example.sdk" } } } }'));
77
+ process.exit(1);
78
+ }
79
+ // Filter by --stack if provided
80
+ const filtered = options.stack
81
+ ? stackEntries.filter(([name]) => name === options.stack)
82
+ : stackEntries;
83
+ if (filtered.length === 0) {
84
+ console.error(chalk_1.default.red(`Error: Stack '${options.stack}' not found in chaim.json → generate.stacks`));
85
+ console.error(chalk_1.default.gray(` Available stacks: ${stackEntries.map(([n]) => n).join(', ')}`));
86
+ process.exit(1);
87
+ }
88
+ runs = filtered.map(([stackName, stackCfg]) => ({
89
+ stackName,
90
+ pkg: stackCfg.package,
91
+ javaRoot: (0, chaim_config_loader_1.resolveJavaRoot)(undefined, // no CLI override in config mode
92
+ stackCfg.javaRoot, generateConfig.javaRoot),
93
+ }));
94
+ }
95
+ else if (options.package) {
96
+ // Mode B / C: explicit CLI flags
97
+ runs = [{
98
+ stackName: options.stack,
99
+ pkg: options.package,
100
+ javaRoot: (0, chaim_config_loader_1.resolveJavaRoot)(options.output, undefined, generateConfig?.javaRoot),
101
+ }];
102
+ }
103
+ else {
104
+ // Neither --package nor chaim.json stacks config → error
105
+ console.error(chalk_1.default.red('Error: --package is required (or add a chaim.json with generate.stacks)'));
106
+ console.error('');
107
+ console.error(chalk_1.default.gray('Option 1 – CLI flag:'));
108
+ console.error(chalk_1.default.gray(' chaim generate --package com.mycompany.myapp.sdk --output ./src/main/java'));
109
+ console.error('');
110
+ console.error(chalk_1.default.gray('Option 2 – chaim.json project config (recommended for multi-stack projects):'));
111
+ console.error(chalk_1.default.gray(' {'));
112
+ console.error(chalk_1.default.gray(' "generate": {'));
113
+ console.error(chalk_1.default.gray(' "javaRoot": "./src/main/java",'));
114
+ console.error(chalk_1.default.gray(' "stacks": {'));
115
+ console.error(chalk_1.default.gray(' "MyStack": { "package": "com.mycompany.myapp.sdk" }'));
116
+ console.error(chalk_1.default.gray(' }'));
117
+ console.error(chalk_1.default.gray(' }'));
118
+ console.error(chalk_1.default.gray(' }'));
66
119
  process.exit(1);
67
120
  }
68
- // Generate from all matching snapshots
69
- await generateFromSnapshots(resolvedSnapshots, options, language);
121
+ // ── Execute each run ──────────────────────────────────────────────────────
122
+ for (const run of runs) {
123
+ const discoveryOptions = {
124
+ stackName: run.stackName,
125
+ };
126
+ const resolvedSnapshots = (0, snapshot_discovery_1.resolveAllSnapshots)(snapshotDir, discoveryOptions);
127
+ if (resolvedSnapshots.length === 0) {
128
+ printSnapshotNotFoundError(snapshotDir, discoveryOptions);
129
+ if (runs.length === 1) {
130
+ process.exit(1);
131
+ }
132
+ console.error(chalk_1.default.yellow(` Skipping stack '${run.stackName ?? '(all)'}'`));
133
+ continue;
134
+ }
135
+ await generateFromSnapshots(resolvedSnapshots, run, language);
136
+ }
137
+ // ── VS Code integration ───────────────────────────────────────────────
138
+ // Automatically configure .vscode/settings.json so *.bprint files get
139
+ // JSON Schema validation and autocomplete out of the box.
140
+ // Opt out via `"vscode": false` in chaim.json → generate.
141
+ if (generateConfig?.vscode !== false) {
142
+ (0, vscode_settings_1.ensureVsCodeSettings)(process.cwd());
143
+ }
70
144
  }
71
145
  catch (error) {
72
146
  console.error(chalk_1.default.red('✗ Generation failed:'), error instanceof Error ? error.message : error);
@@ -187,8 +261,7 @@ function validateTableKeyConsistency(tableSnapshots, tableName) {
187
261
  if (!first.snapshot.schema) {
188
262
  throw new Error(`Cannot validate table key consistency: first snapshot has null schema (DELETE action)`);
189
263
  }
190
- const firstPk = first.snapshot.schema.primaryKey?.partitionKey;
191
- const firstSk = first.snapshot.schema.primaryKey?.sortKey;
264
+ const firstFields = first.snapshot.schema.identity?.fields;
192
265
  const firstEntity = first.entityName;
193
266
  for (let i = 1; i < tableSnapshots.length; i++) {
194
267
  const snap = tableSnapshots[i];
@@ -196,24 +269,16 @@ function validateTableKeyConsistency(tableSnapshots, tableName) {
196
269
  if (!snap.snapshot.schema) {
197
270
  continue;
198
271
  }
199
- const pk = snap.snapshot.schema.primaryKey?.partitionKey;
200
- const sk = snap.snapshot.schema.primaryKey?.sortKey;
272
+ const fields = snap.snapshot.schema.identity?.fields;
201
273
  const entity = snap.entityName;
202
- // Check partition key matches
203
- if (pk !== firstPk) {
204
- throw new Error(`Entity '${entity}' has incompatible partition key for table '${tableName}'.\n` +
205
- ` Expected: partitionKey='${firstPk}' (from entity '${firstEntity}')\n` +
206
- ` Found: partitionKey='${pk}'\n\n` +
207
- `All entities bound to the same table must have matching PK/SK field names.`);
208
- }
209
- // Check sort key matches (both defined or both undefined)
210
- if (sk !== firstSk) {
211
- const expectedSk = firstSk || '(none)';
212
- const foundSk = sk || '(none)';
213
- throw new Error(`Entity '${entity}' has incompatible sort key for table '${tableName}'.\n` +
214
- ` Expected: sortKey='${expectedSk}' (from entity '${firstEntity}')\n` +
215
- ` Found: sortKey='${foundSk}'\n\n` +
216
- `All entities bound to the same table must have matching PK/SK field names.`);
274
+ // Check identity fields match
275
+ if (JSON.stringify(firstFields) !== JSON.stringify(fields)) {
276
+ const expectedFields = firstFields?.join(', ') || '(none)';
277
+ const foundFields = fields?.join(', ') || '(none)';
278
+ throw new Error(`Entity '${entity}' has incompatible identity fields for table '${tableName}'.\n` +
279
+ ` Expected: identity fields=[${expectedFields}] (from entity '${firstEntity}')\n` +
280
+ ` Found: identity fields=[${foundFields}]\n\n` +
281
+ `All entities bound to the same table must have matching identity field names.`);
217
282
  }
218
283
  }
219
284
  }
@@ -221,8 +286,13 @@ function validateTableKeyConsistency(tableSnapshots, tableName) {
221
286
  * Generate SDK from multiple resolved snapshots.
222
287
  * Groups entities by physical table and generates shared infrastructure once per table.
223
288
  */
224
- async function generateFromSnapshots(snapshots, options, language) {
289
+ async function generateFromSnapshots(snapshots, run, language) {
225
290
  console.log(chalk_1.default.blue(`\nGenerating ${language.toUpperCase()} code from ${snapshots.length} LOCAL snapshot(s)`));
291
+ if (run.stackName) {
292
+ console.log(chalk_1.default.gray(` Stack: ${run.stackName}`));
293
+ }
294
+ console.log(chalk_1.default.gray(` Package: ${run.pkg}`));
295
+ console.log(chalk_1.default.gray(` Root: ${run.javaRoot}`));
226
296
  console.log('');
227
297
  // Filter out DELETE snapshots (those with null schema or action === 'DELETE')
228
298
  // Code generation only works with UPSERT snapshots that have valid schemas
@@ -307,8 +377,10 @@ async function generateFromSnapshots(snapshots, options, language) {
307
377
  const tableMetadata = createTableMetadataFromSnapshot(firstSnapshot.snapshot);
308
378
  try {
309
379
  const javaGenerator = new client_java_1.JavaGenerator();
310
- // Use the new generateForTable API that accepts multiple schemas
311
- await javaGenerator.generateForTable(schemas, options.package, options.output, tableMetadata);
380
+ // Use the new generateForTable API that accepts multiple schemas.
381
+ // `run.javaRoot` is the Java source root; JavaPoet appends the
382
+ // package as subdirectories automatically (e.g., com/example/sdk/).
383
+ await javaGenerator.generateForTable(schemas, run.pkg, run.javaRoot, tableMetadata);
312
384
  results.push({
313
385
  tableId,
314
386
  entities: entityNames,
@@ -357,8 +429,9 @@ async function generateFromSnapshots(snapshots, options, language) {
357
429
  console.log(chalk_1.default.yellow(`Generated ${totalEntities} entities, ${failedTables} table(s) failed`));
358
430
  }
359
431
  console.log(chalk_1.default.green(' Language:'), language);
360
- console.log(chalk_1.default.green(' Output directory:'), path.resolve(options.output));
361
- console.log(chalk_1.default.green(' Package:'), options.package);
432
+ console.log(chalk_1.default.green(' Java source root:'), run.javaRoot);
433
+ console.log(chalk_1.default.green(' Package:'), run.pkg);
434
+ console.log(chalk_1.default.green(' Written to:'), path.join(run.javaRoot, run.pkg.replace(/\./g, path.sep)));
362
435
  if (failedTables > 0) {
363
436
  process.exit(1);
364
437
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
@@ -46,8 +46,8 @@ async function validateCommand(schemaFile) {
46
46
  const validatedSchema = (0, chaim_bprint_spec_1.validateSchema)(schema);
47
47
  console.log(chalk_1.default.green('✓ Schema is valid'));
48
48
  console.log(chalk_1.default.green(' Entity:'), validatedSchema.entityName);
49
- console.log(chalk_1.default.green(' Partition Key:'), validatedSchema.primaryKey.partitionKey);
50
- console.log(chalk_1.default.green(' Version:'), validatedSchema.schemaVersion);
49
+ console.log(chalk_1.default.green(' Identity:'), validatedSchema.identity.fields.join(', '));
50
+ console.log(chalk_1.default.green(' Schema Version:'), validatedSchema.schemaVersion);
51
51
  console.log(chalk_1.default.green(' Fields:'), validatedSchema.fields.length);
52
52
  // Resolve field names for Java and display mapping table
53
53
  const resolvedFields = (0, name_resolver_1.resolveFieldNames)(validatedSchema.fields, 'java');
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,59 @@ export interface GlobalChaimConfig {
63
63
  /** Telemetry opt-out flag */
64
64
  telemetryOptOut?: boolean;
65
65
  }
66
+ /**
67
+ * Per-stack generation settings inside chaim.json → generate.stacks
68
+ */
69
+ export interface ChaimStackGenerateConfig {
70
+ /**
71
+ * Java package name for entities in this stack.
72
+ * e.g., "com.example.orders.sdk"
73
+ */
74
+ package: string;
75
+ /**
76
+ * Optional per-stack Java source root override.
77
+ * Falls back to generate.javaRoot when omitted.
78
+ * e.g., "./orders-service/src/main/java"
79
+ */
80
+ javaRoot?: string;
81
+ }
82
+ /**
83
+ * Top-level generate block inside chaim.json.
84
+ * Controls how `chaim generate` (with no CLI flags) discovers stacks
85
+ * and decides where to write each SDK.
86
+ */
87
+ export interface ChaimGenerateConfig {
88
+ /**
89
+ * Java source root shared by all stacks.
90
+ * Must be the raw Maven/Gradle source root — do NOT include the
91
+ * package path here (JavaPoet appends that automatically).
92
+ * e.g., "./application/src/main/java"
93
+ * Default: "./src/main/java"
94
+ */
95
+ javaRoot?: string;
96
+ /**
97
+ * Target language (defaults to "java").
98
+ */
99
+ language?: SupportedLanguage;
100
+ /**
101
+ * Map from CDK stack name → per-stack config.
102
+ * Every stack that has a ChaimDynamoDBBinder should have an entry here.
103
+ */
104
+ stacks: Record<string, ChaimStackGenerateConfig>;
105
+ /**
106
+ * VS Code workspace integration.
107
+ *
108
+ * When true (the default), `chaim generate` automatically writes
109
+ * `files.associations` and `json.schemas` entries into
110
+ * `.vscode/settings.json` so that VS Code validates `.bprint` files
111
+ * against the bundled JSON Schema without any manual configuration.
112
+ *
113
+ * Set to `false` to opt out (e.g. if you manage VS Code settings
114
+ * through a committed `.vscode/settings.json` that you don't want
115
+ * the CLI to touch).
116
+ */
117
+ vscode?: boolean;
118
+ }
66
119
  /**
67
120
  * Repository/project configuration stored at ./chaim.json
68
121
  *
@@ -77,13 +130,17 @@ export interface RepoChaimConfig {
77
130
  environment?: string;
78
131
  /** AWS region for this project */
79
132
  region?: string;
80
- /** CloudFormation stack name */
81
- stackName?: string;
82
- /** Java package name for code generation */
133
+ /**
134
+ * Code-generation settings for `chaim generate`.
135
+ * When this block is present, running `chaim generate` (with no flags)
136
+ * will automatically process every stack listed under `generate.stacks`.
137
+ */
138
+ generate?: ChaimGenerateConfig;
139
+ /** @deprecated use generate.stacks[stackName].package instead */
83
140
  javaPackage?: string;
84
- /** Output directory for generated code */
141
+ /** @deprecated use generate.javaRoot instead */
85
142
  output?: string;
86
- /** Language for code generation (overrides global default) */
143
+ /** @deprecated use generate.language instead */
87
144
  language?: SupportedLanguage;
88
145
  /** Specific tables to include (if not all) */
89
146
  tables?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAAa,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,iBAA0B,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CAGtB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IAEzB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,sEAAsE;IACtE,eAAe,CAAC,EAAE,iBAAiB,CAAC;IAEpC,6BAA6B;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAElC,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2CAA2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,eAAe,EAAE,OAAO,CAAC;IAGzB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,iBAAiB;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,mCAAmC;IACnC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,CAAC,mBAAmB,CAKxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,8BAA8B;;IAE9B,yBAAyB;;IAEzB,kDAAkD;;CAE1C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAQH;;GAEG;AACU,QAAA,mBAAmB,GAAwB,CAAC,MAAM,CAAC,CAAC;AAEjE;;GAEG;AACU,QAAA,gBAAgB,GAAsB,MAAM,CAAC;AA6H1D;;GAEG;AACU,QAAA,eAAe,GAAiC;IAC3D,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,iBAAiB;IACzB,QAAQ,EAAE,wBAAgB;IAC1B,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF;;GAEG;AACU,QAAA,YAAY,GAAG;IAC1B,8BAA8B;IAC9B,SAAS,EAAE,UAAU;IACrB,yBAAyB;IACzB,UAAU,EAAE,sBAAsB;IAClC,kDAAkD;IAClD,QAAQ,EAAE,cAAc;CAChB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAQH;;GAEG;AACU,QAAA,mBAAmB,GAAwB,CAAC,MAAM,CAAC,CAAC;AAEjE;;GAEG;AACU,QAAA,gBAAgB,GAAsB,MAAM,CAAC;AA4L1D;;GAEG;AACU,QAAA,eAAe,GAAiC;IAC3D,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,iBAAiB;IACzB,QAAQ,EAAE,wBAAgB;IAC1B,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF;;GAEG;AACU,QAAA,YAAY,GAAG;IAC1B,8BAA8B;IAC9B,SAAS,EAAE,UAAU;IACrB,yBAAyB;IACzB,UAAU,EAAE,sBAAsB;IAClC,kDAAkD;IAClD,QAAQ,EAAE,cAAc;CAChB,CAAC"}
package/dist/index.js CHANGED
@@ -48,10 +48,10 @@ program
48
48
  program
49
49
  .command('generate')
50
50
  .description('Generate SDK code from LOCAL snapshot (reads from OS cache)')
51
- .requiredOption('--package <packageName>', 'Package name (e.g., com.mycompany.myapp.model for Java)')
51
+ .option('--package <packageName>', 'Java package name (e.g., com.example.orders.sdk). Optional when chaim.json is present.')
52
52
  .option('-l, --language <language>', 'Target language for code generation (default: java)')
53
- .option('--output <outputDir>', 'Output directory', './src/main/java')
54
- .option('--stack <stackName>', 'Filter by CDK stack name (optional)')
53
+ .option('--output <javaSourceRoot>', 'Java source root (e.g., ./src/main/java). Package subdirs are appended automatically. Optional when chaim.json is present.')
54
+ .option('--stack <stackName>', 'Filter by CDK stack name — or single-stack override (optional)')
55
55
  .option('--snapshot-dir <path>', 'Override snapshot directory (default: OS cache)')
56
56
  .option('--skip-checks', 'Skip environment and schema validation checks')
57
57
  .action(generate_1.generateCommand);