# Controller B 81 degraded HPT records root cause

Date: 2026-07-27

## Finding

The 81 degraded customer records exported from Controller B are expected
historical residue from the intentional lane-fault/retirement qualification
campaign. They are not caused by A-CTRL-2, USB publication, a new SD I/O
failure, or copy disagreement.

## Count reconciliation

Current Controller B HPT identity showed:

- lane oldest sequences: `86 / 86 / 1`
- retired segments: `2 / 1 / 0`
- mirror mismatch count: `0`
- lost record count: `0`
- latest append lane mask: `0x7`
- system errors: `0`

Therefore sequences 2 through 85 span 84 sequence identities for which only
lane 2 retains a readable copy. Three are internal/non-customer diagnostic
records. The remaining 81 are customer records, exactly equal to the export's
`DegradedRecords = 81`.

The export had:

- selected: `3197`
- healthy: `3116`
- degraded: `81`
- snapshot gaps: `0`
- requested-range gaps: `0`
- first failure sequence: `0`
- HPT and USB status: success

The reader classifies a record as healthy only when at least two valid copies
agree. A single valid lane is classified as degraded but remains exportable.
Multiple disagreeing copies would fail the export as ambiguous; that did not
occur.

## Origin

The dated lane diagnostic evidence records intentional masks:

- single-lane fault append/read mask: `0x6`
- dual-lane fault append/read mask: `0x4`
- recovery masks after both cases: `0x7`
- diagnostic passed: `1023`, failed: `0`

That campaign deliberately exercised whole-segment retirement and degraded
readback. It consumed finite lane segments and left the preserved asymmetric
retention window visible in later Controller B identities. Existing project
evidence explicitly says Controller B was not reformatted or normalized after
that campaign and retained oldest starts `86 / 86 / 1` with retirements
`2 / 1 / 0`.

## Disposition

No corrective firmware or USB action is indicated. The current store is
writing all three lanes and reports no mismatches or lost records. Reformatting
or reinitializing the SD HPT store would erase the historical degraded window,
but that is destructive and is not required to prove present health. Preserve
the 81 rows as intentional qualification history unless the owner separately
authorizes HPT-media reinitialization.

Supporting evidence:

- `work/evidence/hpt-log-store-circular-mirror/controller-b/development-autonomous-lane-20260725/lane-diagnostic-status.json`
- `work/evidence/hpt-log-store-circular-mirror/controller-b/development-autonomous-lane-20260725/lane-readback-status.json`
- `work/evidence/hpt-log-store-circular-mirror/controller-b/a2-clean-comparison-20260727/exact-b-identity/sd-card-identity.json`
- `work/evidence/hpt-log-store-circular-mirror/controller-b/a2-clean-comparison-20260727/hpt-terminal/hpt-export-status.json`
