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.

I3229 — Every version badge says whose version it is and how it stands to the latest release

Label the navbar's version badge on the site (the release it published), on /ui and /cockpit (the executable serving the page) and on the snapshots (the commit read), and when the executable differs from the latest published (offered) release say 'ahead of' or 'behind' it, from distribution.releases and the compiled version, never release.version, through new slots of the shared navbar.

PŘIPRAVENO 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.

Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I3229 bude přijato.

Cíl

Label the navbar's version badge on the site (the release it published), on /ui and /cockpit (the executable serving the page) and on the snapshots (the commit read), and when the executable differs from the latest published (offered) release say 'ahead of' or 'behind' it, from distribution.releases and the compiled version, never release.version, through new slots of the shared navbar.

Proč

On 2026-10-12 the homepage showed v0.20.0 while /ui declared executable v0.22.0 and the latest release was v0.21.0, with nothing telling a visitor why (dated observation). Sources: chatgpt-majordomus:c235#2.

Aktuální stav

apps/majordomus-cli/src/ui/navbar.rs fills the badge with the executable's version; site/templates/partials/navbar.html names the release the site published; rule the-site-offers-the-release-it-published holds homepage, installer and release equal; neither badge names its kind.

Cílový stav

The badge's accessible name and title say which version it is; the comparison is derived.

Rozsah

  • apps/majordomus-cli/src/ui/navbar.rs
  • site/templates/partials/navbar.html
  • scripts/ui
  • scripts/lib/ui-navbar.mjs
  • apps/majordomus-cli/src/ui/navbar.html
  • apps/majordomus-cli/src/cockpit/view.rs
  • apps/majordomus-cli/src/web/report/snapshot.rs
  • docs/MAJORDOMUS_UI.md
  • .ai/repo/project/intents

Mimo rozsah

  • Changing which version each surface shows

Závislosti

Kritéria přijetí

  • Each surface's badge names its kind
  • An executable ahead of the latest release says so on /ui
  • The labelled badge and its ahead/behind phrase fit the bar at 390 px with no horizontal scroll (scripts/ui audit at phone width)
  • docs/MAJORDOMUS_UI.md says whose version each surface's badge shows
  • The kind label and the ahead/behind phrase are new slots in site/templates/partials/navbar.html and ui-navbar.mjs fragmentOf; ui/navbar.html is regenerated and `scripts/ui navbar` passes
  • The comparison reads distribution.releases (records only) and the compiled version, never release.version, and every /ui screen keeps its 100 ms warm p95 budget
  • 'Latest release' means the published (offered) release, as the site's badge does; the data-release attribute no longer labels the executable's version as a release
  • The PR adds apps/majordomus-cli/tests/ui_version_badge.rs and rewrites criterion a-version-says-whose-it-is to `evidence: test` with that ref

Validace

  • scripts/ui navbar
  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib ui::navbar
  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test ui_version_badge
  • majordomus bench --check

Požadované důkazy

  • apps/majordomus-cli/tests/ui_version_badge.rs

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

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