# SD Qualifier Card Operator-Guidance Deployment Evidence

Status: verified; interactive visual review pending browser availability
Type: evidence
Updated: 2026-08-06
Ticket: work/tickets/ticket-show-operator-action-requirements-on-card-qa-traveler.md

## Delivered behavior

The fixed eight-row physical-card QA traveler now classifies each test as
`AUTOMATED`, `OPERATOR REVIEW`, or `PHYSICAL ACTION` and provides row-specific
operator guidance. A prominent `Next operator action` decision is separate
from `Campaign/system next action`. An open intervention for the exact card
overrides the derived traveler guidance; another card's run or notification
cannot leak into the selected card.

The recovery row is `AUTOMATED`. The RPi executes every recovery case,
including the qualified controller power cycle, with no operator action while
the SD card remains installed. Intake and replacement text requires confirmed
controller power-off before operator card handling. No powered SD removal is
requested or treated as a qualification step.

The dashboard repeats the current operator decision on every active-card link.

## Source and image identity

- PR #41 introduced operator guidance at
  `95881c3960946f945d3015682e0964230a51ff0e`.
- PR #42 corrected RPi-controlled recovery to `AUTOMATED` at
  `d332449a996d3d898a63babbe43a54d0c1ef73d6`.
- Deployed image:
  `srv-rpi00-sd-qualifier:automated-recovery-guidance-d332449`.
- Image ID:
  `sha256:83473ed7e97db0285571d6e2a2f6ceb2ce1a6b9593064b92e1f3c31f1a17da64`.
- Embedded source revision:
  `d332449a996d3d898a63babbe43a54d0c1ef73d6`.
- Web start: `2026-08-06T18:11:45.680857028Z`.

## Validation

- `manage.py check` passed locally.
- Focused view tests passed `30/30` locally.
- The Windows full-suite attempt ran 144 tests successfully and encountered
  only the six expected Linux-only `pty`/`termios` import errors.
- The original ARM64 candidate and exact merged image each passed the complete
  Linux suite. The semantic correction's candidate and exact merge image also
  pass `252/252`, in `65.236 s` and `64.755 s`.
- The production health endpoint returned `status: ok` with database, storage,
  clock, and workers true; the web container is healthy.
- Authenticated production rendering returned HTTP 200 for the dashboard,
  F1-A1 traveler, and F1-B1 traveler. The rendered pages contain the separate
  operator/system actions, all three action badges, dashboard operator
  summaries, RPi-automated recovery/no-operator rule, recovery keep-installed
  rule, and power-off card-handling rule.
- The browser-control runtime reported no connected browser, so the
  post-deployment interactive desktop/mobile visual-only pass remains pending.
  No alternate browser backend was substituted. This does not change the
  deployed or server-rendered verification results.
- The temporary authenticated verification session was deleted in the same
  verification process.

## Live card truth

F1-A1 remains `IN PROGRESS` with the bounded-stop measurement matrix
`RUNNING`. Its operator decision is `NONE` with detail `automated work is
running; monitor for an explicit intervention`. Run counts are 95 completed,
one open, one attention, and 97 total. The system next action remains:
`Prepare the exact S4 44640 / BEFORE Start intent; no target access has
occurred.`

F1-B1 remains `NOT STARTED`, with zero runs. Its operator decision is
`OPERATOR REVIEW` before start and retains the confirmed-power-off rule for any
installation or replacement. Controller B qualification was not started.

## Continuity

Deployment used Compose `up -d --no-deps --wait web`. Command and notification
workers retained image
`sha256:4237e644eec42d742be75942a9ff2f8013812ebc309e0f416f306b70aefbd9c7`
and unchanged starts `2026-08-06T00:38:14.016461929Z` and
`2026-08-06T00:38:14.026245241Z`. These four Controller A services remained
active:

- `sdq-controller-a-after-final.service`;
- `sdq-controller-a-after-ordinary.service`;
- `sdq-controller-a-final-after.service`;
- `sdq-controller-a-s4-matrix-v3.service`.
