@slowcook-ai/cli 0.19.0-alpha.18 → 0.19.0-alpha.40

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 (92) hide show
  1. package/dist/cli.js +28 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/brand/index.d.ts +58 -0
  4. package/dist/commands/brand/index.d.ts.map +1 -0
  5. package/dist/commands/brand/index.js +257 -0
  6. package/dist/commands/brand/index.js.map +1 -0
  7. package/dist/commands/budget/index.d.ts +2 -0
  8. package/dist/commands/budget/index.d.ts.map +1 -0
  9. package/dist/commands/budget/index.js +252 -0
  10. package/dist/commands/budget/index.js.map +1 -0
  11. package/dist/commands/dev-env/config.d.ts +136 -0
  12. package/dist/commands/dev-env/config.d.ts.map +1 -0
  13. package/dist/commands/dev-env/config.js +96 -0
  14. package/dist/commands/dev-env/config.js.map +1 -0
  15. package/dist/commands/dev-env/index.d.ts +27 -0
  16. package/dist/commands/dev-env/index.d.ts.map +1 -0
  17. package/dist/commands/dev-env/index.js +226 -0
  18. package/dist/commands/dev-env/index.js.map +1 -0
  19. package/dist/commands/dev-env/init.d.ts +28 -0
  20. package/dist/commands/dev-env/init.d.ts.map +1 -0
  21. package/dist/commands/dev-env/init.js +135 -0
  22. package/dist/commands/dev-env/init.js.map +1 -0
  23. package/dist/commands/eval/index.d.ts.map +1 -1
  24. package/dist/commands/eval/index.js +15 -1
  25. package/dist/commands/eval/index.js.map +1 -1
  26. package/dist/commands/init/mock-vite.d.ts +54 -0
  27. package/dist/commands/init/mock-vite.d.ts.map +1 -0
  28. package/dist/commands/init/mock-vite.js +611 -0
  29. package/dist/commands/init/mock-vite.js.map +1 -0
  30. package/dist/commands/init/mock.d.ts +6 -0
  31. package/dist/commands/init/mock.d.ts.map +1 -1
  32. package/dist/commands/init/mock.js +20 -4
  33. package/dist/commands/init/mock.js.map +1 -1
  34. package/dist/commands/plate/agent.d.ts +7 -0
  35. package/dist/commands/plate/agent.d.ts.map +1 -1
  36. package/dist/commands/plate/agent.js +1 -1
  37. package/dist/commands/plate/agent.js.map +1 -1
  38. package/dist/commands/plate/index.d.ts.map +1 -1
  39. package/dist/commands/plate/index.js +6 -0
  40. package/dist/commands/plate/index.js.map +1 -1
  41. package/dist/commands/refine/agent.d.ts +12 -0
  42. package/dist/commands/refine/agent.d.ts.map +1 -1
  43. package/dist/commands/refine/agent.js +173 -13
  44. package/dist/commands/refine/agent.js.map +1 -1
  45. package/dist/commands/refine/brownfield-answer.d.ts +81 -0
  46. package/dist/commands/refine/brownfield-answer.d.ts.map +1 -0
  47. package/dist/commands/refine/brownfield-answer.js +231 -0
  48. package/dist/commands/refine/brownfield-answer.js.map +1 -0
  49. package/dist/commands/refine/context.d.ts.map +1 -1
  50. package/dist/commands/refine/context.js +18 -0
  51. package/dist/commands/refine/context.js.map +1 -1
  52. package/dist/commands/refine/history-index.d.ts +29 -0
  53. package/dist/commands/refine/history-index.d.ts.map +1 -1
  54. package/dist/commands/refine/history-index.js +63 -0
  55. package/dist/commands/refine/history-index.js.map +1 -1
  56. package/dist/commands/refine/index.d.ts.map +1 -1
  57. package/dist/commands/refine/index.js +32 -1
  58. package/dist/commands/refine/index.js.map +1 -1
  59. package/dist/commands/refine/proposals-synth.d.ts +50 -1
  60. package/dist/commands/refine/proposals-synth.d.ts.map +1 -1
  61. package/dist/commands/refine/proposals-synth.js +199 -35
  62. package/dist/commands/refine/proposals-synth.js.map +1 -1
  63. package/dist/commands/refine/spec-yaml.d.ts +274 -250
  64. package/dist/commands/refine/spec-yaml.d.ts.map +1 -1
  65. package/dist/commands/refine/spec-yaml.js +10 -0
  66. package/dist/commands/refine/spec-yaml.js.map +1 -1
  67. package/dist/commands/run-mock/index.d.ts.map +1 -1
  68. package/dist/commands/run-mock/index.js +7 -1
  69. package/dist/commands/run-mock/index.js.map +1 -1
  70. package/dist/commands/testgen/agent.d.ts.map +1 -1
  71. package/dist/commands/testgen/agent.js +34 -9
  72. package/dist/commands/testgen/agent.js.map +1 -1
  73. package/dist/commands/vibe/agent.d.ts +7 -0
  74. package/dist/commands/vibe/agent.d.ts.map +1 -1
  75. package/dist/commands/vibe/agent.js +2 -2
  76. package/dist/commands/vibe/agent.js.map +1 -1
  77. package/dist/commands/vibe/index.d.ts.map +1 -1
  78. package/dist/commands/vibe/index.js +7 -1
  79. package/dist/commands/vibe/index.js.map +1 -1
  80. package/dist/cost-store.d.ts +52 -0
  81. package/dist/cost-store.d.ts.map +1 -0
  82. package/dist/cost-store.js +108 -0
  83. package/dist/cost-store.js.map +1 -0
  84. package/dist/lib/budget.d.ts +123 -0
  85. package/dist/lib/budget.d.ts.map +1 -0
  86. package/dist/lib/budget.js +225 -0
  87. package/dist/lib/budget.js.map +1 -0
  88. package/dist/lib/mock-shape.d.ts +44 -0
  89. package/dist/lib/mock-shape.d.ts.map +1 -0
  90. package/dist/lib/mock-shape.js +77 -0
  91. package/dist/lib/mock-shape.js.map +1 -0
  92. package/package.json +4 -4
