Le volet des ressources retient ce qu'on lui montre - #29
Merged
Conversation
La page Projet n'avait qu'un chargement, celui de son arrivée : pour voir une ressource éditée hors d'AURA, il fallait revenir sur l'écran. L'en-tête du navigateur gagne le bouton que le volet des sessions actives portait déjà, avec le même libellé accessible. Il n'appelle pas `refresh` : celui-là vide la visionneuse et represélectionne le premier fichier, donc recharger l'arbre ferait perdre le fichier qu'on était en train de lire. `reloadResources` ne touche qu'à l'inventaire et aux plans, ne pose pas le voile de la page entière, et signale son échec en notification plutôt qu'en écran d'erreur. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Le volet des sessions actives lisait le même inventaire que la page Projet mais n'en passait qu'une partie au navigateur : les dossiers inclus restaient dans la réponse, invisibles. Un dossier qu'on a demandé à voir doit se voir partout où l'arbre du projet se montre, sinon l'inclusion n'a de sens que sur un écran. Le volet ne prend pas `can-include` : on lit les dossiers ici, on les choisit dans la page Projet. Un même réglage éditable depuis deux écrans, c'est deux endroits où le corriger. `ResourceSource` gagne donc `included`, sa quatrième provenance, et `ResourceDialog` la route de lecture qui va avec — la cascade de ternaires qui choisissait le lecteur devient une table, qui ne peut plus oublier un cas. Le compteur du volet, lui, compte maintenant ce que l'arbre montre. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Cinq fichiers n'étaient jamais passés sous `pnpm format` : des sauts de ligne dans les valeurs CSS, deux appels de test coupés à la main, un import éclaté en cinq lignes et le tableau `exclude` du tsconfig racine. Prettier n'a pas bougé depuis le premier commit — c'est donc un retard, pas la conséquence d'une montée de version. `pnpm lint` ne l'attrapait pas : la config prettier d'ESLint désactive les règles en conflit, elle ne vérifie pas la mise en forme. Seul `prettier --check` le voyait, et personne ne l'appelait. Aucun changement de comportement. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
La visionneuse ne gardait sa sélection qu'en mémoire locale : un F5 sur la fiche d'un projet, et le panneau revenait au CLAUDE.md racine, quelle que soit la page qu'on était en train de lire. L'URL porte maintenant le fichier ouvert (`?src=…&f=…`). En `replace` et non en `push` : parcourir l'arbre n'est pas une navigation, et empiler chaque clic dans l'historique rendrait le retour arrière inutilisable. Le lien devient partageable au passage. La restauration ne se fie pas au seul chemin. Un `rel` ne veut rien dire hors de son propre magasin, et le fichier peut avoir disparu entre-temps : elle le cherche dans l'inventaire fraîchement chargé, et rend la main à l'auto-sélection s'il n'y est plus — un fichier retiré du disque, ou d'un dossier qu'on vient d'exclure, ne doit pas ouvrir un panneau vide. Fermer la visionneuse vide aussi l'URL. Sans quoi le rechargement suivant rouvrirait ce qu'on venait de fermer. Co-Authored-By: Claude Opus 5 (1M context) <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.
Ce que change cette PR
Le volet des ressources de la fiche projet ne retenait rien, et n'en montrait qu'une partie ailleurs. Quatre commits, un même sujet.
Il ne se rechargeait pas. La page Projet n'avait que le chargement de son arrivée : pour voir une ressource éditée hors d'AURA, il fallait quitter l'écran et y revenir. Le navigateur gagne le bouton que le volet des sessions portait déjà. Il n'appelle pas
refresh— celui-là represélectionne le premier fichier, donc recharger l'arbre ferait perdre la page qu'on est en train de lire.Il cachait les dossiers inclus au volet des sessions. Les deux surfaces lisaient le même inventaire, mais le volet n'en passait qu'une partie au navigateur. Un dossier qu'on a demandé à voir doit se voir partout où l'arbre se montre.
ResourceSourcegagne donc sa quatrième provenance, et la cascade de ternaires qui choisissait le lecteur devient une table — qui ne peut plus oublier un cas.Il oubliait le fichier ouvert à chaque F5. La sélection ne vivait qu'en mémoire locale : un rechargement, et le panneau revenait au CLAUDE.md racine quelle que soit la page lue. Elle passe dans l'URL (
?src=…&f=…), ce qui rend le lien partageable au passage.S'y ajoute un commit de formatage sans effet : cinq fichiers n'étaient jamais passés sous
pnpm format.Vérifié
pnpm lintpnpm typecheckpnpm test— 390 passés, 1 ignoré, 44 fichierspnpm build— le seul à typersrc/L'essai portait sur le comportement qu'aucun test unitaire n'atteint : ouvrir
CONTRIBUTING.mdsur la fiche detos, presser F5, vérifier qu'il revient — et non leCLAUDE.mdracine. Puis forcer?f=DISPARU.mdà la main : la visionneuse retombe sur l'auto-sélection et l'URL se corrige d'elle-même, sans panneau vide.À savoir
L'URL s'écrit en
replaceet non enpush. Parcourir un arbre de fichiers n'est pas une navigation : empiler chaque clic dans l'historique rendrait le retour arrière inutilisable, il faudrait autant de retours que de fichiers consultés pour quitter la page.La restauration ne se fie pas au seul chemin. Un
relne veut rien dire hors de son propre magasin, et le fichier peut avoir disparu entre-temps — retiré du disque, ou d'un dossier qu'on vient d'exclure. Elle le cherche donc dans l'inventaire fraîchement chargé et rend la main à l'auto-sélection s'il n'y est plus. C'est ce que vérifie le second essai ci-dessus.Aucune écriture dans
~/.claude: les quatre commits ne touchent qu'à la lecture et à l'affichage. Les gardes deserver/ne sont pas concernées.🤖 Generated with Claude Code