@studio-foundation/cli 0.14.0 → 0.15.1

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 (55) hide show
  1. package/dist/commands/registry/index.d.ts.map +1 -1
  2. package/dist/commands/registry/index.js +5 -0
  3. package/dist/commands/registry/index.js.map +1 -1
  4. package/dist/commands/registry/info.d.ts +34 -0
  5. package/dist/commands/registry/info.d.ts.map +1 -0
  6. package/dist/commands/registry/info.js +117 -0
  7. package/dist/commands/registry/info.js.map +1 -0
  8. package/dist/commands/replay.d.ts.map +1 -1
  9. package/dist/commands/replay.js +3 -10
  10. package/dist/commands/replay.js.map +1 -1
  11. package/dist/commands/run.d.ts.map +1 -1
  12. package/dist/commands/run.js +50 -7
  13. package/dist/commands/run.js.map +1 -1
  14. package/dist/commands/status.d.ts.map +1 -1
  15. package/dist/commands/status.js +3 -0
  16. package/dist/commands/status.js.map +1 -1
  17. package/dist/config.d.ts +5 -0
  18. package/dist/config.d.ts.map +1 -1
  19. package/dist/config.js.map +1 -1
  20. package/dist/contract-warnings.d.ts +31 -0
  21. package/dist/contract-warnings.d.ts.map +1 -0
  22. package/dist/contract-warnings.js +60 -0
  23. package/dist/contract-warnings.js.map +1 -0
  24. package/dist/generated/bundled-assets.d.ts +1 -1
  25. package/dist/generated/bundled-assets.js +2 -2
  26. package/dist/generated/bundled-assets.js.map +1 -1
  27. package/dist/output/formatter.d.ts.map +1 -1
  28. package/dist/output/formatter.js +32 -4
  29. package/dist/output/formatter.js.map +1 -1
  30. package/dist/output/formatters.d.ts +7 -3
  31. package/dist/output/formatters.d.ts.map +1 -1
  32. package/dist/output/formatters.js +7 -17
  33. package/dist/output/formatters.js.map +1 -1
  34. package/dist/output/map-progress.d.ts +11 -1
  35. package/dist/output/map-progress.d.ts.map +1 -1
  36. package/dist/output/map-progress.js +30 -3
  37. package/dist/output/map-progress.js.map +1 -1
  38. package/dist/output/progress.d.ts.map +1 -1
  39. package/dist/output/progress.js +24 -3
  40. package/dist/output/progress.js.map +1 -1
  41. package/dist/output/token-usage.d.ts +14 -0
  42. package/dist/output/token-usage.d.ts.map +1 -0
  43. package/dist/output/token-usage.js +57 -0
  44. package/dist/output/token-usage.js.map +1 -0
  45. package/dist/preflight.d.ts.map +1 -1
  46. package/dist/preflight.js +63 -2
  47. package/dist/preflight.js.map +1 -1
  48. package/dist/registry/resolver.d.ts +7 -1
  49. package/dist/registry/resolver.d.ts.map +1 -1
  50. package/dist/registry/resolver.js +1 -1
  51. package/dist/registry/resolver.js.map +1 -1
  52. package/dist/registry/types.d.ts +6 -1
  53. package/dist/registry/types.d.ts.map +1 -1
  54. package/dist/registry/types.js.map +1 -1
  55. package/package.json +12 -12
