@ia-qa/self-healing 1.19.1 → 1.23.0

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 (50) hide show
  1. package/README.md +55 -0
  2. package/TUTORIAL.md +22 -0
  3. package/dist/aom.d.ts +20 -0
  4. package/dist/aom.js +25 -0
  5. package/dist/aom.js.map +1 -1
  6. package/dist/browser/resolve.js +4 -1
  7. package/dist/browser/resolve.js.map +1 -1
  8. package/dist/cli/args.js +1 -1
  9. package/dist/cli/args.js.map +1 -1
  10. package/dist/cli/diff.d.ts +62 -0
  11. package/dist/cli/diff.js +104 -4
  12. package/dist/cli/diff.js.map +1 -1
  13. package/dist/cli/explain.js +57 -12
  14. package/dist/cli/explain.js.map +1 -1
  15. package/dist/cli/fix.js +2 -1
  16. package/dist/cli/fix.js.map +1 -1
  17. package/dist/cli/index.js +6 -0
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/cli/map.d.ts +2 -0
  20. package/dist/cli/map.js +13 -0
  21. package/dist/cli/map.js.map +1 -1
  22. package/dist/cli-ai/index.js +2 -1
  23. package/dist/cli-ai/index.js.map +1 -1
  24. package/dist/explain.d.ts +78 -3
  25. package/dist/explain.js +87 -9
  26. package/dist/explain.js.map +1 -1
  27. package/dist/htmlReport.js +39 -0
  28. package/dist/htmlReport.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/ingest.d.ts +30 -0
  32. package/dist/ingest.js +46 -1
  33. package/dist/ingest.js.map +1 -1
  34. package/dist/junit.js +41 -0
  35. package/dist/junit.js.map +1 -1
  36. package/dist/mcp/server.js +11 -0
  37. package/dist/mcp/server.js.map +1 -1
  38. package/dist/redirectFix.d.ts +60 -0
  39. package/dist/redirectFix.js +73 -0
  40. package/dist/redirectFix.js.map +1 -0
  41. package/dist/resolution.d.ts +41 -4
  42. package/dist/resolution.js +66 -5
  43. package/dist/resolution.js.map +1 -1
  44. package/dist/routeDrift.d.ts +105 -0
  45. package/dist/routeDrift.js +96 -0
  46. package/dist/routeDrift.js.map +1 -0
  47. package/dist/ui/server.js +5 -6
  48. package/dist/ui/server.js.map +1 -1
  49. package/package.json +1 -1
  50. package/skills/ia-qa-heal/SKILL.md +22 -0
package/dist/junit.js CHANGED
@@ -84,6 +84,41 @@ function nameDriftSuite(findings) {
84
84
  `\n </testsuite>`;
85
85
  return { xml, failures: findings.length };
86
86
  }
