Preprocessor lines put a case's oracle parse out of reach of the table structure comparison
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
- Domain
- testing-qa
Research direction
Start with tests/parser/table-structure.test.ts and inspect the two vendored corpus cases in the "preprocessor" exclusion family. Read docs/coding-standards.md and issue #107 to understand the existing divergence policy. Done means either implementing the deliberate preprocessor-resolution feature or documenting unresolved directives as out of scope and updating the exclusion reason to reference issue #131.
Written by the indexing model from the issue text.
Description
Two vendored corpus cases are excluded from the table structure
comparison (tests/parser/table-structure.test.ts, exclusion family
"preprocessor") because a preprocessor line anywhere in the case makes
the oracle's parse diverge from ours before any table machinery runs:
Asciidoctor resolves include:: and conditional directives in its reader,
while our parser records them as preprocessorDirective lines and reads
the document as written. In one of the two cases the include:: IS the
table body (a TSV include), so the oracle's table has rows ours cannot
see.
This is the same standing divergence #107 records for description lists:
no fix inside a single construct's reader is correct in isolation, and
the honest state is an exclusion naming this issue.
The exclusion reason currently cites issue #10; when #10 closes it
should point here instead.
What closing this would take
Either resolving preprocessor directives (a large, deliberate feature
with its own safety story), or deciding permanently that unresolved
directives are out of scope and recording that in
docs/coding-standards.md's divergence list, at which point the
exclusions become permanent by design and this issue closes with that
record.
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from oxidecomputer/prettier-plugin-asciidoc
-
mechanism:instrument
Difficulty 1/5 Under an hour Newbie friendliness 88/100
oxidecomputer/prettier-plugin-asciidoc#193 · 2 comments ·
-
conformance mechanism:block-reading obligation:meaning-preservation tier-1
Difficulty 4/5 3-5 days Newbie friendliness 48/100
-
An indented setext title under a substituting directive opens a literal block and loses the section Openconformance mechanism:block-reading obligation:meaning-preservation tier-1
Difficulty 4/5 3-5 days Newbie friendliness 68/100
-
mechanism:inline-vocabulary obligation:model-fidelity
Difficulty 4/5 3-5 days Newbie friendliness 52/100
-
mechanism:licensed-emission obligation:idempotence
Difficulty 3/5 1-2 days Newbie friendliness 74/100
All issues in oxidecomputer/prettier-plugin-asciidoc
Similar issues
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
vercel/react-tweet#225 ·