You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(B08): six C-catalogue-driven TikZ tools with code, F1 help and undo - #43
B08 — TikZ-native authoring using C's one catalogue
Stacked draft base: feat/c07-tikz-native-six-primitives-20261031 (#39, exact parent f5e31c5); this proposal transplants B07 #37 egui workspace onto C07 and removes competing B-side syntax/help templates. Do not merge independently into main before C07 passes exact-head CI. B07 should be superseded only after B08 integration is accepted.
Functional B implementation
Six click/drag TikZ tools (line, arrow, rectangle, circle, text/math node, cubic Bézier) use C Catalog::bundled / Catalog::generate. Toolbar, inspector, source examples, F1/hover use C ToolSpec + ParameterSpec (28 parameters, source-linked manuals).
Standard Split shows editable source beside exact XeLaTeX PDF and a distinctly approximate guide pad. GUI themes/figure fonts independent; no CAD/CAS, PGF reimplementation, PDF inversion or opaque macro rewriting.
Inspector selects Stealth/Latex arrow tips, text vs raw math mode, geometric parameters. Arrow requires explicitly loaded arrows.meta. Installed != project loaded; explicit preamble diff + reversible undo; no automatic MiKTeX package installation.
B-owned marker supports exact code recognition after reopen, narrow UTF-8 SourcePatch with source revision/inverse undo, direct Source text edits invalidate stale visual Undo. Unknown user TeX/comments/macros unchanged. C/core/D APIs/files untouched.
Evidence and limitations
14 authoring unit tests plus B08 GUI QA, plans/insights and portable TeX fixture. Local Debian XeLaTeX manual matching-source fixture PASS (1-page PDF, raster inspected), input/PDF SHA recorded in B08 insights. This does NOT prove Rust C generator parity or GUI drag.
B08 exact-head fmt/check/test/clippy/CI: PENDING. C07 math/escape syntax may have a malformed source token; confirm C CI rather than editing C from B.
Physical Win10+independently installed MiKTeX, Mac M1/M4 native GUI, screenshots, dialogs, IME, HiDPI and themes: NOT_RUN. Hosted Windows Server cannot replace Win10 acceptance.
Gate and integration
Review #39 and B08 exact-head CI before merge. B07 #37 had a Rust CI rustfmt failure on radius assignment, fixed in B08. B07 should remain until integrated B08 accepted. B08 docs: plans/2026-10-31_B08_CATALOG_DRIVEN_AUTHORING.md; insights/2026-10-31_B08_CATALOG_INTEGRATION_QA.md; crates/tikzarium-app/QA_B08_LIBRARY_HELP.md. No release claim.
Integrator update: shared N1 Rust/egui six-tool UI + C catalogue F1/hover/inspector, Split source+PDF, undo, and actual app-state→XeLaTeX proof are MERGED via #44 at main 6b0fe3551cb6ded5cf737e28a7a74326f0b4fe49, all four PR-source workflows green. #43 is historical B08 stacked on #39 and must not be merged independently into main (it would reintroduce stale C/B code). Please compare any unique B08-only screenshot/QA/help documents or new UI fixes against current main and preserve only meaningful differences in a focused follow-up, not a duplicate second authoring implementation. Real physical Win10/M1/M4 interaction NOT_RUN.
Supersession comparison completed against exact accepted main 5f5a805005430ff26d3e3dd9c17c3ca3d7af9fa3. This historical B08 stacked draft targets old C07/#39 (f5e31c...), while accepted #44 N1 (6b0fe355...) and subsequent #50 B15 / #58 C/N2 already contain production tikz_authoring.rs + tikz_canvas.rs: the ONE C Catalog::bundled()/generator/ToolSpec, 6 native TikZ primitives, permanent Split editable source/PDF guide, Russian F1/inspector, source revision patches and undo, explicit reversible arrows.meta dependency handling, and headless egui pointer/CRLF/opaque TeX regressions. Main source and current branch were compared; compare(B08...main) is diverged 224 ahead / 9 behind, not a simple fast-forward. In particular the B08 production Rust diff must not be replayed over accepted N1/B15. Native Win10 x64 MiKTeX + physical Mac M1/M4 GUI acceptance is still NOT_RUN; new B16/B18 work remains separate draft #62 and I06 desktop #48 remains 5/6. Close as superseded / not merged, not as validation of B08's old head. Historical QA document remains accessible in this PR.
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
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.
B08 — TikZ-native authoring using C's one catalogue
Stacked draft base: feat/c07-tikz-native-six-primitives-20261031 (#39, exact parent f5e31c5); this proposal transplants B07 #37 egui workspace onto C07 and removes competing B-side syntax/help templates. Do not merge independently into main before C07 passes exact-head CI. B07 should be superseded only after B08 integration is accepted.
Functional B implementation
Evidence and limitations
Gate and integration
Review #39 and B08 exact-head CI before merge. B07 #37 had a Rust CI rustfmt failure on radius assignment, fixed in B08. B07 should remain until integrated B08 accepted. B08 docs: plans/2026-10-31_B08_CATALOG_DRIVEN_AUTHORING.md; insights/2026-10-31_B08_CATALOG_INTEGRATION_QA.md; crates/tikzarium-app/QA_B08_LIBRARY_HELP.md. No release claim.