Repository navigation
Des captures de référence — et le vrai blocage n'était pas lavapipe - #720
Merged
Merged
Conversation
Décision 2 de docs/v7-frontend.md. La note disait « il faut lavapipe dans l'image du workflow, donc ça n'a pas été tenté ». lavapipe est la partie facile. Le vrai blocage est le graphe de dépendances, et il est côté Windows : egui_kittest rend par wgpu ; lbm-hook épingle windows 0.62 ; cargo unifie windows-core à 0.62 pour wgpu-hal ; gpu-allocator 0.28, que le back-end DX12 de wgpu-hal appelle, a été bâti contre 0.58. Leurs ID3D12Device sont alors deux types différents et wgpu-hal lui-même ne compile pas. Rien ici ne peut corriger ça — c'est à l'amont. Et une dev-dependency atteint `cargo test`, qui est exactement ce que la CI lance, donc wgpu est tenu hors de Windows par une dépendance ciblée cfg(not(windows)). Vérifié dans les deux sens : le lint Windows du workspace reste propre, le rendu marche sous Linux. Quatre captures : la barre en Running, la barre sans agent (le seul état dont l'arbre d'accessibilité ne peut pas répondre — « désactivé » y est un drapeau, à l'écran c'est une couleur), la carte à deux écrans, un cadre avec son nom. Deux choses que le premier rendu a montrées et qu'aucun test d'arbre n'aurait pu montrer : - **Harness::render peint sur rien.** Le `Ui` d'`App::ui` n'a pas de fond, la fenêtre l'enveloppe dans un CentralPanel, et une capture sans panneau rend du blanc sur transparent — composité ensuite sur ce que le visionneur met derrière. La première série ressemblait à des rectangles noirs sur papier blanc, avec un bloc sombre parasite qui n'était que de l'alpha prémultiplié. Image et application doivent être la même chose, sinon la référence épingle une fiction. - **À 900×600, la carte à deux écrans n'a aucun nom.** Le nom vaut la moitié de la bordure du haut, ce qui passe ici sous le plancher de 7 pt. Les tests d'arbre existants n'ont jamais vu ça : ils utilisent une fenêtre de 1200×900. C'est la question ouverte du document rendue visible — le plancher décide bien du cas courant. Les références ont été engendrées sur un GPU réel ; si le rastériseur logiciel de la CI ne s'y accorde pas, l'artefact du workflow donne ce qu'elle a rendu. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
mgth
force-pushed
the
feat/reference-snapshots-in-ci
branch
from
September 16, 2026 09:36
d34df49 to
27cb5fb
Compare
This was referenced Sep 16, 2026
mgth
added a commit
that referenced
this pull request
Sep 16, 2026
Les quatre de docs/v7-frontend.md sont maintenant tranchées et livrées (#719, #720, #721). Ce commit met le document à jour pour les décisions 2 et 4, remet la section dans l'ordre 1-2-3-4, et laisse ouverte la seule question qui l'est encore : le plancher de lisibilité du nom, qui n'était pas une des quatre et qui est désormais regardable. Le motif qui traverse les trois « décisions » qui n'en étaient pas : **ce qui les bloquait était une raison écrite qui avait cessé d'être vraie.** lavapipe n'était pas le blocage (c'est le graphe de dépendances, côté Windows) ; eframe n'était plus un obstacle au spike des mires (il est dans le workspace depuis #694) ; et fermer la liste des modes ne décidait rien sur le produit (les sept plugins sont tous dans ce dépôt). Une note « pas tenté parce que X » vieillit : vérifier X avant de la recopier. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Décision 2 de
docs/v7-frontend.md. La note disait : « il faut un rastériseur logiciel (lavapipe) dans l'image du workflow. C'est le seul point qui touche la CI, donc il n'a pas été tenté. »lavapipe est la partie facile. Le vrai blocage est le graphe de dépendances, et il est côté Windows :
Rien ici ne peut corriger ça — c'est à l'amont. Et une dev-dependency atteint
cargo test, qui est exactement ce que la CI lance : le job Windows compile tout le workspace. Donc wgpu est tenu hors de Windows par une dépendance cibléecfg(not(windows)), vérifiée dans les deux sens (lint Windows du workspace propre, rendu fonctionnel sous Linux).Les captures
Quatre : la barre en Running, la barre sans agent, la carte à deux écrans, un cadre avec son nom.
La barre sans agent est le seul état dont l'arbre d'accessibilité ne peut pas répondre : « désactivé » y est un drapeau, à l'écran c'est une couleur. Un thème qui ne grisait rien se lirait comme une application qui ne répond simplement pas.
Deux choses que le premier rendu a montrées, et qu'aucun test d'arbre n'aurait pu montrer
Harness::renderpeint sur rien. LeUid'App::uin'a pas de fond, la fenêtre l'enveloppe dans unCentralPanel, et une capture sans panneau rend du blanc sur transparent — composité ensuite sur ce que le visionneur met derrière. La première série ressemblait à des rectangles noirs sur papier blanc, avec un bloc sombre parasite qui n'était que de l'alpha prémultiplié. Image et application doivent être la même chose, sinon la référence épingle une fiction. Corrigé : le harnais enveloppe dans unCentralPanel, comme la fenêtre.À 900×600, la carte à deux écrans n'a aucun nom. Le nom vaut la moitié de la bordure du haut ; à cette taille ça passe sous le plancher de 7 pt et le plancher le supprime. Les tests d'arbre existants n'ont jamais vu ça — ils utilisent une fenêtre de 1200×900, où les noms survivent. C'est la question ouverte du document rendue visible : « le plancher décide du cas courant ». La référence est gardée telle quelle, et le test dit pourquoi.
Ce qu'il reste à savoir
Les références ont été engendrées sur un GPU réel. Le texte d'egui est rastérisé côté CPU et le harnais rend en
RendererOptions::PREDICTABLE, donc il y a une vraie chance que lavapipe s'y accorde — mais je ne peux pas le vérifier ici. Si la CI ne s'accorde pas, le workflow téléverse ce qu'elle a rendu (snapshot-diffs) et les références sont remplacées par les siennes.🤖 Generated with Claude Code