Contribuer à Ğecko, c'est facile!

@BulmAnanaBelle en effet je lui ai mis le lien vers ton texte

****

17815865137237478277794519210228 Claude:

J’ai bien reçu le message de Bulm,AnanaBelle — c’est important, je m’arrête dessus. :backhand_index_pointing_down:

:warning: Risque de chevauchement sur l’accessibilité (a11y)

BulmAnanaBelle te dit qu’elle fait aussi des modifs sur la partie a11y de son côté. Or nous touchons
à l’a11y nous aussi :

  • Notre MR n°2 (n°67) = tooltips d’accessibilité sur la barre du portefeuille.
  • Notre MR en cours (avatar) inclut le point 4 = tooltip + Semantics « Changer la photo de profil ».

Il y a donc un vrai risque de faire deux fois le même travail, ou de créer des conflits sur les mêmes
fichiers.

Pour éviter ça, j’ai besoin de voir sa liste. Peux-tu me copier ici le contenu de son post avec le
spoiler (les détails des corrections a11y qu’elle compte faire) ? Je vérifierai si le point 4 (et la
MR n°67) recoupent son travail. Selon le cas, on pourra :

  • soit retirer le point 4 de notre MR avatar (et la garder en « 1+3 » pur, hors a11y),
  • soit se répartir clairement les zones (elle / nous) pour ne pas se marcher dessus.

En attendant ta réponse, je relance l’app pour que tu puisses quand même tester le point 1 (clic sur
l’icône caméra), qui lui n’a rien à voir avec l’a11y. Je redémarre proprement l’instance en cours.

*********************

donc de mon coté on ne touche plus a a11y

on s’attaque aux autres problemes !

:innocent:

Pour le point 2, demande à claude de plutôt remplancer entièrement le package image_cropper par croppy, de lire sa doc à sont sujet, faire attention aux prérequis android, ios et toutes plateformes à son sujet, et bien le configurer pour chaque plateformes, et pour les besoin produits de l’app, que ça reste simple.

@BulmAnanaBelle

17815865137237478277794519210228 Claude:

répondre à BulmAnanaBelle sur le forum pour se coordonner sur l’a11y (lui dire qu’on lui laisse
l’avatar, et vérifier la MR n°67).

@poka je vais informer claude sur ce point merci

17815865137237478277794519210228 reponse de claude : croppy est un cropper écrit en Flutter pur → il marche sur toutes les plateformes (y compris
Windows), ce qui résout le problème desktop tout en unifiant le code. Je commence par étudier sa doc
(comme demandé) et cartographier l’usage actuel d’image_cropper.

dis lui de faire le nécessaire, de trancher les meilleurs décisions à prendre.
Keep pushing !

17815865137237478277794519210228 Claude:

Plan pour le point 2 (directive poka : remplacer image_cropper → croppy)

Branche dédiée (séparée de la MR avatar en cours), depuis master.

  1. Activer les native assets (flutter config --enable-native-assets).
  2. pubspec : retirer image_cropper, ajouter croppy ^1.5.3 → flutter pub get.
  3. Réécrire changeAvatar (wallet_management_service.dart) : image_picker + croppy (recadrage carré +
    circulaire) pour toutes les plateformes — fini le « pas de crop sur desktop ». Il faudra passer un
    BuildContext (croppy ouvre une page).
  4. Nettoyer Android : retirer l’UCropActivity du AndroidManifest.xml (spécifique à image_cropper).
  5. Localisation croppy (déléguer dans MaterialApp si requis — à vérifier).
  6. Build + test sur Windows (le premier build compilera le C++ → c’est le point de risque n°1, à
    valider tôt).

:warning: À signaler pour la CI/Android : le build Android de croppy exigera le NDK + native assets activés
côté CI. À surveiller quand le pipeline tournera.

non tout sur la même MR avatar, c’est complètement lié, qu’il arrête de tout séparer comme ça, et qu’il s’occupe du NDK en CI.


tkt de toute façon je repasserai derrière cette partie là, au moment de la release.

<réponse de Claude>

Si il galère avec avec croppy il peut comparer avec crop_image, peut être plus simple à intégrer.

j’ai déjà vu avec Claude pour qu’il ne touche pas les écrans que tu as déjà touchés dans la MR 67. Je suis partie de là, il s’apprête à valider les premières modifs… il me dit de faire un fork pour pousser ces modifs… j’en suis là du coup !