@@ -1,4 +1,31 @@
1
1
  import { existsSync, readFileSync } from "node:fs";
2
+ import { scanMigrations } from "./history-index.js";
3
+ /**
4
+ * 0.19.0-α.30 (sc#63) — load the consumer's existing column-set by
5
+ * scanning migration files. Returns Map<table, Set<column>> indexed
6
+ * by lower-case names. Used by deriveSchema to distinguish columns
7
+ * that already exist (skip) from those that need an ALTER TABLE.
8
+ *
9
+ * Returns null if no migrations found (greenfield / first slowcook
10
+ * story); deriveSchema falls back to its existing CREATE TABLE flow.
11
+ */
12
+ export function loadExistingColumns(repoRoot) {
13
+ const migrations = scanMigrations(repoRoot, "supabase/migrations");
14
+ if (migrations.length === 0)
15
+ return null;
16
+ const out = new Map();
17
+ for (const m of migrations) {
18
+ for (const [tbl, cols] of Object.entries(m.columns_added)) {
19
+ const key = tbl.toLowerCase();
20
+ if (!out.has(key))
21
+ out.set(key, new Set());
22
+ const set = out.get(key);
23
+ for (const c of cols)
24
+ set.add(c.toLowerCase());
25
+ }
26
+ }
27
+ return out.size > 0 ? out : null;
28
+ }
2
29
  /**
3
30
  * Deterministic post-processor that derives proposals from the spec
4
31
  * body when the LLM inlined decisions into `invariants` / `api_contract`
@@ -32,11 +59,14 @@ import { existsSync, readFileSync } from "node:fs";
32
59
  * hard-signal backstop: when the LLM doesn't elevate to a structured
33
60
  * block, the synth derives one from prose + brownfield extracts.
34
61
  */
