# SD Qualifier Gate 1 and Tool Shed checkpoint verification — 2026-08-14

Status: complete
Result: pass
Type: evidence
Updated: 2026-08-14
Next Action: none; checkpoint identity is recorded in completed campaign 002
Campaign: 002-checkpoint-sd-qualification-and-tool-shed-state
Parent: work/checklists/checklist-sd-card-supply-change-project-closeout.md

## Scope

This is the compact completion evidence for owner campaign
`002-checkpoint-sd-qualification-and-tool-shed-state`. It verifies the live
Gate 1 state, defines the exact local checkpoint scope, and records the dirty
work intentionally excluded from the checkpoint.

No controller command, database write, service restart, deployment, firmware
change, power action, media action, push, PR, publication, or controlled-
document mutation was performed.

## Live read-only verification

Observed on `srv-rpi00` from 2026-08-14T07:18:12-07:00 through
2026-08-14T07:20:52-07:00 using SSH, read-only Docker inspection, Django ORM
queries, and an unauthenticated HTTP health request.

- Host identity: `srv-rpi00`.
- PostgreSQL and web containers: healthy.
- Deployed web image: `srv-rpi00-sd-qualifier:terminal-closeout-470d62b`.
- Coordinator, command, notification, and watchdog containers: running on
  `srv-rpi00-sd-qualifier:independent-ab-8cdfa3b`.
- Campaign states: `ABORTED=11`; all other states zero.
- Non-terminal campaigns: `0`.
- Active runs: `0`.
- Active commands: `0`.
- Active HPT2 operations: `0`.
- Active HPT initialization operations: `0`.
- Active full-address scrub operations: `0`.
- Claimed or pending coordinator tasks: `0` / `0`.
- Both retained coordinators: state and desired state `PAUSED`.
- The 14 sample-result rows in the nine-campaign pre-close snapshot remain
  byte-for-value equivalent by campaign, controller role, sample label, and
  result. The two other already-terminal campaigns retain their four `PENDING`
  rows. No sample is `REJECTED`; the one historical `BLOCKED` sample result is
  unchanged.
- Front-door `/sd-qualifier/` response: expected unauthenticated `302` in
  `0.032524 s`.

## Exact checkpoint scope

The checkpoint stages only these reviewed groups, using explicit file paths:

1. The 20 owner lifecycle/queue files under `work/00-campaigns/`: queue
   projections, campaign 001 disposition, active requests 002–006 and 008–018,
   and completed request 007.
2. Gate 1 evidence:
   `work/evidence/sd-qualifier-cross-campaign-evidence-admission-audit-20260813.md`,
   `work/evidence/sd-qualifier-nine-campaign-administrative-closeout-20260814.md`,
   `work/evidence/tool-shed-campaign-reconciliation-20260814.md`, and this
   verification manifest.
3. Reconciled planning state:
   `work/checklists/checklist-sd-card-supply-change-project-closeout.md`,
   `work/wp/active/wp-controller-neutral-sd-qualification-and-independent-a-b-execution.md`,
   `work/maps/map-smi-firmware-stabilization-and-qualification.md`,
   `work/inventories/inventory-sd-qualification-project-current-state-inventory.md`,
   and
   `work/spikes/spike-evaluate-ssp-2-7-0-usbx-modernization-and-renesas-hcd-interoperability.md`.
4. Generated orientation indexes: `work/index.md` and `work/index.json`.

The checkpoint commit ID is intentionally recorded by the campaign completion
record after Git creates it, avoiding a self-referential commit hash inside the
commit itself.

## Intentionally excluded dirty state

- `.gitignore`: separate Tool Shed inbox-ignore change.
- `AGENTS.md`: separate workspace-instruction change.
- `docs/ecr-sd-card-supply-change-resolution.md`: controlled-document work.
- `work/runbooks/runbook-marshal-project-workspace-reconciliation.md`: separate
  downstream-mirror procedure change.
- `work/q&a/000-improve-vscode-codex-development-workflow.md` and
  `work/q&a/001-replace-sd-qualifier-dashboard-refresh-with-sse.md`: separate
  Q&A migration/deletion state.
- All firmware source, generated project, build, packaging, and target state.

## Queue result

Campaign 003 is the next ready campaign after this checkpoint. Campaign 008 is
displayed before it but remains blocked on separate clean-regeneration/build
authorization, so it is not executable. Campaign 003's slow-export ticket and
firmware source are outside and unchanged by this checkpoint.

## Validation contract

Before committing, regenerate the indexes, pass workspace preflight,
stale-path review, strict work-state review, campaign-queue validation,
selected-scope `git diff --check`, staged-file review, and the explicit check
that the slow-export ticket is unmodified. After committing, verify the commit
file list contains only the selected scope and record its ID in campaign 002's
completion evidence.
