Skip to content

I1021 — A browser proves the interface, at the widths people use

Extend the existing browser checking to cover navigation on desktop and mobile, search and filtering, the detail view, graph initialisation, conditional runtime exposure, link integrity and console errors.

BLOCKED wave 5 · p1 · implementation profile · parallel safe

Part of capability-graph — One capability graph, two projections, and no second inventory of what this repository can do.

Blocked. This issue cannot start until I1014, I1015, I1016 are done. The status is derived from that, not declared.

Objective

Extend the existing browser checking to cover navigation on desktop and mobile, search and filtering, the detail view, graph initialisation, conditional runtime exposure, link integrity and console errors.

Why

Everything in this milestone is finally judged by whether a person can open it. Server-side tests cannot see an overflowing table, a menu that does not open or a script that throws on load.

Current state

A probe script drives the Cockpit's routes and interactions in a real browser.

Desired state

The probe covers the derived surfaces at representative viewports, uses stable selectors and runs in CI.

Scope

  • scripts/cockpit-probe

Out of scope

  • Pixel comparison of a rendered graph
  • Selectors coupled to presentational class names

Dependencies

What waits on this

Acceptance criteria

  • Desktop and mobile navigation, search and filtering, the detail view and graph initialisation are all exercised
  • Representative viewports from a narrow phone to a wide desktop are asserted, including the absence of horizontal overflow
  • The runtime-only surfaces appear when a backend is present and are not offered when it is not
  • Internal links resolve and the console is free of errors
  • Selectors are stable identifiers rather than presentational classes

Validation

  • scripts/cockpit-probe

Evidence required

  • browser_coverage
  • viewport_assertions

Evidence

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

Risk

Browser tests are the flakiest thing in any suite. Bounded waits on stable selectors, and no sleeps.

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