87
+ /**
88
+ * Links whose destination moved.
89
+ *
90
+ * Only the ones the suite actually navigates to become **failures** — those tests are red
91
+ * right now. The rest pass with the change in `system-out`: an app is allowed to reorganise
92
+ * its URLs, and inflating a CI's failure count on that is how a gate gets switched off.
93
+ *
94
+ * It has to be here at all because the verdict can be BLOCK on a route finding, and a CI
95
+ * showing BLOCK with no failing testcase is a report nobody can act on — the same reason a
96
+ * page left out of the comparison is `skipped` rather than absent.
97
+ */
98
+ function routeDriftSuite(changes) {
99
+ if (!changes || changes.length === 0)
100
+ return null;
101
+ let failures = 0;
102
+ const cases = changes.map((c) => {
103
+ const where = c.page ? ` on ${c.page}` : '';
104
+ const msg = `Link "${c.name}"${where} now leads to ${c.to} (was ${c.from}).`;
105
+ if ((c.usedAt?.length ?? 0) > 0) {
106
+ failures++;
107
+ const sites = c.usedAt.map((s) => `${s.file}:${s.line}`).join('\n');
108
+ const full = msg +
109
+ ' Your suite navigates to the old route. Nothing is rewritten: only you can say whether' +
110
+ ' the new route is the same page renamed or a different page.';
111
+ const body = ` <failure message="${xmlEscape(full, true)}" type="route-drift">${xmlEscape(sites)}</failure>`;
112
+ return testcase('route-drift', `${c.name} → ${c.to}`, body);
113
+ }
114
+ const note = msg + ' No test navigates to the old route, so this does not fail the build.';
115
+ return testcase('route-drift', `${c.name} → ${c.to}`, ` <system-out>${xmlEscape(note)}</system-out>`);
116
+ });
117
+ const xml = ` <testsuite name="route-drift" tests="${changes.length}" failures="${failures}" errors="0" skipped="0">\n` +
118
+ cases.join('\n') +
119
+ `\n </testsuite>`;
120
+ return { xml, tests: changes.length, failures };
121
+ }
87
122
  /**
88
123
  * A page that could not be compared, rendered as a skipped testcase.
89
124
  *
@@ -150,6 +185,12 @@ function renderJUnitXml(agg, reports, meta = {}) {
150
185
  tests += nd.failures;
151
186
  failures += nd.failures;
152
187
  }
188
+ const rd = routeDriftSuite(agg.routeDrift ?? []);
189
+ if (rd) {
190
+ suites.push(rd.xml);
191
+ tests += rd.tests;
192
+ failures += rd.failures;
193
+ }
153
194
  const st = staleSuite(agg.staleExcluded ?? []);
154
195
  if (st) {
155
196
  suites.push(st);
package/dist/junit.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"junit.js","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"junit.js","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,7 @@ const markdown_1 = require("../markdown");
45
45
  const fixEngine_1 = require("../fixEngine");
46
46
  const sandbox_1 = require("./sandbox");
47
47
  const nameDrift_1 = require("../nameDrift");
48
+ const diff_1 = require("../cli/diff");
48
49
  const ingest_1 = require("../ingest");
49
50
  const config_1 = require("../config");
50
51
  const resolver_1 = require("../ai/resolver");
@@ -522,6 +523,11 @@ async function callTool(name, args) {
522
523
  // shallow capture reads a BLOCK whose every row is an artefact of how the two contracts
523
524
  // were taken, with nothing on screen to say so — the CLI/MCP split this project calls a
524
525
  // defect. Attached rather than refused, so the two doors also agree on the verdict.
526
+ // A link whose DESTINATION moved. Same door as the CLI, for the reason the name-drift
527
+ // escalation above states: an agent reading PASS here while the CLI reports a link that
528
+ // now leads somewhere else is the dispatch split in another costume. It gates only when
529
+ // the route inventory (usage.routes) proves the suite navigates to the old route.
530
+ (0, diff_1.attachRouteDrift)(report, before, after, (0, ingest_1.loadUsage)());
525
531
  const depths = (0, aom_1.depthMismatch)(before, after);
526
532
  if (depths)
527
533
  report.depthMismatch = { ...depths, why: (0, aom_1.depthMismatchMessage)(depths) };
@@ -545,6 +551,11 @@ async function callTool(name, args) {
545
551
  report.verdict = (0, nameDrift_1.escalateVerdict)(report.verdict, nameDrift);
546
552
  // `fix_tests` REWRITES files, so a depth mismatch matters more here than in `diff_mappings`:
547
553
  // the phantom rows it produces are rows this tool would edit a passing test to satisfy.
554
+ // A link whose DESTINATION moved. Same door as the CLI, for the reason the name-drift
555
+ // escalation above states: an agent reading PASS here while the CLI reports a link that
556
+ // now leads somewhere else is the dispatch split in another costume. It gates only when
557
+ // the route inventory (usage.routes) proves the suite navigates to the old route.
558
+ (0, diff_1.attachRouteDrift)(report, before, after, (0, ingest_1.loadUsage)());
548
559
  const fixDepths = (0, aom_1.depthMismatch)(before, after);
549
560
  if (fixDepths)
550
561
  report.depthMismatch = { ...fixDepths, why: (0, aom_1.depthMismatchMessage)(fixDepths) };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import type { PageTarget } from './config';
2
+ /**
3
+ * A declared page whose URL the app no longer serves, and where it sends the browser instead.
4
+ *
5
+ * `map` already knows this: `assertLanded` returns `redirectedTo` and it reaches
6
+ * `MapPageStat.landedOn`. Until now the remedy was a config edit by hand, repeated on every
7
+ * app that reorganises its URLs — and left undone, the contract for `/articles` describes
8
+ * `/resources` under the name `articles`, which is the wrong-identity class that a multi-host
9
+ * `/login` collision belongs to.
10
+ */
11
+ export interface RedirectFix {
12
+ /** The page name in `config.pages`. */
13
+ name: string;
14
+ /** The URL the config declares. */
15
+ from: string;
16
+ /** Where the browser actually landed. */
17
+ to: string;
18
+ }
19
+ /**
20
+ * A group of pages refused because they all landed on the same place.
21
+ *
22
+ * **This is the reason this module is not three lines.** A session that stopped holding sends
23
+ * *every* page to the login screen, and each one arrives here as a redirect. Applying that
24
+ * would rewrite the whole of `config.pages` to point at the login page — a config nobody could
25
+ * recover by hand, produced by the tool, on a run whose only real fault was an expired cookie.
26
+ *
27
+ * `LoginWallError` already catches the walled case and never yields a `landedOn`, so this is
28
+ * the second line of defence rather than the first: an app that answers a wall with a 302 to
29
+ * `/signin` rather than a login form, an outage routing everything to a status page, a
30
+ * maintenance banner. One page moving is a migration; several pages arriving at one place is a
31
+ * condition of the run.
32
+ *
33
+ * Refused as a *group*, never as the whole plan: a genuine single-page move in the same run
34
+ * still applies. And named, never dropped — a filter nobody can see is a blind spot.
35
+ */
36
+ export interface RedirectRefusal {
37
+ target: string;
38
+ pages: string[];
39
+ }
40
+ export interface RedirectPlan {
41
+ fixes: RedirectFix[];
42
+ refused: RedirectRefusal[];
43
+ }
44
+ export interface RedirectInput {
45
+ /** `page` and `landedOn` off `MapPageStat` — everything else is irrelevant here. */
46
+ stats: Array<{
47
+ page: string;
48
+ landedOn?: string;
49
+ }>;
50
+ pages: PageTarget[];
51
+ baseUrl?: string;
52
+ }
53
+ export declare function planRedirectFixes({ stats, pages, baseUrl }: RedirectInput): RedirectPlan;
54
+ /** The config's pages with the planned moves applied. Pure — the caller decides to write. */
55
+ export declare function applyRedirectFixes(pages: PageTarget[], fixes: RedirectFix[]): PageTarget[];
56
+ /**
57
+ * What the terminal says. One renderer, so the report and the write cannot describe different
58
+ * plans — the `checkHeadline` rule.
59
+ */
60
+ export declare function redirectPlanLines(plan: RedirectPlan, applied: boolean): string[];
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.planRedirectFixes = planRedirectFixes;
4
+ exports.applyRedirectFixes = applyRedirectFixes;
5
+ exports.redirectPlanLines = redirectPlanLines;
6
+ const routeDrift_1 = require("./routeDrift");
7
+ function planRedirectFixes({ stats, pages, baseUrl }) {
8
+ const declared = new Map(pages.map((p) => [p.name, p.url]));
9
+ const candidates = [];
10
+ for (const stat of stats) {
11
+ const to = stat.landedOn;
12
+ const from = declared.get(stat.page);
13
+ // A page the config does not declare has no entry to rewrite. A landing that resolves to
14
+ // the declared URL is the ordinary case (a trailing slash, an absolute form) and is not a
15
+ // move — folding it here is what keeps this silent on a healthy app.
16
+ if (!to || !from || (0, routeDrift_1.sameDestination)(from, to, baseUrl))
17
+ continue;
18
+ candidates.push({ name: stat.page, from, to });
19
+ }
20
+ const byTarget = new Map();
21
+ for (const c of candidates) {
22
+ const key = destinationKey(c.to, baseUrl);
23
+ byTarget.set(key, [...(byTarget.get(key) ?? []), c]);
24
+ }
25
+ const fixes = [];
26
+ const refused = [];
27
+ for (const group of byTarget.values()) {
28
+ if (group.length > 1)
29
+ refused.push({ target: group[0].to, pages: group.map((g) => g.name) });
30
+ else
31
+ fixes.push(group[0]);
32
+ }
33
+ return { fixes, refused };
34
+ }
35
+ function destinationKey(url, baseUrl) {
36
+ try {
37
+ const u = new URL(url, baseUrl || 'http://redirect-fix.invalid');
38
+ return `${u.host}${u.pathname.replace(/\/+$/, '')}${u.search}`;
39
+ }
40
+ catch {
41
+ return url;
42
+ }
43
+ }
44
+ /** The config's pages with the planned moves applied. Pure — the caller decides to write. */
45
+ function applyRedirectFixes(pages, fixes) {
46
+ const to = new Map(fixes.map((f) => [f.name, f.to]));
47
+ return pages.map((p) => (to.has(p.name) ? { ...p, url: to.get(p.name) } : p));
48
+ }
49
+ /**
50
+ * What the terminal says. One renderer, so the report and the write cannot describe different
51
+ * plans — the `checkHeadline` rule.
52
+ */
53
+ function redirectPlanLines(plan, applied) {
54
+ const out = [];
55
+ if (plan.fixes.length > 0) {
56
+ const n = plan.fixes.length;
57
+ out.push(applied
58
+ ? ` ↪️ ${n} declared page${n === 1 ? '' : 's'} updated in config.json:`
59
+ : ` ↪️ ${n} declared page${n === 1 ? ' is' : 's are'} no longer at the URL config.json declares:`);
60
+ for (const f of plan.fixes)
61
+ out.push(` ${f.name}: ${f.from} → ${f.to}`);
62
+ out.push(applied
63
+ ? ` Written to config.json. Re-run \`ia-qa-heal map\` so the contracts match the new URLs.`
64
+ : ` Run \`ia-qa-heal map --fix-redirects\` to write these, or edit config.json yourself.`);
65
+ }
66
+ for (const r of plan.refused) {
67
+ // Loud, because this is the shape of an expired session and the user's next move should
68
+ // be to check that rather than to reach for the flag again.
69
+ out.push(` ⚠️ ${r.pages.length} declared pages all landed on ${r.target} — not rewriting any of them.`, ` ${r.pages.join(', ')}`, ` Several pages arriving at one place is a condition of the run, not a migration:`, ` an expired session, a redirect to sign-in, an outage. Check \`ia-qa-heal session --check\`.`);
70
+ }
71
+ return out;
72
+ }
73
+ //# sourceMappingURL=redirectFix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redirectFix.js","sourceRoot":"","sources":["../src/redirectFix.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,21 @@ export interface Binding {
31
31
  selector?: string;