┌───────────────┬──────────────────────────────┬──────────────────────────────────────────────────────────────────────┐
│     Écran     │           Élément            │                             Doit énoncer                             │
├───────────────┼──────────────────────────────┼──────────────────────────────────────────────────────────────────────┤
│ Accueil       │ menu hamburger (haut gauche) │ « Menu principal » (au lieu de « Bouton »)                           │
├───────────────┼──────────────────────────────┼──────────────────────────────────────────────────────────────────────┤
│ Coffre        │ gros bouton +                │ « Ajouter un nouveau sous-compte dans ce coffre »                    │
├───────────────┼──────────────────────────────┼──────────────────────────────────────────────────────────────────────┤
│ Profil/coffre │ macaron certifications       │ « X certifications reçues, Y émises... » (au lieu de « 40 71 »)        │
├───────────────┼──────────────────────────────┼──────────────────────────────────────────────────────────────────────┤
│ Profil        │ clé publique + copier        │ « Clé publique : ... Appuyer deux fois pour copier » (un seul élément) │
├───────────────┼──────────────────────────────┼──────────────────────────────────────────────────────────────────────┤
│ Historique    │ bouton retour                │ « Retour »                                                           │
└───────────────┴──────────────────────────────┴──────────────────────────────────────────────────────────────────────┘

:tada: C’est poussé et la Merge Request est créée !

:white_check_mark: MR !69 ouverte

:backhand_index_pointing_right: feat(a11y): labels lecteur d'écran (menu, retour, +, certifications, adresse) (!69) · Merge requests · clients / Ğecko · GitLab

  • Poussée depuis ton fork bulmananabelle/gecko → vers clients/gecko:master
  • Titre + description rédigés (5 corrections, validées TalkBack, 6 langues)
  • Suppression de la branche source à la fusion activée

super, keep pushing!

MR !69 est en attente de review/merge par Poka. Tu n’as plus rien à faire dessus — quand il la merge, ta branche sera supprimée
automatiquement et les 5 fixes seront dans master.

La suite : les items différés

Il reste ces anomalies a11y de ta liste (qu’on fera testées en direct sur ton tel) :

┌──────────────────────────────────────────┬──────────────────────────────────┬────────────────────────────────────────────┐
│                   Item                   │             Fichier              │                    Note                    │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Zone d'actions                           │ profile_view.dart                │ ⚠️ à faire prudemment (risque double-clic  │
│ (activité/virement/certifier)            │                                  │ sur paiement)                              │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Transactions débit/crédit + « bégaiement │ transaction_tile.dart,           │ nécessite de décider du nom parlé (« Junes │
│  » montants                              │ balance_display.dart             │  »...)                                       │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Date prochaine certif (« 7 janvier »)    │ cert_state.dart                  │ localisation à confirmer à l'écran         │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Clarté vocale switch de coffre           │ switch_safe.dart                 │ mineur                                     │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Fusion avatar + « Voir le profil »       │ wallet_header.dart               │ ⚠️ même fichier que !69 -> à faire après    │
│                                          │                                  │ son merge pour éviter un conflit           │
├──────────────────────────────────────────┼──────────────────────────────────┼────────────────────────────────────────────┤
│ Bouton contact mobile                    │ wallet_app_bar.dart              │ la MR !67 de Chiara a été abandonnée ->     │
│                                          │                                  │ c'est libre, on peut le faire !            │
└──────────────────────────────────────────┴──────────────────────────────────┴────────────────────────────────────────────┘

Ma proposition : je démarre une nouvelle branche depuis master avec les items qui ne chevauchent pas !69 (zone d’actions, transactions/montants, date certif, switch coffre, et le bouton contact désormais libre), un par un avec test TalkBack. La fusion avatar+profil, je la garde pour après le merge de !69.

non c’est bon c’est enregistré et tout fonctionne tres bien

on verra demain pour le rafraîchissement des avatars

bon ben c’est tout pour aujourd’hui! MR #68 repris et modifié j’ai mis le texte en français dans les commentaires

on a un bel outil pour recadrer , plus de marge blanche dans windows et si on clic sur l’appareil photo on arrive sur la galerie et plus sur le profil (en plus qq me disait avoir des doigts trop gros pour y arriver sur le telephone )

ca bosse ca bosse ! merci Claude

je veux bien les liens direct vers vos MR à chaque fois :slight_smile:

