fix: a cap of one read "at most 1 marks" - #36
Merged
Merged
Conversation
Found by a sweep over the twenty-three public names no probe round had touched, and the twelve usage patterns behind them. Everything else answered correctly; this is the only thing that did not, and it is a `@testset` description — user-facing text, which is what a reader sees when CI goes red. One is the interesting cap: it is what a package sets when it means "the next mark is a decision", so it is the description most likely to be read. The assertion needed a helper. `Collect` discarded the description it was handed, so the tree it builds could not be asked what the gate called itself; it keeps it now, and `gate_descriptions` reads it out. In a function rather than inline, for the same reason `gate_failed` is one — an inline `@testset` here would be counted as a behaviour of this file carrying no assertion of its own, which is exactly what the count is for. Checked against the plural restored: 1 failure with it, 0 without. 193 behaviours, 1251 assertions, green. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Contributor
|
📚 Docs preview: https://qatlashub.github.io/ExperimentalAPI.jl/previews/PR36/ (updates on each push to this PR) |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
…ents
Review catch. `gate_descriptions` went in above `gate_failed`, between that function and its
docstring — and the comment above it made a second separator.
Measured rather than assumed, because the failure is worse than misattribution:
docstring and definition adjacent docstring recorded under :f
one blank line between them NO DOCSTRING RECORDED
one comment line between them NO DOCSTRING RECORDED
a comment and a blank line NO DOCSTRING RECORDED
So `gate_failed` was not documenting the wrong thing — it had no docstring at all.
The helper moves below `gate_failed`, and the comment goes: `_descriptions` two lines down already
carries the reason descriptions are worth asserting on, and "in a function like its neighbour" is
visible from the neighbour.
Swept the repository for the same shape with the rule now known: one candidate, and it is the
closing quote of a multi-line string constant rather than a docstring. `src/` is clean because
`test_surface(ExperimentalAPI)` asserts every public name has a docstring, so a detachment there
goes red — this one was in a test file, where nothing was looking.
193 behaviours, green.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Found by a sweep over the twenty-three public names no probe round had touched and the twelve
usage patterns behind them. Everything else answered correctly; this is the only thing that did
not — and it is a
@testsetdescription, which is the text a reader sees when CI goes red.One is the interesting cap: it is what a package sets when it means "the next mark is a
decision", so it is the description most likely to be read.
The assertion needed a helper
Collectdiscarded the description it was handed, so the tree it builds could not be asked whatthe gate called itself. It keeps it now, and
gate_descriptionsreads it out — in a functionrather than inline, for the same reason
gate_failedis one: an inline@testsethere would becounted as a behaviour of this file carrying no assertion of its own, which is exactly what that
count exists to catch. (It did, on the first attempt:
193 behaviours, 192 operating, 1 specified only.)Checked against the plural restored: 1 failure with it, 0 without.
193 behaviours, 1251 assertions, green.
🤖 Generated with Claude Code