@sun-asterisk/sungen 3.2.24-beta.2 → 3.2.24-beta.3

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 (67) hide show
  1. package/dist/cli/commands/audit.d.ts.map +1 -1
  2. package/dist/cli/commands/audit.js +2 -13
  3. package/dist/cli/commands/audit.js.map +1 -1
  4. package/dist/cli/commands/capability.d.ts.map +1 -1
  5. package/dist/cli/commands/capability.js +11 -12
  6. package/dist/cli/commands/capability.js.map +1 -1
  7. package/dist/cli/commands/challenge.d.ts.map +1 -1
  8. package/dist/cli/commands/challenge.js +2 -10
  9. package/dist/cli/commands/challenge.js.map +1 -1
  10. package/dist/cli/commands/depth-lint.d.ts.map +1 -1
  11. package/dist/cli/commands/depth-lint.js +2 -12
  12. package/dist/cli/commands/depth-lint.js.map +1 -1
  13. package/dist/cli/commands/gate.d.ts.map +1 -1
  14. package/dist/cli/commands/gate.js +2 -47
  15. package/dist/cli/commands/gate.js.map +1 -1
  16. package/dist/cli/commands/journey.d.ts.map +1 -1
  17. package/dist/cli/commands/journey.js +2 -12
  18. package/dist/cli/commands/journey.js.map +1 -1
  19. package/dist/cli/commands/manifest.d.ts.map +1 -1
  20. package/dist/cli/commands/manifest.js +2 -10
  21. package/dist/cli/commands/manifest.js.map +1 -1
  22. package/dist/cli/commands/next.d.ts +14 -0
  23. package/dist/cli/commands/next.d.ts.map +1 -0
  24. package/dist/cli/commands/next.js +130 -0
  25. package/dist/cli/commands/next.js.map +1 -0
  26. package/dist/cli/index.js +34 -0
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/cli/resolve-unit.d.ts +22 -0
  29. package/dist/cli/resolve-unit.d.ts.map +1 -0
  30. package/dist/cli/resolve-unit.js +101 -0
  31. package/dist/cli/resolve-unit.js.map +1 -0
  32. package/dist/harness/audit.d.ts.map +1 -1
  33. package/dist/harness/audit.js +9 -1
  34. package/dist/harness/audit.js.map +1 -1
  35. package/dist/harness/capability-plan.d.ts +12 -1
  36. package/dist/harness/capability-plan.d.ts.map +1 -1
  37. package/dist/harness/capability-plan.js +16 -2
  38. package/dist/harness/capability-plan.js.map +1 -1
  39. package/dist/harness/capability.d.ts +12 -0
  40. package/dist/harness/capability.d.ts.map +1 -1
  41. package/dist/harness/capability.js +16 -0
  42. package/dist/harness/capability.js.map +1 -1
  43. package/dist/harness/catalog/drivers.yaml +5 -0
  44. package/dist/harness/next-step.d.ts +40 -0
  45. package/dist/harness/next-step.d.ts.map +1 -0
  46. package/dist/harness/next-step.js +242 -0
  47. package/dist/harness/next-step.js.map +1 -0
  48. package/dist/orchestrator/templates/ai-src/commands/create-test.md +14 -6
  49. package/dist/orchestrator/templates/ai-src/commands/run-test.md +6 -0
  50. package/package.json +3 -3
  51. package/src/cli/commands/audit.ts +2 -11
  52. package/src/cli/commands/capability.ts +11 -10
  53. package/src/cli/commands/challenge.ts +2 -8
  54. package/src/cli/commands/depth-lint.ts +2 -10
  55. package/src/cli/commands/gate.ts +2 -10
  56. package/src/cli/commands/journey.ts +2 -10
  57. package/src/cli/commands/manifest.ts +2 -8
  58. package/src/cli/commands/next.ts +96 -0
  59. package/src/cli/index.ts +31 -0
  60. package/src/cli/resolve-unit.ts +72 -0
  61. package/src/harness/audit.ts +9 -1
  62. package/src/harness/capability-plan.ts +23 -3
  63. package/src/harness/capability.ts +22 -0
  64. package/src/harness/catalog/drivers.yaml +5 -0
  65. package/src/harness/next-step.ts +237 -0
  66. package/src/orchestrator/templates/ai-src/commands/create-test.md +14 -6
  67. package/src/orchestrator/templates/ai-src/commands/run-test.md +6 -0
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.registerNextCommand = registerNextCommand;
37
+ exports.printHandBack = printHandBack;
38
+ const fs = __importStar(require("fs"));
39
+ const path = __importStar(require("path"));
40
+ const next_step_1 = require("../../harness/next-step");
41
+ const resolve_unit_1 = require("../resolve-unit");
42
+ /** Every unit the project holds, so `sungen next` with no argument still answers. */
43
+ function allUnits(cwd) {
44
+ const out = [];
45
+ for (const [dir, kind] of [['screens', 'screen'], ['flows', 'flow'], ['api', 'api']]) {
46
+ const base = path.join(cwd, 'qa', dir);
47
+ try {
48
+ for (const e of fs.readdirSync(base, { withFileTypes: true })) {
49
+ if (e.isDirectory())
50
+ out.push({ name: e.name, kind, dir: path.join(base, e.name) });
51
+ }
52
+ }
53
+ catch { /* the project may not use this unit kind */ }
54
+ }
55
+ return out;
56
+ }
57
+ function render(s) {
58
+ const L = console.log;
59
+ L('');
60
+ L(`━━━ Next steps: ${s.unit} (${s.kind}) ━━━`);
61
+ L('');
62
+ const held = [
63
+ s.hasSpec && 'spec', s.hasViewpoint && 'viewpoint',
64
+ s.kind === 'flow' && s.hasContract && (s.hasFlowInventory ? 'contract+inventory' : 'contract (phases only)'),
65
+ s.scenarioCount > 0 && `${s.scenarioCount} scenarios`,
66
+ s.hasSelectors && (s.selectorsArePlaceholder ? 'selectors (placeholder)' : 'selectors'),
67
+ s.compiled && 'compiled', s.hasResults && 'results', s.hasDeliverable && 'deliverable',
68
+ ].filter(Boolean);
69
+ L(` state: ${held.length ? held.join(' · ') : '(nothing yet)'}`);
70
+ if (s.audit)
71
+ L(` audit: ${s.audit.overall}/10 [${s.audit.gateStatus}] · ${s.audit.findings.length} finding(s)`);
72
+ L('');
73
+ for (const st of s.steps) {
74
+ const mark = st.kind === 'blocked' ? '⛔' : st.kind === 'optional' ? '○' : '→';
75
+ L(` ${mark} ${st.command}`);
76
+ L(` ${st.because}`);
77
+ }
78
+ L('');
79
+ }
80
+ function registerNextCommand(program) {
81
+ program
82
+ .command('next [unit]')
83
+ .description('What to do next for a unit (or every unit), derived from the project state')
84
+ .option('--json', 'Machine-readable output')
85
+ .action((unit, o) => {
86
+ try {
87
+ const cwd = process.cwd();
88
+ let states;
89
+ if (unit) {
90
+ const resolved = (0, resolve_unit_1.resolveUnit)(unit, cwd);
91
+ if (!resolved) {
92
+ console.error(`Error: no unit named "${unit}" under qa/screens, qa/flows or qa/api.`);
93
+ process.exit(1);
94
+ }
95
+ states = [(0, next_step_1.readUnitState)(cwd, resolved.dir, unit, resolved.kind)];
96
+ }
97
+ else {
98
+ const units = allUnits(cwd);
99
+ if (units.length === 0) {
100
+ console.error('Error: this project holds no units yet — run `sungen add --screen <name> --path <url>` or `sungen add-flow --flow <name> --path <url>`.');
101
+ process.exit(1);
102
+ }
103
+ // A name in two places is ambiguous; report it rather than answering for one of them.
104
+ states = units.map((u) => {
105
+ if ((0, resolve_unit_1.resolveUnitCandidates)(u.name, cwd).length > 1)
106
+ throw new resolve_unit_1.AmbiguousUnitError(u.name, (0, resolve_unit_1.resolveUnitCandidates)(u.name, cwd));
107
+ return (0, next_step_1.readUnitState)(cwd, u.dir, u.name, u.kind);
108
+ });
109
+ }
110
+ if (o.json) {
111
+ console.log(JSON.stringify(states.length === 1 ? states[0] : states, null, 2));
112
+ return;
113
+ }
114
+ for (const s of states)
115
+ render(s);
116
+ }
117
+ catch (e) {
118
+ console.error(`Error: ${e instanceof Error ? e.message : e}`);
119
+ process.exit(1);
120
+ }
121
+ });
122
+ }
123
+ /**
124
+ * The one-line hand-back every command prints last. Kept deliberately small: it points at the
125
+ * resolver instead of restating a next step, so no command can drift from the real state.
126
+ */
127
+ function printHandBack(unit) {
128
+ console.log(`Next: sungen next${unit ? ` ${unit}` : ''}`);
129
+ }
130
+ //# sourceMappingURL=next.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.js","sourceRoot":"","sources":["../../../src/cli/commands/next.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -28,6 +28,7 @@ const feedback_1 = require("./commands/feedback");
28
28
  const qa_feedback_1 = require("./commands/qa-feedback");