package/dist/config.d.ts CHANGED
@@ -5,6 +5,11 @@ export interface StudioConfig {
5
5
  studio_version?: string;
6
6
  /** Binaries this project needs: `"git"`, or `"node >=18 <=22"` for a range. */
7
7
  requires_binaries?: string[];
8
+ /** Startup warnings that can be switched off for a project that means it. */
9
+ warnings?: {
10
+ /** Warn when a stage declares no `contract:` and runs unvalidated. Default true. */
11
+ missing_contract?: boolean;
12
+ };
8
13
  providers?: {
9
14
  openai?: {
10
15
  apiKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,MAAM,WAAW,YAAY;IAC3B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE;QACV,MAAM,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5B,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/B,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;KACvC,CAAC;IACF,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,EAAE,CAAC,EAAE;QACH,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;QAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAgCzF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,MAAM,WAAW,YAAY;IAC3B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,EAAE;QACT,oFAAoF;QACpF,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE;QACV,MAAM,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5B,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/B,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;KACvC,CAAC;IACF,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,EAAE,CAAC,EAAE;QACH,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;QAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAgCzF"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,CAAC;AAkC1B,MAAM,mBAAmB,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAmB,EAAE,GAAY;IAChE,MAAM,YAAY,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,4CAA4C;IAC5C,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,+EAA+E;YAC/E,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,WAAW;QACb,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAgB;IAC1C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EACzF,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAsB,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,CAAC;AAuC1B,MAAM,mBAAmB,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAmB,EAAE,GAAY;IAChE,MAAM,YAAY,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,4CAA4C;IAC5C,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,+EAA+E;YAC/E,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,WAAW;QACb,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAgB;IAC1C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EACzF,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAsB,CAAC;AAChC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { PipelineDefinition } from '@studio-foundation/contracts';
2
+ import type { UnvalidatedStage } from '@studio-foundation/engine';
3
+ import type { StudioConfig } from './config.js';
4
+ export declare const SUPPRESS_HINT = "Add a `contract:` to each, or set `warnings.missing_contract: false` in .studio/config.yaml to silence this.";
5
+ /** False only when the project explicitly opted out. */
6
+ export declare function missingContractWarningsEnabled(config: StudioConfig): boolean;
7
+ /** One warning line per contract-less stage of a pipeline about to run. */
8
+ export declare function missingContractWarnings(pipeline: PipelineDefinition): string[];
9
+ /** The `.studio/pipelines/` directory this config points at. */
10
+ export declare function resolvePipelinesDir(studioDir: string, config: StudioConfig): string;
11
+ export interface PipelineCoverage {
12
+ /** Pipeline files read, whatever their coverage. */
13
+ scanned: number;
14
+ /** Files that could not be read or parsed — `studio run` fails on them anyway. */
15
+ unreadable: string[];
16
+ /** Unvalidated stages, tagged with the pipeline they came from. */
17
+ stages: Array<UnvalidatedStage & {
18
+ pipeline: string;
19
+ }>;
20
+ }
21
+ /**
22
+ * Contract coverage across every pipeline in a directory. Never throws: a
23
+ * pipeline that fails to load is counted as unreadable, not fatal — `studio
24
+ * doctor` reports, it does not gate.
25
+ */
26
+ export declare function scanPipelineContracts(pipelinesDir: string): Promise<PipelineCoverage>;
27
+ /** `pipeline 'x', stage 'y' (in group 'z')` — the doctor listing form. */
28
+ export declare function formatCoverageEntry(entry: UnvalidatedStage & {
29
+ pipeline: string;
30
+ }): string;
31
+ //# sourceMappingURL=contract-warnings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-warnings.d.ts","sourceRoot":"","sources":["../src/contract-warnings.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAMvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,eAAO,MAAM,aAAa,iHACsF,CAAC;AAEjH,wDAAwD;AACxD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE5E;AAED,2EAA2E;AAC3E,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAE9E;AAED,gEAAgE;AAChE,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAGnF;AAED,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mEAAmE;IACnE,MAAM,EAAE,KAAK,CAAC,gBAAgB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACxD;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAuB3F;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE1F"}
@@ -0,0 +1,60 @@
1
+ // "This stage runs unvalidated" — the startup warning for stages with no
2
+ // `contract:` (STU-703).
3
+ //
4
+ // A contract-less stage is legitimate, so this is a warning and stays one: it
5
+ // never changes an exit code or a stage status. It exists because the silence
6
+ // was indistinguishable from validation being in force — which is how three
7
+ // official templates shipped contracts no stage referenced.
8
+ import { readdir } from 'node:fs/promises';
9
+ import { join, resolve } from 'node:path';
10
+ import { loadPipeline, findUnvalidatedStagesInPipeline, formatUnvalidatedStages, } from '@studio-foundation/engine';
11
+ const PIPELINE_SUFFIX = '.pipeline.yaml';
12
+ export const SUPPRESS_HINT = 'Add a `contract:` to each, or set `warnings.missing_contract: false` in .studio/config.yaml to silence this.';
13
+ /** False only when the project explicitly opted out. */
14
+ export function missingContractWarningsEnabled(config) {
15
+ return config.warnings?.missing_contract !== false;
16
+ }
17
+ /** One warning line per contract-less stage of a pipeline about to run. */
18
+ export function missingContractWarnings(pipeline) {
19
+ return formatUnvalidatedStages(findUnvalidatedStagesInPipeline(pipeline));
20
+ }
21
+ /** The `.studio/pipelines/` directory this config points at. */
22
+ export function resolvePipelinesDir(studioDir, config) {
23
+ const configsDir = config.paths?.configs ? resolve(config.paths.configs) : studioDir;
24
+ return join(configsDir, 'pipelines');
25
+ }
26
+ /**
27
+ * Contract coverage across every pipeline in a directory. Never throws: a
28
+ * pipeline that fails to load is counted as unreadable, not fatal — `studio
29
+ * doctor` reports, it does not gate.
30
+ */
31
+ export async function scanPipelineContracts(pipelinesDir) {
32
+ let entries;
33
+ try {
34
+ entries = (await readdir(pipelinesDir)).filter((f) => f.endsWith(PIPELINE_SUFFIX)).sort();
35
+ }
36
+ catch {
37
+ return { scanned: 0, unreadable: [], stages: [] };
38
+ }
39
+ const coverage = { scanned: 0, unreadable: [], stages: [] };
40
+ for (const file of entries) {
41
+ let pipeline;
42
+ try {
43
+ pipeline = await loadPipeline(join(pipelinesDir, file));
44
+ }
45
+ catch {
46
+ coverage.unreadable.push(file);
47
+ continue;
48
+ }
49
+ coverage.scanned++;
50
+ for (const stage of findUnvalidatedStagesInPipeline(pipeline)) {
51
+ coverage.stages.push({ ...stage, pipeline: pipeline.name });
52
+ }
53
+ }
54
+ return coverage;
55
+ }
56
+ /** `pipeline 'x', stage 'y' (in group 'z')` — the doctor listing form. */
57
+ export function formatCoverageEntry(entry) {
58
+ return `pipeline '${entry.pipeline}', stage '${entry.stage}'${entry.group ? ` (in group '${entry.group}')` : ''}`;
59
+ }
60
+ //# sourceMappingURL=contract-warnings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-warnings.js","sourceRoot":"","sources":["../src/contract-warnings.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,yBAAyB;AACzB,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,4EAA4E;AAC5E,4DAA4D;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACL,YAAY,EACZ,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAInC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAEzC,MAAM,CAAC,MAAM,aAAa,GACxB,8GAA8G,CAAC;AAEjH,wDAAwD;AACxD,MAAM,UAAU,8BAA8B,CAAC,MAAoB;IACjE,OAAO,MAAM,CAAC,QAAQ,EAAE,gBAAgB,KAAK,KAAK,CAAC;AACrD,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,uBAAuB,CAAC,QAA4B;IAClE,OAAO,uBAAuB,CAAC,+BAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,MAAoB;IACzE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,OAAO,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACvC,CAAC;AAWD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,YAAoB;IAC9D,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAqB,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC9E,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,QAA4B,CAAC;QACjC,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9D,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CAAC,KAA8C;IAChF,OAAO,aAAa,KAAK,CAAC,QAAQ,aAAa,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACpH,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare const PACKAGE_VERSION = "0.14.0";
1
+ export declare const PACKAGE_VERSION = "0.15.1";
2
2
  /** Contents of cli/templates/, keyed by path relative to that directory. */
3
3
  export declare const BUNDLED_ASSETS: Record<string, string>;
4
4
  //# sourceMappingURL=bundled-assets.d.ts.map
@@ -1,5 +1,5 @@
1
1
  // Generated by scripts/gen-bundled-assets.mjs — do not edit.
2
- export const PACKAGE_VERSION = "0.14.0";
2
+ export const PACKAGE_VERSION = "0.15.1";
3
3
  /** Contents of cli/templates/, keyed by path relative to that directory. */
4
4
  export const BUNDLED_ASSETS = {
5
5
  ".studiorc.yaml": "# Studio Configuration\n\nproviders:\n anthropic:\n apiKey: ${ANTHROPIC_API_KEY}\n # openai:\n # apiKey: ${OPENAI_API_KEY}\n\npaths:\n pipelines: ./pipelines\n contracts: ./configs/contracts\n agents: ./configs/agents\n\ndefaults:\n provider: anthropic\n model: claude-sonnet-4-20250514\n",
@@ -76,7 +76,7 @@ export const BUNDLED_ASSETS = {
76
76
  "seed/templates/software/project/pipelines/quick-fix.pipeline.yaml": "name: quick-fix\ndescription: Apply a targeted fix or patch to existing code\nversion: 1\n\ninput_schema:\n type: structured\n fields:\n - name: description\n type: text\n required: true\n prompt: \"Describe the fix to apply\"\n\nstages:\n - name: code-fix\n kind: code\n agent: coder\n ralph:\n max_attempts: 3\n context:\n include:\n - input\n",
77
77
  "seed/templates/software/project/prisma/schema.prisma": "// {{PROJECT_NAME}} — Prisma schema\n// Docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = \"prisma-client-js\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n url = env(\"DATABASE_URL\")\n}\n\n// Add your models below\n",
78
78
  "seed/templates/software/project/src/index.ts": "// {{PROJECT_NAME}} — powered by Studio\n// Run pipelines with: studio run {{PROJECT_NAME}}/feature-builder --input \"...\"\nconsole.log('{{PROJECT_NAME}} ready.');\n",
79
- "studio-config.example.yaml": "# Studio configuration contract — COMMIT this file.\n#\n# config.yaml holds the real values and is gitignored (it contains secrets).\n# To set up a fresh clone:\n#\n# cp .studio/config.example.yaml .studio/config.yaml\n#\n# Every key left uncommented here is REQUIRED in config.yaml — `studio run`\n# stops with a clear error if one is missing. Comment a key out to make it\n# optional.\n#\n# Secrets never belong in this file: reference an environment variable\n# (${VAR}, or ${VAR:-default}) and let config.yaml resolve it.\n\n# Semver range this project needs of Studio itself. `studio run` stops before\n# any stage when the installed CLI falls outside it.\n# studio_version: \">=0.10.0\"\n\n# Binaries this project needs. `studio run` stops before any stage when one is\n# missing from PATH, or falls outside its semver range.\n# requires_binaries:\n# - git\n# - \"node >=18 <=22\"\n\n# providers:\n# anthropic:\n# apiKey: ${ANTHROPIC_API_KEY}\n# openai:\n# apiKey: ${OPENAI_API_KEY}\n# ollama:\n# baseUrl: ${OLLAMA_BASE_URL:-http://localhost:11434}\n\ndefaults:\n provider: ollama\n model: llama3.3\n",
79
+ "studio-config.example.yaml": "# Studio configuration contract — COMMIT this file.\n#\n# config.yaml holds the real values and is gitignored (it contains secrets).\n# To set up a fresh clone:\n#\n# cp .studio/config.example.yaml .studio/config.yaml\n#\n# Every key left uncommented here is REQUIRED in config.yaml — `studio run`\n# stops with a clear error if one is missing. Comment a key out to make it\n# optional.\n#\n# Secrets never belong in this file: reference an environment variable\n# (${VAR}, or ${VAR:-default}) and let config.yaml resolve it.\n\n# Semver range this project needs of Studio itself. `studio run` stops before\n# any stage when the installed CLI falls outside it.\n# studio_version: \">=0.10.0\"\n\n# Binaries this project needs. `studio run` stops before any stage when one is\n# missing from PATH, or falls outside its semver range.\n# requires_binaries:\n# - git\n# - \"node >=18 <=22\"\n\n# Startup warnings. `missing_contract` names every stage with no `contract:`,\n# whose output nothing validates — turn it off for a project that means it.\n# warnings:\n# missing_contract: false\n\n# providers:\n# anthropic:\n# apiKey: ${ANTHROPIC_API_KEY}\n# openai:\n# apiKey: ${OPENAI_API_KEY}\n# ollama:\n# baseUrl: ${OLLAMA_BASE_URL:-http://localhost:11434}\n\ndefaults:\n provider: ollama\n model: llama3.3\n",
80
80
  "studio-config.yaml": "# Studio Configuration\n# This file is gitignored — it contains secrets.\n# See .studio/projects/ for your pipeline configs (those ARE committed).\n\nproviders:\n ollama: {}\n # anthropic:\n # apiKey: ${ANTHROPIC_API_KEY}\n # openai:\n # apiKey: ${OPENAI_API_KEY}\n\ndefaults:\n provider: ollama\n model: llama3.3\n",
81
81
  };
82
82
  //# sourceMappingURL=bundled-assets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundled-assets.js","sourceRoot":"","sources":["../../src/generated/bundled-assets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundled-assets.js","sourceRoot":"","sources":["../../src/generated/bundled-assets.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/output/formatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEnD,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAgC5E;AAqED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAE9C;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAE9C;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOjD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMxD"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/output/formatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAIhE;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEnD,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAsD5E;AA4ED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAE9C;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAE9C;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOjD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMxD"}
@@ -1,4 +1,6 @@
1
1
  import chalk from 'chalk';
2
+ import { sumTokenUsage } from '@studio-foundation/contracts';
3
+ import { formatTokenCount, formatUsageSummary, usageByModel } from './token-usage.js';
2
4
  export function formatResult(run, childRuns) {
3
5
  console.log('');
4
6
  console.log(`Pipeline: ${chalk.bold(run.pipeline_name)}`);
@@ -6,7 +8,9 @@ export function formatResult(run, childRuns) {
6
8
  console.log(`Status: ${chalk.green('✓ success')}`);
7
9
  }
8
10
  else if (run.status === 'rejected') {
9
- console.log(`Status: ${chalk.red('✗ rejected by QA')}`);
11
+ // `rejected` is whatever the contract's post_validation.rejection_detection
12
+ // declared it to be — the CLI names no reviewer (INV-13).
13
+ console.log(`Status: ${chalk.red('✗ rejected')}`);
10
14
  }
11
15
  else if (run.status === 'cancelled') {
12
16
  console.log(`Status: ${chalk.yellow('⚠ cancelled')}`);
@@ -24,11 +28,29 @@ export function formatResult(run, childRuns) {
24
28
  const duration = formatDuration(new Date(run.completed_at).getTime() - new Date(run.started_at).getTime());
25
29
  console.log(`Duration: ${duration}`);
26
30
  }
31
+ // What the run spent. Summing the stages (rather than trusting a single
32
+ // recorded total) keeps the number consistent with the per-stage lines below,
33
+ // and works the same whether the run came from the DB or the run JSONL.
34
+ const usage = sumTokenUsage(run.stages.map((s) => s.token_usage));
35
+ if (usage) {
36
+ console.log(`Tokens: ${formatUsageSummary(usage)}`);
37
+ }
27
38
  if (run.stages.length > 0) {
28
39
  console.log('');
29
40
  console.log('Stages:');
30
41
  printStages(run.stages, childRuns, ' ');
31
42
  }
43
+ // Per-model split — the breakdown a cost review starts from, and the reason
44
+ // a stage that delegated to a cheaper model is priced as such.
45
+ const models = usage ? usageByModel(usage) : [];
46
+ if (models.length > 0) {
47
+ console.log('');
48
+ console.log('Tokens by model:');
49
+ for (const [model, counts] of models) {
50
+ const dots = '.'.repeat(Math.max(2, 34 - model.length));
51
+ console.log(` ${model} ${chalk.gray(dots)} ${formatUsageSummary(counts)}`);
52
+ }
53
+ }
32
54
  console.log('');
33
55
  }
34
56
  /**
@@ -51,15 +73,21 @@ function printStages(stages, childRuns, indent) {
51
73
  // meant hand-parsing the run JSONL.
52
74
  const durationMs = stageDurationMs(stage);
53
75
  const durationText = durationMs !== null ? ` ${chalk.gray(formatCompactDuration(durationMs))}` : '';
76
+ // Per-stage cost, so the expensive stage is identifiable at a glance instead
77
+ // of by summing the run JSONL by hand.
78
+ const stageUsage = stage.token_usage;
79
+ const tokensText = stageUsage
80
+ ? ` ${chalk.gray(`${formatTokenCount(stageUsage.total_tokens)} tok`)}`
81
+ : '';
54
82
  if (stage.status === 'success') {
55
83
  const attemptText = agentRuns !== undefined ? ` (${agentRuns} attempt${agentRuns !== 1 ? 's' : ''})` : '';
56
- console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.green('✓')}${attemptText}${durationText}`);
84
+ console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.green('✓')}${attemptText}${durationText}${tokensText}`);
57
85
  }
58
86
  else if (stage.status === 'rejected') {
59
- console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.red('✗ REJECTED')}${durationText}`);
87
+ console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.red('✗ REJECTED')}${durationText}${tokensText}`);
60
88
  }
61
89
  else if (stage.status === 'failed') {
62
- console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.red('✗ FAILED')} (${attempts} attempts exhausted)${durationText}`);
90
+ console.log(`${indent}${index} ${name} ${chalk.gray(dots)} ${chalk.red('✗ FAILED')} (${attempts} attempts exhausted)${durationText}${tokensText}`);
63
91
  // Show errors from the last agent run
64
92
  const lastAgentRun = stage.tasks[0]?.agent_runs.at(-1);
65
93
  if (lastAgentRun?.error) {
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/output/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,UAAU,YAAY,CAAC,GAAgB,EAAE,SAAuB;IACpE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAE1D,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,MAAM,CAAC,sCAAsC,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,cAAc,CAC7B,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAC1E,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvB,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAClB,MAA6B,EAC7B,SAAkC,EAClC,MAAc;IAEd,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC;QAC9B,sFAAsF;QACtF,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC;QACpD,MAAM,QAAQ,GAAG,SAAS,IAAI,CAAC,CAAC;QAEhC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEvD,uEAAuE;QACvE,0EAA0E;QAC1E,oCAAoC;QACpC,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAErG,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,WAAW,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1G,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,WAAW,GAAG,YAAY,EAAE,CACjG,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,YAAY,EAAE,CAC1F,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,uBAAuB,YAAY,EAAE,CACzH,CAAC;YACF,sCAAsC;YACtC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,YAAY,EAAE,KAAK,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CACnG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAC9E,CAAC;QACJ,CAAC;QAED,iEAAiE;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAChF,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IACtC,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,GAAG,OAAO,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,MAAM,gBAAgB,GAAG,OAAO,GAAG,EAAE,CAAC;IACtC,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAU;IAC9C,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,MAAM;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1D,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAoC;IAC3D,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;IACzF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/output/formatter.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,17 @@
5
5
  export declare function formatTokens(count: number): string;
6
6
  /**
7
7
  * Formats a stage progress line with dot-filling for alignment.
8
- * formatStageLine("[1/4]", "brief-analysis", "✓ (12s, 2.1k tokens)")
9
- * → "[1/4] brief-analysis ............ ✓ (12s, 2.1k tokens)"
8
+ * formatStageLine("[1/4]", "extract-entities", "✓ (12s, 2.1k tokens)")
9
+ * → "[1/4] extract-entities .......... ✓ (12s, 2.1k tokens)"
10
10
  */
11
11
  export declare function formatStageLine(prefix: string, name: string, suffix: string): string;
12
12
  /**
13
13
  * Converts a kebab-case stage name to a human-readable label.
14
- * Uses a lookup table for known names; falls back to title-casing.
14
+ *
15
+ * Purely mechanical: a stage name is a config author's word, so the CLI
16
+ * title-cases it and renders nothing else (INV-13). A lookup table used to
17
+ * translate one template's stage names into verb phrases here — which made
18
+ * that template's pipeline read as more finished than everyone else's.
15
19
  */
16
20
  export declare function humanReadableStageName(stageName: string): string;
17
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/output/formatters.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASlD;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKpF;AAeD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAKhE;AAyBD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CA+BxE;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAKrE;AAID,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CASzF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAiB3E;AAID;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAmBxE;AA4FD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,SAAI,GAAG,MAAM,CAEvF"}
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/output/formatters.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASlD;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKpF;AAID;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhE;AAyBD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CA+BxE;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAKrE;AAID,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CASzF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAiB3E;AAID;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAmBxE;AA4FD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,SAAI,GAAG,MAAM,CAEvF"}
@@ -27,8 +27,8 @@ export function formatTokens(count) {
27
27
  const STAGE_LINE_WIDTH = 42;
28
28
  /**
29
29
  * Formats a stage progress line with dot-filling for alignment.
30
- * formatStageLine("[1/4]", "brief-analysis", "✓ (12s, 2.1k tokens)")
31
- * → "[1/4] brief-analysis ............ ✓ (12s, 2.1k tokens)"
30
+ * formatStageLine("[1/4]", "extract-entities", "✓ (12s, 2.1k tokens)")
31
+ * → "[1/4] extract-entities .......... ✓ (12s, 2.1k tokens)"
32
32
  */
33
33
  export function formatStageLine(prefix, name, suffix) {
34
34
  const left = `${prefix} ${name} `;
@@ -37,25 +37,15 @@ export function formatStageLine(prefix, name, suffix) {
37
37
  return `${left}${dots} ${suffix}`;
38
38
  }
39
39
  // ── Stage name mapping ────────────────────────────────────────────────────────
40
- const STAGE_NAME_PATTERNS = [
41
- [/^brief[-_]analysis$/i, 'Analyzing brief'],
42
- [/^implementation[-_]plan$/i, 'Planning implementation'],
43
- [/^code[-_]gen(?:eration)?$/i, 'Generating code'],
44
- [/^qa[-_]review$/i, 'Reviewing'],
45
- [/^analysis$/i, 'Analysis'],
46
- [/^planning$/i, 'Planning'],
47
- [/^generation$/i, 'Generating'],
48
- [/^review$/i, 'Reviewing'],
49
- ];
50
40
  /**
51
41
  * Converts a kebab-case stage name to a human-readable label.
52
- * Uses a lookup table for known names; falls back to title-casing.
42
+ *
43
+ * Purely mechanical: a stage name is a config author's word, so the CLI
44
+ * title-cases it and renders nothing else (INV-13). A lookup table used to
45
+ * translate one template's stage names into verb phrases here — which made
46
+ * that template's pipeline read as more finished than everyone else's.
53
47
  */
54
48
  export function humanReadableStageName(stageName) {
55
- for (const [pattern, label] of STAGE_NAME_PATTERNS) {
56
- if (pattern.test(stageName))
57
- return label;
58
- }
59
49
  return titleCase(stageName);
60
50
  }
61
51
  const TOOL_GROUPS = {
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/output/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/output/formatters.ts"],"names":[],"mappings":"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"}
@@ -16,13 +16,15 @@ export declare class MapRenderer {
16
16
  private failed;
17
17
  private lastResult;
18
18
  private readonly inFlight;
19
+ /** round → request count, for batches submitted and not yet returned. */
20
+ private readonly batchesInFlight;
19
21
  /**
20
22
  * Begin rendering. Prints a permanent header line, then a live status line
21
23
  * that updates in place. `live` controls animation only — a non-TTY / piped
22
24
  * stream still gets the header, per-item failures, and the final summary
23
25
  * (ora degrades to non-animated frames on its own).
24
26
  */
25
- start(mapName: string, total: number, concurrency: number): void;
27
+ start(mapName: string, total: number, concurrency: number, batch?: boolean): void;
26
28
  /** An item entered flight — track it so it appears in the status line. */
27
29
  itemStart(index: number, label: string): void;
28
30
  /**
@@ -31,6 +33,14 @@ export declare class MapRenderer {
31
33
  * A success carries what it produced onto the live line.
32
34
  */
33
35
  itemComplete(index: number, status: 'success' | 'failed', label: string, runId?: string, error?: string, output?: unknown): void;
36
+ /**
37
+ * A batch left for the provider. Persisted rather than folded into the live
38
+ * line: a batch can take an hour, and "nothing is happening" and "40 requests
39
+ * are queued at half price" look identical otherwise.
40
+ */
41
+ batchDispatch(provider: string, size: number, round: number): void;
42
+ /** A batch came back. Per-item outcomes still arrive through itemComplete. */
43
+ batchComplete(size: number, round: number, succeeded: number, failed: number, durationMs: number): void;
34
44
  /** Tear down the live line and print the final summary. */
35
45
  finish(succeeded: number, failed: number, status: string): void;
36
46
  /** Ctrl-C / abort — drop the live line without a summary. */
@@ -1 +1 @@
1
- {"version":3,"file":"map-progress.d.ts","sourceRoot":"","sources":["../../src/output/map-progress.ts"],"names":[],"mappings":"AA6CA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAcvE;AAOD,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IAExD;;;;;OAKG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAoBhE,0EAA0E;IAC1E,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7C;;;;OAIG;IACH,YAAY,CACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,SAAS,GAAG,QAAQ,EAC5B,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,GACf,IAAI;IAmBP,2DAA2D;IAC3D,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAc/D,6DAA6D;IAC7D,SAAS,IAAI,IAAI;IAMjB,OAAO,CAAC,UAAU;IAYlB,0EAA0E;IAC1E,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,SAAS;CAMlB"}
1
+ {"version":3,"file":"map-progress.d.ts","sourceRoot":"","sources":["../../src/output/map-progress.ts"],"names":[],"mappings":"AA6CA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAcvE;AAOD,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IACxD,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAE7D;;;;;OAKG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,IAAI;IAsB/E,0EAA0E;IAC1E,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7C;;;;OAIG;IACH,YAAY,CACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,SAAS,GAAG,QAAQ,EAC5B,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,GACf,IAAI;IAmBP;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOlE,8EAA8E;IAC9E,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAQvG,2DAA2D;IAC3D,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAc/D,6DAA6D;IAC7D,SAAS,IAAI,IAAI;IAMjB,OAAO,CAAC,UAAU;IAkBlB,0EAA0E;IAC1E,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,SAAS;CAMlB"}
@@ -74,13 +74,15 @@ export class MapRenderer {
74
74
  failed = 0;
75
75
  lastResult = null;
76
76
  inFlight = new Map();
77
+ /** round → request count, for batches submitted and not yet returned. */
78
+ batchesInFlight = new Map();
77
79
  /**
78
80
  * Begin rendering. Prints a permanent header line, then a live status line
79
81
  * that updates in place. `live` controls animation only — a non-TTY / piped
80
82
  * stream still gets the header, per-item failures, and the final summary
81
83
  * (ora degrades to non-animated frames on its own).
82
84
  */
83
- start(mapName, total, concurrency) {
85
+ start(mapName, total, concurrency, batch = false) {
84
86
  this.startedAt = Date.now();
85
87
  this.mapName = mapName;
86
88
  this.total = total;
@@ -88,8 +90,10 @@ export class MapRenderer {
88
90
  this.failed = 0;
89
91
  this.lastResult = null;
90
92
  this.inFlight.clear();
93
+ this.batchesInFlight.clear();
91
94
  console.log(chalk.cyan(` ↳ ${mapName}`) +
92
- chalk.gray(` — fan-out over ${total} item${total === 1 ? '' : 's'} (concurrency ${concurrency})`));
95
+ chalk.gray(` — fan-out over ${total} item${total === 1 ? '' : 's'} (concurrency ${concurrency})`) +
96
+ (batch ? chalk.gray(' · batched') : ''));
93
97
  this.spinner = makeSpinner({ text: this.statusText(), indent: 2, color: 'cyan' }).start();
94
98
  this.timer = setInterval(() => {
95
99
  if (this.spinner)
@@ -125,6 +129,23 @@ export class MapRenderer {
125
129
  if (this.spinner)
126
130
  this.spinner.text = this.statusText();
127
131
  }
132
+ /**
133
+ * A batch left for the provider. Persisted rather than folded into the live
134
+ * line: a batch can take an hour, and "nothing is happening" and "40 requests
135
+ * are queued at half price" look identical otherwise.
136
+ */
137
+ batchDispatch(provider, size, round) {
138
+ this.batchesInFlight.set(round, size);
139
+ this.persist(chalk.gray(` ⇢ batch #${round} — ${size} request${size === 1 ? '' : 's'} submitted to ${provider}`));
140
+ }
141
+ /** A batch came back. Per-item outcomes still arrive through itemComplete. */
142
+ batchComplete(size, round, succeeded, failed, durationMs) {
143
+ this.batchesInFlight.delete(round);
144
+ const counts = failed > 0
145
+ ? `${succeeded}/${size} returned, ${chalk.red(`${failed} errored`)}`
146
+ : `${succeeded}/${size} returned`;
147
+ this.persist(chalk.gray(` ⇠ batch #${round} — ${counts} (${formatDuration(durationMs)})`));
148
+ }
128
149
  /** Tear down the live line and print the final summary. */
129
150
  finish(succeeded, failed, status) {
130
151
  this.stopTimer();
@@ -152,7 +173,13 @@ export class MapRenderer {
152
173
  const flightStr = labels.length
153
174
  ? chalk.dim(` · ${labels.length} in flight: ${truncateList(labels, MAX_INFLIGHT_WIDTH)}`)
154
175
  : '';
155
- return `${head}${failStr}${lastStr}${flightStr}${chalk.gray(` (${elapsed}s)`)}`;
176
+ // A batched fan-out spends most of its wall clock here: items are "in
177
+ // flight" but every one of them is parked inside a provider-side batch.
178
+ const queued = [...this.batchesInFlight.values()].reduce((sum, size) => sum + size, 0);
179
+ const batchStr = queued > 0
180
+ ? chalk.dim(` · ${queued} queued in ${this.batchesInFlight.size} batch${this.batchesInFlight.size === 1 ? '' : 'es'}`)
181
+ : '';
182
+ return `${head}${failStr}${lastStr}${batchStr}${flightStr}${chalk.gray(` (${elapsed}s)`)}`;
156
183
  }
157
184
  /** Print a permanent line above the live status line, then restore it. */
158
185
  persist(line) {
@@ -1 +1 @@
1
- {"version":3,"file":"map-progress.js","sourceRoot":"","sources":["../../src/output/map-progress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-progress.js","sourceRoot":"","sources":["../../src/output/map-progress.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/output/progress.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAM9D,qBAAa,eAAe;IA8BxB,OAAO,CAAC,QAAQ;IA7BlB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAA+C;IACpE,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAiC;IAGzD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAA4B;IAG/C,KAAK,SAAM;IACX,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,gBAAgB,CAAM;IAE9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAGhB,QAAQ,EAAE,OAAO,EACzB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAW1E,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,MAAM;IAId,uFAAuF;IACvF,OAAO,CAAC,wBAAwB;IAUhC;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,cAAc;IAItB,SAAS,IAAI,IAAI;IAqBjB,SAAS,IAAI,YAAY;CAkc1B"}
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/output/progress.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAM9D,qBAAa,eAAe;IA8BxB,OAAO,CAAC,QAAQ;IA7BlB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAA+C;IACpE,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAiC;IAGzD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAA4B;IAG/C,KAAK,SAAM;IACX,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,gBAAgB,CAAM;IAE9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAGhB,QAAQ,EAAE,OAAO,EACzB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAW1E,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,MAAM;IAId,uFAAuF;IACvF,OAAO,CAAC,wBAAwB;IAUhC;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,cAAc;IAItB,SAAS,IAAI,IAAI;IAqBjB,SAAS,IAAI,YAAY;CAmd1B"}