Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I3240 — A pull request's browser audit visits the pages its change can reach, and a shared-layout change sweeps them all

Map each route to the templates, styles and scripts it renders from, and audit on a pull request only the routes whose inputs changed plus one representative per route class. Any change to the shared layout, CSS or JS escalates to the full sweep, which also runs on the combined top.

BLOKOVÁNO wave 6 · p2 · implementation profile · parallel safe

Part of a-change-is-judged-in-minutes — A change is derived in under a second and judged in minutes, and nothing that could have changed is skipped.

Blocked. This issue cannot start until I2350, I3242 are done. The status is derived from that, not declared.

Cíl

Map each route to the templates, styles and scripts it renders from, and audit on a pull request only the routes whose inputs changed plus one representative per route class. Any change to the shared layout, CSS or JS escalates to the full sweep, which also runs on the combined top.

Proč

c228#3: ui-audit was about 39 min on 2026-10-11; its bound is 3600 s in validate.yml. It extends milestone ci-critical-path. Proposed in ADR 0186 (A pull request's required verdict is the feedback lane, a gate whose inputs did not change is reused as inputs_unchanged, and the proof lane judges the combined top before it lands); ADR 0187 (Tests are selected by the impact of a change, derived from what each case declares it reads, and a change of unknown impact runs every case) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c228#3, chatgpt-majordomus:c019#4.

Aktuální stav

On master 707a04c, 2026-10-18 the ui job runs `scripts/ci/timed --bound 3600 ui-audit ... scripts/ui audit --report` over every page and width.

Cílový stav

The route-class map is derived from templates, not a hand list, and the selection is printed.

Rozsah

  • scripts/ui
  • scripts/lib/ui-routes.mjs
  • .github/workflows/validate.yml
  • test/cases/334_ui_audit_hears_uncaught_errors.sh
  • test/cases/349_a_step_reports_its_own_time.sh

Mimo rozsah

  • Lowering what a full sweep checks

Závislosti

Kritéria přijetí

  • A leaf-page change audits that page and its class representatives
  • A shared CSS change audits every page
  • An empty selection is a failure, never a pass
  • Validation runs 349_a_step_reports_its_own_time, 334_ui_audit_hears_uncaught_errors and the ui_audit_selection case this issue adds, in place of 3220_the_idd_loop_is_walked_in_a_browser

Validace

  • bash test/run.sh 349_a_step_reports_its_own_time 334_ui_audit_hears_uncaught_errors

Požadované důkazy

  • ui_audit_selection_case

Důkazy

Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.

Časová osa

zahájeno
—
ověřeno
—
dokončeno
—

Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.

Canonical record: .ai/repo/project/issues/I3240.yaml. Read it back with majordomus plan show I3240.

Prohledává názvy a popisy všech stránek, které tento web publikuje.