Skip to content

Add ZaTeX math-fence consult seam (dynamic plugin, code-card fallback) - #349

Open
gregoreesmaa wants to merge 1 commit into
mainfrom
feat/zatex-math-fence-seam
Open

gregoreesmaa wants to merge 1 commit into
mainfrom
feat/zatex-math-fence-seam

Conversation

@gregoreesmaa

Copy link
Copy Markdown
Owner

Native math direction per zatex#12 (that issue tracks the cross-repo work): math fences consult the ZaTeX subset engine, loaded as a dynamic plugin outside the size budget. Subset-accepted fences are native-eligible (display arm: read#348); everything else keeps today's code-card fallback byte-identical. Absent dylib is a clean fallback.

  • src/core/math_fence.zig: dlopen loader, subset consult, token mapping (twin-stubbed).
  • docs/plugins-async-spec.md: external KaTeX/MathJax rows marked SUPERSEDED.
  • No viewport behavior change; no build dependency (runtime loading keeps CI hermetic).

Verified locally: strict gate 497/497 ReleaseFast (incl. 4 new tests, live-engine consult proven), size gate PASS (core 154174/204800, plugin 5700/12288).

Math fences (math/tex/latex/katex) consult the ZaTeX subset engine,
loaded as a dynamic plugin outside the size budget; subset-accepted
fences are native-eligible (display arm: read#348), everything else
keeps today's code-card fallback byte-identical. An absent dylib is
a clean fallback, so CI without a sibling checkout stays green.

- src/core/math_fence.zig: dlopen loader (loadFrom/loadDefault/
  close, twin-stubbed), subset consult (classify), token mapping.
- docs/plugins-async-spec.md: external KaTeX/MathJax rows marked
  SUPERSEDED in favor of the native direction.
- No viewport behavior change; no build.zig.zon change (runtime
  loading keeps the build hermetic).

Verified: strict gate 497/497 (ReleaseFast, incl. 4 new tests with
live-engine consult), size gate PASS (core 154174/204800, plugin
5700/12288).
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