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.

I3227 — A UI link a reader is about to follow is fetched ahead when the route is cheap and the connection allows it

First record from I3226's Server-Timing the document-fetch cost a prefetch would remove on a /ui navigation (documents are sent Cache-Control: no-cache, panels load as fragments) and the cockpit::csp directives a prefetch must satisfy; only if that cost is measured, prefetch on hover or focus the /ui links whose navigation carries it, skipping Save-Data and slow connections, with the prefetch list derived from the rendered links and the measurement, not kept. With no measured cost the issue closes as not needed and the criterion is withdrawn.

BLOKOVÁNO vlna 1 · p3 · profil implementation · bezpečné paralelně

Part of the-ui-runs-and-explains — The UI runs any capability and explains what needs the owner, whose version it shows and where its time went.

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

Cíl

First record from I3226's Server-Timing the document-fetch cost a prefetch would remove on a /ui navigation (documents are sent Cache-Control: no-cache, panels load as fragments) and the cockpit::csp directives a prefetch must satisfy; only if that cost is measured, prefetch on hover or focus the /ui links whose navigation carries it, skipping Save-Data and slow connections, with the prefetch list derived from the rendered links and the measurement, not kept. With no measured cost the issue closes as not needed and the criterion is withdrawn.

Proč

Owner, 2026-10-11: caching, preloading, URLs and a router. Prefetching a 50 s panel would harm, so it waits for I3226's measurement. Every system.http.ui.* screen is already under its 100 ms budget (I2489), so 'under its budget' alone separates nothing; ADR 0207 (proposed) keeps a mechanism without a measured problem open. Sources: chatgpt-majordomus:c223#2.

Aktuální stav

No prefetch in share/ui; panels already load as fragments after first paint.

Cílový stav

Either share/ui/ui.js prefetches only the links whose measured navigation cost a prefetch removes, proven by a browser case, or the issue is closed as not needed with the measurement recorded and the criterion withdrawn.

Rozsah

  • share/ui/ui.js
  • apps/majordomus-cli/src/ui/view.rs
  • apps/majordomus-cli/src/ui/mod.rs
  • .ai/repo/project/intents
  • .ai/repo/benchmarks/rust/policy.yaml
  • .ai/repo/benchmarks/rust/baseline.macos-aarch64-debug.json
  • .ai/repo/project/issues
  • apps/majordomus-cli/src/cockpit/mod.rs

Mimo rozsah

  • Service workers
  • Prefetch on the published site
  • Prefetching /ui/panels fragments

Závislosti

Kritéria přijetí

  • Repeat navigation to a prefetched screen is measured faster than without
  • No prefetch is issued under Save-Data
  • Before any prefetch code, the issue records I3226's Server-Timing measurement of the navigation cost a prefetch removes (a /ui document under Cache-Control: no-cache, panels excluded) and the cockpit::csp directives it must satisfy; if none is measured the issue closes as not needed and the criterion a-cheap-link-is-fetched-ahead is withdrawn from the intent
  • The proof is a browser case under test/cases numbered by scripts/case-numbers next that observes hover, focus and Save-Data; the PR rewrites the criterion to `evidence: test` with that case's path

Validace

  • majordomus bench --check
  • scripts/ui audit

Požadované důkazy

  • browser case under test/cases observing hover, focus and Save-Data

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/I3227.yaml. Read it back with majordomus plan show I3227.

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