Skip to content

fix(rsr-verify): accept .adoc — the docs exist, the check named .md - #71

Open
hyperpolymath wants to merge 4 commits into
mainfrom
fix/rsr-verify-accept-adoc
Open

fix(rsr-verify): accept .adoc — the docs exist, the check named .md#71
hyperpolymath wants to merge 4 commits into
mainfrom
fix/rsr-verify-accept-adoc

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

rsr-verify.sh fails 7 documentation checks in a plugin whose documentation is complete.

checks for:   docs/ARCHITECTURE.md  docs/API_REFERENCE.md  docs/FAQ.md
              docs/QUICKSTART.md    docs/TROUBLESHOOTING.md
              docs/EXAMPLES.md      docs/MIGRATION.md

on disk:      docs/ARCHITECTURE.adoc  docs/API_REFERENCE.adoc  docs/FAQ.adoc
              docs/QUICKSTART.adoc    docs/TROUBLESHOOTING.adoc
              docs/EXAMPLES.adoc      docs/MIGRATION.adoc
              (plus CITATIONS.adoc and COMPATIBILITY.adoc)

Every document exists. The .md.adoc migration moved them and left the verifier naming the old extension, so 7 of the RSR compliance checks have been failing on a compliant plugin.

Fix

Accept either extension — the same pattern the RSR template's own quality.yml already uses for README, LICENSE and CONTRIBUTING:

check "ARCHITECTURE exists" "[[ -f docs/ARCHITECTURE.md ]] || [[ -f docs/ARCHITECTURE.adoc ]]"

The check label drops the extension too, so a failure message names the document rather than a filename that may be either form.

Verified

checks satisfied against files actually on disk 7 / 7
still missing 0
shellcheck -S error 0 findings

Provenance