35
- export function synthesizeProposalsFromSpec(spec) {
62
+ export function synthesizeProposalsFromSpec(spec, opts = {}) {
36
63
  const existing = spec.proposals ?? {};
37
64
  const synthesized = { ...existing };
65
+ const appShape = opts.repoRoot
66
+ ? detectAppShape(opts.repoRoot)
67
+ : { kind: "single-grouped", prefix: "src/app/(main)" };
38
68
  if (!existing.routes) {
39
- const routes = deriveRoutes(spec);
69
+ const routes = deriveRoutes(spec, appShape);
40
70
  if (routes)
41
71
  synthesized.routes = routes;
42
72
  }
@@ -46,7 +76,8 @@ export function synthesizeProposalsFromSpec(spec) {
46
76
  synthesized.auth = auth;
47
77
  }
48
78
  if (!existing.schema) {
49
- const schema = deriveSchema(spec);
79
+ const existingColumns = opts.repoRoot ? loadExistingColumns(opts.repoRoot) : null;
80
+ const schema = deriveSchema(spec, existingColumns);
50
81
  if (schema)
51
82
  synthesized.schema = schema;
52
83
  }
@@ -260,13 +291,22 @@ function readExistingTokens() {
260
291
  }
261
292
  return set;
262
293
  }
263
- function deriveRoutes(spec) {
294
+ function deriveRoutes(spec, appShape) {
264
295
  const paths = new Set();
265
- // 1. Page-like paths from api_contract entries that don't start with /api/
296
+ // 0.19.0-α.29 (sc#62) STOP auto-adding api_contract paths to routes.
297
+ // api_contract is the API surface; routes is the PAGE surface. Earlier
298
+ // code did `if (!startsWith("/api/")) paths.add(p)` — but real consumers
299
+ // (delgoosh) have API endpoints under `/auth/*`, `/patients/me/*`, etc.
300
+ // that don't start with `/api/`. Those leaked into routes → brew would
301
+ // mis-scaffold page files for endpoint paths.
302
+ //
303
+ // Build a set of api_contract paths so we can EXCLUDE them from
304
+ // page-route extraction below (in case prose also mentions them).
305
+ const apiPaths = new Set();
266
306
  for (const entry of spec.api_contract ?? []) {
267
307
  const p = entry.path;
268
- if (typeof p === "string" && !p.startsWith("/api/"))
269
- paths.add(p);
308
+ if (typeof p === "string")
309
+ apiPaths.add(p);
270
310
  }
271
311
  // 2. Path mentions in ALL prose fields, not just ui_behavior. Specs use
272
312
  // `<handle>` in preconditions/invariants/acceptance_scenarios as the
@@ -300,11 +340,15 @@ function deriveRoutes(spec) {
300
340
  continue;
301
341
  if (raw.includes("."))
302
342
  continue;
343
+ if (apiPaths.has(raw))
344
+ continue; // sc#62: skip API endpoints
303
345
  // Normalise <name> + :name → [name] so downstream file-path derivation
304
346
  // sees a Next.js-shaped route regardless of which form the spec used.
305
347
  const normalised = raw
306
348
  .replace(/<([a-z_][a-z0-9_]*)>/gi, "[$1]")
307
349
  .replace(/:([a-z_][a-z0-9_]*)/gi, "[$1]");
350
+ if (apiPaths.has(normalised))
351
+ continue; // sc#62: normalised api endpoints too
308
352
  paths.add(normalised);
309
353
  }
310
354
  // Note (BUG-D, 0.14.0-α.4): an earlier α.3 attempt to lift dynamic
@@ -353,7 +397,7 @@ function deriveRoutes(spec) {
353
397
  const coalesced = pathList.filter((p) => p.includes("[") || !hasDynamicSibling(p));
354
398
  const entries = coalesced.sort().map((path) => ({
355
399
  path,
356
- file: pathToPageFile(path),
400
+ file: pathToPageFile(path, appShape),
357
401
  }));
358
402
  return {
359
403
  status: "pending",
@@ -362,17 +406,61 @@ function deriveRoutes(spec) {
362
406
  paths: entries,
363
407
  };
364
408
  }
365
- /**
366
- * Map a URL path to a candidate Next.js App Router file location.
367
- * Uses the `(main)` route group by default (authenticated app pages).
368
- * Consumer can edit post-emit if their layout differs.
369
- */
370
- function pathToPageFile(path) {
409
+ export function detectAppShape(repoRoot) {
410
+ // Multi-app detection: walk apps/* for sub-dirs that have a src/app/
411
+ try {
412
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
413
+ const fs = require("node:fs");
414
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
415
+ const path = require("node:path");
416
+ const appsDir = path.join(repoRoot, "apps");
417
+ if (fs.existsSync(appsDir)) {
418
+ const apps = fs
419
+ .readdirSync(appsDir)
420
+ .filter((name) => {
421
+ const appDir = path.join(appsDir, name);
422
+ if (!fs.statSync(appDir).isDirectory())
423
+ return false;
424
+ return fs.existsSync(path.join(appDir, "src", "app"));
425
+ })
426
+ .sort();
427
+ if (apps.length >= 2) {
428
+ return { kind: "multi-app", apps };
429
+ }
430
+ }
431
+ // Single-grouped: src/app/(main)/
432
+ if (fs.existsSync(path.join(repoRoot, "src", "app", "(main)"))) {
433
+ return { kind: "single-grouped", prefix: "src/app/(main)" };
434
+ }
435
+ // Single-flat fallback
436
+ return { kind: "single-flat", prefix: "src/app" };
437
+ }
438
+ catch {
439
+ return { kind: "single-grouped", prefix: "src/app/(main)" };
440
+ }
441
+ }
442
+ function pathToPageFile(path, shape) {
371
443
  const segments = path.split("/").filter(Boolean);
444
+ if (shape.kind === "multi-app") {
445
+ // First segment matches an app name → strip it and route into that app.
446
+ const firstSeg = segments[0];
447
+ if (firstSeg && shape.apps.includes(firstSeg)) {
448
+ const inside = segments.slice(1).join("/");
449
+ const tail = inside ? `${inside}/page.tsx` : "page.tsx";
450
+ return `apps/${firstSeg}/src/app/${tail}`;
451
+ }
452
+ // Otherwise default to the first app (consumer edits post-emit).
453
+ const ownerApp = shape.apps[0] ?? "app";
454
+ const inside = segments.join("/");
455
+ return inside
456
+ ? `apps/${ownerApp}/src/app/${inside}/page.tsx`
457
+ : `apps/${ownerApp}/src/app/page.tsx`;
458
+ }
459
+ // Single-flat / single-grouped both use the prefix verbatim.
460
+ const prefix = shape.prefix;
372
461
  if (segments.length === 0)
373
- return "src/app/(main)/page.tsx";
374
- const inside = segments.map((s) => s).join("/");
375
- return `src/app/(main)/${inside}/page.tsx`;
462
+ return `${prefix}/page.tsx`;
463
+ return `${prefix}/${segments.join("/")}/page.tsx`;
376
464
  }
377
465
  function deriveAuth(spec) {
378
466
  const requirements = [];
@@ -433,9 +521,53 @@ function deriveAuth(spec) {
433
521
  * common case (single new table with conventional columns) shippable
434
522
  * without a re-refine round.
435
523
  */
436
- function deriveSchema(spec) {
524
+ function deriveSchema(spec, existingColumns = null) {
437
525
  const invariants = spec.invariants ?? [];
438
526
  const apiContract = (spec.api_contract ?? []);
527
+ // 0.19.0-α.30 (sc#63) — detect `<existing_table>.<new_column>` references
528
+ // and emit ALTER TABLE proposals. Only fires when `existingColumns` is
529
+ // available (consumer has migrations). Pattern: `users.registration_completed_at`
530
+ // in invariants/api_contract that doesn't exist in the migration index
531
+ // → emit `ALTER TABLE users ADD COLUMN registration_completed_at TYPE`.
532
+ //
533
+ // Real instance: delgoosh#635 round 6 lost a complete spec to recon
534
+ // migration-gate halt because refine emitted no schema proposal despite
535
+ // invariants saying `users.registration_completed_at IS NULL means ...`.
536
+ const alterTableEntries = [];
537
+ if (existingColumns) {
538
+ const proseSources = [
539
+ ...invariants.map((i) => (typeof i === "string" ? i : "")),
540
+ ...apiContract.flatMap((e) => {
541
+ const reqStr = typeof e.request_schema === "string" ? e.request_schema : "";
542
+ const respStr = Object.values(e.responses ?? {})
543
+ .filter((v) => typeof v === "string")
544
+ .join("\n");
545
+ return [reqStr, respStr];
546
+ }),
547
+ ];
548
+ const dotRefRe = /\b([a-z][a-z0-9_]*)\.([a-z_][a-z0-9_]*)\b/g;
549
+ const seen = new Set();
550
+ for (const text of proseSources) {
551
+ let m;
552
+ const re = new RegExp(dotRefRe.source, "g");
553
+ while ((m = re.exec(text)) !== null) {
554
+ const tbl = m[1].toLowerCase();
555
+ const col = m[2].toLowerCase();
556
+ // SQL keyword false positives
557
+ if (/^(?:is|in|on|by|as|or|and|not|true|false|null|now|max|min|count|sum)$/i.test(col))
558
+ continue;
559
+ if (!existingColumns.has(tbl))
560
+ continue; // table doesn't exist → handled by CREATE TABLE flow
561
+ if (existingColumns.get(tbl).has(col))
562
+ continue; // already exists
563
+ const key = `${tbl}.${col}`;
564
+ if (seen.has(key))
565
+ continue;
566
+ seen.add(key);
567
+ alterTableEntries.push({ table: tbl, column: col });
568
+ }
569
+ }
570
+ }
439
571
  const hints = [];
440
572
  const tableMentions = new Map();
441
573
  // Heuristic 1: "`<table>(col1, col2)`" or "`<table>`(col1, col2)" pattern
@@ -588,37 +720,69 @@ function deriveSchema(spec) {
588
720
  }
589
721
  }
590
722
  }
591
- if (tableMentions.size === 0 && hints.length === 0)
723
+ // 0.19.0-α.30 (sc#63) alter-table-only specs are valid emits too.
724
+ // Don't bail when CREATE TABLE has nothing but we DO have ALTERs.
725
+ if (tableMentions.size === 0 && hints.length === 0 && alterTableEntries.length === 0)
592
726
  return null;
593
727
  // Determine which mentioned tables are NEW vs existing — use the
594
728
  // brownfield ERD if available so we don't redundantly emit CREATE
595
729
  // TABLE for a table that already lives in supabase/migrations.
596
730
  const existingEntities = readExistingEntities(spec);
597
731
  const newTables = Array.from(tableMentions.entries()).filter(([t]) => !existingEntities.has(t.toLowerCase()));
598
- let sql;
599
- if (newTables.length === 0) {
600
- // All mentioned tables already exist likely an ALTER. Fall through
601
- // to the legacy TODO (we don't yet synthesise ALTER statements).
602
- sql =
603
- "-- TODO: structured ALTER not emitted by refine. Invariants referencing schema:\n" +
604
- hints.map((h) => `-- * ${h.replace(/\n/g, " ")}`).join("\n") +
605
- "\n-- Regenerate the spec or hand-author the migration.\n";
606
- }
607
- else {
608
- sql = newTables
732
+ // 0.19.0-α.30 (sc#63) — render ALTER TABLE statements for new columns
733
+ // detected on existing tables. Type inference uses the same suffix
734
+ // convention as renderCreateTable: _id uuid, _at timestamptz NULL,
735
+ // _count integer, default text NULL.
736
+ const alterStatements = alterTableEntries.map(({ table, column }) => {
737
+ const type = inferColumnType(column);
738
+ return `ALTER TABLE ${table} ADD COLUMN ${column} ${type};`;
739
+ });
740
+ const sqlParts = [];
741
+ if (newTables.length > 0) {
742
+ sqlParts.push(newTables
609
743
  .map(([table, cols]) => renderCreateTable(table, cols, apiColumns, existingEntities))
610
- .join("\n\n");
744
+ .join("\n\n"));
745
+ }
746
+ else if (hints.length > 0 && alterStatements.length === 0) {
747
+ // Schema hints but no structured tables AND no alters — fall back to TODO.
748
+ sqlParts.push("-- TODO: structured DDL not emitted by refine. Invariants referencing schema:\n" +
749
+ hints.map((h) => `-- * ${h.replace(/\n/g, " ")}`).join("\n") +
750
+ "\n-- Regenerate the spec or hand-author the migration.\n");
751
+ }
752
+ if (alterStatements.length > 0) {
753
+ sqlParts.push("-- α.30: ALTER TABLE statements derived from invariants referencing\n" +
754
+ "-- <existing_table>.<new_column> patterns not in the brownfield migration index.\n" +
755
+ alterStatements.join("\n"));
756
+ }
757
+ const sql = sqlParts.join("\n\n");
758
+ const rationaleParts = [];
759
+ if (newTables.length > 0) {
760
+ rationaleParts.push(`Synthesised CREATE TABLE for ${newTables.length} new table(s) — column types inferred by suffix convention; foreign keys validated against existing entities.`);
761
+ }
762
+ if (alterStatements.length > 0) {
763
+ rationaleParts.push(`Synthesised ${alterStatements.length} ALTER TABLE statement(s) for column(s) referenced in invariants that don't exist in the migration index (sc#63).`);
764
+ }
765
+ if (rationaleParts.length === 0) {
766
+ rationaleParts.push("The spec's invariants imply altered tables or constraints but structured DDL was not emitted. The SQL below is a placeholder — regenerate the spec or hand-author the migration.");
611
767
  }
612
- const rationale = newTables.length > 0
613
- ? `Synthesised CREATE TABLE for ${newTables.length} new table(s) detected in invariants — column types inferred by suffix convention (_id → uuid, _at → timestamptz). Foreign keys validated against existing entities in .brewing/diagrams/schema.mmd. Review + edit before merging.`
614
- : "The spec's invariants imply altered tables or constraints but structured DDL was not emitted in proposals. The SQL below is a placeholder — regenerate the spec or hand-author the migration to replace it.";
615
768
  return {
616
769
  status: "pending",
617
770
  proposed_by: "spec-body-synth",
618
- rationale,
771
+ rationale: rationaleParts.join(" ") + " Review + edit before merging.",
619
772
  sql,
620
773
  };
621
774
  }
775
+ function inferColumnType(column) {
776
+ if (column === "id" || column.endsWith("_id"))
777
+ return "uuid NOT NULL";
778
+ if (column.endsWith("_at"))
779
+ return "timestamptz NULL";
780
+ if (column.endsWith("_count") || column === "count")
781
+ return "integer NOT NULL DEFAULT 0";
782
+ if (column.endsWith("_version"))
783
+ return "text NULL";
784
+ return "text NULL";
785
+ }
622
786
  function readExistingEntities(_spec) {
623
787
  // Read entity names from .brewing/diagrams/schema.mmd if present.
624
788
  // Pre-α.4 this used a lazy `require("node:fs")` call which throws
@@ -1 +1 @@
1
- {"version":3,"file":"proposals-synth.js","sourceRoot":"","sources":["../../../src/commands/refine/proposals-synth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposals-synth.js","sourceRoot":"","sources":["../../../src/commands/refine/proposals-synth.ts"],"names":[],"mappings":"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"}