Dehydrated devices: automatic claim at start / 4S unlock, rotation schedule, full state set (§10.4.7) #149

Closed
opened 2026-08-27 19:21:15 +02:00 by thecrealm · 0 comments
Owner

Review finding 2026-08-27 (B8). Claim and rotation run only when the consumer calls manageDehydratedDevice; neither session start nor unlockSecretStorage triggers them (SessionCrypto.kt:899-903 only loads the key); the "claim before the first sync request" ordering is unimplemented; non-404 GET/PUT failures throw instead of Failed(cause); the state enum lacks Disabled/Claiming/Failed(cause), Active carries no device id, ClaimFailed no cause; no rotation test and no engine test of the M_UNRECOGNIZED → Unsupported path.

Acceptance (§10.4.7-4/5/7, D73): each MUST above implemented and tested, or the spec amended where the decider prefers opt-in (record as D-entry).

Review finding 2026-08-27 (B8). Claim and rotation run only when the consumer calls `manageDehydratedDevice`; neither session start nor `unlockSecretStorage` triggers them (`SessionCrypto.kt:899-903` only loads the key); the "claim before the first sync request" ordering is unimplemented; non-404 GET/PUT failures throw instead of `Failed(cause)`; the state enum lacks Disabled/Claiming/Failed(cause), `Active` carries no device id, `ClaimFailed` no cause; no rotation test and no engine test of the M_UNRECOGNIZED → Unsupported path. Acceptance (§10.4.7-4/5/7, D73): each MUST above implemented and tested, or the spec amended where the decider prefers opt-in (record as D-entry).
thecrealm added
now
and removed
next
labels 2026-09-01 17:28:47 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
thecrealm/katrix#149
No description provided.