32
32
  /** How many elements matched. Only ever set on `ambiguous`. */
33
33
  count?: number;
34
+ /**
35
+ * The contract selectors an `ambiguous` string reached — every element it could have
36
+ * meant. Only ever set on `ambiguous`, and it is what makes that state *judgeable* later
37
+ * instead of merely countable.
38
+ *
39
+ * It was thrown away for a long time, and the cost was a whole class of missed drift: a
40
+ * selector that matched two contracted elements and now matches none had no recorded
41
+ * element to ask about, so `diffBindings` dropped it in silence and `explain` concluded
42
+ * the string had never reached anything. A count cannot answer "did what it pointed at
43
+ * survive"; a list of selectors can, because each one is probed again next capture.
44
+ *
45
+ * Absent on any file written before this field existed — which is read as *not recorded*,
46
+ * never as *nothing*: the transition is still reported, without naming candidates.
47
+ */
48
+ selectors?: string[];
34
49
  }
35
50
  export interface PageResolution {
36
51
  page: string;
@@ -152,8 +167,13 @@ export declare function countBindings(resolution: PageResolution | null): {
152
167
  total: number;
153
168
  };
154
169
  /**
155
- * What happened to a binding between two moments. Only selectors that were `bound` at
156
- * baseline are judged: a selector that never bound has nothing to have lost.
170
+ * What happened to a binding between two moments.
171
+ *
172
+ * A *steady* non-binding state is never judged — a selector that is ambiguous, or matches
173
+ * an uncontracted element, every single run has nothing to have lost, and reporting it
174
+ * would fire on every ordinary run. A **transition out of one** is the opposite fact and
175
+ * is reported: `outside` → `unresolved` as `dangling`, `ambiguous` → `unresolved` as
176
+ * `ambiguous`. Both are a human's call and neither is ever rewritten.
157
177
  */
158
178
  export type BindingDriftStatus = 'held' | 'broken' | 'rebound' | 'ambiguous' | 'gone' | 'dangling';
159
179
  export interface BindingDrift {
@@ -169,6 +189,17 @@ export interface BindingDrift {
169
189
  now?: string;
170
190
  /** The contract selector to rewrite to — `broken` only. */
171
191
  healedSelector?: string;
192
+ /**
193
+ * On `ambiguous`: the selectors the surviving candidates answer to now — every element
194
+ * the string could have meant and that is still on the page.
195
+ *
196
+ * Deliberately not `healedSelector`, even when there is exactly one. The field name is
197
+ * the promise: `healedSelector` is consumed by `computeLocatorRewrites`, and a baseline
198
+ * that never established *which* element the test meant cannot license an edit to that
199
+ * test. One surviving candidate makes a human's decision quick; it does not make it the
200
+ * tool's.
201
+ */
202
+ candidates?: string[];
172
203
  }
173
204
  /**
174
205
  * Compare two moments of one page's bindings.
@@ -177,8 +208,14 @@ export interface BindingDrift {
177
208
  * selector?" — it is the contract diff's own conclusion, passed in rather than recomputed,
178
209
  * so a binding verdict can never disagree with the element verdict beside it.
179
210
  *
180
- * Returns `null` for everything that is not drift, which is most of it: an intact binding,
181
- * an `outside` match, a selector that never bound. Silence is the point (SPEC §2.1).
211
+ * Emits nothing for everything that is not drift, which is most of it: an intact binding, a
212
+ * steady `outside` or `ambiguous` match, a selector that reached nothing at either moment.
213
+ * Silence is the point (SPEC §2.1).
214
+ *
215
+ * This sentence used to read "a selector that never bound", and that wording is what the
216
+ * defect was made of: it collapsed *never worked* with *stopped working*, which is the one
217
+ * distinction the whole function exists to draw. A selector that was `ambiguous` and now
218
+ * resolves to nothing never bound in the strict sense, and it is drift.
182
219
  */
183
220
  export declare function diffBindings(before: PageResolution | null, after: PageResolution | null, elementNow: (contractSelector: string) => {
184
221
  present: boolean;
@@ -47,6 +47,16 @@ exports.diffBindings = diffBindings;
47
47
  const fs = __importStar(require("fs"));
48
48
  const path = __importStar(require("path"));
49
49
  const config_1 = require("./config");
50
+ /**
51
+ * The candidate lists of two observations, unioned — and omitted entirely when neither
52
+ * recorded one, so a file written before the field existed never grows an empty list that
53
+ * would read as "it reached nothing under contract".
54
+ */
55
+ function ambiguousCandidates(a, b) {
56
+ const merged = [...(a.selectors ?? []), ...(b.selectors ?? [])];
57
+ const seen = merged.filter((s, i) => merged.indexOf(s) === i);
58
+ return seen.length > 0 ? { selectors: seen } : {};
59
+ }
50
60
  /**
51
61
  * Combine two observations of the same selector, on the same page, at the same moment.
52
62
  *
@@ -69,7 +79,15 @@ function mergeBinding(a, b) {
69
79
  if (a.status === 'invalid' || b.status === 'invalid')
70
80
  return { status: 'invalid' };
71
81
  if (a.status === 'ambiguous' || b.status === 'ambiguous') {
72
- return { status: 'ambiguous', count: Math.max(a.count ?? 0, b.count ?? 0) || undefined };
82
+ return {
83
+ status: 'ambiguous',
84
+ count: Math.max(a.count ?? 0, b.count ?? 0) || undefined,
85
+ // Candidates widen while everything else here restricts, and that is not an
86
+ // exception to the rule — it is the rule. The list says *what this string could have
87
+ // meant*, so a shorter one claims more. Dropping a candidate is how a later capture
88
+ // comes to call a repair unique when it is not.
89
+ ...ambiguousCandidates(a, b),
90
+ };
73
91
  }
74
92
  if (a.status === 'unresolved')
75
93
  return b;
@@ -79,13 +97,17 @@ function mergeBinding(a, b) {
79
97
  // observations that name *different kinds* of thing are a divergence too: the string
80
98
  // reaches more than the one element a rewrite would be built for.
81
99
  const names = (x) => x.status === 'bound' || x.status === 'anchored';
100
+ const named = [a, b].filter(names).map((x) => x.selector).filter(Boolean);
101
+ const candidates = named.length > 0 ? { selectors: named.filter((s, i) => named.indexOf(s) === i) } : {};
82
102
  if (names(a) && names(b)) {
83
- return a.selector === b.selector && a.status === b.status ? a : { status: 'ambiguous' };
103
+ // Ambiguity manufactured here knows exactly which elements disagreed, and saying so
104
+ // costs nothing: it is the same list the browser would have recorded.
105
+ return a.selector === b.selector && a.status === b.status ? a : { status: 'ambiguous', ...candidates };
84
106
  }
85
107
  // One binds, the other matched something uncontracted: the string reaches more than the
86
108
  // element we would rewrite for, so it is not safe to rewrite at all.
87
109
  if (names(a) || names(b))
88
- return { status: 'ambiguous' };
110
+ return { status: 'ambiguous', ...candidates };
89
111
  return { status: 'outside' };
90
112
  }
91
113
  /** Merge a fresh observation into an existing page resolution, binding by binding. */
@@ -319,8 +341,14 @@ function anchoredDrift(selector, anchor, now, after) {
319
341
  * selector?" — it is the contract diff's own conclusion, passed in rather than recomputed,
320
342
  * so a binding verdict can never disagree with the element verdict beside it.
321
343
  *
322
- * Returns `null` for everything that is not drift, which is most of it: an intact binding,
323
- * an `outside` match, a selector that never bound. Silence is the point (SPEC §2.1).
344
+ * Emits nothing for everything that is not drift, which is most of it: an intact binding, a
345
+ * steady `outside` or `ambiguous` match, a selector that reached nothing at either moment.
346
+ * Silence is the point (SPEC §2.1).
347
+ *
348
+ * This sentence used to read "a selector that never bound", and that wording is what the
349
+ * defect was made of: it collapsed *never worked* with *stopped working*, which is the one
350
+ * distinction the whole function exists to draw. A selector that was `ambiguous` and now
351
+ * resolves to nothing never bound in the strict sense, and it is drift.
324
352
  */
325
353
  function diffBindings(before, after, elementNow) {
326
354
  if (!before || !after)
@@ -351,6 +379,39 @@ function diffBindings(before, after, elementNow) {
351
379
  out.push({ selector, status: 'dangling' });
352
380
  continue;
353
381
  }
382
+ // `ambiguous` → `unresolved`: the string used to reach several contracted elements and
383
+ // now reaches none. The test writing it is red right now.
384
+ //
385
+ // This was silent, and the silence was inherited rather than chosen. It came from the
386
+ // line below, whose rule — only a `bound` baseline is judged — is right about the
387
+ // *steady* state: a selector that is ambiguous every run has nothing to have lost, and
388
+ // reporting it would fire on every ordinary run. The transition is the opposite fact,
389
+ // and the branch immediately above already admits its twin (`outside` → `unresolved`)
390
+ // for exactly this reason. Measured cost of the omission: a cart link migrated from
391
+ // `/index.php/cart` to `/cart` across every page of an app, the suite red on it, and
392
+ // the tool reported no drift at all.
393
+ //
394
+ // What can be said is again bounded by what was recorded. With candidates on file, the
395
+ // question "did the elements survive" is answerable per candidate and the surviving
396
+ // ones are named — as a **human's** call, never a rewrite: whichever of the N elements
397
+ // the test meant is exactly what an ambiguous binding failed to establish, so a repair
398
+ // here would be a coin flip the tool dressed as a fix. `ambiguous` never reaches
399
+ // `computeLocatorRewrites`, and this row keeps that property.
400
+ if (was.status === 'ambiguous') {
401
+ if (now.status === 'unresolved') {
402
+ const survivors = (was.selectors ?? [])
403
+ .map((cs) => elementNow(cs))
404
+ .filter((e) => !!e && e.present)
405
+ .map((e) => e.selector);
406
+ const unique = survivors.filter((s, i) => survivors.indexOf(s) === i);
407
+ out.push({
408
+ selector,
409
+ status: 'ambiguous',
410
+ ...(unique.length > 0 ? { candidates: unique } : {}),
411
+ });
412
+ }
413
+ continue;
414
+ }
354
415
  if ((was.status !== 'bound' && was.status !== 'anchored') || !was.selector)
355
416
  continue;
356
417
  if (was.status === 'anchored') {
@@ -1 +1 @@
1
- {"version":3,"file":"resolution.js","sourceRoot":"","sources":["../src/resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolution.js","sourceRoot":"","sources":["../src/resolution.ts"],"names":[],"mappings":"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"}