tools: fix asciidoclint's silently-disabled checks and clean up the resulting spec violations - #629
Open
Devansh-567 wants to merge 1 commit into
Open
Conversation
…butes Signed-off-by: Devansh-567 <devansh.jay.singh@gmail.com>
Devansh-567
force-pushed
the
fix-contextskipblocks-listing-detection
branch
from
August 19, 2026 07:00
ca7cf77 to
c038c8a
Compare
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.
Three of
asciidoclint.py's checks were silently non-functional against the actual spec document (docs/v1/P4Runtime-Spec.adoc), and no test suite existed to catch it. CI was passing without validating the document.Bugs Fixed
ContextAfterTitle / ContextSkipHeadings
check_line_wraps()andcheck_keywords()were gated on a[TITLE]sentinel line that does not exist in the spec document.ContextSkipHeadingsmatched Markdown#headings instead of AsciiDoc=heading syntax.ContextAfterTitleto match the real document title (^= ...) andContextSkipHeadingsto match AsciiDoc headings (^=+).check_trailing_whitespace
line[-2]) assumed a trailing\n, causing off-by-one errors on final lines lacking a newline.\nif present before evaluating trailing whitespace.ContextSkipBlocks
~~~~-delimited blocks (0 occurrences in spec) while ignoring----listing blocks (216 occurrences),|===tables (16), and[...]block attributes.----listing blocks,|===tables, and[...]block attribute lines.Tests Added
tools/test_asciidoclint.pycovering 17 test cases across all fixed features (title detection, block skipping, trailing whitespace variations).python3 tools/test_asciidoclint.py -vinto theasciidoc-lintCI job.Spec Document Rewrapping
docs/v1/P4Runtime-Spec.adoc.