Skip to content

I3794 — The interaction probe drives the controls of /ui and the Cockpit as it drives the site's

Point scripts/interaction-probe at the pages the executable serves (/ui and /cockpit) as well as the built site, so every control claimed by an interaction spec is driven on every surface it appears on, not only on the site.

BLOCKED wave 1 · p1 · implementation profile · parallel safe

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.

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

Objective

Point scripts/interaction-probe at the pages the executable serves (/ui and /cockpit) as well as the built site, so every control claimed by an interaction spec is driven on every surface it appears on, not only on the site.

Why

On 2026-10-20 interaction-probe drove the built site only; ui-audit checked /ui and the Cockpit for landmarks, names and console errors but no spec exercised a control's behaviour there, so a copy button or tab that works on the site and fails on /ui passes every gate.

Current state

interaction-probe: site only, sharded by I3602. ui-audit: structure and accessibility on all three surfaces.

Desired state

interaction-probe serves the executable and drives every spec's controls on /ui and the Cockpit too, in the same shards; a control on those surfaces with no spec is a finding, as on the site.

Scope

  • scripts/interaction-probe
  • scripts/lib/interaction-specs
  • scripts/ci/interaction-check
  • test/cases/3794_the_probe_drives_every_surface.sh

Dependencies

Acceptance criteria

  • interaction-probe reports controls driven on /ui and /cockpit pages, by spec
  • A broken control on /ui fails the probe, naming page and control

Validation

  • bin/majordomus plan validate
  • MJ_TEST_JOBS=4 bash test/run.sh 3794_the_probe_drives_every_surface

Evidence required

  • probe_drives_every_surface_case

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

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

Searches the titles and descriptions of every page this site publishes.