@ia-qa/self-healing 1.6.12 → 1.6.15

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 CHANGED
@@ -279,6 +279,10 @@ It opens a local page with three things the terminal cannot give you:
279
279
  | **Host pinning** | requests whose `Host` is not loopback are refused, which is the DNS-rebinding case a token alone does not cover |
280
280
  | **No new authority** | buttons spawn this package's own CLI with a fixed argv from an allowlist — never a string from the request. The console can do **nothing the CLI would refuse**: an `ambiguous` locator is never rewritten from here either |
281
281
 
282
+ **It draws the findings; it does not quote them.** The console runs `check --json` and renders the report — broken links with the pages that link to them, name collisions with their role and count, unnamed elements with their selector, each card carrying the sentence that says why it matters, in a full-width panel. It used to paste the verb's terminal output into a black `<pre>`: aligned monospace, folded behind "Technical detail", in the one surface whose premise is that its reader does not want a terminal. The raw output is still there, one click away, for whoever wants it. The network announcement survives the change — the panel states the host and the number of links requested, because a flow that leaves the machine says so whatever renders it.
283
+
284
+ **A decision it states, it offers.** A result that ends *"re-run with a lower `--concurrency`"* or *"use Repair when the plan looks right"* is a terminal instruction printed to the one person who is not in a terminal. Those sentences are buttons now, inside the result card you are already reading: a check that could not verify some links offers **Verify those links again, slowly** and **Check the app without requesting links**; a diff with repairs offers the preview, and the preview offers the repair. The slower rate is a *frozen argv in the allowlist*, not a number field the page posts — a discrete choice keeps "no new authority" literally true, where a settings field would have traded the invariant for one option.
285
+
282
286
  Nothing is uploaded, there is no telemetry and no external asset — the page is inline HTML/CSS/JS and every byte it shows came off your disk. It refuses to start under CI, where an interactive surface would just hang; use `--json`, `--junit` or the exit code there.
283
287
 
284
288
  **One request does leave, and it is stated rather than buried:** at startup, at most once a day, `ui` asks `registry.npmjs.org` whether a newer version of this package exists, so the banner can tell you. The desktop shortcut launches a fixed path on disk, and the person clicking it does not own a terminal — this is the only way they would ever find out. It sends a request for a public package's version number: nothing about your app, your tests, your contracts or your results, no telemetry, no identifier. The answer is cached in `~/.ia-qa/update-check.json`, the terminal names the host before the request happens, and **`ia-qa-heal ui --offline` removes it entirely**.
package/dist/checks.d.ts CHANGED
@@ -161,6 +161,8 @@ export interface CheckReport {
161
161
  check: string;
162
162
  why: string;
163
163
  }>;
164
+ /** True when the target answered 429 at least once — the run then slowed itself. */
165
+ throttled?: boolean;
164
166
  }
165
167
  export type CheckVerdict = 'PASS' | 'WARN' | 'FAIL';
166
168
  /**
@@ -176,6 +178,17 @@ export type CheckVerdict = 'PASS' | 'WARN' | 'FAIL';
176
178
  * `skipped` already guards against one level up.
177
179
  */
178
180
  export declare function checkVerdict(r: CheckReport): CheckVerdict;
181
+ /**
182
+ * The verdict in one line, and the counts beside it.
183
+ *
184
+ * Exported because two surfaces state it: the terminal's `summaryLine`, and the
185
+ * console — which runs `check --json` (it renders the findings itself and must
186
+ * not scrape prose) and so never sees the terminal's version. Two composers for
187
+ * one sentence is the CLI/MCP dispatch split in miniature: they drift, and the
188
+ * one nobody reads is the one that goes wrong.
189
+ */
190
+ export declare function checkHeadline(r: CheckReport, v: CheckVerdict): string;
191
+ export declare function checkCounts(r: CheckReport): string[];
179
192
  /** How much of the check ran: e.g. `{ ran: 2, total: 4 }`. */
180
193
  export declare const CHECK_NAMES: readonly ["dead links", "unnamed", "ambiguous", "orphans"];
