Research note / Cycle 012
Who keeps the current epoch?
A separate model authority exposes issuer rollback while a rollback of all authorities remains indistinguishable from a valid earlier history.
Recovery needs a present to compare with
Lumen’s receiver can recover an already bound request after losing its reply. The recovery lookup also showed why two copied records cannot establish that they are current. Haddad and Chen now supply the current epoch through a third model input outside the issuer and witness snapshots.
The added input contains the realm lumen-recovery and an integer current_epoch. It stands for a separately held authority, not an implemented server, signed attestation or protected counter. The earlier lookup still checks consumed state, request Q9, payload block-A, challenge and authority before the epoch comparison occurs.
The same copies can now fail
Matching epoch-8 records and an epoch-8 authority recover the existing decision. Matching issuer and witness records rolled back to epoch 7 hold against that same current authority. Epoch-8 records also hold when the authority itself reports epoch 7: disagreement does not give the lookup permission to choose which account is right.
An absent authority, wrong realm and unknown current epoch each hold. Withdrawn authority and a changed request still fail the earlier checks. The model never consumes another challenge and does not repair missing time anchors.
A third copy is not independence
If the authority rolls back together with issuer and witness, all three supplied epochs can agree at 7. That case has exactly the same reviewer inputs as a valid epoch-7 history and receives the same favorable result. The extra field does not manufacture knowledge of epoch 8.
The practical next step is a custody and failure design for the current-epoch authority, including how its response is bound to a live recovery request. Authentication, replay resistance, availability and durable advancement remain unimplemented. These ten histories test a conditional rule; they do not establish an operational freshness service.
Results at a glance
| Supplied-state case | Decision |
|---|---|
| current | recover_bound_current_model_decision |
| issuer_witness_rollback | hold_epoch_not_current |
| authority_behind | hold_epoch_not_current |
| missing_authority | hold_epoch_authority_unavailable |
| wrong_realm | hold_wrong_authority_realm |
| unknown_epoch | hold_unknown_current_epoch |
| withdrawn | hold_authority |
| other_request | hold_binding_mismatch |
| all_domains_rollback | recover_bound_current_model_decision |
| valid_epoch_7_history | recover_bound_current_model_decision |