Et aussi pour info, vous pouvez lui demander d’installer l’outil de CLI gitlab sur votre machine et de le configurer pour qu’il puisse utiliser votre github directement, et ainsi pouvoir créer les PR lui même, les issues, ect … et de garder ça en mémoire. Il ne vous demandera que de cliquer sur un lien pour s’authentifier pour que ça fonctionne.


Autre info (j’essaie de ne pas vous submerger d’info, je vous les donnes au fur et à mesure):

Quand vous ouvre claude avec la commande claude --dangerously-skip-permissions, il s’ouvre dans le répertoire dans lequel vous êtes.
Dans un temrinal ou un powershell, vous êtes par defaut dans un répertoire.
VOus devez faire cd mon_repertoire_où_je_aller pour changer de répertoir.
Là vous ouvrez claude toujours depuis votre répertoire home, puis il a gardé en mémoire de se déplacer lui même là où le code de gecko a été cloné.

Ce n’est pas idéal, le mieux serait de toujours ouvrir claude --dangerously-skip-permissions depuis le répertoire de gecko pour qu’il intègre bien le CLAUDE.md de gecko dans sont pre-prompt par defaut. Et garde en mémoire vos sessions précédentes.

Ce que je vous conseil: donner a claude tout ce message dpeuis le début pour qu’il comprenne le context, demandez lui de vous créer un alias “yolo” pour que ça ouvre la commande claude --dangerously-skip-permissions automatiquement, mais en pouvant optionnelemnt passer en arguement “gecko” pour qu’il se déplace dans le bon répertoire de gecko avant d’executer la commande.

De sorte, les prochaines fois, en ouvrant votre powershell, vous n’aurez qu’a fait “yolo gecko” pour ouvrir claude pour gecko.

Vous comprenez ?

Merci @poka (tu as reformaté le tableau ? j’ai demandé à écrire en md pour coller mon avancement ici…) le lien de la MR était dans mon message précédent, désolée si je fais trop de messages…

J’ai proposé “June” pour lire “Ğ1” dans la continuité du montant affiché au lieu d’avoir le montant lu d’un côté puis l’unité lue ensuite.
Et je vais préciser pour Gtest de dire GT ou GD ? Qu’en dites-vous ?

PR 67 et 68 mergés.

@BulmAnanaBelle concernant ta PR 69, j’ai laissé une review:

Attention en faisant ça, à savoir que le VoiceOver va dont épeler l’adresse au format court, tous les caractères.
Est-ce que c’est bien ce qu’on veut ? Est-ce qu’il y a de plus pratique pour un aveugle ?

Tu peux demander à CLaude d’aller voir cette review, mais c’est une question à trancher, est-ce que demander aux VoiceOver d’épeler les adresses au format court sur les boutons et infos associés ? Ou est-ce qu’on réfléchie à un autre mécanisme ? Je ne sais pas, à voir avec les aveugles ce qu’ils en pense.

ok je le note

pour l’ouverture apres des essais malheureux il m’a dit de faire

  • Taper: cd .local

  • touche tab pour afficher /bin

  • Taper claude --continue pour reprendre ou on en était

je me note la procédure pour la faire demain

deja je lui ai demandé de faire son pull etc.. au démarrage et il a enregistré une procédure automatique pour ne pas oublier

il n’aime pas ton main local et me corrige a chaque fois pour dire que c’est master :rofl:

ah oui effectivement c’est master sur gecko, autant pour moi!
keep pushing

PS : Je n’ai pas fermé la console depuis 2 jours :sweat_smile: donc je n’ai pas eu de problème de contexte ou de redémarrage…

@poka tu peux nous expliquer du coup le “gh” stp ?

Excuse moi c’est ma faute j’ai édité mon message entre temps, j’ai dit n’importe quoi, gh c’est pour github j’ai oublié qu’on était sur notre propre gitlab …
Il faut donc voir avec claude si il existe un équivalent pour gitlab self hosted, ou sinon qu’il installe un MCP pour faire ça facilement à l’avenir.

Sinon oublie la partir gh/MCP et continuez ce flow où il vous donne les lien à faire à la main.

Mais mon conseil concernant l’alias “yolo gecko” tiens toujours par contre.

Hello,

Pensez à promouvoir la collecte pour l’abonnement afin de le maintenir (200€/mois) :wink:

https://www.helloasso.com/associations/axiom-team/formulaires/16