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.

I3793 — One copy control and one tab control ship to every surface

Make kit.js's dependency-free copy and tab controls the only ones: replace the Alpine copy button and Alpine tabs on the site with them, and ship them to /ui and the Cockpit as byte copies held by scripts/cockpit-assets --check, the way nav.js and theme.js already travel, so a code block, a command or a set of tabs behaves the same on every surface.

PŘIPRAVENO vlna 0 · p1 · profil implementation · bezpečné paralelně

Part of one-kit-on-every-surface — Code, charts, controls, embeds and shell blocks are one kit on every surface, declared in the design book and held there by a gate.

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

Cíl

Make kit.js's dependency-free copy and tab controls the only ones: replace the Alpine copy button and Alpine tabs on the site with them, and ship them to /ui and the Cockpit as byte copies held by scripts/cockpit-assets --check, the way nav.js and theme.js already travel, so a code block, a command or a set of tabs behaves the same on every surface.

Proč

On 2026-10-20 the site had two copy implementations (Alpine in components.html and terminal-run.html, data-copy in kit.js) and two tab implementations (Alpine and kit.js), each with its own interaction spec, and /ui and the Cockpit had no copy control at all; the owner asked for one kit everywhere.

Aktuální stav

copy-button.mjs and kit-copy.mjs specs; tabs.mjs and kit-tabs.mjs specs; no copy or tabs on /ui and the Cockpit.

Cílový stav

One copy and one tab implementation, one spec each, present on the site, /ui and the Cockpit; a second implementation planted fails the design check that names it.

Rozsah

  • site/kit.js
  • site/templates/components.html
  • site/templates/partials/terminal-run.html
  • share/ui
  • share/cockpit
  • scripts/cockpit-assets
  • scripts/lib/interaction-specs
  • scripts/ci/design-check

Závislosti

Žádné. Tento úkol je kořenem grafu.

Co na tom čeká

Kritéria přijetí

  • The site, /ui and the Cockpit load the same copy and tab code, byte-identical, checked by cockpit-assets --check
  • No Alpine copy or tab component remains on the site, and one interaction spec covers each control
  • A second copy or tab implementation planted on any surface fails a gate that names it

Validace

  • bin/majordomus plan validate
  • scripts/cockpit-assets --check
  • scripts/interaction-probe

Požadované důkazy

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

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