Skip to content

score zu-c for conditions, and say at the item what caps it - #616

Merged
tamnd merged 1 commit into
mainfrom
c-conditions
Aug 22, 2026
Merged

tamnd merged 1 commit into
mainfrom
c-conditions

Conversation

@tamnd

@tamnd tamnd commented Aug 22, 2026

Copy link
Copy Markdown
Owner

zu-c holds conditions now. tamnd/zu-c#6 added the four error accessors the wrapper had never read and a ten case suite over the fields one at a time, so the row goes from 11 to 22 out of the 90 it owes.

The more interesting half of this change is the comment on the item.

The item reads "Every failure carries the standard's condition code, the place, and the doc URL, checked by a test rather than promised in a page." Taken at its word, nobody holds it. A statement the engine refuses carries the whole of it, code and standard wording and doc URL and a position and a subject with its kind. A failure that happens before a statement or beside one does not: a database that will not open and an appender aimed at a table nothing declares come back with a status and a sentence, and nothing else. The fields are not there for a client to carry. That is now #614.

Two ways to handle that, and the third is the one taken here.

Rewording the item down to statement failures would have made every row honest by lowering the bar, and the gap would then be recorded nowhere. Scoring zu-c against the strict reading and leaving it at 11 would have been worse, because the other four rows have claimed conditions on the statement reading since they were written, and a column where one row is graded by a different rule than the other four has stopped comparing anything.

So the item keeps its wording, zu-c is scored the same way its neighbours are, and the cap is written down at the item, where a reader meets it before they read the column rather than after. It applies to all seven rows and not to one of them, which is exactly why it does not belong in a row.

The overview was regenerated with cargo run -q -p xtask -- clients. One line moved.

zu-c now carries the whole of a refusal and has a suite saying so, in
tamnd/zu-c#6, so the row picks up the ten points and goes to 22.

The item's own line gets a note rather than a rewrite. It reads "every
failure" and no client holds that today, because the fields are not
there to hold: a database that will not open and an appender aimed at a
table nothing declares come back with a message and no code, no
standard text and no doc URL. That is #614. It caps this item for all
seven rows and not for one of them, so it belongs at the item where a
reader meets it, rather than scored against whichever client last went
looking. Lowering the item's wording would have hidden the gap instead,
and the other four rows have claimed conditions on the statement
reading all along, so scoring zu-c by a stricter one would make the
column stop comparing.
@tamnd
tamnd merged commit 0d1a6b3 into main Aug 22, 2026
36 of 40 checks passed
@tamnd
tamnd deleted the c-conditions branch August 22, 2026 15:10
@tamnd tamnd mentioned this pull request Aug 22, 2026
22 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant