Skip to content

B41: Pin C-backed Apply for inspector parameters and test real egui events - #89

Merged
i-shutov merged 22 commits into
mainfrom
b41-egui-pinned-parameter-apply
Nov 2, 2026
Merged

i-shutov merged 22 commits into
mainfrom
b41-egui-pinned-parameter-apply

Conversation

@i-shutov

@i-shutov i-shutov commented Nov 2, 2026 •

Copy link
Copy Markdown
Owner

B41 latest current B checkpoint — 2026-11-02

DRAFT, not merged. Main: 48447d5916fa190b3ca7312130bde45d695ffd16; exact B HEAD: 52004622c2e0cd2a24843ab1fb3e87877de12c5e; app/src Git tree d290bdad0de0058b538a26be0209a97f2626f76a. 0 behind at baseline. B source change and B plans//insights//CHANGELOG.md committed in the same existing PR #89; no A/C/D/E/F changes.

New independently reproduced B UX bug fixed: I60 real X11 41397220307 showed no visible effect after F1 immediately following Open/Reopen (screenshots 13/14 identical): active TikZ tool was None; session.help toggled, but pinned inspector hid help unless active tool existed. Production inspector now renders a generic Russian guidance row for F1 without selection; with selection all syntax/defaults/examples remain in shared C catalogue. Added exact production-handler egui::Context::run(RawInput) F1 press/release regression, visible rect + toggling + zero source/Undo mutations. This is UNIT_EVENT, not a physical or true GUI pass for new source tree.

I60 prior-tree genuine X11 evidence: artifact 13119109476, independent 20/20 SHA256, actual Circle pointer → inspector draft → C Apply → native Ctrl+Z fence → visual Undo → two real Open files with 13 CRLF → external XeLaTeX PDF with Cyrillic/embedded font. That evidence applies to prior app tree 5fa3b794... only. Inline PDF viewport white on screenshot 13 remains not accepted, despite correct external PDF. Physical Win10/M1/M4 NOT_RUN.

Final-head CI: new exact-head workflows started; three historical D-owned X11 workflow copies still fail closed on old B tree/profiles and are NOT_RUN for the changed B code. The first new B SHA failed Rust formatting only; follow-up exact rustfmt committed as final HEAD above, new runs pending (see CI actions). Independent integrator QA PR #90 must lease d290bdad..., not older B41 tree, and repeat genuine GUI screenshot/source/PDF evaluation. No merge yet. Only external XeLaTeX PDF is authoritative, overlay is provisional.

Prior B41 checkpoints (historical)

B41 latest exact-head checkpoint — 2026-11-02 05:29 UTC

PR #89 remains DRAFT; not merged. main 48447d5916fa190b3ca7312130bde45d695ffd16; B HEAD e9bdd306f1009fa1f444e7d8948e16a48b6ce190, app/src Git tree 5fa3b794c4711cd32c1b0f68a0ea00c7bf38657a (0 behind / 4 ahead, mergeable at check).

In the same B PR, added the missing CHANGELOG.md entry plus plans/ and insights/ updates. A new egui::Context::run(RawInput) UNIT_EVENT now renders the actual production show_inspector_action_bar_frame in a 260-pt right SidePanel with the regular independently scrolling inspector. It clicks the wrapped pinned Apply by its measured Response.rect, verifies it is visible above scroll, disabled with no changes, commits one C-catalogue minimal patch after a changed Circle radius, returns code jump, refuses duplicate no-op and restores exact prior source with Undo. The pre-existing wide event-frame test still clicks the real radius TextEdit using Ctrl+A and text; the two tests are complementary, not a complete GUI Save/Open or source Ctrl+Z X11 session. No C/A/D/E/F production edits.

Latest exact-HEAD hosted results: 5/8 workflow groups SUCCESS:

3/8 genuine X11 workflow groups FAIL CLOSED BEFORE GUI, at D-owned B40 app-tree guard:
I46 41393732859, I47 41393732862, I57 41393732864. They did not exercise a B41 pointer gesture and must be classified NOT_RUN B41 X11, not functional regressions or passes.

Integration gate: D/integrator to provide an independently leased exact-5fa3b794... B41 X11 runner and screenshot-reviewed coordinate profile: real Circle/Bézier inspector parameter edit → draft, unchanged source → pinned Apply and highlighted C patch → native source Ctrl+Z / visual Undo → GUI Save/Open of two distinguishable files, unknown macros/CRLF intact, F1 and six gestures, external XeLaTeX PDF + uploaded sources/logs/images. Do not strip old safety guard or reuse old coordinates blindly. Physical Windows 10 x64 + separate MiKTeX and M1/M4 + user XeLaTeX remain NOT_RUN. Provisional overlay is not the authoritative PDF. Only integrator decides merge and post-merge QA.

B41 — one B-owned user-facing block

Base main 48447d5916fa190b3ca7312130bde45d695ffd16; branch HEAD 3d5af986962fbb31efbc5579ffccea6a660eae8e.

UX fix: For long Bézier/node property inspectors, the only parameter Apply was below the scroll. Place a short pinned Apply beside visual Undo; enable it only if the selected C-owned command is unique, byte-validated and the draft actually differs. Mark pending properties as not committed to TeX/PDF and disable the old no-op bottom Apply. Both controls call exactly the same existing B Session/C catalogue minimal source patch. Manual/opaque TeX is not rewritten.

Regression: Real egui::Context::run(RawInput) pointer and Ctrl+A/Text frames target the production radius TextEdit and pinned Apply, distinguish draft from source, test disabled action, C patch/Undo, UTF-8 opaque macro and Save/Reopen. This is UNIT_EVENT, not physical Windows 10 or M1/M4.

Ownership: tikz_canvas.rs, B plans/ and insights/ only. A/C/D/E/F untouched; #44 already merged, no #37/#43 replay; no TeX/CAS/solver or coordinate/PDF equivalence. External XeLaTeX remains authoritative.

Current state: exact-HEAD CI, independent X11 combined inspector edit + source Undo and physical Win/Mac remain NOT_RUN pending evidence; do not merge solely on this description. Historical B40 CI evidence not relabeled as B41. Plans/insights describe observed code-level UX gap, limits and test gate.

Exact-head verified QA — 2026-11-02

Corrected B41 HEAD: 671fb4f89cb768aadd459e1e1094afb6ab95483a (B crates/tikzarium-app/src tree 66e58e96923514e4576f0bdfed7779ae7e12225f), base main 48447d5916fa190b3ca7312130bde45d695ffd16.

5/8 workflow groups SUCCESS on exact head; 3/8 legacy real-X11 groups FAIL CLOSED BEFORE GUI (old D-owned app-tree guard, NOT a demonstrated B41 gesture failure).

Main I53 first-attempt X11 xdotool --sync timeout recovered on same main SHA by rerun attempt #2 = SUCCESS, no B source change justified.

Scope limit: no physical Windows 10/MiKTeX, M1/M4, or B41 real-X11 screenshot/manual acceptance. Guide remains approximate; PDF only from external XeLaTeX. PR intentionally remains draft, no merge/release claim. B-owned file and two B-owned plans/insights documents only; C/A/D/E/F source unchanged, no #37/#43 replay.

i-shutov commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

Integrator checkpoint — exact B41 HEAD 671fb4f89cb768aadd459e1e1094afb6ab95483a (2026-11-02)

Read current main, AGENTS.md, PR patch, B41 plan/insight and exact-head GitHub checks. Keep #89 draft; do not merge yet. No production branch edits here.

  1. Baseline: main 48447d5916fa190b3ca7312130bde45d695ffd16. All six distinct I59 post-merge push workflows are now SUCCESS (including I53 after same-SHA rerun attempt A · XeLaTeX build core and failure diagnostics #2: https://github.com/i-shutov/tikzarium/actions/runs/41386811476). This is main evidence, not B41 physical-GUI proof.
  2. B41 exact-head checks: 5/8 workflow groups SUCCESS, including the real egui::Context::run(RawInput) UNIT_EVENT, Rust Windows/macOS/Linux, Linux XeLaTeX and hosted Windows Server 2022 MiKTeX. The three real X11 workflow groups fail in the pre-GUI app-tree lease check: their B40 literal eefe044db4ea5dba41a02411ac4686aa557c31e1 does not equal B41 app tree 66e58e96923514e4576f0bdfed7779ae7e12225f. Treat this as NOT_RUN GUI (not a reproduced B41 gesture defect or a PASS).
  3. Exact production UI caveat: B41's action bar uses horizontal_wrapped, so do not infer a clipped button merely from the 210–300pt inspector width; however the new UNIT_EVENT tests render a standalone wide 680pt CentralPanel and call the pinned button directly, not the actual full compact egui app/action bar. Independent real X11 proof on B41 is still mandatory: selected native circle/Bézier → real property TextEdit → pending draft with unchanged .tex → pinned Apply → exactly one validated C minimal patch → source-editor Ctrl+Z/visual Undo → GUI Save/Open of two distinguishable files, screenshots and external XeLaTeX PDF. Review images manually; bootstrap screenshot/UNIT_EVENT alone are insufficient.
  4. Missing release ledger: B41 changed tikz_canvas.rs, one plan and one insight, but not CHANGELOG.md. Add a coherent B41 entry together with the final evidence status before merge, in B-owned branch. Unit-test std::fs::write/read must not be described as a real GUI Save/Reopen. Preserve unknown macros and CRLF; explicitly record any unexercised CRLF GUI path as NOT_RUN.
  5. Independent QA lease: use D/integrator-owned new exact B41 app/src tree and a screenshot-reviewed coordinate profile. Do not blindly remove the old B40 guards or silently bless B37/B39 click coordinates, and do not edit the active B-owned PR branch from integration. Require all appropriate exact-head checks green and independently inspected source/PDF/images, then merge with expected_head_sha and launch post-merge CI separately.

Physical Windows 10 x64 with separately installed MiKTeX and physical Mac M1/M4/XeLaTeX remain NOT_RUN. External XeLaTeX PDF authoritative, provisional guide not a coordinate-equivalence proof.

i-shutov commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

Integrator I60 checkpoint — independent B41 full GUI acceptance initiated (2026-11-02)

Current source-of-truth check: main 48447d5916fa190b3ca7312130bde45d695ffd16, B41 #89 HEAD e9bdd306f1009fa1f444e7d8948e16a48b6ce190, production app/src Git tree 5fa3b794c4711cd32c1b0f68a0ea00c7bf38657a. Previous exact B41 5/8 workflow groups green; I46/I47/I57 X11 failed at old B40 pre-GUI lease. No product regression inferred and no PASS assigned.

Created independent, draft stacked QA #90 on qa/i60-b41-inspector-real-x11; production Rust and B-owned branch untouched. It adds a distinct exact-B41-tree workflow, source/PDF hash predicates, real egui/X11 driver (Circle pointer → inspector draft → pinned Apply → native source Ctrl+Z and visual Undo → two different GUI Open files including CRLF → real external XeLaTeX PDF, Cyrillic/embedded font, F1), unit negatives, plan and insight. Previous B40 image-based clicks are PROVISIONAL and must be calibrated from actual B41 screenshots. No silent package setup or invented PDF coordinate equivalence.

Initial QA workflow attempts revealed a QA-only shallow-checkout preflight (missing ancestor object); changed checkout to fetch-depth: 0 instead of disabling exact ancestry/tree checks. New exact QA HEAD 8402b0e9f84e053fe647d1007a5b6fc98ad1ebc6, workflow run 41397220307 launched; results and manual screenshot review NOT_RUN/PENDING at this checkpoint. Continue fail-closed; do not merge #90/#89 until actual end-to-end source/PDF/images pass and previous workflows' B40 leases are reconciled. Physical Windows 10/MiKTeX and Mac M1/M4/XeLaTeX NOT_RUN; release 1.0 blocked.

i-shutov commented Nov 2, 2026 •

Copy link
Copy Markdown
Owner Author

B41 B-lane handoff — independently reviewed I60 X11 + F1 production fix (2026-11-02)

Fresh main 48447d5916fa190b3ca7312130bde45d695ffd16; B PR #89 HEAD 52004622c2e0cd2a24843ab1fb3e87877de12c5e, new app/src Git tree d290bdad0de0058b538a26be0209a97f2626f76a, prior tree 5fa3b794c4711cd32c1b0f68a0ea00c7bf38657a. #89 stays draft, no merge. No A/C/D/E/F product edits or replay of #37/#43/#44. Changed B tikz_canvas.rs, existing B plan/insight, CHANGELOG in one commit.

Independent material evidence reviewed in this B run: downloaded I60 Actions 41397220307, artifact 13119109476. Independently recomputed 20/20 SHA-256 against i60-report.json, inspected real X11 screenshots (14), TeX and compiled PDF. Prior exact production app tree 5fa3b794... passed genuine Circle gesture → radius draft (TeX unmodified) → pinned C Apply → source Ctrl+Z kept C edit → visual Undo restores original → GUI Open of two files, 13 CRLF preserved, XeLaTeX PDF with Cyrillic + embedded Unicode font. Source SHA 89221c2b... → 66528582... → 89221c2b...; PDF SHA 16cb3cc29a855586b34d7750c1425c8b0f3d60d140c643f889e9324acc5a8c55. This is prior-tree evidence, not a PASS on new B HEAD.

Actual B UX bug observed: after Open/Reopen reset active tool to None, F1 toggled hidden session.help; I60 screenshots 13/14 were byte-identical. Fixed in production pinned inspector: generic visible Russian F1 guidance when no active tool; when selected, all syntax/help remain strictly C-sourced. Added real egui::Context::run(RawInput) F1 key down/up test: visible help rect, toggle off, no TeX writes/ghost Undo. This is UNIT_EVENT. Fresh final exact-head CI on 52004622c2e0cd2a24843ab1fb3e87877de12c5e triggered, PENDING at this checkpoint; first SHA 528d695... failed cargo fmt --check (three purely formatting differences in the new B F1 code/test); applied exact rustfmt changes via corrective B commit; no behavior change; do not report green prematurely.

Unresolved UI evidence: I60 screenshot 13 has a white inline PDF preview area while Poppler confirms the external PDF contains ink; do not conflate the GUI preview with PDF build failure. Separate Fit Page/screenshot QA is necessary. Physical Win10/MiKTeX + M1/M4/XeLaTeX still NOT_RUN. Provisional guide is not PDF geometry.

D/integrator action: stacked QA #90 based on old B HEAD must acquire a fresh exact-ac315212... production tree lease and rerun real B41 X11 plus screenshot/source/PDF review before any QA/B merge. On QA SHA f2327b3c0aca498b3c8afbe58a694c8087d323f3, I57 run 41398730811 stopped before GUI: test_qa_i57_four_libs.py expects literal old branches: [main, b40-egui-source-undo-transaction-fence], while workflow correctly adds B41. This is QA-owned negative-test contract, not a Rust regression; update test alongside workflow, preserve strict app-tree guard. Other QA runs may still be active. B owns no D changes.

Exact final SHA CI update: D QA 41399736773 7/7 PASS, including new B F1 UNIT_EVENT on Ubuntu/Windows/macOS, Ubuntu app 95/95 and core 56/56, strict Clippy and rustfmt; N1 external XeLaTeX 41399737526 PASS; Unicode 41399737094 PASS; Windows Server MiKTeX 41399736793 PASS. Rust CI 41399736761 macOS and Linux jobs PASS, hosted Windows Rust release build still running as of this check. Three I46/I47/I57 older X11 workflows on exact B HEAD failed at obsolete B40 app-tree guard before GUI; call these B41 real-X11 NOT_RUN, not a regression. QA must re-lease d290bdad... and inspect screenshots.

i-shutov commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

I60 integrator handoff (2026-11-02): stacked QA #90 has now been safely synchronized to exact B41 HEAD 52004622c2e0cd2a24843ab1fb3e87877de12c5e via a two-parent commit, QA HEAD 3774f3b2fbc18c46b2e8d8c0b7028f2ffa3d0948, app/src tree d290bdad0de0058b538a26be0209a97f2626f76a. No B production edits were duplicated. Five actual X11 suites (I46/I47/I53/I57/I60) have strict new tree leases. Fixed obsolete I57 trigger contract, and I60 now explicitly checks F1 after actual GUI Open with no selected tool (the B41 user-facing regression). Plans/insights/CHANGELOG synchronized with current B production B41 entry. Exact-head I60 and I57 have started alongside I46/I47/I53. No full CI/PDF/screenshots verdict yet; draft #89/#90 stay unmerged until complete review and expected-head protocol. Previous 20/20 evidence is old source tree only; physical Win10/MiKTeX and M1/M4/XeLaTeX remain NOT_RUN.

…proof)

I60 (stacked QA): actual B41 inspector pinned Apply X11 + source/PDF proof

i-shutov commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

B41 + I60 independent final-head acceptance — 2026-11-02

Exact B41 HEAD a49a1ea9eabc9404349079b3d6df479db89ae0a6, main base 48447d5916fa190b3ca7312130bde45d695ffd16, app/src d290bdad0de0058b538a26be0209a97f2626f76a; accepted stacked QA #90 merge a49a1ea.... All 9 distinct workflows SUCCESS on exact B41 HEAD, including:
Linux/macOS/Windows Rust,
D QA matrix,
actual Windows Server 2022 MiKTeX,
external N1 XeLaTeX,
Unicode glyphs,
real X11 I46,
real X11 I47,
I53,
I57.

Independently downloaded exact-B-head artifacts: I46 21/21, I47 47/47, I57 four libraries 112/112, N1 9/9 file hashes; MiKTeX auditor independently verified 6/6 PDF SHA, embedded DejaVuSerif/LatinModernMath with Cyrillic+math, and identical before/after registry of 9130 installed packages. MiKTeX flags include --disable-installer; hosted private MiKTeX 25.12 with Windows Server is not physical Windows 10. Screenshots manually accepted in exact-tree stacked QA #90 (231/231 source/PDF/evidence file SHA), including genuine pinned C Apply, distinct native/visual Undo, GUI Open and CRLF, four distinct library toggles, generic Russian F1 help after Open and selected Circle C help. Actual Fit Page makes external PDF circle/Cyrillic visible inside egui; guide remains non-calibrated, small-scale line strokes can be faint.

Ready for expected-HEAD main merge, but not release acceptance. Post-merge main CI must run separately and be inspected; physical Win10 x64/MiKTeX and Mac M1/M4/XeLaTeX remain NOT_RUN. No second C catalogue, TeX/CAS rewrite, silent package install or driver fallback.

@i-shutov
i-shutov marked this pull request as ready for review November 2, 2026 07:09
@i-shutov
i-shutov merged commit 93db204 into main Nov 2, 2026
18 of 21 checks passed
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