What
On a fresh CIRIS-Agent Android debug install (emulator, network up), every registry build-record fetch fails to parse and L4 file integrity is skipped:
WARNING - ciris_verify - [ciris_verify_core::validation] HTTPS query failed: HTTPS error: JSON parse error: Failed to read JSON: missing field `classical` at line 1 column 3963
ERROR - ciris_verify - [ciris_verify_core::unified] VERIFY MANIFEST_CACHE MISS: No cached build record available and registry unreachable — L4 file integrity will be skipped
WARNING - ciris_verify - [ciris_verify_core::unified] VERIFY STEP 2/6 COMPLETE: FAILED (HTTPS error: No build record available (pre-fetch failed))
WARNING - ciris_verify - [ciris_verify_core::unified] VERIFY STEP 3/6 COMPLETE: FAILED (HTTPS error: No build record available (pre-fetch failed))
Read
The registry IS reachable (HTTPS succeeds; the body parses up to column 3963) — the record's signature block appears to have moved to a shape without the classical field verify's deserializer requires (hybrid-signature schema drift between the registry's current build records and verify's expected struct). Verify then reports "registry unreachable", which mislabels a schema mismatch as a network failure.
Impact
- L4 file integrity silently skipped on every boot for clients with this verify build (observed via qa_runner mobile pull-logs, CIRIS-Agent branch wt/client-catchup-0586, 2026-07-08).
- The WARNING/ERROR mix + "unreachable" wording hides that this is a compatibility break, not an outage.
Asks
- Tolerant deserialization of the registry build-record signature block (accept records with and without
classical — serde default/alias), so a registry schema bump doesn't zero out L4 for fielded clients.
- Distinguish "registry unreachable" from "record unparseable" in the log line — the current message sent us diagnosing network first.
- Confirm which side drifted (registry record schema vs verify struct) and whether fielded verify versions need a floor bump in the agent's pin.
Found during CIRIS-Agent 0.5.86 client catch-up QA (announce-first wizard run on Android emulator). Log bundle retained; happy to attach the full incidents_latest.log on request.
🤖 Generated with Claude Code
What
On a fresh CIRIS-Agent Android debug install (emulator, network up), every registry build-record fetch fails to parse and L4 file integrity is skipped:
Read
The registry IS reachable (HTTPS succeeds; the body parses up to column 3963) — the record's signature block appears to have moved to a shape without the
classicalfield verify's deserializer requires (hybrid-signature schema drift between the registry's current build records and verify's expected struct). Verify then reports "registry unreachable", which mislabels a schema mismatch as a network failure.Impact
Asks
classical— serde default/alias), so a registry schema bump doesn't zero out L4 for fielded clients.Found during CIRIS-Agent 0.5.86 client catch-up QA (announce-first wizard run on Android emulator). Log bundle retained; happy to attach the full incidents_latest.log on request.
🤖 Generated with Claude Code