Found by an estate-wide sweep of 5,111 scripts across 375 repos. Same defect class as the 56 unsatisfiable checks repointed across 18 repos earlier in this campaign (see hyperpolymath/Axiom.jl#82).

⚠ I initially filed these as missing documentation in hyperpolymath/standards#653 and was about to author 14 replacement files. That was wrong — my classifier looked for the .adoc twin at the repo root, but these live at asdf-ghjk/docs/, so it reported no twin. Issue #653 is being corrected.

rsr-verify.sh fails 7 documentation checks in a plugin whose documentation is
COMPLETE. It checks docs/ARCHITECTURE.md, API_REFERENCE.md, FAQ.md,
QUICKSTART.md, TROUBLESHOOTING.md, EXAMPLES.md and MIGRATION.md; the plugin
ships all seven as .adoc, plus CITATIONS.adoc and COMPATIBILITY.adoc.

The .md -> .adoc migration moved the documents and left the verifier naming the
old extension, so seven RSR compliance checks have been failing on a compliant
plugin.

Fixed by accepting either extension - the same pattern the RSR template's own
quality.yml uses for README, LICENSE and CONTRIBUTING. The check label drops
the extension too, so a failure names the document rather than a filename that
may legitimately be either form.

Verified: 7/7 checks satisfied against the files actually on disk, 0 missing,
shellcheck -S error reports 0 findings.

⚠ I first filed these as MISSING documentation in hyperpolymath/standards#653
and was about to author 14 replacement files. That was wrong: my classifier
looked for the .adoc twin at the REPO ROOT, but these live at
asdf-ghjk/docs/. Issue #653 is being corrected.
@gitar-bot

gitar-bot Bot commented Aug 26, 2026

Copy link
Copy Markdown

Gitar is working

Gitar

@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

AI Reviewer: first review requested successfully. AI can make mistakes. Always validate suggestions.

Run reviewer

TIP This summary will be updated as you push new changes.

@coderabbitai

coderabbitai Bot commented Aug 26, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: cce4d24b-66f2-4c03-9cec-4f48ce98250c

📥 Commits

Reviewing files that changed from the base of the PR and between 04a9487 and aeb1d7d.

📒 Files selected for processing (1)
  • asdf-ghjk/scripts/rsr-verify.sh

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Recent review details
⏰ Context from checks skipped due to timeout. (25)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: governance / Debt ratchet
  • GitHub Check: governance / Trusted-base reduction policy
  • GitHub Check: governance / Exemption ratchet
  • GitHub Check: governance / Language / package anti-pattern policy
  • GitHub Check: governance / Workflow security linter
  • GitHub Check: governance / Licence consistency
  • GitHub Check: governance / Guix packaging policy (Nix retired)
  • GitHub Check: governance / Check Workflow Staleness
  • GitHub Check: governance / Well-Known (RFC 9116 + RSR)
  • GitHub Check: governance / Code quality + docs
  • GitHub Check: governance / Security policy checks
  • GitHub Check: governance / Allowlist Preflight
  • GitHub Check: scan / shell-secrets
  • GitHub Check: scan / rust-secrets
  • GitHub Check: scan / gitleaks
  • GitHub Check: hypatia / Hypatia Neurosymbolic Analysis
  • GitHub Check: Validate K9 contracts
  • GitHub Check: analyze (actions, none)
  • GitHub Check: Groove manifest check
  • GitHub Check: estate-audit
  • GitHub Check: Empty-linter (invisible characters)
  • GitHub Check: Validate A2ML manifests
  • GitHub Check: analyze (rust, none)
  • GitHub Check: sync
🔇 Additional comments (1)
asdf-ghjk/scripts/rsr-verify.sh (1)

68-72: LGTM!


📝 Walkthrough

Summary by CodeRabbit

  • Documentation
    • Documentation validation now accepts both Markdown and AsciiDoc files for architecture, API reference, FAQ, quickstart, troubleshooting, examples, and migration content.

Walkthrough

The verification scripts now accept Markdown or AsciiDoc files for the named documentation checks.

Changes

Documentation validation

Layer / File(s) Summary
Markdown and AsciiDoc checks
asdf-augmenters/asdf-ghjk/scripts/rsr-verify.sh, asdf-ghjk/scripts/rsr-verify.sh
The checks for Architecture, API Reference, FAQ, Quickstart, Troubleshooting, Examples, and Migration documentation accept .md or .adoc files. The SECURITY and CHANGELOG checks use generic names.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to aeb1d

This localized change makes the documentation verifier accept either .md or .adoc files without changing product runtime behavior; no actionable merge-blocking risk remains after normal checks and review.

Suggested reviewers: metadatastician

Poem

A rabbit checks each document door
Markdown hops, AsciiDoc follows more
Seven names pass the gate
Two scripts now validate
Neat paths bloom in the burrow floor

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description directly explains that rsr-verify.sh now accepts .md and .adoc documentation files and identifies the seven affected checks.
Title check ✅ Passed The title clearly identifies the rsr-verify.sh fix and the change to accept .adoc documentation files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 2…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 2 files.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codacy-production codacy-production Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

While the PR successfully expands the compliance script to support AsciiDoc documentation, it introduces a logic bug in the security verification. Specifically, the 'HTTPS-only downloads' check is rendered ineffective by a || true suffix, creating a false sense of security.

The overall codebase quality remains 'Up to Standards', but the script rsr-verify.sh is duplicated in two separate paths. This duplication, combined with inconsistencies in how root-level files (like README) are handled compared to files in the docs/ directory, suggests the migration to extension-agnostic checks is incomplete. Addressing the security logic and consolidating the scripts is recommended before merging.

About this PR

  • The documentation logic for 'either .md or .adoc' has not been applied to root-level files (README, LICENSE, CONTRIBUTING), despite the PR description suggesting alignment with general RSR patterns. Consider applying the same flexible extension logic to these checks for consistency.
  • The check for 'SECURITY.adoc' is currently duplicated on line 68 (Documentation category) and line 94 (Security category). It is better to consolidate this into a single check or ensure the labels are distinct if they serve different purposes.
3 comments outside of the diff
asdf-augmenters/asdf-ghjk/scripts/rsr-verify.sh

line 1 🟡 MEDIUM RISK
Suggestion: The script 'rsr-verify.sh' appears to be duplicated in two paths ('asdf-augmenters/asdf-ghjk/scripts/' and 'asdf-ghjk/scripts/'). If these scripts are intended to be identical, consider consolidating them into a single shared file or using a symbolic link to prevent maintenance issues and logic desynchronization.

asdf-ghjk/scripts/rsr-verify.sh

line 66 ⚪ LOW RISK
Nitpick: Update the check name to remove the '.adoc' suffix for consistency with the rest of the documentation checklist.

check "CODE_OF_CONDUCT exists" "[[ -f CODE_OF_CONDUCT.adoc ]]"

line 98 🟡 MEDIUM RISK
The || true logic bypasses the security check, making it effectively always pass regardless of the actual grep results. Remove the bypass so the script correctly identifies non-compliant download scripts.

check "HTTPS-only downloads" "grep -q 'https://' bin/download && ! grep -q 'http://' bin/download"

Test suggestions

  • Verify documentation check passes when only .md files are present in the docs/ directory.
  • Verify documentation check passes when only .adoc files are present in the docs/ directory.
  • Verify documentation check fails when neither .md nor .adoc files are present for a required category.
  • Confirm that check failure messages for these documentation files do not include file extensions in the label.
Prompt proposal for missing tests
Consider implementing these tests if applicable:
1. Verify documentation check passes when only .md files are present in the docs/ directory.
2. Verify documentation check passes when only .adoc files are present in the docs/ directory.
3. Verify documentation check fails when neither .md nor .adoc files are present for a required category.
4. Confirm that check failure messages for these documentation files do not include file extensions in the label.

TIP Improve review quality by adding custom instructions
TIP How was this review? Give us feedback

Comment thread asdf-ghjk/scripts/rsr-verify.sh Outdated
Comment thread asdf-ghjk/scripts/rsr-verify.sh Outdated
coderabbitai[bot]
coderabbitai Bot previously approved these changes Aug 26, 2026
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com>
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com>
@hyperpolymath
hyperpolymath enabled auto-merge (squash) August 28, 2026 07:44
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