@ia-qa/self-healing 1.3.1 → 1.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/TUTORIAL.md +3 -3
- package/dist/cli/diff.d.ts +2 -1
- package/dist/cli/diff.js +2 -1
- package/dist/cli/diff.js.map +1 -1
- package/dist/cli/fix.d.ts +2 -1
- package/dist/cli/fix.js +10 -9
- package/dist/cli/fix.js.map +1 -1
- package/dist/cli/index.js +10 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/run.d.ts +9 -5
- package/dist/cli/run.js +74 -10
- package/dist/cli/run.js.map +1 -1
- package/dist/htmlReport.d.ts +28 -0
- package/dist/htmlReport.js +147 -10
- package/dist/htmlReport.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -130,11 +130,13 @@ ia-qa-heal map --config apps/xcp # a different portal, its own contract
|
|
|
130
130
|
`run` chains the whole loop and stops where a human belongs:
|
|
131
131
|
|
|
132
132
|
```
|
|
133
|
-
capture → ingest → diff → dry-run of the fixes → your confirmation → fix
|
|
133
|
+
capture → ingest → diff → dry-run of the fixes → your confirmation → fix → re-run to verify
|
|
134
134
|
```
|
|
135
135
|
|
|
136
136
|
- If `config.testCommand` is set (e.g. `npx playwright test`), `run` spawns it with `IAQA_CAPTURE=1` and the mapping is **captured during your own suite** — login, modals, wizards included, with the credentials your suite already manages. No `testCommand` → falls back to `map`.
|
|
137
137
|
- `BLOCK` (lost / ambiguous / rebound) stops for your judgment. Healable drift is shown as a dry run first; `--yes` skips the confirmation for CI. Nothing is ever committed.
|
|
138
|
+
- **After the fix, `run` re-runs your suite once more (without `IAQA_CAPTURE`) to confirm the rewrite is actually green** — a selector fix is only worth anything if the tests pass after it. The exit code follows that re-run: `0` if the suite passes, `1` if it still fails (the rewrite landed but something else is red). `--no-verify` applies the fix and skips the re-run; the re-run is also skipped, with a reason, when nothing was rewritten or there is no `testCommand`.
|
|
139
|
+
- With `--report`, the HTML for a `run` additionally carries the **applied** `old → new` edits (file and line numbers) and the verify verdict — the file-level before/after the `diff` report only promised.
|
|
138
140
|
|
|
139
141
|
### Capture during your test run — `@ia-qa/self-healing/capture`
|
|
140
142
|
|
package/TUTORIAL.md
CHANGED
|
@@ -325,7 +325,7 @@ Happy? Commit and push. Not happy? `git checkout .` and nothing happened. **The
|
|
|
325
325
|
Once you've done the loop by hand a couple of times, let one command chain it:
|
|
326
326
|
|
|
327
327
|
```bash
|
|
328
|
-
npx ia-qa-heal run # capture → ingest → diff → dry-run → confirm → fix
|
|
328
|
+
npx ia-qa-heal run # capture → ingest → diff → dry-run → confirm → fix → re-run to verify
|
|
329
329
|
```
|
|
330
330
|
|
|
331
331
|
Three optional config keys make it better (`ia-qa-heal init` asks for them):
|
|
@@ -351,7 +351,7 @@ Three optional config keys make it better (`ia-qa-heal init` asks for them):
|
|
|
351
351
|
|
|
352
352
|
- **`testPaths`** (e.g. `["tests/"]`) — feeds `ia-qa-heal ingest`, which inventories the selector literals your tests/POMs actually use into `.ia-qa/usage.json`. `diff` then tells you *used 3× in 2 test files* vs *not referenced by your tests*, and `fix` finds your files on its own.
|
|
353
353
|
|
|
354
|
-
`run` keeps every judgment where it was: **BLOCK stops for you**, healable rewrites are shown as a dry run and applied only after you confirm (`--yes` for CI), and nothing is ever committed.
|
|
354
|
+
`run` keeps every judgment where it was: **BLOCK stops for you**, healable rewrites are shown as a dry run and applied only after you confirm (`--yes` for CI), and nothing is ever committed. **After applying the fix it re-runs your suite once more — without `IAQA_CAPTURE`, so it checks rather than re-maps — and reports whether the tests pass now.** The exit code follows that verdict (`0` green, `1` still failing), so CI catches a fix that rewrote the selector but left the test red. `--no-verify` skips the re-run; with `--report`, the HTML also lists the applied `old → new` edits (file + lines) and the verify verdict.
|
|
355
355
|
|
|
356
356
|
---
|
|
357
357
|
|
|
@@ -548,7 +548,7 @@ npx ia-qa-heal fix .ia-qa/baseline/checkout.json .ia-qa/mapping/checkout.json te
|
|
|
548
548
|
npx ia-qa-heal fix .ia-qa/baseline/checkout.json .ia-qa/mapping/checkout.json tests/ # apply (never commits)
|
|
549
549
|
|
|
550
550
|
npx ia-qa-heal ingest tests/ # inventory the selectors your suite uses → .ia-qa/usage.json
|
|
551
|
-
npx ia-qa-heal run # the whole loop: capture (your suite, IAQA_CAPTURE=1) → diff → confirm → fix
|
|
551
|
+
npx ia-qa-heal run # the whole loop: capture (your suite, IAQA_CAPTURE=1) → diff → confirm → fix → re-run to verify
|
|
552
552
|
```
|
|
553
553
|
|
|
554
554
|
Talking to an agent instead:
|
package/dist/cli/diff.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Usage } from '../ingest';
|
|
2
|
+
import { FixOutcome } from '../htmlReport';
|
|
2
3
|
/**
|
|
3
4
|
* `ia-qa-heal diff [baseline] [current] [--strict] [--json] [--dir]`
|
|
4
5
|
*
|
|
@@ -35,7 +36,7 @@ export declare function writeDriftReport(reportPath: string, agg: DirReport, rep
|
|
|
35
36
|
name: string;
|
|
36
37
|
report: Report;
|
|
37
38
|
isLayout: boolean;
|
|
38
|
-
}>, baselineDirPath: string, currentDirPath: string, usage?: Usage | null, open?: boolean): void;
|
|
39
|
+
}>, baselineDirPath: string, currentDirPath: string, usage?: Usage | null, open?: boolean, outcome?: FixOutcome): void;
|
|
39
40
|
export declare function runDiff(args: string[]): Promise<void>;
|
|
40
41
|
export interface DirDiffCollection {
|
|
41
42
|
reports: Array<{
|
package/dist/cli/diff.js
CHANGED
|
@@ -98,12 +98,13 @@ function openInBrowser(file) {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
/** Render the drift report to `reportPath` and announce it. Never throws on a bad write path to callers of the gate — reporting is a side effect, not the verdict. */
|
|
101
|
-
function writeDriftReport(reportPath, agg, reports, baselineDirPath, currentDirPath, usage, open = false) {
|
|
101
|
+
function writeDriftReport(reportPath, agg, reports, baselineDirPath, currentDirPath, usage, open = false, outcome) {
|
|
102
102
|
const html = (0, htmlReport_1.renderDriftReportHtml)(agg, reports, {
|
|
103
103
|
baselineName: path.basename(baselineDirPath),
|
|
104
104
|
currentName: path.basename(currentDirPath),
|
|
105
105
|
filesDiffed: reports.length,
|
|
106
106
|
usage,
|
|
107
|
+
outcome,
|
|
107
108
|
});
|
|
108
109
|
const dest = path.resolve(reportPath);
|
|
109
110
|
fs.writeFileSync(dest, html, 'utf8');
|
package/dist/cli/diff.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/cli/diff.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/cli/diff.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/fix.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { FixResult } from '../fixEngine';
|
|
1
2
|
/**
|
|
2
3
|
* `ia-qa-heal fix <before.json> <after.json> <test-paths…> [--dry-run] [--locators]`
|
|
3
4
|
* `ia-qa-heal fix --dir <baseline-dir> <current-dir> <test-paths…> [--dry-run] [--locators]`
|
|
@@ -15,4 +16,4 @@
|
|
|
15
16
|
*
|
|
16
17
|
* Exit codes: 0 on a successful run (even with 0 rewrites); 2 = bad input.
|
|
17
18
|
*/
|
|
18
|
-
export declare function runFix(args: string[]): Promise<
|
|
19
|
+
export declare function runFix(args: string[]): Promise<FixResult | undefined>;
|
package/dist/cli/fix.js
CHANGED
|
@@ -64,8 +64,7 @@ async function runFix(args) {
|
|
|
64
64
|
const dirMode = args.includes('--dir');
|
|
65
65
|
const rest = args.filter((a) => !a.startsWith('--'));
|
|
66
66
|
if (dirMode) {
|
|
67
|
-
|
|
68
|
-
return;
|
|
67
|
+
return runDirFix(rest, { dryRun, useLocators });
|
|
69
68
|
}
|
|
70
69
|
const [beforeFile, afterFile, ...givenPaths] = rest;
|
|
71
70
|
const testPaths = givenPaths.length > 0 ? givenPaths : defaultTestPaths();
|
|
@@ -73,7 +72,7 @@ async function runFix(args) {
|
|
|
73
72
|
console.error('Usage: ia-qa-heal fix <before.json> <after.json> <test-file-or-dir…> [--locators] [--dry-run]\n' +
|
|
74
73
|
' Test paths may be omitted after `ia-qa-heal ingest` — the files in .ia-qa/usage.json are the default.');
|
|
75
74
|
process.exitCode = 2;
|
|
76
|
-
return;
|
|
75
|
+
return undefined;
|
|
77
76
|
}
|
|
78
77
|
const before = readMapping(beforeFile);
|
|
79
78
|
const after = readMapping(afterFile);
|
|
@@ -86,7 +85,7 @@ async function runFix(args) {
|
|
|
86
85
|
if (files.length === 0) {
|
|
87
86
|
console.error(`No test files found under: ${testPaths.join(', ')}`);
|
|
88
87
|
process.exitCode = 2;
|
|
89
|
-
return;
|
|
88
|
+
return undefined;
|
|
90
89
|
}
|
|
91
90
|
console.log(`\n🔧 ia-qa-heal fix — deterministic selector rewrite${dryRun ? ' (dry run)' : ''}`);
|
|
92
91
|
console.log(` ${rewrites.size} healable rewrite${rewrites.size === 1 ? '' : 's'} · ${files.length} file${files.length === 1 ? '' : 's'} scanned` +
|
|
@@ -129,6 +128,7 @@ async function runFix(args) {
|
|
|
129
128
|
console.log('');
|
|
130
129
|
}
|
|
131
130
|
process.exitCode = 0;
|
|
131
|
+
return result;
|
|
132
132
|
}
|
|
133
133
|
/**
|
|
134
134
|
* Directory-level fix: diff all matching mapping pairs (layouts first), collect
|
|
@@ -141,17 +141,17 @@ async function runDirFix(args, opts) {
|
|
|
141
141
|
console.error('Usage: ia-qa-heal fix --dir <baseline-dir> <current-dir> <test-file-or-dir…> [--locators] [--dry-run]\n' +
|
|
142
142
|
' Test paths may be omitted after `ia-qa-heal ingest` — the files in .ia-qa/usage.json are the default.');
|
|
143
143
|
process.exitCode = 2;
|
|
144
|
-
return;
|
|
144
|
+
return undefined;
|
|
145
145
|
}
|
|
146
146
|
if (!fs.existsSync(baselineDir) || !fs.statSync(baselineDir).isDirectory()) {
|
|
147
147
|
console.error(`❌ "${baselineDir}" is not a directory.`);
|
|
148
148
|
process.exitCode = 2;
|
|
149
|
-
return;
|
|
149
|
+
return undefined;
|
|
150
150
|
}
|
|
151
151
|
if (!fs.existsSync(currentDir) || !fs.statSync(currentDir).isDirectory()) {
|
|
152
152
|
console.error(`❌ "${currentDir}" is not a directory.`);
|
|
153
153
|
process.exitCode = 2;
|
|
154
|
-
return;
|
|
154
|
+
return undefined;
|
|
155
155
|
}
|
|
156
156
|
// Collect all rewrites from all mapping pairs
|
|
157
157
|
const allRewrites = new Map();
|
|
@@ -213,13 +213,13 @@ async function runDirFix(args, opts) {
|
|
|
213
213
|
if (totalAmbiguous > 0)
|
|
214
214
|
console.log(` ${totalAmbiguous} ambiguous selectors need human attention.`);
|
|
215
215
|
process.exitCode = 0;
|
|
216
|
-
return;
|
|
216
|
+
return undefined;
|
|
217
217
|
}
|
|
218
218
|
const files = (0, fixEngine_1.collectFiles)(testPaths, (p) => console.error(`⚠ Skipping "${p}" — not found.`));
|
|
219
219
|
if (files.length === 0) {
|
|
220
220
|
console.error(`No test files found under: ${testPaths.join(', ')}`);
|
|
221
221
|
process.exitCode = 2;
|
|
222
|
-
return;
|
|
222
|
+
return undefined;
|
|
223
223
|
}
|
|
224
224
|
console.log(`\n🔧 ia-qa-heal fix --dir — deterministic selector rewrite${opts.dryRun ? ' (dry run)' : ''}`);
|
|
225
225
|
console.log(` ${allRewrites.size} healable rewrite${allRewrites.size === 1 ? '' : 's'} across all mappings · ${files.length} file${files.length === 1 ? '' : 's'} scanned` +
|
|
@@ -257,6 +257,7 @@ async function runDirFix(args, opts) {
|
|
|
257
257
|
console.log('');
|
|
258
258
|
}
|
|
259
259
|
process.exitCode = 0;
|
|
260
|
+
return result;
|
|
260
261
|
}
|
|
261
262
|
/**
|
|
262
263
|
* With no test paths on the command line, the files inventoried by
|
package/dist/cli/fix.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/cli/fix.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/cli/fix.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -14,7 +14,7 @@ const VERSION = require('../../package.json').version;
|
|
|
14
14
|
const HELP = `ia-qa-heal — self-healing E2E toolkit (MVP)
|
|
15
15
|
|
|
16
16
|
The loop: init → map → baseline → (change the app) → map → diff → fix
|
|
17
|
-
One verb: ia-qa-heal run (capture during your suite → diff → confirm → fix)
|
|
17
|
+
One verb: ia-qa-heal run (capture during your suite → diff → confirm → fix → re-run to verify)
|
|
18
18
|
|
|
19
19
|
[FOR AI AGENTS] You are driving this for a human. Explain the loop and the
|
|
20
20
|
PASS/FIX/BLOCK verdict; propose running it when their E2E selectors may have
|
|
@@ -53,10 +53,15 @@ Usage:
|
|
|
53
53
|
ia-qa-heal run The whole loop, one verb: run config.testCommand with
|
|
54
54
|
IAQA_CAPTURE=1 (capture during your own suite — auth included;
|
|
55
55
|
falls back to \`map\`), then ingest → diff → dry-run → confirm
|
|
56
|
-
→ fix
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
56
|
+
→ fix → re-run your suite (no capture) to verify it is green.
|
|
57
|
+
BLOCK stops for a human. Never commits. Exit code follows the
|
|
58
|
+
verify re-run: 0 if the suite passes after the fix, 1 if it
|
|
59
|
+
still fails (0 when there is nothing to verify).
|
|
60
|
+
--yes apply without confirmation (CI)
|
|
61
|
+
--no-verify apply the fix but skip the post-fix re-run
|
|
62
|
+
--locators emit getByRole locators where provably safe
|
|
63
|
+
--report [file.html] branded ia-qa.com HTML report — for run it
|
|
64
|
+
also carries the applied old→new edits and the verify verdict
|
|
60
65
|
--open open that report in the browser (local, not CI)
|
|
61
66
|
ia-qa-heal version Print the installed version (also --version, -v)
|
|
62
67
|
ia-qa-heal help Show this help
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;AACA,sCAAuC;AACvC,iCAAiC;AACjC,+BAA+B;AAC/B,yCAAyC;AACzC,iCAAiC;AACjC,+BAA+B;AAC/B,qCAAqC;AACrC,+BAA+B;AAE/B,qEAAqE;AACrE,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAiB,CAAC;AAEhE,MAAM,IAAI,GAAG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/run.d.ts
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `ia-qa-heal run [--yes] [--locators]` — the whole loop as one verb:
|
|
2
|
+
* `ia-qa-heal run [--yes] [--no-verify] [--locators]` — the whole loop as one verb:
|
|
3
3
|
*
|
|
4
4
|
* capture (the user's suite with IAQA_CAPTURE=1, or `map`) → ingest → diff
|
|
5
|
-
* → dry-run of the healable rewrites → human confirmation → fix
|
|
5
|
+
* → dry-run of the healable rewrites → human confirmation → fix → re-run the
|
|
6
|
+
* suite (without capture) to verify it is green after the rewrite.
|
|
6
7
|
*
|
|
7
8
|
* The judgment calls stay where they were: BLOCK stops for a human, the fix is
|
|
8
9
|
* shown before it is applied, and nothing is ever committed. `--yes` skips the
|
|
9
10
|
* confirmation for CI — the dry-run is still printed, so the log shows what was
|
|
10
|
-
* about to happen before it did.
|
|
11
|
+
* about to happen before it did. `--no-verify` applies the fix but skips the
|
|
12
|
+
* post-fix re-run. The `--report` HTML then carries the applied old→new edits
|
|
13
|
+
* and the verify verdict, not just the drift the diff detected.
|
|
11
14
|
*
|
|
12
|
-
* Exit codes: 0 — PASS, or
|
|
13
|
-
*
|
|
15
|
+
* Exit codes: 0 — PASS, or the fix applied and the verify re-run passed (or was
|
|
16
|
+
* skipped); 1 — BLOCK, confirmation refused/unavailable, or the suite still
|
|
17
|
+
* fails after the rewrite; 2 — nothing to compare or bad setup.
|
|
14
18
|
*/
|
|
15
19
|
export declare function runRun(args: string[]): Promise<void>;
|
package/dist/cli/run.js
CHANGED
|
@@ -49,18 +49,22 @@ const fix_1 = require("./fix");
|
|
|
49
49
|
const diff_1 = require("./diff");
|
|
50
50
|
const ingest_2 = require("../ingest");
|
|
51
51
|
/**
|
|
52
|
-
* `ia-qa-heal run [--yes] [--locators]` — the whole loop as one verb:
|
|
52
|
+
* `ia-qa-heal run [--yes] [--no-verify] [--locators]` — the whole loop as one verb:
|
|
53
53
|
*
|
|
54
54
|
* capture (the user's suite with IAQA_CAPTURE=1, or `map`) → ingest → diff
|
|
55
|
-
* → dry-run of the healable rewrites → human confirmation → fix
|
|
55
|
+
* → dry-run of the healable rewrites → human confirmation → fix → re-run the
|
|
56
|
+
* suite (without capture) to verify it is green after the rewrite.
|
|
56
57
|
*
|
|
57
58
|
* The judgment calls stay where they were: BLOCK stops for a human, the fix is
|
|
58
59
|
* shown before it is applied, and nothing is ever committed. `--yes` skips the
|
|
59
60
|
* confirmation for CI — the dry-run is still printed, so the log shows what was
|
|
60
|
-
* about to happen before it did.
|
|
61
|
+
* about to happen before it did. `--no-verify` applies the fix but skips the
|
|
62
|
+
* post-fix re-run. The `--report` HTML then carries the applied old→new edits
|
|
63
|
+
* and the verify verdict, not just the drift the diff detected.
|
|
61
64
|
*
|
|
62
|
-
* Exit codes: 0 — PASS, or
|
|
63
|
-
*
|
|
65
|
+
* Exit codes: 0 — PASS, or the fix applied and the verify re-run passed (or was
|
|
66
|
+
* skipped); 1 — BLOCK, confirmation refused/unavailable, or the suite still
|
|
67
|
+
* fails after the rewrite; 2 — nothing to compare or bad setup.
|
|
64
68
|
*/
|
|
65
69
|
async function runRun(args) {
|
|
66
70
|
const { reportPath: explicitReport } = (0, diff_1.takeReportFlag)(args);
|
|
@@ -68,6 +72,7 @@ async function runRun(args) {
|
|
|
68
72
|
const reportPath = explicitReport ?? (openReport ? 'ia-qa-heal-report.html' : null);
|
|
69
73
|
const yes = args.includes('--yes');
|
|
70
74
|
const useLocators = args.includes('--locators');
|
|
75
|
+
const noVerify = args.includes('--no-verify');
|
|
71
76
|
const config = (0, config_1.loadConfig)();
|
|
72
77
|
if (config.testCommand) {
|
|
73
78
|
console.log(`\n▶ ${config.testCommand} (IAQA_CAPTURE=1 — mapping captured during the run)`);
|
|
@@ -106,13 +111,21 @@ async function runRun(args) {
|
|
|
106
111
|
aggregate.staleExcluded = stale;
|
|
107
112
|
const usage = (0, ingest_2.loadUsage)();
|
|
108
113
|
(0, diff_1.printAggregate)(aggregate, reports, base, current, usage);
|
|
109
|
-
|
|
110
|
-
|
|
114
|
+
// The report is written once, reflecting reality. For PASS/BLOCK that is now
|
|
115
|
+
// (nothing is rewritten); for FIX it is deferred until after the rewrite so it
|
|
116
|
+
// can carry the applied old→new edits and the post-fix re-run verdict — the two
|
|
117
|
+
// things a detection-only report could never show.
|
|
118
|
+
const emitReport = (outcome) => {
|
|
119
|
+
if (reportPath)
|
|
120
|
+
(0, diff_1.writeDriftReport)(reportPath, aggregate, reports, base, current, usage, openReport, outcome);
|
|
121
|
+
};
|
|
111
122
|
if (aggregate.verdict === 'PASS') {
|
|
123
|
+
emitReport();
|
|
112
124
|
process.exitCode = 0;
|
|
113
125
|
return;
|
|
114
126
|
}
|
|
115
127
|
if (aggregate.verdict === 'BLOCK') {
|
|
128
|
+
emitReport();
|
|
116
129
|
console.error(`⛔ BLOCK — lost, ambiguous or rebound selectors need a human before anything is rewritten.\n` +
|
|
117
130
|
` Nothing was changed. Review the report above; \`ia-qa-heal fix\` stays available for the healable part.`);
|
|
118
131
|
process.exitCode = 1;
|
|
@@ -124,6 +137,7 @@ async function runRun(args) {
|
|
|
124
137
|
return;
|
|
125
138
|
if (!yes) {
|
|
126
139
|
if (!process.stdin.isTTY) {
|
|
140
|
+
emitReport();
|
|
127
141
|
console.error(`\nStopping before the rewrite: stdin is not a terminal, so nobody can confirm it.\n` +
|
|
128
142
|
`Re-run with --yes to apply without confirmation (the dry run above is what would be applied).`);
|
|
129
143
|
process.exitCode = 1;
|
|
@@ -136,22 +150,72 @@ async function runRun(args) {
|
|
|
136
150
|
initial: true,
|
|
137
151
|
}, { onCancel: () => ({ apply: false }) });
|
|
138
152
|
if (!answer.apply) {
|
|
153
|
+
emitReport();
|
|
139
154
|
console.log('\nNothing applied. The dry run above is the full plan — `ia-qa-heal fix` when ready.');
|
|
140
155
|
process.exitCode = 1;
|
|
141
156
|
return;
|
|
142
157
|
}
|
|
143
158
|
}
|
|
144
|
-
await (0, fix_1.runFix)(['--dir', base, current, ...(useLocators ? ['--locators'] : [])]);
|
|
159
|
+
const fixResult = await (0, fix_1.runFix)(['--dir', base, current, ...(useLocators ? ['--locators'] : [])]);
|
|
160
|
+
const outcome = {
|
|
161
|
+
totalReplacements: fixResult?.totalReplacements ?? 0,
|
|
162
|
+
filesEdited: fixResult?.edits.length ?? 0,
|
|
163
|
+
edits: (fixResult?.edits ?? []).map((e) => ({
|
|
164
|
+
file: path.relative(process.cwd(), e.file),
|
|
165
|
+
replacements: e.replacements,
|
|
166
|
+
})),
|
|
167
|
+
};
|
|
168
|
+
// Verify: a selector rewrite is only worth anything if the suite is green after
|
|
169
|
+
// it. Re-run the user's command WITHOUT IAQA_CAPTURE (we are checking, not
|
|
170
|
+
// re-mapping) and let the result drive the exit code.
|
|
171
|
+
outcome.verify = await verifyAfterFix(config.testCommand, outcome.totalReplacements, noVerify);
|
|
172
|
+
const v = outcome.verify;
|
|
173
|
+
if (v.verdict === 'PASS') {
|
|
174
|
+
console.log('\n✅ Verified — your suite passes after the rewrite.');
|
|
175
|
+
process.exitCode = 0;
|
|
176
|
+
}
|
|
177
|
+
else if (v.verdict === 'FAIL') {
|
|
178
|
+
console.error(`\n❌ Your suite still fails after the rewrite (exit ${v.exitCode}). The selector rewrite landed, ` +
|
|
179
|
+
`but something else is red — a human is needed.`);
|
|
180
|
+
process.exitCode = 1;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
console.log(`\nℹ️ Re-run skipped: ${v.reason}`);
|
|
184
|
+
}
|
|
185
|
+
emitReport(outcome);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Re-run the user's suite to confirm the rewrite is green. Skipped — with a
|
|
189
|
+
* reason the report surfaces — when there is nothing to verify (`--no-verify`, no
|
|
190
|
+
* rewrite happened, or no `testCommand` to run).
|
|
191
|
+
*/
|
|
192
|
+
async function verifyAfterFix(testCommand, totalReplacements, noVerify) {
|
|
193
|
+
if (noVerify)
|
|
194
|
+
return { verdict: 'SKIPPED', reason: '--no-verify was passed.' };
|
|
195
|
+
if (totalReplacements === 0) {
|
|
196
|
+
return { verdict: 'SKIPPED', reason: 'no selector was rewritten, so the suite is unchanged.' };
|
|
197
|
+
}
|
|
198
|
+
if (!testCommand) {
|
|
199
|
+
return { verdict: 'SKIPPED', reason: 'no "testCommand" in .ia-qa/config.json to re-run.' };
|
|
200
|
+
}
|
|
201
|
+
console.log(`\n🔁 Re-running your suite to verify the fix:\n ▶ ${testCommand}\n`);
|
|
202
|
+
const code = await runTestCommand(testCommand, { capture: false });
|
|
203
|
+
return { verdict: code === 0 ? 'PASS' : 'FAIL', command: testCommand, exitCode: code };
|
|
145
204
|
}
|
|
146
|
-
function runTestCommand(command) {
|
|
205
|
+
function runTestCommand(command, opts = { capture: true }) {
|
|
147
206
|
return new Promise((resolve) => {
|
|
148
207
|
// Through the shell, because testCommand is whatever the user types in one
|
|
149
208
|
// ("npx playwright test --project=chromium"), and with stdio inherited — it
|
|
150
209
|
// is their suite's output, not ours to reformat.
|
|
210
|
+
//
|
|
211
|
+
// The capture env is set only for the mapping pass; the post-fix verification
|
|
212
|
+
// re-run omits it, so it checks the suite without overwriting the mapping it
|
|
213
|
+
// was just compared against.
|
|
214
|
+
const captureEnv = opts.capture ? { IAQA_CAPTURE: '1', CYPRESS_IAQA_CAPTURE: '1' } : {};
|
|
151
215
|
const child = (0, child_process_1.spawn)(command, {
|
|
152
216
|
shell: true,
|
|
153
217
|
stdio: 'inherit',
|
|
154
|
-
env: { ...process.env,
|
|
218
|
+
env: { ...process.env, ...captureEnv },
|
|
155
219
|
});
|
|
156
220
|
child.on('close', (code) => resolve(code ?? 1));
|
|
157
221
|
child.on('error', () => resolve(1));
|
package/dist/cli/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
|
package/dist/htmlReport.d.ts
CHANGED
|
@@ -1,11 +1,39 @@
|
|
|
1
1
|
import type { DirReport, Report } from './cli/diff';
|
|
2
2
|
import type { Usage } from './ingest';
|
|
3
|
+
/** One test file the deterministic `fix` actually rewrote, with the exact old→new per selector. */
|
|
4
|
+
export interface AppliedEdit {
|
|
5
|
+
/** Relativized by the caller — htmlReport stays free of fs/path. */
|
|
6
|
+
file: string;
|
|
7
|
+
replacements: Array<{
|
|
8
|
+
from: string;
|
|
9
|
+
to: string;
|
|
10
|
+
count: number;
|
|
11
|
+
lines?: number[];
|
|
12
|
+
}>;
|
|
13
|
+
}
|
|
14
|
+
/** The verdict of re-running the suite AFTER the rewrite — the answer to "does it pass now?". */
|
|
15
|
+
export interface VerifyResult {
|
|
16
|
+
verdict: 'PASS' | 'FAIL' | 'SKIPPED';
|
|
17
|
+
command?: string;
|
|
18
|
+
exitCode?: number;
|
|
19
|
+
/** Why the re-run did not happen, when verdict is SKIPPED. */
|
|
20
|
+
reason?: string;
|
|
21
|
+
}
|
|
22
|
+
/** What `ia-qa-heal run` actually did after the diff: the applied rewrites and the post-fix re-run. */
|
|
23
|
+
export interface FixOutcome {
|
|
24
|
+
totalReplacements: number;
|
|
25
|
+
filesEdited: number;
|
|
26
|
+
edits: AppliedEdit[];
|
|
27
|
+
verify?: VerifyResult;
|
|
28
|
+
}
|
|
3
29
|
export interface DriftReportMeta {
|
|
4
30
|
baselineName: string;
|
|
5
31
|
currentName: string;
|
|
6
32
|
filesDiffed: number;
|
|
7
33
|
usage?: Usage | null;
|
|
8
34
|
baseUrl?: string;
|
|
35
|
+
/** Present only for a post-fix report (`run`): the rewrites applied and whether the re-run passed. */
|
|
36
|
+
outcome?: FixOutcome;
|
|
9
37
|
}
|
|
10
38
|
export declare function renderDriftReportHtml(agg: DirReport, reports: Array<{
|
|
11
39
|
name: string;
|
package/dist/htmlReport.js
CHANGED
|
@@ -85,6 +85,118 @@ const COUNT_FIELDS = [
|
|
|
85
85
|
function plural(n, one) {
|
|
86
86
|
return `${n} ${one}${n === 1 ? '' : 's'}`;
|
|
87
87
|
}
|
|
88
|
+
function blockerCount(agg) {
|
|
89
|
+
return agg.totals.lost + agg.totals.ambiguous + agg.totals.rebound;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* The one line a non-technical reader (a PM on the PR, a manager) can act on —
|
|
93
|
+
* plain words, no "selector", sat next to the PASS/FIX/BLOCK badge. The detailed,
|
|
94
|
+
* jargon-carrying sentence stays in `run-summary` below it.
|
|
95
|
+
*/
|
|
96
|
+
function execHeadline(agg) {
|
|
97
|
+
if (agg.verdict === 'PASS')
|
|
98
|
+
return 'Everything still matches — your tests are safe to run.';
|
|
99
|
+
if (agg.verdict === 'FIX')
|
|
100
|
+
return `${plural(agg.totals.healable, 'automatic repair')} available — no manual edits.`;
|
|
101
|
+
return `${plural(blockerCount(agg), 'item')} need a person before your tests are safe.`;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* "What now?" — the exact next step, extracted from the summary so the action is
|
|
105
|
+
* never buried in prose. `diff` never writes, so this only ever *suggests* a
|
|
106
|
+
* command; it never claims a rewrite this run performed.
|
|
107
|
+
*/
|
|
108
|
+
function nextActionDrift(agg) {
|
|
109
|
+
const healable = agg.totals.healable;
|
|
110
|
+
let body;
|
|
111
|
+
if (agg.verdict === 'PASS') {
|
|
112
|
+
body = `Nothing to do. After an intended UI change, refresh the reference so future runs compare against the new normal: <code>ia-qa-heal baseline</code>.`;
|
|
113
|
+
}
|
|
114
|
+
else if (agg.verdict === 'FIX') {
|
|
115
|
+
body = `Run <code>ia-qa-heal fix</code> — it rewrites ${plural(healable, 'selector')} old→new directly in your test files. Nothing is committed; review the diff before you push.`;
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
const safe = healable > 0 ? ` <code>ia-qa-heal fix</code> can still heal the ${plural(healable, 'safe selector')} in the meantime.` : '';
|
|
119
|
+
body = `Review the broken items below, then fix or delete those tests by hand — automation can't guess a replacement it isn't sure of.${safe}`;
|
|
120
|
+
}
|
|
121
|
+
return `<div class="next-action"><span class="na-label">What now?</span>${body}</div>`;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* The post-fix banner: did the suite pass once the rewrite landed? This is the
|
|
125
|
+
* half a detection-only report could never show — the fix is only worth anything
|
|
126
|
+
* if the tests are green after it, so the re-run verdict leads.
|
|
127
|
+
*/
|
|
128
|
+
function verifyBanner(v) {
|
|
129
|
+
if (v.verdict === 'SKIPPED') {
|
|
130
|
+
return `<div class="next-action"><span class="na-label">Re-run skipped</span>${esc(v.reason || 'No test command configured.')} Run your suite to confirm the rewrite is green.</div>`;
|
|
131
|
+
}
|
|
132
|
+
const tone = v.verdict === 'PASS' ? 'pass' : 'fail';
|
|
133
|
+
const label = v.verdict === 'PASS' ? '✅ TESTS PASS' : '❌ STILL FAILING';
|
|
134
|
+
const msg = v.verdict === 'PASS'
|
|
135
|
+
? 'The suite was re-run after the rewrite and passed — the fix is verified green.'
|
|
136
|
+
: `The suite was re-run after the rewrite and still failed (exit ${esc(v.exitCode)}). The selector rewrite landed, but something else is red — a human is needed.`;
|
|
137
|
+
return `<div class="verify verify-${tone}"><div class="verify-head"><span class="verdict-inline verdict-${tone}">${label}</span><span>${esc(msg)}</span></div>${v.command ? `<div class="verify-cmd">re-ran <code>${esc(v.command)}</code></div>` : ''}</div>`;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* The applied-rewrite section of a post-fix report: exactly which selector became
|
|
141
|
+
* which, in which file and on which lines — the file-level before/after the diff's
|
|
142
|
+
* "healable" transitions only promised. Led by the re-run verdict.
|
|
143
|
+
*/
|
|
144
|
+
function outcomeSection(outcome) {
|
|
145
|
+
const verify = outcome.verify ? verifyBanner(outcome.verify) : '';
|
|
146
|
+
const editItems = outcome.edits
|
|
147
|
+
.map((e) => {
|
|
148
|
+
const reps = e.replacements
|
|
149
|
+
.map((r) => {
|
|
150
|
+
const lines = r.lines && r.lines.length > 0
|
|
151
|
+
? ` <span class="how">(line${r.lines.length === 1 ? '' : 's'} ${esc(r.lines.join(', '))})</span>`
|
|
152
|
+
: '';
|
|
153
|
+
return `<div class="drift-body"><span class="how">${esc(r.count)}×</span> <code class="old">${esc(r.from)}</code> <span class="arr">→</span> <code class="new">${esc(r.to)}</code>${lines}</div>`;
|
|
154
|
+
})
|
|
155
|
+
.join('');
|
|
156
|
+
return `<div class="drift-row"><div class="drift-head"><span class="badge badge-pass">✎ edited</span><span class="drift-label">${esc(e.file)}</span></div>${reps}</div>`;
|
|
157
|
+
})
|
|
158
|
+
.join('');
|
|
159
|
+
const summary = outcome.totalReplacements > 0
|
|
160
|
+
? `Rewrote ${plural(outcome.totalReplacements, 'selector reference')} across ${plural(outcome.filesEdited, 'test file')}, directly in your working tree. Nothing was committed — review with <code>git diff</code>.`
|
|
161
|
+
: `No test file referenced a healable selector — nothing was rewritten.`;
|
|
162
|
+
return `<section><h2>🔧 Fix applied</h2>
|
|
163
|
+
<p class="run-summary">${summary}</p>
|
|
164
|
+
${verify}
|
|
165
|
+
${editItems}
|
|
166
|
+
</section>`;
|
|
167
|
+
}
|
|
168
|
+
/** A plain-English gloss of what a drift status means for the reader's tests. */
|
|
169
|
+
function statusPlain(status) {
|
|
170
|
+
switch (status) {
|
|
171
|
+
case 'healable': return 'Still on the page under a new name or tag — the rewrite is exact, safe to apply.';
|
|
172
|
+
case 'renamed': return 'Only the visible label changed; the selector still finds it. Update the name your test asserts on.';
|
|
173
|
+
case 'ambiguous': return 'Several elements now match equally well — a person must choose which one is right.';
|
|
174
|
+
case 'lost': return 'No match on the page anymore — the test that uses it will fail until you fix or remove it.';
|
|
175
|
+
case 'added': return 'New on the page, not referenced by any test yet — informational only.';
|
|
176
|
+
default: return '';
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
const GLOSSARY = [
|
|
180
|
+
['Drift', 'The app changed, so a selector your test relies on no longer matches what is on the screen.'],
|
|
181
|
+
['PASS / FIX / BLOCK', 'Safe to run · automatic repairs are available · a human is needed before the tests are safe.'],
|
|
182
|
+
['Healable', 'The element is still there under a new name or tag; the fix is deterministic — old→new, no guessing.'],
|
|
183
|
+
['Renamed', 'Only the visible name changed; the underlying selector still works.'],
|
|
184
|
+
['Ambiguous', 'Several elements match equally well, so automation cannot safely pick one — a human decides.'],
|
|
185
|
+
['Lost', 'No match at all: the element is gone or unrecognizable. A human fixes or deletes the test.'],
|
|
186
|
+
['Rebound', 'The old selector now matches a <em>different</em> element — green today, but clicking the wrong thing.'],
|
|
187
|
+
['Baseline', 'The reference capture drift is measured against. Promote the current state with <code>ia-qa-heal baseline</code>.'],
|
|
188
|
+
];
|
|
189
|
+
const SUGGEST_GLOSSARY = [
|
|
190
|
+
['Suggestion', 'A replacement proposed by an AI model for a row deterministic healing gave up on — not applied until a human confirms.'],
|
|
191
|
+
['Confidence', "The model's self-reported certainty (0–100%). Below the minimum you set, the row is left for a human."],
|
|
192
|
+
];
|
|
193
|
+
/** Collapsible plain-language glossary — native <details>, zero JS, self-contained. */
|
|
194
|
+
function glossarySection(extra = []) {
|
|
195
|
+
const items = [...GLOSSARY, ...extra]
|
|
196
|
+
.map(([term, def]) => `<dt>${esc(term)}</dt><dd>${def}</dd>`)
|
|
197
|
+
.join('');
|
|
198
|
+
return `<details class="glossary"><summary>📖 What these words mean</summary><dl class="glossary-body">${items}</dl></details>`;
|
|
199
|
+
}
|
|
88
200
|
/**
|
|
89
201
|
* A plain-language sentence describing what this run checked and found, driven
|
|
90
202
|
* entirely by the same totals the console prints. `diff` detects — it never
|
|
@@ -107,17 +219,17 @@ function renderRunSummary(agg, reports, meta) {
|
|
|
107
219
|
}
|
|
108
220
|
const usageFiles = filesTouched.size > 0 ? `, touching ${plural(filesTouched.size, 'of your test file')}` : '';
|
|
109
221
|
const healable = agg.totals.healable;
|
|
110
|
-
const blockers = agg
|
|
222
|
+
const blockers = blockerCount(agg);
|
|
111
223
|
let body;
|
|
112
224
|
if (agg.verdict === 'PASS') {
|
|
113
|
-
body = `${scope}. No selector drifted
|
|
225
|
+
body = `${scope}. No selector drifted.`;
|
|
114
226
|
}
|
|
115
227
|
else if (agg.verdict === 'FIX') {
|
|
116
|
-
body = `${scope}. ${plural(healable, 'selector')} drifted but heal deterministically${usageFiles}
|
|
228
|
+
body = `${scope}. ${plural(healable, 'selector')} drifted but heal deterministically${usageFiles}.`;
|
|
117
229
|
}
|
|
118
230
|
else {
|
|
119
|
-
const blockPart = `${scope}. ${plural(blockers, 'selector')} broke with no safe match${usageFiles}
|
|
120
|
-
const healPart = healable > 0 ? ` ${plural(healable, 'other selector')} heal automatically once
|
|
231
|
+
const blockPart = `${scope}. ${plural(blockers, 'selector')} broke with no safe match${usageFiles}.`;
|
|
232
|
+
const healPart = healable > 0 ? ` ${plural(healable, 'other selector')} heal automatically once those are resolved.` : '';
|
|
121
233
|
body = blockPart + healPart;
|
|
122
234
|
}
|
|
123
235
|
return `<p class="run-summary">${body}</p>`;
|
|
@@ -152,6 +264,21 @@ const REPORT_CSS = `
|
|
|
152
264
|
.hero{border-left:3px solid var(--orange);display:flex;flex-direction:column;gap:14px}
|
|
153
265
|
.run-summary{color:var(--muted);font-size:13.5px;line-height:1.6;max-width:74ch;margin:-2px 0 2px}
|
|
154
266
|
.run-summary code{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--orange2)}
|
|
267
|
+
.headline{color:var(--text);font-weight:600}
|
|
268
|
+
.next-action{background:var(--surface2);border:1px solid var(--border);border-left:3px solid var(--orange);border-radius:10px;padding:12px 14px;font-size:13.5px;color:var(--text);line-height:1.6;max-width:74ch}
|
|
269
|
+
.next-action .na-label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--orange2);font-weight:700;margin-bottom:5px}
|
|
270
|
+
.next-action code{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--orange2)}
|
|
271
|
+
.plain{margin-top:7px;font-size:12.5px;color:var(--muted);line-height:1.5}
|
|
272
|
+
.plain::before{content:"\\2139\\fe0f "}
|
|
273
|
+
details.glossary{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:18px}
|
|
274
|
+
details.glossary>summary{cursor:pointer;list-style:none;padding:16px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
|
|
275
|
+
details.glossary>summary::-webkit-details-marker{display:none}
|
|
276
|
+
details.glossary>summary::before{content:"\\25b8 ";color:var(--orange2)}
|
|
277
|
+
details.glossary[open]>summary::before{content:"\\25be ";color:var(--orange2)}
|
|
278
|
+
.glossary-body{padding:0 20px 18px}
|
|
279
|
+
.glossary-body dt{font-weight:700;color:var(--orange2);font-size:12.5px;margin-top:13px}
|
|
280
|
+
.glossary-body dd{color:var(--muted);font-size:12.5px;line-height:1.55}
|
|
281
|
+
.glossary-body dd code{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--orange2)}
|
|
155
282
|
.verdict{display:inline-flex;align-items:center;gap:12px;font-size:15px;color:var(--muted)}
|
|
156
283
|
.verdict .big{font-size:26px;font-weight:800;letter-spacing:.04em;padding:8px 22px;border-radius:12px}
|
|
157
284
|
.verdict-pass .big,.verdict-pass{color:var(--pass)}.verdict-pass .big{background:#10b98118;border:1px solid #10b98155}
|
|
@@ -185,6 +312,12 @@ const REPORT_CSS = `
|
|
|
185
312
|
.drift-body .old{color:#fca5a5}.drift-body .new{color:#6ee7b7}.drift-body .arr{color:var(--orange2);font-weight:700;margin:0 4px}
|
|
186
313
|
.drift-body .how{color:var(--muted)}
|
|
187
314
|
.rebound{margin-top:7px;font-size:12px;color:#fca5a5;background:#ef444410;border:1px solid #ef444430;border-radius:7px;padding:6px 9px}
|
|
315
|
+
.verify{border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:13.5px;line-height:1.55}
|
|
316
|
+
.verify-pass{background:#10b98114;border:1px solid #10b98140;color:var(--text)}
|
|
317
|
+
.verify-fail{background:#ef444414;border:1px solid #ef444440;color:var(--text)}
|
|
318
|
+
.verify-head{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
|
|
319
|
+
.verify-cmd{margin-top:7px;font-size:12px;color:var(--muted)}
|
|
320
|
+
.verify-cmd code{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--orange2)}
|
|
188
321
|
.use{margin-left:auto;font-size:11px;padding:1px 8px;border-radius:99px;white-space:nowrap}
|
|
189
322
|
.use-hit{background:#8b5cf618;color:#c4b5fd;border:1px solid #8b5cf633}
|
|
190
323
|
.use-none{background:#3f3f4633;color:var(--muted);border:1px solid var(--border)}
|
|
@@ -267,9 +400,11 @@ function renderDriftReportHtml(agg, reports, meta) {
|
|
|
267
400
|
const rebound = r.rebound
|
|
268
401
|
? `<div class="rebound">⚠️ that selector now resolves to ${esc(r.role)} "${esc(r.reboundTo)}" — green today, clicking the wrong element.</div>`
|
|
269
402
|
: '';
|
|
403
|
+
const plain = statusPlain(r.status);
|
|
270
404
|
return `<div class="drift-row">
|
|
271
405
|
<div class="drift-head"><span class="badge badge-${m.tone}">${m.icon} ${esc(m.label)}</span><span class="drift-label">${esc(rowLabel(r))}</span>${usageNote(meta.usage, r.selector)}</div>
|
|
272
406
|
<div class="drift-body">${rowTransition(r)}</div>
|
|
407
|
+
${plain ? `<div class="plain">${plain}</div>` : ''}
|
|
273
408
|
${rebound}
|
|
274
409
|
</div>`;
|
|
275
410
|
})
|
|
@@ -281,9 +416,6 @@ function renderDriftReportHtml(agg, reports, meta) {
|
|
|
281
416
|
const stale = agg.staleExcluded?.length
|
|
282
417
|
? `<section class="note"><h2>⏸ Left out of the verdict</h2><p>${agg.staleExcluded.length} contract(s) were the same capture on both sides, so they cannot show drift: <code>${esc(agg.staleExcluded.join(', '))}</code>. Re-map to bring them back into the gate.</p></section>`
|
|
283
418
|
: '';
|
|
284
|
-
const verdictLine = agg.verdict === 'PASS' ? 'No drift — your suite is safe to run.'
|
|
285
|
-
: agg.verdict === 'FIX' ? 'Healable drift — deterministic old→new rewrites available via ia-qa-heal fix.'
|
|
286
|
-
: 'A selector broke with no safe match — a human must fix or delete the test before anything is rewritten.';
|
|
287
419
|
const runSummary = renderRunSummary(agg, reports, meta);
|
|
288
420
|
return `<!DOCTYPE html>
|
|
289
421
|
<html lang="en">
|
|
@@ -297,10 +429,12 @@ function renderDriftReportHtml(agg, reports, meta) {
|
|
|
297
429
|
${reportHeader('Selector drift report', `<code>${esc(meta.baselineName)}</code> → <code>${esc(meta.currentName)}</code> · ${meta.filesDiffed} file${meta.filesDiffed === 1 ? '' : 's'} diffed · Generated ${esc(generated)} · <code>@ia-qa/self-healing</code>`)}
|
|
298
430
|
<main><div class="wrap">
|
|
299
431
|
<section class="hero verdict-${tone}">
|
|
300
|
-
<div class="verdict verdict-${tone}"><span class="big">${esc(agg.verdict)}</span><span>${esc(
|
|
432
|
+
<div class="verdict verdict-${tone}"><span class="big">${esc(agg.verdict)}</span><span class="headline">${esc(execHeadline(agg))}</span></div>
|
|
301
433
|
${runSummary}
|
|
434
|
+
${meta.outcome ? '' : nextActionDrift(agg)}
|
|
302
435
|
<div class="stats">${statsHtml}</div>
|
|
303
436
|
</section>
|
|
437
|
+
${meta.outcome ? outcomeSection(meta.outcome) : ''}
|
|
304
438
|
${layoutHtml}
|
|
305
439
|
<section>
|
|
306
440
|
<h2>📄 Pages (${agg.pageReports.length})</h2>
|
|
@@ -308,6 +442,7 @@ ${reportHeader('Selector drift report', `<code>${esc(meta.baselineName)}</code>
|
|
|
308
442
|
</section>
|
|
309
443
|
${driftBlocks ? `<section><h2>🔍 Drifted selectors</h2>${driftBlocks}</section>` : ''}
|
|
310
444
|
${stale}
|
|
445
|
+
${glossarySection()}
|
|
311
446
|
</div></main>
|
|
312
447
|
${reportFooter()}
|
|
313
448
|
</body>
|
|
@@ -368,13 +503,15 @@ function renderSuggestReportHtml(suggestions, unresolved, meta) {
|
|
|
368
503
|
${reportHeader('AI heal suggestions', metaLine)}
|
|
369
504
|
<main><div class="wrap">
|
|
370
505
|
<section class="hero verdict-warn">
|
|
371
|
-
<div class="verdict verdict-warn"><span class="big">SUGGESTIONS</span><span>AI proposals for what deterministic healing gave up on — not applied.</span></div>
|
|
506
|
+
<div class="verdict verdict-warn"><span class="big">SUGGESTIONS</span><span class="headline">AI proposals for what deterministic healing gave up on — not applied.</span></div>
|
|
372
507
|
<p class="disclaimer">⚠️ These are <strong>AI suggestions, not changes.</strong> Nothing was written and no CI gate depends on them. A human confirms each one (locally, via <code>ia-qa-heal-ai suggest --apply</code>) — the deterministic <code>ia-qa-heal diff</code> / <code>fix</code> gate is untouched.</p>
|
|
508
|
+
<div class="next-action"><span class="na-label">What now?</span>Read each proposal below, then apply only the ones you trust, locally: <code>ia-qa-heal-ai suggest --apply</code>. Rows with no confident match stay for a human — automation won't touch them.</div>
|
|
373
509
|
<div class="stats">${statsHtml}</div>
|
|
374
510
|
</section>
|
|
375
511
|
${suggestions.length ? `<section><h2>💡 Proposed heals (${suggestions.length})</h2>${sugItems}</section>` : ''}
|
|
376
512
|
${unresolved.length ? `<section><h2>🚫 No confident match — for a human (${unresolved.length})</h2>${unresolvedItems}</section>` : ''}
|
|
377
513
|
${suggestions.length === 0 && unresolved.length === 0 ? `<section class="note"><p>Nothing for the AI to do — deterministic healing left no lost/ambiguous rows.</p></section>` : ''}
|
|
514
|
+
${glossarySection(SUGGEST_GLOSSARY)}
|
|
378
515
|
</div></main>
|
|
379
516
|
${reportFooter()}
|
|
380
517
|
</body>
|
package/dist/htmlReport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"htmlReport.js","sourceRoot":"","sources":["../src/htmlReport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"htmlReport.js","sourceRoot":"","sources":["../src/htmlReport.ts"],"names":[],"mappings":";;AAyaA,sDAiGC;AA6BD,0DAwEC;AA5mBD;;;;;;;;;;GAUG;AAEH,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,8BAA8B;IACtC,KAAK,EAAE,iCAAiC;IACxC,OAAO,EAAE,mDAAmD;CAC7D,CAAC;AAEF,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9B,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAID,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/D,CAAC;AAED,SAAS,UAAU,CAAC,MAAyB;IAC3C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QACxE,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACtE,KAAK,WAAW,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACzE,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC/D,KAAK,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC/D,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,IAAI,CAAC,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;IAC3C,IAAI,CAAC,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1C,OAAO,GAAG,CAAC,CAAC,IAAI,cAAc,CAAC;AACjC,CAAC;AAED,wEAAwE;AACxE,SAAS,aAAa,CAAC,CAAU;IAC/B,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC;QAClG,OAAO,qBAAqB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,wDAAwD,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,8BAA8B,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC;IAC3K,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,2BAA2B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,0DAA0D,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,0DAA0D,CAAC;IAClL,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO,qBAAqB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,wDAAwD,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,gDAAgD,CAAC;IAC3K,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,qBAAqB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,sEAAsE,CAAC;IACpH,CAAC;IACD,OAAO,qBAAqB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,SAAS,CAAC,KAA+B,EAAE,QAAgB;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,qDAAqD,CAAC;IAC/F,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,OAAO,kCAAkC,KAAK,CAAC,MAAM,OAAO,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAC3G,CAAC;AAED,MAAM,YAAY,GAAwE;IACxF,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;IACxC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;IAClD,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IACpD,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;IACtD,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5C,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;IAClD,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;CAC7C,CAAC;AAoCF,SAAS,MAAM,CAAC,CAAS,EAAE,GAAW;IACpC,OAAO,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,YAAY,CAAC,GAAc;IAClC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,GAAc;IAClC,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;QAAE,OAAO,wDAAwD,CAAC;IAC5F,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK;QAAE,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,+BAA+B,CAAC;IACpH,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,4CAA4C,CAAC;AAC1F,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,GAAc;IACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;IACrC,IAAI,IAAY,CAAC;IACjB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,GAAG,oJAAoJ,CAAC;IAC9J,CAAC;SAAM,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACjC,IAAI,GAAG,iDAAiD,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,8FAA8F,CAAC;IACrL,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,mDAAmD,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;QACzI,IAAI,GAAG,iIAAiI,IAAI,EAAE,CAAC;IACjJ,CAAC;IACD,OAAO,mEAAmE,IAAI,QAAQ,CAAC;AACzF,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,CAAe;IACnC,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,wEAAwE,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,6BAA6B,CAAC,wDAAwD,CAAC;IACxL,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IACpD,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACxE,MAAM,GAAG,GACP,CAAC,CAAC,OAAO,KAAK,MAAM;QAClB,CAAC,CAAC,gFAAgF;QAClF,CAAC,CAAC,iEAAiE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IACvK,OAAO,6BAA6B,IAAI,kEAAkE,IAAI,KAAK,KAAK,gBAAgB,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,wCAAwC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;AACjQ,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAAmB;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAElE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK;SAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY;aACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GACT,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC3B,CAAC,CAAC,2BAA2B,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU;gBACjG,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,6CAA6C,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,wDAAwD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,QAAQ,CAAC;QACpM,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,OAAO,0HAA0H,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC;IAC3K,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,OAAO,GACX,OAAO,CAAC,iBAAiB,GAAG,CAAC;QAC3B,CAAC,CAAC,WAAW,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,WAAW,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,6FAA6F;QACpN,CAAC,CAAC,sEAAsE,CAAC;IAE7E,OAAO;6BACoB,OAAO;MAC9B,MAAM;MACN,SAAS;aACF,CAAC;AACd,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAAC,MAAyB;IAC5C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC,CAAC,OAAO,kFAAkF,CAAC;QAC3G,KAAK,SAAS,CAAC,CAAC,OAAO,oGAAoG,CAAC;QAC5H,KAAK,WAAW,CAAC,CAAC,OAAO,oFAAoF,CAAC;QAC9G,KAAK,MAAM,CAAC,CAAC,OAAO,4FAA4F,CAAC;QACjH,KAAK,OAAO,CAAC,CAAC,OAAO,uEAAuE,CAAC;QAC7F,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,QAAQ,GAA4B;IACxC,CAAC,OAAO,EAAE,6FAA6F,CAAC;IACxG,CAAC,oBAAoB,EAAE,8FAA8F,CAAC;IACtH,CAAC,UAAU,EAAE,sGAAsG,CAAC;IACpH,CAAC,SAAS,EAAE,qEAAqE,CAAC;IAClF,CAAC,WAAW,EAAE,8FAA8F,CAAC;IAC7G,CAAC,MAAM,EAAE,4FAA4F,CAAC;IACtG,CAAC,SAAS,EAAE,wGAAwG,CAAC;IACrH,CAAC,UAAU,EAAE,mHAAmH,CAAC;CAClI,CAAC;AAEF,MAAM,gBAAgB,GAA4B;IAChD,CAAC,YAAY,EAAE,wHAAwH,CAAC;IACxI,CAAC,YAAY,EAAE,uGAAuG,CAAC;CACxH,CAAC;AAEF,uFAAuF;AACvF,SAAS,eAAe,CAAC,QAAiC,EAAE;IAC1D,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC;SAClC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;SAC5D,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,kGAAkG,KAAK,iBAAiB,CAAC;AAClI,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,GAAc,EACd,OAAmE,EACnE,IAAqB;IAErB,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;IAClC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;IACrC,MAAM,KAAK,GAAG,WAAW,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,wBAAwB,CAAC;IAE7G,MAAM,SAAS,GAAc,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAC1D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAC7C,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,KAAK;gBAAE,KAAK,MAAM,CAAC,IAAI,KAAK;oBAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GACd,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9F,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;IACrC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAEnC,IAAI,IAAY,CAAC;IACjB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,GAAG,GAAG,KAAK,wBAAwB,CAAC;IAC1C,CAAC;SAAM,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACjC,IAAI,GAAG,GAAG,KAAK,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,sCAAsC,UAAU,GAAG,CAAC;IACtG,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,GAAG,KAAK,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,4BAA4B,UAAU,GAAG,CAAC;QACrG,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,8CAA8C,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1H,IAAI,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED,OAAO,0BAA0B,IAAI,MAAM,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGlB,CAAC;AAEF,SAAS,YAAY,CAAC,KAAa,EAAE,QAAgB;IACnD,OAAO;;4BAEmB,KAAK,CAAC,IAAI;2BACX,KAAK,CAAC,KAAK;;;UAG5B,GAAG,CAAC,KAAK,CAAC;wBACI,QAAQ;;gBAEhB,CAAC;AACjB,CAAC;AAED,SAAS,YAAY;IACnB,OAAO;;eAEM,KAAK,CAAC,IAAI;eACV,KAAK,CAAC,KAAK;eACX,KAAK,CAAC,MAAM;eACZ,KAAK,CAAC,OAAO;;2GAE+E,KAAK,CAAC,IAAI;sBAC/F,CAAC;AACvB,CAAC;AAED,SAAgB,qBAAqB,CACnC,GAAc,EACd,OAAmE,EACnE,IAAqB;IAErB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAClG,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,OAAgB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAChF,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,GAAG,YAAY,CAAC;SAC3C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO,mBAAmB,GAAG,iCAAiC,CAAC,CAAC,IAAI,KAAK,KAAK,iCAAiC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;IAC5I,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW;SAC7B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,MAAM,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO;uCAC0B,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC;gCAC5B,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;2BACjB,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,QAAQ,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK;YACzG,CAAC;IACT,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa;QAClC,CAAC,CAAC;6CACuC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;UAC5F,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,sBAAsB,GAAG,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,CAAC,YAAY,CAAC,QAAQ,eAAe,GAAG,CAAC,YAAY,CAAC,IAAI,WAAW,GAAG,CAAC,YAAY,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE;;iBAE9K;QACb,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,WAAW,GAAG,OAAO;SACxB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI;aACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO;gBACvB,CAAC,CAAC,yDAAyD,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,oDAAoD;gBAC/I,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO;+DAC8C,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC;sCACzJ,aAAa,CAAC,CAAC,CAAC;cACxC,KAAK,CAAC,CAAC,CAAC,sBAAsB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE;cAChD,OAAO;iBACJ,CAAC;QACV,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,OAAO,yDAAyD,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC;IAClG,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,EAAE,MAAM;QACrC,CAAC,CAAC,8DAA8D,GAAG,CAAC,aAAa,CAAC,MAAM,sFAAsF,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,iEAAiE;QAChR,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAExD,OAAO;;;;;;SAMA,UAAU;;;EAGjB,YAAY,CAAC,uBAAuB,EAAE,SAAS,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,yBAAyB,IAAI,CAAC,WAAW,QAAQ,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,mCAAmC,GAAG,CAAC,SAAS,CAAC,iDAAiD,CAAC;;iCAEnQ,IAAI;kCACH,IAAI,uBAAuB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iCAAiC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;MAC9H,UAAU;MACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;yBACrB,SAAS;;IAE9B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;IAChD,UAAU;;oBAEM,GAAG,CAAC,WAAW,CAAC,MAAM;2FACiD,QAAQ;;IAE/F,WAAW,CAAC,CAAC,CAAC,yCAAyC,WAAW,YAAY,CAAC,CAAC,CAAC,EAAE;IACnF,KAAK;IACL,eAAe,EAAE;;EAEnB,YAAY,EAAE;;QAER,CAAC;AACT,CAAC;AAsBD;;;;;;GAMG;AACH,SAAgB,uBAAuB,CACrC,WAAsC,EACtC,UAA8B,EAC9B,IAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAClG,MAAM,KAAK,GAAG,CAAC,CAAmB,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;IAE9E,MAAM,QAAQ,GAAG,WAAW;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS;YACzB,CAAC,CAAC,qEAAqE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,oDAAoD;YAC3I,CAAC,CAAC,EAAE,CAAC;QACP,OAAO;;8CAEiC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;sCACrB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gDACH,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;2FACgC,GAAG,oBAAoB,GAAG;;oDAEjE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,wDAAwD,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,+DAA+D,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC;iCACrN,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;UACvC,OAAO;aACJ,CAAC;IACV,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,eAAe,GAAG,UAAU;SAC/B,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CAAC;oEACuD,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,oCAAoC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,8CAA8C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oDACvI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;aACtD,CACR;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,SAAS,GAAG;QAChB,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;QAC/D,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;QAC7D,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE;KAC/E;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iDAAiD,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,iCAAiC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;SAC/I,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,mCAAmC,GAAG,CAAC,SAAS,CAAC,iDAAiD,CAAC;IAEjL,OAAO;;;;;;SAMA,UAAU;;;EAGjB,YAAY,CAAC,qBAAqB,EAAE,QAAQ,CAAC;;;;;;yBAMtB,SAAS;;IAE9B,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,mCAAmC,WAAW,CAAC,MAAM,SAAS,QAAQ,YAAY,CAAC,CAAC,CAAC,EAAE;IAC5G,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,qDAAqD,UAAU,CAAC,MAAM,SAAS,eAAe,YAAY,CAAC,CAAC,CAAC,EAAE;IACnI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,sHAAsH,CAAC,CAAC,CAAC,EAAE;IACjL,eAAe,CAAC,gBAAgB,CAAC;;EAEnC,YAAY,EAAE;;QAER,CAAC;AACT,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ia-qa/self-healing",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.4",
|
|
4
4
|
"description": "Local-first self-healing for UI tests: a local MCP server + CLI that map your app's pages to a role/name/selector contract, diff selector drift (PASS/FIX/BLOCK), and apply deterministic fixes to Cypress/Playwright/Selenium tests. Runs on your machine — nothing leaves it.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"self-healing",
|