mirror of
https://github.com/jcreek/CosmicClash.git
synced 2026-09-10 16:04:04 +00:00
test(store): prove the audited claims instead of asserting them
The audit established which rows understated what was built by locating implementations and their call sites. That proves code exists, not that it works, so each corrected claim is now tied to an executable test. Seven of the nine were already covered and just needed naming: the allocated ServerConfig fields, signed-authorisation admission, endpoint wiring, casual lineup being reached through formation, three of the four penalty kinds, signed roster metadata, the season countdown, and the matcher deployments. Two had no proof at all: - INITIAL_CONNECT_NO_SHOW was the one penalty kind with no integration coverage, so "all four penalty kinds are written durably" rested entirely on reading the code. - Cross-replica revocation is a behavioural property. An in-memory cache in front of the session read would break it while leaving every call site looking correct, so no amount of reading establishes it. Writing the first one found my own error rather than a defect: casual deliberately waits past InitialConnectWindow to CasualBotStartAfter before deciding a no-show, giving a slow-loading player longer than the ranked deadline. Reconciling at the earlier window only yields WAIT. Both new tests were mutation-checked -- removing the penalty insert and removing the revoked_at check each make them fail -- so they assert something real rather than passing incidentally.
This commit is contained in:
@@ -80,6 +80,27 @@ up a row, verify its claim against the code before planning against it** —
|
||||
and correct the row if it is stale, since an unverified row is a rumour, not
|
||||
a backlog item.
|
||||
|
||||
Every corrected claim is backed by an executable test rather than by having
|
||||
located an implementation, because locating one proves it exists, not that it
|
||||
works:
|
||||
|
||||
| Claim | Proof |
|
||||
|---|---|
|
||||
| 8.6 allocated `ServerConfig` fields | `test_server_config.gd::test_allocated_mode_is_opt_in_and_requires_compatibility_manifest` |
|
||||
| 8.6 signed-authorisation admission | `test_match_net.gd` join-authorisation cases, incl. the key-rotation set |
|
||||
| 8.6 endpoint wiring | `test_assignment_state.gd` — endpoint preserved, unsafe endpoint rejected |
|
||||
| 8.8 cross-replica revocation | `TestPostgreSQLSessionRevocationIsImmediateOnAnotherReplica` |
|
||||
| 8.19 lineup reached through formation | `TestPrepareProposalBuildsCasualLineupBeforeCreatingProposal` |
|
||||
| 8.19 all four penalty kinds durable | existing integration tests, plus `TestPostgreSQLInitialConnectNoShowWritesADurablePenalty` |
|
||||
| 8.30 signed roster metadata | `TestRealAllocatorWorkerPublishesSignedAssignmentRoster` |
|
||||
| 8.42 season countdown | `test_control_plane_client.gd` — `"Season ends in 2d"` and the clamped case |
|
||||
| 8.16/8.43 matcher deployed | `test_kubernetes_policies.py::test_every_required_workload_role_is_deployed` |
|
||||
|
||||
Two claims had no proof and needed one written: `INITIAL_CONNECT_NO_SHOW`
|
||||
penalties and cross-replica revocation. Both new tests were mutation-checked —
|
||||
disabling the behaviour makes them fail — so they assert something real. 8.13
|
||||
and 8.52 are cross-references and assert nothing.
|
||||
|
||||
### Blocking sign-off — the work exists, the verification does not
|
||||
|
||||
| # | What | Why it is not done | Detail |
|
||||
|
||||
Reference in New Issue
Block a user