FA-32173 / Keyboard interactions / Member archive
Keyboard lock indicator request acknowledgements: A delayed LED acknowledgment applies current desired bits or the request id rather than the sent snapshot · case 03
The event trace violates the apply snapshot rule and produces incorrect keyboard state or command output.
Case contract
Events [kind,value]. Toggle flips desired lock bit 0..2. Send creates monotonically numbered snapshot request only when desired differs applied. Ack for an in-flight id newer than accepted applies that request snapshot, advances accepted id and discards requests <= ack. Unknown or stale ack is ignored. Reset sets applied=0, clears in-flight requests and accepted watermark but preserves desired and increasing request serial. Return desired,applied,serial,accepted,in-flight and sent [id,mask]. Inputs are finite ordered event traces; return the stated deterministic state. Batch entries are independent. N varies the number of independent input transactions.
Why this case matters
Controlled keyboard event processing model for debugging application event logic.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| lock-led-ack scenario 4 | [[3, 3, 2, 1, [[2, 3]], [[1, 1], [2, 3]]], [3, 3, 2, 1, [[2, 3]], [[1, 1], [2, 3]]], [3, 3, 2, 1, [[2, 3]], [[1, 1], [2, 3]]]] | [[3, 1, 2, 1, [[2, 3]], [[1, 1], [2, 3]]], [3, 1, 2, 1, [[2, 3]], [[1, 1], [2, 3]]], [3, 1, 2, 1, [[2, 3]], [[1, 1], [2, 3]]]] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