fix(docs-truth): strict R-15 status block grammar and fuller prose parsing (#935) - #936
Conversation
…rsing (#935) Canonical block lines must be exactly one entry; fences and HTML comments are scanned in one pass so a literal comment opener in a code example cannot hide later prose; coordinated gate lists ("Gates 4 and 3") check every gate; a duplicate entry is also checked for an unsupported status.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedEnable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. Next included review available in 7 minutes. View limit detailsLimit details: You’ve used the included review currently available. Your 80 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Review configuration: ⚙️ Run configurationConfiguration used: Repository: qnbs/WorldScript-Studio/.coderabbit.yaml Review profile: CHILL Plan: Essentials Run ID: 📒 Files selected for processing (4)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: qnbs/WorldScript-Studio/.coderabbit.yaml Review profile: CHILL Plan: Essentials Run ID: 📒 Files selected for processing (4)
Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour. 📝 WalkthroughWalkthroughThe R-15 checker now validates canonical status-block lines, reports applicable duplicate and unsupported-status findings, and expands coordinated gate references in prose. It processes comments and fenced blocks line by line. The changelog and README test totals were updated. ChangesR-15 gate status guard
Priority: ⬇️ Low Merge Risk: ⚪ Minimal · up to The changes strengthen R-15 documentation validation without an identified merge-blocking issue. Merge after normal test and documentation checks pass.
Comment |
🏁 CodeAnt Quality Gate ResultsCommit: ✅ Overall Status: PASSEDQuality Gate Details
|
Reviewer's GuideThe PR tightens canonical R15 status-block grammar, makes prose extraction correctly stateful across comments and code fences, validates every gate in coordinated prose references, and adds regression coverage plus synchronized README test totals. Sequence diagram for stateful Markdown prose parsingsequenceDiagram
participant Document
participant currentProse
participant proseOf
participant State
Document->>currentProse: currentProse(markdown)
loop each line
currentProse->>proseOf: proseOf(line, state)
proseOf->>State: nextFence(line, fence)
proseOf->>State: stripComments(line, comment)
proseOf->>State: nextHistorical(text, historical)
proseOf-->>currentProse: current prose or null
end
currentProse-->>Document: normalized prose
Flow diagram for R15 status validationflowchart TD
A[Markdown documents] --> B[currentProse]
B --> C[proseOf]
C --> D{Fence or comment state}
D -->|current prose| E[proseFindings]
A --> F[canonical R15_GATE_STATUS block]
F --> G[malformedBlockLines]
F --> H[parseR15GateEntries]
H --> I[entryFindings]
I --> J[entryProblems]
G --> K[Combined diagnostics]
J --> K
E --> K
Flow diagram for coordinated gate reference validationflowchart TD
A[Prose gate reference] --> B[GATE_REF]
B --> C[referencedGates]
C --> D{Range or coordinated list}
D -->|range| E[rangeGates]
D -->|list items| F[LIST_ITEM]
F --> G[itemGates]
E --> H[Referenced gate set]
G --> H
H --> I[Gate status comparison]
I --> J[Prose findings]
File-Level Changes
Assessment against linked issues
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
🤖 CodeAnt AI — Review Status
|
Thanks for using CodeAnt! 🎉We're free for open-source projects. if you're enjoying it, help us grow by sharing. Share on X · |
|
@codex review |
|
|
Overall Grade |
Security Reliability Complexity Hygiene |
Code Review Summary
| Analyzer | Status | Updated (UTC) | Details |
|---|---|---|---|
| Docker | Oct 1, 2026 1:20p.m. | Review ↗ | |
| Python | Oct 1, 2026 1:20p.m. | Review ↗ | |
| Rust | Oct 1, 2026 1:20p.m. | Review ↗ | |
| Shell | Oct 1, 2026 1:20p.m. | Review ↗ |
Important
AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 76cd074f7d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
cubic analysis
Review completed against the latest diff
Linked issue analysis
| Status | Acceptance criteria | Notes |
|---|---|---|
| ✅ | Reject malformed lines in the canonical status block | canonicalStatus checks each nonblank line, and regression tests cover trailing text and standalone garbage. |
| ✅ | Parse fences before stripping comments | currentProse tracks fence and comment state together, with regression coverage for comment openers inside fences. |
| ✅ | Resolve every gate in coordinated lists | referencedGates expands coordinated list items, and tests cover conjunctions, alternatives, and ranges. |
| ✅ | Report duplicate entries and invalid statuses together | entryProblems independently checks duplicates and status validity, and a regression test asserts both findings. |
| ✅ | Keep docs:check green on live documents | The PR description reports that pnpm docs:check stays green on the live documents. |
| ✅ | Leave protected merge-admission evaluator files unchanged | The supplied changes are limited to the R-15 checker, its tests, and README metrics. |
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
cubic analysis
All reported issues were addressed across 4 files
Linked issue analysis
| Status | Acceptance criteria | Notes |
|---|---|---|
| ✅ | Require exactly one valid entry per nonblank status-block line | malformedBlockLines rejects trailing text and standalone garbage, while entryFindings still reports invalid entries. |
| ✅ | Recognize fences before stripping comments | proseOf tracks fences outside comments and strips comments only from non-fenced lines. |
| ✅ | Check every gate in coordinated lists | referencedGates expands coordinated list items, and the regression test checks each named gate. |
| ✅ | Report duplicate entries and unsupported statuses independently | entryProblems checks duplicate and status errors separately, so both findings are retained for one entry. |
| ✅ | Add one regression test for each finding | The test changes cover malformed lines, duplicate diagnostics, coordinated lists, and comment markers inside fences. |
| Keep docs:check green on live documents | The PR description says docs:check stays green, but the supplied diff contains no check output. | |
| ✅ | Leave protected merge-admission evaluator files unchanged | The changed-file list contains no protected merge-admission evaluator files. |
Requires human review: Auto-approval blocked because this review re-detected 5 unresolved issues already reported by Cubic.
Re-trigger cubic
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
…y, parse list slices (#935)
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 11e5bf0057
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
Gates Passed
3 Quality Gates Passed
See analysis details in CodeScene
Quality Gate Profile: The Bare Minimum
Install CodeScene MCP: safeguard and uplift AI-generated code. Catch issues early with our IDE extension and CLI tool.
|
Codex Review: Didn't find any major issues. More of your lovely PRs please. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
User description
Closes #935. This is the correction wave for the four finding clusters that Codex and cubic raised on #934's merge head
59ee5411. The maintainer's QNB-177 plan required these to land before the merge; #934 was merged with them deferred instead, so they land here.Changes (
scripts/check-r15-gate-status.mjs)R15_GATE_STATUSblock must be exactly oneR15_GATE<id>=<STATUS>entry. Trailing text such as… BROKENand standalone garbage lines are reported as malformed.<!--in a code example no longer hides the prose after it.Gates 4 and 3andGates 5, 2 or 3Acheck every listed gate.Each item has a regression test in
tests/unit/checkR15GateStatus.test.ts(23 tests in total).pnpm docs:checkstays green on the live documents. The protected merge-admission evaluator files are not touched.Summary by Sourcery
Strengthen R-15 documentation truth checks to catch malformed status data and accurately validate gate references in prose.
Bug Fixes:
Enhancements:
Documentation:
Tests:
CodeAnt-AI Description
Strengthen R-15 documentation status validation
What Changed
Impact
✅ Fewer undocumented R-15 status errors✅ Accurate validation of multi-gate references✅ Clearer diagnostics for malformed status blocks💡 Usage Guide
Checking Your Pull Request
Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.
Talking to CodeAnt AI
Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:
This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.
Example
Preserve Org Learnings with CodeAnt
You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:
This helps CodeAnt AI learn and adapt to your team's coding style and standards.
Example
Retrigger review
Ask CodeAnt AI to review the PR again, by typing:
Check Your Repository Health
To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.
Summary by cubic
Hardens the R-15 gate status guard in
scripts/check-r15-gate-status.mjsso malformed canonical blocks, prose parsing edge cases, and coordinated gate lists are caught instead of silently passing.R15_GATE_STATUSblock must now be exactly oneR15_GATE<id>=<STATUS>entry; trailing text like… BROKENor garbage lines are reported as malformed. Both the block and code fences close only on a marker that stands alone on its line.<!--inside a code example no longer hides the prose after it, and text around a multi-line comment stays adjacent.Gates 4 and 3now check every listed gate, including per-item slice references.Adds one regression test per fix to
tests/unit/checkR15GateStatus.test.ts(23 tests total) and updates the README test count and changelog.Written for commit 46e8fd7. Summary will update on new commits.
Summary by CodeRabbit
Documentation
Quality