181
194
  export declare function checkCoverage(r: CheckReport): {
package/dist/checks.js CHANGED
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
package/dist/cli/check.js CHANGED
@@ -337,6 +337,7 @@ async function runCheck(args) {
337
337
  linksSkipped,
338
338
  offline: offline || !baseUrl,
339
339
  skipped,
340
+ throttled,
340
341
  };
341
342
  const verdict = (0, checks_1.checkVerdict)(report);
342
343
  if (json) {
@@ -345,21 +346,11 @@ async function runCheck(args) {
345
346
  return;
346
347
  }
347
348
  printCheck(report, verdict, strict);
348
- // The unverified count rides on every headline it can appear in: a "3 dead"
349
- // that silently dropped 177 unanswered links is the same false confidence read
350
- // from the other side.
351
- const unverifiedSeg = unverifiedLinks.length > 0
352
- ? ` · ${unverifiedLinks.length} unverified${throttled ? ' (rate-limited)' : ''}`
353
- : '';
354
- (0, summary_1.summaryLine)('check', verdict === 'PASS' ? 'ok' : verdict === 'WARN' ? 'fix' : 'block', verdict === 'PASS'
355
- ? `PASS · ${report.pagesChecked} pages · ${(0, checks_1.checkCoverage)(report).ran}/${(0, checks_1.checkCoverage)(report).total} checks ran`
356
- : verdict === 'FAIL'
357
- ? `FAIL · ${deadLinks.length} dead link${deadLinks.length === 1 ? '' : 's'}${unverifiedSeg}`
358
- : `WARN · ${unnamed.length} unnamed · ${ambiguous.length} ambiguous · ${orphans.length} orphan${unverifiedSeg}`, [
359
- `${report.elements} elements`,
360
- report.offline ? 'offline' : `${linksChecked} links`,
361
- skipped.length > 0 ? `${skipped.length} check${skipped.length === 1 ? '' : 's'} skipped` : undefined,
362
- ]);
349
+ // Composed in checks.ts, where the console reads it from too the unverified
350
+ // count rides on every headline it can appear in, and a "3 dead" that silently
351
+ // dropped 177 unanswered links is the same false confidence read from the
352
+ // other side.
353
+ (0, summary_1.summaryLine)('check', verdict === 'PASS' ? 'ok' : verdict === 'WARN' ? 'fix' : 'block', (0, checks_1.checkHeadline)(report, verdict), (0, checks_1.checkCounts)(report));
363
354
  process.exitCode = verdict === 'FAIL' || (strict && verdict === 'WARN') ? 1 : 0;
364
355
  }
365
356
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/cli/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/cli/check.ts"],"names":[],"mappings":"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"}
package/dist/ui/page.js CHANGED
@@ -132,6 +132,35 @@ details.tech[open] summary::before{content:"▾ "}
132
132
  .cta{font-size:12.5px;padding:5px 12px;border-radius:99px;border:1px solid var(--orange);background:#f9731618;color:var(--orange2);font-weight:600;cursor:pointer}
133
133
  .cta:hover{background:#f9731630}
134
134
  #goto .cta{margin-top:10px}
135
+ #next{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
136
+ #next .cta{margin:0}
137
+ #next .cta:disabled{opacity:.5;cursor:progress}
138
+ .next-lede{flex-basis:100%;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
139
+ #empty-cta{margin-top:12px}
140
+ /* Findings, drawn rather than quoted. The console used to paste the verb's
141
+ terminal output into a black <pre>; three dead URLs and fifty name collisions
142
+ arrived as aligned monospace, in the one surface whose whole premise is that
143
+ its reader does not want a terminal. */
144
+ .fnd{margin-top:14px;border:1px solid var(--border);border-radius:11px;overflow:hidden;background:var(--surface)}
145
+ .fnd-h{display:flex;align-items:baseline;gap:9px;padding:10px 13px;background:var(--surface2);border-bottom:1px solid var(--border)}
146
+ .fnd-h b{font-size:13px}
147
+ .fnd-h .n{font-variant-numeric:tabular-nums;font-weight:800;font-size:15px}
148
+ .fnd-h .why{font-size:11.5px;color:var(--muted);margin-left:auto;text-align:right}
149
+ .fnd-b{padding:4px 13px 11px}
150
+ .frow{display:flex;gap:10px;align-items:baseline;padding:7px 0;border-bottom:1px solid var(--border)}
151
+ .frow:last-child{border-bottom:0}
152
+ .frow .badge{flex:none;font:600 10.5px/1.5 ui-monospace,Menlo,monospace;padding:1px 6px;border-radius:5px;border:1px solid}
153
+ .b-dead{color:#fda4af;border-color:#e11d4855;background:#e11d4814}
154
+ .b-wait{color:#fcd34d;border-color:#f59e0b55;background:#f59e0b14}
155
+ .b-role{color:var(--muted);border-color:var(--border);background:var(--surface2)}
156
+ .frow .main{min-width:0;flex:1}
157
+ .frow .main a,.frow .main .t{color:var(--text);font-size:12.5px;word-break:break-all;text-decoration:none}
158
+ .frow .main a:hover{color:var(--orange2);text-decoration:underline}
159
+ .frow .sub2{font-size:11.5px;color:var(--muted);margin-top:2px;word-break:break-word}
160
+ .frow code{font:11.5px/1.5 ui-monospace,Menlo,monospace;color:var(--muted);word-break:break-all}
161
+ .fnd-more{margin-top:9px;font-size:12px}
162
+ .fnd-note{font-size:11.5px;color:var(--muted);padding:9px 13px 0;line-height:1.5}
163
+ .net-line{margin-top:12px;font-size:11.5px;color:var(--muted);border:1px dashed var(--border);border-radius:8px;padding:8px 11px}
135
164
  .tile.clickable{cursor:pointer}
136
165
  .tile.clickable:hover{border-color:var(--orange)}
137
166
  .proj{display:grid;gap:7px}
@@ -195,6 +224,15 @@ td.n{text-align:right;font-variant-numeric:tabular-nums}
195
224
  </div>
196
225
  </section>
197
226
 
227
+ <!-- Full width, and not inside the Actions card: a finding is a URL, a CSS
228
+ selector or an accessible name, and the 260px sidebar broke every one of
229
+ them across three lines. The result card keeps the verdict and the
230
+ buttons; the evidence needs the page. -->
231
+ <section class="card" id="findingsCard" hidden>
232
+ <h2 id="findingsTitle">What the check found</h2>
233
+ <div id="findings"></div>
234
+ </section>
235
+
198
236
  <section class="card">
199
237
  <h2>Decisions waiting for you</h2>
200
238
  <div id="decisions"><div class="empty">loading…</div></div>
@@ -227,7 +265,12 @@ async function load() {
227
265
  render(await r.json());
228
266
  }
229
267
 
268
+ /* Kept so a result rendered after an action can name the app it is about — the
269
+ findings card states the host it requested, and that fact lives in state. */
270
+ let LAST_STATE = {};
271
+
230
272
  function render(s) {
273
+ LAST_STATE = s || {};
231
274
  renderPicker(s); renderUpdate(s); renderHead(s); renderVerdict(s); renderActions(s);
232
275
  renderDecisions(s); renderHistory(s); renderGoto(s); bindCopy();
233
276
  }
@@ -373,7 +416,16 @@ function row2(k, v) {
373
416
  function renderVerdict(s) {
374
417
  const v = s.verdict;
375
418
  if (!v) {
376
- q('#verdictCard').innerHTML = '<div class="empty">Nothing to compare yet. Capture the app, promote a baseline, then change something and re-capture.</div>';
419
+ /* The empty state names the next step; it may as well be the button.
420
+ And the step differs: a project with a capture but no reference does not
421
+ need to "capture the app" again — being told to is how you conclude the
422
+ thing did not register what you just did. */
423
+ const step = s.hasMapping
424
+ ? { text: 'You have a capture of the app, but no reference to compare it against yet. Promote this one, then re-capture after a change.', id: 'baseline', label: 'Accept the app as it is now', writes: true }
425
+ : { text: 'Nothing captured yet — the console has never looked at your app.', id: 'map', label: 'Look at the app', writes: false };
426
+ q('#verdictCard').innerHTML = '<div class="empty">' + esc(step.text)
427
+ + '<div id="empty-cta"><button class="cta">' + esc(step.label) + (step.writes ? ' ✎' : '') + '</button></div></div>';
428
+ q('#empty-cta').querySelector('button').onclick = () => runAction(step.id, step.label, step.writes);
377
429
  return;
378
430
  }
379
431
  const t = v.totals || {};
@@ -419,48 +471,180 @@ const TONE_WORD = {
419
471
  stopped: { icon: '🚧', word: "It couldn't run yet" },
420
472
  };
421
473
 
474
+ function setBusy(v) {
475
+ document.querySelectorAll('#actions button, #next button').forEach((x) => (x.disabled = v));
476
+ }
477
+
478
+ /* The follow-up buttons a result offers.
479
+
480
+ A result that ends "re-run with a lower --concurrency" or "use Repair when the
481
+ plan looks right" states a decision and hands back nothing to take it with.
482
+ These are that sentence, as the two or three things you can actually do —
483
+ rendered inside the card you are already reading, for the same reason #goto is.
484
+ The ids come from the server's allowlist; the page never builds one. */
485
+ function renderNext(next) {
486
+ const box = q('#next');
487
+ if (!box) return;
488
+ if (!next || !next.length) { box.innerHTML = ''; return; }
489
+ box.innerHTML = '<div class="next-lede">What you can do about it:</div>'
490
+ + next.map((n) =>
491
+ '<button class="cta" data-a="' + esc(n.id) + '"' + (n.writes ? ' data-w="1"' : '')
492
+ + ' title="' + esc(n.means) + '">' + esc(n.label) + (n.writes ? ' ✎' : '') + '</button>'
493
+ ).join('');
494
+ box.querySelectorAll('button').forEach((b) => {
495
+ b.onclick = () => runAction(b.dataset.a, b.textContent.replace(' ✎', '').trim(), b.dataset.w === '1');
496
+ });
497
+ }
498
+
499
+ /* One finding class, as a card. The note is the sentence that says why it
500
+ matters — the CLI prints one under each list, and dropping it in the UI would
501
+ leave a count with no reason to care. */
502
+ function fndCard(n, title, note, rows, cls) {
503
+ if (!n) return '';
504
+ const shown = rows.slice(0, 8).join('');
505
+ const rest = rows.length > 8
506
+ ? '<div class="fnd-more"><button class="cta" data-more="1">Show the ' + (rows.length - 8) + ' others</button>'
507
+ + '<div class="hidden-rows" hidden>' + rows.slice(8).join('') + '</div></div>'
508
+ : '';
509
+ return '<div class="fnd"><div class="fnd-h"><span class="n">' + esc(n) + '</span><b>' + esc(title) + '</b>'
510
+ + (cls ? '<span class="why">' + esc(cls) + '</span>' : '') + '</div>'
511
+ + '<div class="fnd-b">' + shown + rest + '</div>'
512
+ + (note ? '<div class="fnd-note" style="padding-bottom:11px">' + esc(note) + '</div>' : '')
513
+ + '</div>';
514
+ }
515
+
516
+ function frow(badge, badgeCls, main, sub) {
517
+ return '<div class="frow"><span class="badge ' + badgeCls + '">' + esc(badge) + '</span>'
518
+ + '<div class="main">' + main + (sub ? '<div class="sub2">' + sub + '</div>' : '') + '</div></div>';
519
+ }
520
+
521
+ /* "142 pages (shared shell — home, about…)" — a navbar repeated across the app
522
+ is one thing to fix, and printing it 142 times is how a report gets muted. */
523
+ function whereList(pages) {
524
+ if (!pages || !pages.length) return '';
525
+ if (pages.length <= 3) return pages.map(esc).join(', ');
526
+ return pages.length + ' pages · ' + pages.slice(0, 2).map(esc).join(', ') + '…';
527
+ }
528
+
529
+ function renderCheck(r, baseUrl) {
530
+ if (!r) return '';
531
+ const link = (u) => '<a href="' + esc(u) + '" target="_blank" rel="noreferrer noopener">' + esc(u) + '</a>';
532
+ const from = (f) => (f || []).slice(0, 3).map((x) => esc(x.page) + ' “' + esc(x.name || '?') + '”').join(', ')
533
+ + ((f || []).length > 3 ? ' +' + (f.length - 3) + ' more' : '');
534
+
535
+ /* Rule 1 of this project: a flow that leaves the machine says so without being
536
+ asked. The terminal prints that line before the first request; the console
537
+ cannot (the run is over when it answers), so it states it here instead of
538
+ losing it with the log it replaced. */
539
+ const net = r.offline
540
+ ? '<div class="net-line">🔒 No link was requested — this ran offline. Broken links are not covered by this result.</div>'
541
+ : '<div class="net-line">🔗 ' + esc(r.linksChecked) + ' distinct links requested on <b>' + esc(baseUrl || 'your app') + '</b>'
542
+ + ' — GET only, same site only, action URLs skipped.'
543
+ + (r.linksSkipped ? ' ' + esc(r.linksSkipped) + ' hrefs left alone.' : '')
544
+ + (r.throttled ? ' The site rate-limited this run, so it slowed to one request at a time.' : '')
545
+ + '</div>';
546
+
547
+ const found = r.deadLinks.length + (r.unverifiedLinks || []).length + r.ambiguous.length
548
+ + r.unnamed.length + r.orphans.length + (r.skipped || []).length;
549
+ /* A PASS keeps the card: what it requested and how much of it ran is the part
550
+ that makes the green readable, and dropping it would leave the strongest
551
+ result as the only one that explains nothing. */
552
+ if (!found) return net + '<div class="fnd-note" style="padding:12px 0 0">✅ Nothing found — by the checks that ran. '
553
+ + esc(r.pagesChecked) + ' pages, ' + esc(r.elements) + ' elements.</div>';
554
+
555
+ return net
556
+ + fndCard(r.deadLinks.length, 'broken links', 'The app itself answered with an error. This is a bug in the app, not in your tests — no repair here can fix it.',
557
+ r.deadLinks.map((d) => frow(d.status === null ? 'ERR' : 'HTTP ' + d.status, 'b-dead', link(d.url),
558
+ (d.error ? esc(d.error) + ' · ' : '') + 'linked from ' + from(d.from))), 'the app stated it')
559
+ + fndCard((r.unverifiedLinks || []).length, 'links not verified', 'No verdict on these — not working, not broken. The request was throttled or went unanswered, so this run simply does not know.',
560
+ (r.unverifiedLinks || []).map((u) => frow('WAIT', 'b-wait', link(u.url), esc(u.reason) + ' · linked from ' + from(u.from))), 'not checked')
561
+ + fndCard(r.ambiguous.length, 'names that cannot identify one element', 'Any getByRole for these is a coin flip — Playwright raises a strict-mode violation and the healer refuses. A data-testid on one of them settles it. This is drift that has not happened yet.',
562
+ r.ambiguous.map((a) => frow(a.role, 'b-role', '<span class="t">' + esc(a.count) + '× “' + esc(a.name) + '”</span>', whereList(a.pages))), 'locator coin flip')
563
+ + fndCard(r.unnamed.length, 'elements with no accessible name', 'A screen reader announces nothing, getByRole cannot target it, and healing cannot recover it after a move — identity here IS role + name.',
564
+ r.unnamed.map((u) => frow(u.role, 'b-role', '<code>' + esc(u.selector) + '</code>', whereList(u.pages))), 'unreachable by name')
565
+ + fndCard(r.orphans.length, 'pages nothing links to', 'Either the navigation lost a link, or they are deep-link-only. Worth one look.',
566
+ r.orphans.map((o) => frow('PAGE', 'b-role', '<span class="t">' + esc(o.page) + '</span>', esc(o.url))), 'unreachable')
567
+ + fndCard((r.skipped || []).length, 'checks that did NOT run', 'A verdict cannot speak for a question it never asked — whatever these would have found is invisible above, including in a PASS.',
568
+ (r.skipped || []).map((s) => frow('SKIP', 'b-wait', '<span class="t">' + esc(s.check) + '</span>', esc(s.why))), 'coverage gap');
569
+ }
570
+
571
+ function showFindings(report, label) {
572
+ const card = q('#findingsCard');
573
+ const box = q('#findings');
574
+ if (!card || !box) return;
575
+ const html = renderCheck(report, (LAST_STATE.project || {}).baseUrl);
576
+ card.hidden = !html;
577
+ box.innerHTML = html;
578
+ if (!html) return;
579
+ q('#findingsTitle').textContent = 'What “' + (label || 'the check') + '” found';
580
+ bindMore(box);
581
+ card.scrollIntoView({ behavior: 'smooth', block: 'start' });
582
+ }
583
+
584
+ /* The overflow rows of a findings card. Bound after render because the card is
585
+ built as a string; one handler per card, no delegation needed. */
586
+ function bindMore(scope) {
587
+ scope.querySelectorAll('button[data-more]').forEach((b) => {
588
+ b.onclick = () => {
589
+ const rows = b.parentElement.querySelector('.hidden-rows');
590
+ if (rows) rows.hidden = false;
591
+ b.remove();
592
+ };
593
+ });
594
+ }
595
+
596
+ async function runAction(id, label, writes) {
597
+ if (writes && !confirm('“' + label + '” changes files on your computer.\\n\\nNothing is committed — you can still review or undo it afterwards.\\n\\nGo ahead?')) return;
598
+
599
+ setBusy(true);
600
+ const box = q('#result');
601
+ box.innerHTML = '<div class="res res-info"><div class="res-run"><span class="spin"></span> Running “' + esc(label) + '” — this can take a moment.</div></div>';
602
+ // The findings card outlives the result card it came from, so it has to be
603
+ // cleared here: a check's dead links left standing under a fresh diff would
604
+ // read as that diff's finding.
605
+ showFindings(null);
606
+ try {
607
+ const r = await fetch('/api/run?t=' + T, {
608
+ method: 'POST', headers: { 'Content-Type': 'application/json' },
609
+ body: JSON.stringify({ action: id }),
610
+ });
611
+ const out = await r.json();
612
+ const t = TONE_WORD[out.tone] || TONE_WORD.info;
613
+ // A verb may name its own ⛔: "Needs you to decide" is right for a diff that
614
+ // refused to guess, and flatly wrong for a check that found 3 dead links —
615
+ // there is nothing to decide, and the decisions panel below says so.
616
+ const word = out.word || t.word;
617
+ // When it never ran, the action's "what this means" describes something
618
+ // that did not happen — so it is left out rather than contradicting the
619
+ // headline right under it.
620
+ const means = out.tone === 'stopped' ? '' : (out.means || '');
621
+ box.innerHTML =
622
+ '<div class="res res-' + esc(out.tone || 'info') + '">'
623
+ + '<div class="res-head">' + t.icon + ' <span>' + esc(word) + '</span></div>'
624
+ + '<div class="res-what"><b style="color:var(--text)">' + esc(out.headline || '') + '</b></div>'
625
+ + (means ? '<div class="res-what">' + esc(means) + '</div>' : '')
626
+ + '<div id="goto"></div>'
627
+ + '<div id="next"></div>'
628
+ + '<details class="tech"><summary>Technical detail</summary>'
629
+ + '<div class="log">' + esc(out.output || '') + '</div></details>'
630
+ + '</div>';
631
+ renderNext(out.next);
632
+ showFindings(out.check, label);
633
+ } catch (e) {
634
+ box.innerHTML = '<div class="res res-block"><div class="res-head">⛔ <span>It could not run</span></div>'
635
+ + '<div class="res-what">The console lost contact with the command. It is still running on your machine — check the terminal you started it from.</div></div>';
636
+ }
637
+ setBusy(false);
638
+ load();
639
+ }
640
+
422
641
  function renderActions(s) {
423
642
  q('#actions').innerHTML = (s.actions || []).map((a) =>
424
643
  '<button data-a="' + esc(a.id) + '" title="' + esc(a.means) + '"' + (a.writes ? ' class="w"' : '') + '>'
425
644
  + esc(a.label) + (a.writes ? ' ✎' : '') + '</button>'
426
645
  ).join('');
427
646
  document.querySelectorAll('#actions button').forEach((b) => {
428
- b.onclick = async () => {
429
- const id = b.dataset.a;
430
- const label = b.textContent.replace(' ✎', '').trim();
431
- const writes = b.classList.contains('w');
432
- if (writes && !confirm('“' + label + '” changes files on your computer.\\n\\nNothing is committed — you can still review or undo it afterwards.\\n\\nGo ahead?')) return;
433
-
434
- document.querySelectorAll('#actions button').forEach((x) => (x.disabled = true));
435
- const box = q('#result');
436
- box.innerHTML = '<div class="res res-info"><div class="res-run"><span class="spin"></span> Running “' + esc(label) + '” — this can take a moment.</div></div>';
437
- try {
438
- const r = await fetch('/api/run?t=' + T, {
439
- method: 'POST', headers: { 'Content-Type': 'application/json' },
440
- body: JSON.stringify({ action: id }),
441
- });
442
- const out = await r.json();
443
- const t = TONE_WORD[out.tone] || TONE_WORD.info;
444
- // When it never ran, the action's "what this means" describes something
445
- // that did not happen — so it is left out rather than contradicting the
446
- // headline right under it.
447
- const means = out.tone === 'stopped' ? '' : (out.means || '');
448
- box.innerHTML =
449
- '<div class="res res-' + esc(out.tone || 'info') + '">'
450
- + '<div class="res-head">' + t.icon + ' <span>' + esc(t.word) + '</span></div>'
451
- + '<div class="res-what"><b style="color:var(--text)">' + esc(out.headline || '') + '</b></div>'
452
- + (means ? '<div class="res-what">' + esc(means) + '</div>' : '')
453
- + '<div id="goto"></div>'
454
- + '<details class="tech"><summary>Technical detail</summary>'
455
- + '<div class="log">' + esc(out.output || '') + '</div></details>'
456
- + '</div>';
457
- } catch (e) {
458
- box.innerHTML = '<div class="res res-block"><div class="res-head">⛔ <span>It could not run</span></div>'
459
- + '<div class="res-what">The console lost contact with the command. It is still running on your machine — check the terminal you started it from.</div></div>';
460
- }
461
- document.querySelectorAll('#actions button').forEach((x) => (x.disabled = false));
462
- load();
463
- };
647
+ b.onclick = () => runAction(b.dataset.a, b.textContent.replace(' ✎', '').trim(), b.classList.contains('w'));
464
648
  });
465
649
  }
466
650
 
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/ui/page.ts"],"names":[],"mappings":";;AAoBA,8CAynBC;AA7oBD;;;;;;;;;;;;;;;;GAgBG;AACH,qCAAiD;AACjD,sCAAyD;AAEzD,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,yEAAyE;IACzE,EAAE;IACF,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,4DAA4D;IAC5D,EAAE;IACF,+EAA+E;IAC/E,2EAA2E;IAC3E,8EAA8E;IAC9E,oEAAoE;IACpE,EAAE;IACF,iFAAiF;IACjF,kFAAkF;IAClF,4EAA4E;IAC5E,MAAM,OAAO,GAAG,IAAA,uBAAc,GAAE,CAAC;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gHAuIuG,qBAAY,IAAI,OAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA4CxI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkaf,8BAAqB;;;;;;;;;;;;;;;;;;eAkBxB,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/ui/page.ts"],"names":[],"mappings":";;AAoBA,8CAizBC;AAr0BD;;;;;;;;;;;;;;;;GAgBG;AACH,qCAAiD;AACjD,sCAAyD;AAEzD,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,yEAAyE;IACzE,EAAE;IACF,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,4DAA4D;IAC5D,EAAE;IACF,+EAA+E;IAC/E,2EAA2E;IAC3E,8EAA8E;IAC9E,oEAAoE;IACpE,EAAE;IACF,iFAAiF;IACjF,kFAAkF;IAClF,4EAA4E;IAC5E,MAAM,OAAO,GAAG,IAAA,uBAAc,GAAE,CAAC;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gHAoKuG,qBAAY,IAAI,OAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAqDxI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAojBf,8BAAqB;;;;;;;;;;;;;;;;;;eAkBxB,CAAC;AAChB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type CheckReport, type CheckVerdict } from '../checks';
1
2
  /**
2
3
  * The local console — `ia-qa-heal ui`.
3
4
  *
@@ -57,6 +58,47 @@ export declare function actionCatalogue(): Array<{
57
58
  writes: boolean;
58
59
  means: string;
59
60
  }>;
61
+ /**
62
+ * The next step a result implies — as a button, not as a sentence.
63
+ *
64
+ * Every verb here ends by telling you what to do next, and until now it said so
65
+ * in prose the console printed and left there: "re-run with a lower
66
+ * --concurrency", "use Repair my test files when the plan looks right". A
67
+ * console that names a decision and offers no way to take it is a terminal with
68
+ * extra steps, and the person who opened it is precisely the one who will not go
69
+ * find the flag.
70
+ *
71
+ * Keyed on the verdict a verb reported — the parsed report for a check, the tone
72
+ * off its guaranteed-stable summary line for the rest. Never on scraped prose,
73
+ * and deliberately never on a regex over the JSON: `"unverifiedLinks": []` reads
74
+ * as the word "unverified" to anything looking at the text.
75
+ */
76
+ export declare function suggestNext(actionId: string, tone: string, check?: CheckReport | null): string[];
77
+ /**
78
+ * The check's findings, structured, so the console can *render* them.
79
+ *
80
+ * The first version of this shipped the verb's terminal output into a black
81
+ * `<pre>` and called it a console. It is a log viewer: three dead URLs, fifty
82
+ * name collisions and a hundred and thirty-two unnamed elements arrived as
83
+ * aligned monospace with the box-drawing still in it, folded behind "Technical
84
+ * detail" — in the one surface built for someone who does not want a terminal.
85
+ * `check --json` already emits the whole `CheckReport`; reading that is what
86
+ * lets the page draw the findings instead of quoting them, and it costs nothing
87
+ * (one run either way).
88
+ *
89
+ * `null` when the output is not a report — the verb refusing before it ran
90
+ * ("nothing to check") prints prose, and `interpret()` handles that case
91
+ * correctly. Sliced between the outer braces because a stray warning on stderr
92
+ * is captured into the same string.
93
+ */
94
+ export declare function parseCheckJson(output: string): (CheckReport & {
95
+ verdict: CheckVerdict;
96
+ }) | null;
97
+ export declare function readCheck(output: string): {
98
+ tone: string;
99
+ headline: string;
100
+ check: CheckReport;
101
+ } | null;
60
102
  /**
61
103
  * Loopback check on the `Host` header — the defence a token cannot provide.
62
104
  * An IPv6 literal arrives bracketed (`[::1]:7333`), which is why this is not a
package/dist/ui/server.js CHANGED
@@ -35,6 +35,9 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.HEARTBEAT_INTERVAL_MS = void 0;
37
37
  exports.actionCatalogue = actionCatalogue;
38
+ exports.suggestNext = suggestNext;
39
+ exports.parseCheckJson = parseCheckJson;
40
+ exports.readCheck = readCheck;
38
41
  exports.isLoopbackHost = isLoopbackHost;
39
42
  exports.setActiveProject = setActiveProject;
40
43
  exports.getActiveProject = getActiveProject;
@@ -52,6 +55,7 @@ const ingest_1 = require("../ingest");
52
55
  const evidence_1 = require("../evidence");
53
56
  const history_1 = require("../history");
54
57
  const update_1 = require("../update");
58
+ const checks_1 = require("../checks");
55
59
  const page_1 = require("./page");
56
60
  /**
57
61
  * When the browser goes, the server goes.
@@ -78,14 +82,6 @@ const HEARTBEAT_IDLE_MS = 45 * 1000;
78
82
  const BYE_DELAY_MS = 4000;
79
83
  /** How often the page says it is still there. Must stay well under `HEARTBEAT_IDLE_MS`. */
80
84
  exports.HEARTBEAT_INTERVAL_MS = 15000;
81
- /**
82
- * Verbs the console may run, with the exact argv each one gets.
83
- *
84
- * `label` and `means` are written for someone who has never opened a terminal:
85
- * the label says what it does to their app or their tests, and `means` says
86
- * what just happened to their files once it has run. Neither names a flag —
87
- * the flags are a constant here precisely so nobody has to know them.
88
- */
89
85
  const ACTIONS = {
90
86
  map: {
91
87
  argv: ['map', '--screenshots'],
@@ -112,10 +108,38 @@ const ACTIONS = {
112
108
  means: 'This looked for buttons and links your tests name but that no longer exist. It is advice, not a gate — nothing was modified.',
113
109
  },
114
110
  check: {
115
- argv: ['check'],
111
+ argv: ['check', '--json'],
116
112
  label: 'Is the app itself healthy?',
117
113
  writes: false,
118
114
  means: 'This looked for problems in the app, not in your tests: broken links, buttons with no name, two things sharing one name.',
115
+ blockedWord: 'Something is broken in the app',
116
+ },
117
+ /**
118
+ * The throttled-run answer, as a button.
119
+ *
120
+ * `check` after a large `map` walks into the target's own rate limiter and can
121
+ * only report what it could not verify; telling someone to "lower
122
+ * --concurrency" sends the one population this console exists for back to a
123
+ * terminal. The rate is a *fixed* argv here, not a number from the request:
124
+ * a discrete choice keeps rule 4 — no new authority, nothing user-controlled
125
+ * reaches `spawn` — literally true, and a free-form field would have bought
126
+ * one setting at the price of the invariant.
127
+ */
128
+ 'check-slow': {
129
+ argv: ['check', '--concurrency', '2', '--json'],
130
+ label: 'Verify those links again, slowly',
131
+ writes: false,
132
+ means: 'The same check, two requests at a time instead of six. Slower, but a site that rate-limits has time to answer — links it could not verify before should get a real verdict now.',
133
+ secondary: true,
134
+ blockedWord: 'Something is broken in the app',
135
+ },
136
+ 'check-offline': {
137
+ argv: ['check', '--offline', '--json'],
138
+ label: 'Check the app without requesting links',
139
+ writes: false,
140
+ means: 'The three checks that need no network ran; no link was requested at all. Broken links are NOT covered by this result — it says so itself, under "checks that did not run".',
141
+ secondary: true,
142
+ blockedWord: 'Something is broken in the app',
119
143
  },
120
144
  'fix-dry': {
121
145
  argv: ['fix', '--dry-run'],
@@ -137,7 +161,97 @@ const ACTIONS = {
137
161
  },
138
162
  };
139
163
  function actionCatalogue() {
140
- return Object.entries(ACTIONS).map(([id, a]) => ({ id, label: a.label, writes: a.writes, means: a.means }));
164
+ return Object.entries(ACTIONS)
165
+ .filter(([, a]) => !a.secondary)
166
+ .map(([id, a]) => ({ id, label: a.label, writes: a.writes, means: a.means }));
167
+ }
168
+ /**
169
+ * The next step a result implies — as a button, not as a sentence.
170
+ *
171
+ * Every verb here ends by telling you what to do next, and until now it said so
172
+ * in prose the console printed and left there: "re-run with a lower
173
+ * --concurrency", "use Repair my test files when the plan looks right". A
174
+ * console that names a decision and offers no way to take it is a terminal with
175
+ * extra steps, and the person who opened it is precisely the one who will not go
176
+ * find the flag.
177
+ *
178
+ * Keyed on the verdict a verb reported — the parsed report for a check, the tone
179
+ * off its guaranteed-stable summary line for the rest. Never on scraped prose,
180
+ * and deliberately never on a regex over the JSON: `"unverifiedLinks": []` reads
181
+ * as the word "unverified" to anything looking at the text.
182
+ */
183
+ function suggestNext(actionId, tone, check) {
184
+ const ids = [];
185
+ const add = (id) => {
186
+ if (id !== actionId && ACTIONS[id] && !ids.includes(id))
187
+ ids.push(id);
188
+ };
189
+ if (actionId.startsWith('check') && (check?.unverifiedLinks?.length ?? 0) > 0) {
190
+ // `--offline` requests nothing, so it can never produce an unverified link
191
+ // and this never loops back on itself.
192
+ add('check-slow');
193
+ add('check-offline');
194
+ }
195
+ if (actionId === 'diff' && tone === 'fix')
196
+ add('fix-dry');
197
+ if (actionId === 'fix-dry' && tone === 'fix')
198
+ add('fix-apply');
199
+ return ids;
200
+ }
201
+ /**
202
+ * The check's findings, structured, so the console can *render* them.
203
+ *
204
+ * The first version of this shipped the verb's terminal output into a black
205
+ * `<pre>` and called it a console. It is a log viewer: three dead URLs, fifty
206
+ * name collisions and a hundred and thirty-two unnamed elements arrived as
207
+ * aligned monospace with the box-drawing still in it, folded behind "Technical
208
+ * detail" — in the one surface built for someone who does not want a terminal.
209
+ * `check --json` already emits the whole `CheckReport`; reading that is what
210
+ * lets the page draw the findings instead of quoting them, and it costs nothing
211
+ * (one run either way).
212
+ *
213
+ * `null` when the output is not a report — the verb refusing before it ran
214
+ * ("nothing to check") prints prose, and `interpret()` handles that case
215
+ * correctly. Sliced between the outer braces because a stray warning on stderr
216
+ * is captured into the same string.
217
+ */
218
+ function parseCheckJson(output) {
219
+ const start = output.indexOf('{');
220
+ const end = output.lastIndexOf('}');
221
+ if (start === -1 || end <= start)
222
+ return null;
223
+ try {
224
+ const parsed = JSON.parse(output.slice(start, end + 1));
225
+ if (!parsed || typeof parsed !== 'object')
226
+ return null;
227
+ if (!Array.isArray(parsed.deadLinks) || typeof parsed.verdict !== 'string')
228
+ return null;
229
+ return parsed;
230
+ }
231
+ catch {
232
+ return null;
233
+ }
234
+ }
235
+ /**
236
+ * A check's verdict in the console's own vocabulary.
237
+ *
238
+ * Not the terminal's: `summaryLine` types a WARN as `fix` so the CI log shows
239
+ * 🔧, and the console's word for `fix` is "Repairs are ready" — which is false
240
+ * of fifty ambiguous names, since nothing here is repairable by this tool. The
241
+ * JSON path lets the verdict map straight across instead of being inferred from
242
+ * an icon chosen for a different reader.
243
+ */
244
+ const CHECK_TONE = { PASS: 'ok', WARN: 'warn', FAIL: 'block' };
245
+ function readCheck(output) {
246
+ const report = parseCheckJson(output);
247
+ if (!report)
248
+ return null;
249
+ const verdict = report.verdict;
250
+ return {
251
+ tone: CHECK_TONE[verdict] ?? 'info',
252
+ headline: [(0, checks_1.checkHeadline)(report, verdict), ...(0, checks_1.checkCounts)(report)].join(' · '),
253
+ check: report,
254
+ };
141
255
  }
142
256
  /**
143
257
  * Loopback check on the `Host` header — the defence a token cannot provide.
@@ -223,6 +337,9 @@ function buildState() {
223
337
  // Read off disk, never fetched here — the CLI refreshed it at launch.
224
338
  update: (0, update_1.updateNotice)(),
225
339
  hasBaseline: fs.existsSync(base),
340
+ // Told apart because the empty state's advice differs: with a capture and no
341
+ // reference the next step is to promote one, not to "capture the app" again.
342
+ hasMapping: fs.existsSync(current),
226
343
  history: { entries: history, summary: (0, history_1.summarize)(history) },
227
344
  actions: actionCatalogue(),
228
345
  };
@@ -518,7 +635,8 @@ async function handle(req, res, token, onBye) {
518
635
  send(res, 400, 'application/json', JSON.stringify({ error: 'bad request body' }));
519
636
  return;
520
637
  }
521
- const action = ACTIONS[String(body.action ?? '')];
638
+ const actionId = String(body.action ?? '');
639
+ const action = ACTIONS[actionId];
522
640
  if (!action) {
523
641
  send(res, 400, 'application/json', JSON.stringify({ error: 'unknown action' }));
524
642
  return;
@@ -527,8 +645,26 @@ async function handle(req, res, token, onBye) {
527
645
  // act on the project the user is looking at, and a global the parent
528
646
  // happens to hold is not a promise about a process it spawns.
529
647
  const result = await runCli([...action.argv, '--config', getActiveProject()]);
530
- const read = interpret(result.output, result.code);
531
- send(res, 200, 'application/json; charset=utf-8', JSON.stringify({ ...result, ...read, means: action.means }));
648
+ // A check reports as JSON so the page can draw it; everything else is read
649
+ // off its summary line. A check that refused before running prints prose, so
650
+ // the fallback is not an edge case — it is the no-mapping path.
651
+ const structured = actionId.startsWith('check') ? readCheck(result.output) : null;
652
+ const read = structured ?? interpret(result.output, result.code);
653
+ const next = suggestNext(actionId, read.tone, structured?.check).map((id) => ({
654
+ id,
655
+ label: ACTIONS[id].label,
656
+ means: ACTIONS[id].means,
657
+ writes: ACTIONS[id].writes,
658
+ }));
659
+ send(res, 200, 'application/json; charset=utf-8', JSON.stringify({
660
+ ...result,
661
+ ...read,
662
+ means: action.means,
663
+ next,
664
+ // Only when it actually blocked — otherwise the page would show a word
665
+ // for a verdict this result never reached.
666
+ word: read.tone === 'block' ? (action.blockedWord ?? null) : null,
667
+ }));
532
668
  return;
533
669
  }
534
670
  send(res, 404, 'text/plain; charset=utf-8', 'not found');
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ui/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ui/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ia-qa/self-healing",
3
- "version": "1.6.12",
3
+ "version": "1.6.15",
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 — your app, your tests and your results never leave it.",
5
5
  "keywords": [
6
6
  "self-healing",