Le geste sans repli de cet écran — déplacer une plage — puis le geste inverse laissaient un brouillon qui rend exactement la configuration de la box. L'écran le traitait comme n'importe quel brouillon, et n'offrait plus pour en sortir que des portes mal nommées. Quatre messages, tous faux au même instant : la barre « Modifications en attente » la sortie d'écran « vos changements n'ont pas été envoyés » adopter un rang « enregistrez ou annulez vos modifications » retirer une charge idem Il n'y avait plus rien à enregistrer, ni rien à perdre. `draftIsNoOp` nomme l'état : un brouillon dont les charges utiles brutes, clés triées, sont identiques à celles de la box — ce qui couvre l'ordre ET un patch de champ. `hasSubstantiveChanges` garde désormais les trois portes ; la barre, elle, continue de s'afficher, parce que c'est là qu'est la sortie. Elle dit maintenant « L'ordre est revenu à celui de la box — il n'y a rien à enregistrer » et n'offre qu'un geste, « Terminer ». Pas « Enregistrer » : réécrire tout l'ensemble pour n'y rien changer reconstruirait les charges et réarmerait les verrous, au prix de zéro. ⚠️ Le remède n'est PAS d'effacer le brouillon dès qu'il devient sans effet : la barre disparaîtrait sous le doigt à l'instant où l'utilisateur repose la plage, et « j'ai décidé » redeviendrait « il ne s'est rien passé ». Un état se conclut, il ne s'évapore pas. Un test le fige. Et la note sur le glissement est REPRISE. J'y affirmais un défaut ; le test au doigt montre que le réordonnancement fonctionne, liste dépliée comprise. Le mécanisme du shrinkWrap reste écrit — il est probablement juste — mais comme une LIMITE CONNUE non reproduite, avec le protocole en trois gestes (A témoin, B discriminant, C cause), le contournement (replier les blocs) et le remède nommé. On ne réécrit pas un écran qui marche sur la foi d'une lecture de code. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GKM8FDNHZWogAsjjfB8pSw
etm_powersync_app
A new Flutter project.
Getting Started
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Description
Languages
Dart
91.5%
C++
4.3%
CMake
3.3%
Swift
0.4%
HTML
0.3%
Other
0.2%