29
29
  const script_check_1 = require("./commands/script-check");
30
30
  const trace_1 = require("./commands/trace");
31
+ const next_1 = require("./commands/next");
31
32
  const challenge_1 = require("./commands/challenge");
32
33
  const blindspot_1 = require("./commands/blindspot");
33
34
  const capability_1 = require("./commands/capability");
@@ -70,6 +71,7 @@ async function main() {
70
71
  (0, qa_feedback_1.registerQaFeedbackCommand)(program);
71
72
  (0, script_check_1.registerScriptCheckCommand)(program);
72
73
  (0, trace_1.registerTraceCommand)(program);
74
+ (0, next_1.registerNextCommand)(program);
73
75
  (0, challenge_1.registerChallengeCommand)(program);
74
76
  (0, blindspot_1.registerBlindspotCommand)(program);
75
77
  (0, capability_1.registerCapabilityCommand)(program);
@@ -90,6 +92,38 @@ async function main() {
90
92
  // build — `update` is the only thing that refreshes them, and nothing used to
91
93
  // say so (stderr, so `--json` output stays parseable).
92
94
  program.hook('preAction', () => { (0, assets_drift_1.warnAssetsDrift)(process.cwd()); });
95
+ // #597 — the hand-back, once, for EVERY command. It used to be hardcoded per command and only
96
+ // two of twenty-nine printed one, so a run that finished anywhere else finished in silence:
97
+ // `capability add` ended with a blank line and the session stopped mid-workflow. Adding a
98
+ // footer to the other twenty-seven would repeat the mistake in bulk.
99
+ //
100
+ // It hangs off `process.on('exit')` rather than a postAction hook because several commands
101
+ // exit with a MEANINGFUL code (`depth-lint` returns 2 when there are deepen candidates) and
102
+ // `process.exit` skips commander's hooks entirely — a postAction version printed for `audit`
103
+ // and silently not for `depth-lint`, which is the same class of gap all over again.
104
+ //
105
+ // It points at `sungen next` instead of restating a step, so it can never drift from the real
106
+ // project state. Skipped on a hard error (code 1): there the error message is the actionable
107
+ // thing, and burying it under a footer helps nobody. `--json` keeps stdout parseable.
108
+ let handBack = null;
109
+ program.hook('preAction', (_thisCommand, actionCommand) => {
110
+ if (actionCommand.name() === 'next')
111
+ return; // `next` IS the answer
112
+ const opts = actionCommand.opts();
113
+ const unit = [opts.screen, opts.flow, opts.area].find((v) => typeof v === 'string' && v)
114
+ ?? (typeof actionCommand.args?.[0] === 'string' ? actionCommand.args[0] : undefined);
115
+ handBack = { unit: unit, json: opts.json === true };
116
+ });
117
+ process.on('exit', (code) => {
118
+ if (!handBack || code === 1)
119
+ return;
120
+ const line = `\nNext: sungen next${handBack.unit ? ` ${handBack.unit}` : ''}`;
121
+ // stderr under --json so the hand-back never lands in the parsed payload.
122
+ if (handBack.json)
123
+ process.stderr.write(`${line}\n`);
124
+ else
125
+ process.stdout.write(`${line}\n`);
126
+ });
93
127
  await program.parseAsync(process.argv);
94
128
  }
95
129
  main().catch((error) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export type UnitKind = 'screen' | 'flow' | 'api';
2
+ export interface ResolvedUnit {
3
+ dir: string;
4
+ kind: UnitKind;
5
+ /** Catalog unit id relative to qa/: `<screen>` · `flows/<f>` · `api/<a>` · `api/flows/<f>`. */
6
+ unitId: string;
7
+ }
8
+ /** Every unit directory this name matches, in `screens, flows, api` order. */
9
+ export declare function resolveUnitCandidates(name: string, cwd?: string): ResolvedUnit[];
10
+ export declare class AmbiguousUnitError extends Error {
11
+ readonly name: string;
12
+ readonly candidates: ResolvedUnit[];
13
+ constructor(name: string, candidates: ResolvedUnit[]);
14
+ }
15
+ /**
16
+ * The single unit this name means. Throws `AmbiguousUnitError` when several match; returns null
17
+ * when none do (callers report "unit not found" with their own guidance).
18
+ */
19
+ export declare function resolveUnit(name: string, cwd?: string): ResolvedUnit | null;
20
+ /** Back-compat shape for the callers that only want the directory. */
21
+ export declare function findUnitDir(name: string, cwd?: string): string | null;
22
+ //# sourceMappingURL=resolve-unit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-unit.d.ts","sourceRoot":"","sources":["../../src/cli/resolve-unit.ts"],"names":[],"mappings":"AAmBA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AAQjD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,+FAA+F;IAC/F,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAgB,GAAG,YAAY,EAAE,CAQvF;AAED,qBAAa,kBAAmB,SAAQ,KAAK;aACf,IAAI,EAAE,MAAM;aAAkB,UAAU,EAAE,YAAY,EAAE;gBAAxD,IAAI,EAAE,MAAM,EAAkB,UAAU,EAAE,YAAY,EAAE;CAUrF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAgB,GAAG,YAAY,GAAG,IAAI,CAIlF;AAED,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAgB,GAAG,MAAM,GAAG,IAAI,CAE5E"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.AmbiguousUnitError = void 0;
37
+ exports.resolveUnitCandidates = resolveUnitCandidates;
38
+ exports.resolveUnit = resolveUnit;
39
+ exports.findUnitDir = findUnitDir;
40
+ /**
41
+ * One resolver for "which unit does this name mean?", shared by every command.
42
+ *
43
+ * Seven commands each had their own copy, and all seven searched `qa/screens/` FIRST. So a
44
+ * directory at `qa/screens/<name>/` SHADOWED a real flow of the same name — and the failure was
45
+ * silent, not loud: `sungen audit` resolved to the phantom screen, found no feature file, and
46
+ * reported 0 scenarios with no contract and no scored axis. A run that dropped the entire quality
47
+ * gate looked like a suite with nothing in it.
48
+ *
49
+ * That shape is not hypothetical: the mock driver resolves its catalog from
50
+ * `qa/screens/<unit>/mock/mocks.yaml` only, so making a mock work for a flow means creating
51
+ * exactly that phantom directory (#597).
52
+ *
53
+ * A name resolving to two units is ambiguous, and ambiguity is reported rather than resolved by
54
+ * search order.
55
+ */
56
+ const fs = __importStar(require("fs"));
57
+ const path = __importStar(require("path"));
58
+ const KINDS = [
59
+ { kind: 'screen', dir: 'screens' },
60
+ { kind: 'flow', dir: 'flows' },
61
+ { kind: 'api', dir: 'api' }, // qa/api/<area> or qa/api/flows/<flow>
62
+ ];
63
+ /** Every unit directory this name matches, in `screens, flows, api` order. */
64
+ function resolveUnitCandidates(name, cwd = process.cwd()) {
65
+ const out = [];
66
+ for (const { kind, dir } of KINDS) {
67
+ const p = path.join(cwd, 'qa', dir, name);
68
+ if (!fs.existsSync(p))
69
+ continue;
70
+ out.push({ dir: p, kind, unitId: kind === 'screen' ? name : `${dir}/${name}` });
71
+ }
72
+ return out;
73
+ }
74
+ class AmbiguousUnitError extends Error {
75
+ constructor(name, candidates) {
76
+ super(`"${name}" names ${candidates.length} units: ${candidates.map((c) => `qa/${c.kind === 'screen' ? 'screens/' : ''}${c.unitId}`).join(' and ')}.\n`
77
+ + ' Resolving this by search order silently picks one and drops the other unit\'s feature,\n'
78
+ + ' contract and scored axes — a report with 0 scenarios rather than an error. Rename one,\n'
79
+ + ' or remove the directory that should not exist (a stray `qa/screens/<flow-name>/`\n'
80
+ + ' created to satisfy a screen-only driver is the usual cause).');
81
+ this.name = name;
82
+ this.candidates = candidates;
83
+ this.name = 'AmbiguousUnitError';
84
+ }
85
+ }
86
+ exports.AmbiguousUnitError = AmbiguousUnitError;
87
+ /**
88
+ * The single unit this name means. Throws `AmbiguousUnitError` when several match; returns null
89
+ * when none do (callers report "unit not found" with their own guidance).
90
+ */
91
+ function resolveUnit(name, cwd = process.cwd()) {
92
+ const found = resolveUnitCandidates(name, cwd);
93
+ if (found.length > 1)
94
+ throw new AmbiguousUnitError(name, found);
95
+ return found[0] ?? null;
96
+ }
97
+ /** Back-compat shape for the callers that only want the directory. */
98
+ function findUnitDir(name, cwd = process.cwd()) {
99
+ return resolveUnit(name, cwd)?.dir ?? null;
100
+ }
101
+ //# sourceMappingURL=resolve-unit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-unit.js","sourceRoot":"","sources":["../../src/cli/resolve-unit.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,sDAQC;AAmBD,kCAIC;AAGD,kCAEC;AAvED;;;;;;;;;;;;;;;GAeG;AACH,uCAAyB;AACzB,2CAA6B;AAI7B,MAAM,KAAK,GAA2C;IACpD,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE;IAClC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE;IAC9B,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAQ,uCAAuC;CAC3E,CAAC;AASF,8EAA8E;AAC9E,SAAgB,qBAAqB,CAAC,IAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACrE,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,SAAS;QAChC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAA4B,IAAY,EAAkB,UAA0B;QAClF,KAAK,CACH,IAAI,IAAI,WAAW,UAAU,CAAC,MAAM,WAAW,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;cAC/I,4FAA4F;cAC5F,4FAA4F;cAC5F,sFAAsF;cACtF,gEAAgE,CACnE,CAAC;QAPwB,SAAI,GAAJ,IAAI,CAAQ;QAAkB,eAAU,GAAV,UAAU,CAAgB;QAQlF,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAXD,gDAWC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,IAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC3D,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAC1B,CAAC;AAED,sEAAsE;AACtE,SAAgB,WAAW,CAAC,IAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC3D,OAAO,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/harness/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/harness/audit.ts"],"names":[],"mappings":"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"}
@@ -559,11 +559,19 @@ function runAudit(screenDir, screenName) {
559
559
  // TQ-10 — surface the Capability Planner recommendation (recommend-only; never installs). Silenced
560
560
  // by `capability_suggestions: off` in qa/context.md. Reuses the planner (trustworthy after TQ-9).
561
561
  if (intent.capabilitySuggestions) {
562
- const plan = (0, capability_plan_1.buildPlan)(screenDir, screenName);
562
+ // The catalog unit id (`flows/<f>`, `api/<a>`) carries the unit KIND, which gates which
563
+ // drivers can serve it at all.
564
+ const plan = (0, capability_plan_1.buildPlan)(screenDir, screenName, catalogScreenName);
563
565
  if (plan.recommendations.length) {
564
566
  const recs = plan.recommendations.map((r) => `\`sungen capability add ${r.driver}\` (automates ${r.count})`).join(' · ');
565
567
  findings.push(`CAPABILITY-SUGGESTION: ${plan.capabilityManual} @manual scenario(s) are capability-manual (a driver could automate them) — ${recs}. Recommend-only: nothing is installed automatically; the ${plan.judgmentManual} judgment-manual (M6/M8/M9) correctly stay manual.`);
566
568
  }
569
+ // Named, not dropped: without this the scenarios read as "nothing could help", and the
570
+ // operator's only clue was an install that dead-ends (#597).
571
+ if (plan.unavailable.length) {
572
+ const un = plan.unavailable.map((r) => `${r.driver} (would automate ${r.count})`).join(' · ');
573
+ findings.push(`CAPABILITY-UNAVAILABLE: ${un} — ${plan.unavailable.length === 1 ? 'that driver does' : 'those drivers do'} not support a ${plan.unavailable[0].unitKind} unit, so ${plan.unavailable.length === 1 ? 'it' : 'they'} cannot automate these scenarios here. Do NOT install: the scenarios stay @manual until the driver gains ${plan.unavailable[0].unitKind} support. Automating the same behaviour on the owning SCREEN unit is the available route today.`);
574
+ }
567
575
  }
568
576
  // TQ-11b — automation-ready (pending capability): @requires:<cap> scenarios whose cap isn't enabled.
569
577
  // They are NOT manual (real steps, compiled the moment the cap is added) — surface them distinctly.
@@ -1 +1 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/harness/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/harness/audit.ts"],"names":[],"mappings":"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"}
@@ -63,11 +63,22 @@ export interface CapabilityPlan {
63
63
  count: number;
64
64
  scenarios: string[];
65
65
  }[];
66
+ /**
67
+ * Drivers that WOULD have been recommended but cannot serve this unit kind. Surfaced, never
68
+ * dropped: the scenarios stay manual for a reason the operator needs to know, and a silent
69
+ * omission would read as "nothing could help here" (#597).
70
+ */
71
+ unavailable: {
72
+ driver: string;
73
+ reason: string;
74
+ count: number;
75
+ unitKind: string;
76
+ }[];
66
77
  keep: {
67
78
  code: string;
68
79
  count: number;
69
80
  }[];
70
81
  }
71
- export declare function buildPlan(screenDir: string, screenName: string): CapabilityPlan;
82
+ export declare function buildPlan(screenDir: string, screenName: string, unitId?: string): CapabilityPlan;
72
83
  export {};
73
84
  //# sourceMappingURL=capability-plan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capability-plan.d.ts","sourceRoot":"","sources":["../../src/harness/capability-plan.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AACzD,MAAM,WAAW,SAAS;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE;AAE/F,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAYpD,CAAC;AAoBF;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAInD;AAED,UAAU,cAAc;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;AAErI,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CA+BpE;AAUD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,OAAO,CAAA;CAAE,CAK1H;AAED,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGhE;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED,MAAM,WAAW,cAAc;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE;AAExF;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CAuC5E;AAYD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACvG,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzC;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,cAAc,CA6D/E"}
1
+ {"version":3,"file":"capability-plan.d.ts","sourceRoot":"","sources":["../../src/harness/capability-plan.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AACzD,MAAM,WAAW,SAAS;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE;AAE/F,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAYpD,CAAC;AAoBF;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAInD;AAED,UAAU,cAAc;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;AAErI,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CA+BpE;AAUD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,OAAO,CAAA;CAAE,CAK1H;AAED,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGhE;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED,MAAM,WAAW,cAAc;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE;AAExF;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CAuC5E;AAYD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACvG;;;;OAIG;IACH,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnF,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzC;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAa,GAAG,cAAc,CA2EpG"}
@@ -242,9 +242,12 @@ function classifyMode(tags) {
242
242
  return 'dbAssert';
243
243
  return 'ui';
244
244
  }
245
- function buildPlan(screenDir, screenName) {
245
+ function buildPlan(screenDir, screenName, unitId = screenName) {
246
246
  const scenarios = (0, unit_paths_1.featureFilesFor)(screenDir, screenName).flatMap(parseScenarios);
247
247
  const catalog = (0, capability_1.loadDriverCatalog)();
248
+ // Recommending a driver that cannot serve this unit KIND costs an install, a dead end and a
249
+ // manual rollback — which is exactly what the mock driver (screen-only) did on a flow (#597).
250
+ const unitKind = (0, capability_1.unitKindOf)(unitId);
248
251
  const modes = {};
249
252
  const byReason = {};
250
253
  const unclassified = [];
@@ -278,7 +281,17 @@ function buildPlan(screenDir, screenName) {
278
281
  keepCount[code] = (keepCount[code] || 0) + 1;
279
282
  }
280
283
  }
281
- const recommendations = [...recByDriver.entries()]
284
+ const servable = [...recByDriver.entries()].filter(([d]) => (0, capability_1.driverServesUnit)(d, unitKind));
285
+ const unavailable = [...recByDriver.entries()]
286
+ .filter(([d]) => !(0, capability_1.driverServesUnit)(d, unitKind))
287
+ .map(([driver, v]) => ({
288
+ driver,
289
+ reason: v.reason,
290
+ count: v.scenarios.length,
291
+ unitKind,
292
+ }))
293
+ .sort((a, b) => b.count - a.count);
294
+ const recommendations = servable
282
295
  .map(([driver, v]) => ({
283
296
  driver,
284
297
  pkg: catalog[driver]?.package || `@sungen/driver-${driver}`,
@@ -299,6 +312,7 @@ function buildPlan(screenDir, screenName) {
299
312
  crossScreen,
300
313
  capabilityManualPct: manualTotal ? Math.round((capabilityManual / manualTotal) * 100) : 0,
301
314
  recommendations,
315
+ unavailable,
302
316
  keep: Object.entries(keepCount).map(([code, count]) => ({ code, count })).sort((a, b) => b.count - a.count),
303
317
  };
304
318
  }