Commit Graph
67 Commits
Author SHA1 Message Date
YvvandClaude Opus 5.5 a03473a01e Lot U3c : formula.reading dit « quand tout le monde vote, la part exigée est la majorité M » (fr, en, es) à la place de « la majorité M suffit », faux pour W ≤ 15 ; les quatre raisons de la file de T4 disent « Proposition d'amorce réécrite / ajoutée »
- fr : « … ; quand tout le monde vote, la part exigée est la majorité M. » ; en : « …; when everyone
  votes, the share asked is the majority M. » ; es : « …; cuando vota todo el mundo, la proporción
  exigida es la mayoría M. » Le reste de la phrase inchangé ; rien de B^W (formula.B.wot le dit dans
  la toile).
- seed_amend.rs (2026-11-03-i1-amorce, -e1-amorce, -e2-amorce) et article_amend.rs
  (2026-11-03-e12-responsabilite-civique) : « Proposition seed » → « Proposition d'amorce » dans la
  raison seulement ; aucune empreinte, aucun texte, aucune garde ; seed_proposal_amend.rs (M6,
  appliqué en production) intact.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 23:39:08 +01:00
YvvandClaude Opus 5.5 7d8be18c3b Lot U3c : les tests d'abord, rouges sur le code de d66823b
- ld-engine inertia::when_everyone_votes_the_share_asked_is_m_on_every_electorate : pour tout W de 1 à
  10 000 000, les cinq crans, G aux deux bornes de la participation habituelle, les quorums 1, 2 et W :
  quand les W votent, la part exigée des T′ = max(W, Q) votants est M, exactement ; la phrase d'avant
  (« la majorité M suffit », lue ⌈M·W⌉ « pour ») fausse sur 17 couples (W, cran), tous W ≤ 15, une voix
  de plus (B^W) ; vert sur le moteur inchangé, ses dents vues rouges par trois mutations (le plafond de
  la participation retiré, B^W mis dans la part, B^W retiré de R).
- web/tests/unit/rules.test.ts : formula.reading épinglée en fr, en, es (« la part exigée est la
  majorité M ») ; aucune chaîne des catalogues ni du texte des composants ne dit que la majorité suffit ;
  la liste fermée de ce que l'écran dit de la pleine participation (formula.M, formula.reading,
  settings.reading) ; inertia.test.ts suit. 5 tests rouges sur 116.
- tests/amorce.rs the_queue_names_the_starter_proposals_as_the_screen_does : les quatre raisons
  « Proposition d'amorce réécrite / ajoutée » (I1, E1, E2, E12), dans les constantes et dans les cinq
  lignes de file que T4 écrit sur une base comme la production après M8 ; celles de M6 inchangées. Rouge
  sur les constantes, et sur la file quand les constantes sont sautées.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 23:38:07 +01:00
YvvandClaude Opus 5.5 848968b154 Lot U3b : le tableau des cinq crans se lit en entier dans le panneau des réglages, sur bureau comme sur téléphone (C44 vert). La cause : le tableau ne resserrait ses cellules et ne repliait ses en-têtes et le nom du cran que sous 480 px d'écran (@media), alors qu'il vit dans le panneau de droite, 27rem quelle que soit la largeur de l'écran (394 px utiles, à peine plus que la feuille d'un téléphone, 374) : sur bureau, en-têtes sur une ligne et marges larges, il demandait 412 à 501 px et défilait de côté, « Voix pour » hors de vue. Le correctif, seulement dans FormulaSettings.svelte : les règles du téléphone pour toutes les largeurs (cellules à 0,4rem 0,3rem, en-têtes et nom du cran repliables, un chiffre jamais coupé) ; plus de @media. Aucun texte changé, le panneau inchangé
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 22:52:08 +01:00
YvvandClaude Opus 5.5 233cc45ff8 Lot U3b : C44 en trois langues (fr, en, es), rouge sur l'interface de a47aed0 — 12 cas sur 18 : à 1360 et à 1024, en tête et depuis une version, le tableau défile (fr 412 / 421, en 406 / 424, es 472 / 501 px pour 394) ; sur Pixel 7, vert dans les trois langues. Un premier correctif (en-têtes repliés, marges du bureau gardées) laissait l'espagnol à 406 px : le test le dit désormais
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 22:50:38 +01:00
YvvandClaude Opus 5.5 c626f1aded Lot U3b : le test d'abord, rouge sur a47aed0 — C44 (ouverture.spec.ts) : les réglages de la formule ouverts, en tête du document et depuis une version (« cet article »), à 1360 × 900, à 1024 × 768 et sur Pixel 7, chaque cellule du tableau des cinq crans, en-têtes compris, dans le panneau, son texte dans sa cellule, ni le tableau, ni le panneau, ni la page ne défilent de côté. Rouge à 1360 et à 1024 (le tableau défile, 412 et 421 px pour 394 ; « Voix pour » et ses cinq chiffres hors du panneau), vert sur téléphone
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 22:45:59 +01:00
YvvandClaude Opus 5.5 8528a269fc Lot U3 : l'interface de l'Acte d'engagement (Yvv, 03/11) — avant le texte, hors vote, « Info ouverture doc de réf. » (OpeningInfo, lib/opening.ts) : le paragraphe d'Yvv mot pour mot à la place de doc.empty.seeds (sa première phrase tant qu'aucun article n'est en vigueur, puis « entrent en vigueur » où « y » n'avait plus rien à reprendre), le cran d'ouverture des Propositions d'amorce, du titre, de l'ordre de chaque section et des autres articles (avant tout changement voté) et le quorum de chaque cran, lus dans l'API ; une séparation (un filet de la couleur de la clé de voûte, jamais une bordure) ; plus les titres « Introduction » et « Engagements fondamentaux » dans le texte. Les informations de F1, F1.1, F1.2, N1, N1.1 et O1 là où elles servent : vote.permanent, vote.rival, vote.others.rule, formula.Tprime, formula.round, formula.B.wot, formula.G, settings.share.note, settings.usual.quorum, settings.gradient, order.edit.effect ; les termes définis de T3c (« à la participation habituelle », « quorum de l'article », « part exigée », « repose sur moins de N propositions votées depuis un an »), plus de « comme d'habitude ». « Proposition d'amorce » (Starter proposal, Propuesta de arranque). Le mot d'Yvv pour qui n'est pas invité, à l'accueil sans session (à la place du bouton Ğ1 tant que la connexion Ğ1 n'est pas active) et sur « Se connecter » (signin.g1.pending sans redite). Réordonner : la ligne sous le pointeur lue dans la mise en page (offsetTop), pas là où animate:flip la montre — une poignée tirée sur plusieurs lignes ne revient plus en arrière ; le pointeur capturé par la liste. API : seedFeatured sur chaque version (seul changement sous crates/). C1, C3, C20, C27, C35, C38 suivent les mots
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 22:28:41 +01:00
YvvandClaude Opus 5.5 9d478d668a Lot U3 : les tests d'abord, rouges sur 590ccd7 — e2e C39 à C43 (5 / 5 rouges : le chapitre « Info ouverture doc de réf. » absent, « Proposition seed », le mot pour qui n'est pas invité absent, une poignée tirée sur trois lignes s'arrête en place 2, les informations de fonctionnement absentes) ; vitest opening.test.ts (lib/opening absent) et rules.test.ts (25 rouges : les mots d'Yvv, « Proposition d'amorce », le terme défini « participation habituelle », chaque phrase de règle épinglée avec le test qui la prouve) ; Rust the_view_keeps_which_versions_the_seed_put_forward_once_they_enter_into_force (seedFeatured absent de la vue)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 22:28:32 +01:00
YvvandClaude Opus 5.5 3996f6f99d Lot T4 : l'ADR 0014, le fichier de relecture textes-amorce.md, les contrôles e2e au document de T4
ADR 0014 « Les informations de fonctionnement ne se votent pas » : ce qui sort
(F1, F1.1, F1.2, F1.3, N1, N1.1, O1 et l'ordre de leurs sections), comment (rien
d'effacé, units.retired_at), la garde et ses refus, aucun vote futur (404 / 400),
ce que dira l'interface (U3), la file de publication, le retour arrière (prouvé
avec l'image de de1b7eb), les limites. textes-amorce.md : chaque texte avant /
après en fr, en, es, E12, ce qui sort, les choix à confirmer par Yvv.

e2e (aucun changement de web/src) : C3, C9 (27 articles, cinq sections, quatre
Propositions seed), C17 (33 modules à voter), C18 et C31 (le texte d'I1 de
T4), C25 (cinq lignes d'ordre, E12 dans l'ordre de « fondamental »), C35 (E12
entre E1 et E2 ; le glisser d'une place), C38 (4 Propositions seed).
CONTROLES.md suit ; CLAUDE.md : article_amend.rs, retire.rs, amorce.rs,
fixtures/seed-m8, le seed de 27 articles, l'invariant.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 21:45:27 +01:00
YvvandClaude Opus 5.5 1fadc1ecb6 Lot U2 : le lecteur — cibles de 44 px sur téléphone dans tout le vote déplié et « Tout déplier » ; les trois lectures passent à la ligne au lieu de cacher « Si tout passe » ; « Proposer cet ordre » éteint dit pourquoi, à côté ; l'inertie dite une fois (ses crans dans « Inertie »), la ligne d'une Proposition seed s'efface sous son vote déplié, les versions déjà listées ne sont pas redites dans « Autres versions » ; l'en-tête compte ce que montre la liste (les Propositions seed à part) ; un changement d'inertie d'un ordre ou du titre a sa pastille sur la ligne du module (fr, en, es)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 11:32:35 +01:00
YvvandClaude Opus 5.5 b0e849b9cb Lot U2 : settings.reading dit « au-delà du quorum » comme N1.1 et formula.reading (fr, en, es) ; l'anglais en un seul vocabulaire (for et against, jamais yes et no ; favour partout) ; le commentaire de threshold.rs écrit juste (la part la plus haute au quorum, puis qui baisse jusqu'à M), et un test qui le tient
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 11:25:36 +01:00
YvvandClaude Opus 5.5 b39f7678b0 Lot U2 : les contrôles d'abord, vus rouges sur l'interface d'avant — cibles de 44 px sur téléphone et les trois lectures entières (M2), « Proposer cet ordre » dit pourquoi il est éteint (C35), une information à un seul endroit dans le vote déplié (onceonly, C19, C36), l'en-tête compte ce que montre la liste et un changement d'inertie d'un module se trouve à sa ligne (C38), settings.reading et l'anglais (lexicon)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 11:24:00 +01:00
YvvandClaude Opus 5.5 dc0c477f88 Lot T2 : l'interface dit ce que fait la formule (inertia.explain, formula.reading : la part demandée, la plus haute au quorum, baisse quand la participation monte, jamais « presque l'unanimité ») ; quorum.error.voted « ne change pas », plus « ne change plus » ; fr, en, es
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 10:13:32 +01:00
YvvandClaude Opus 5.5 f6c110a60c Lot T2 : l'espace perdu en tête d'un bloc Svelte (« 0 contredont 1 simulé ») ; le vote déplié rendu par svelte/server, une garde sur tous les composants (dix autres espaces collés : détails d'une version, menu) ; C34 lit la ligne entière
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 09:56:15 +01:00
YvvandClaude Opus 5.5 6fb82382c0 Lot U : « Autres versions » repliées dans le vote ; contrôles corrigés après le premier passage (état partagé, nom du titre en anglais, attente du chargement) ; le panier dit « simulé » ; CLAUDE.md (composants, panneau, 38 contrôles)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 08:19:15 +01:00
YvvandClaude Opus 5.5 5d3b5152ff Lot U : chaînes devenues inutiles retirées (fr, en, es) ; niveau d'eau sans mouvement si réduit ; note de conception : la ligne oui / non et le quorum de l'auteur
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 08:09:33 +01:00
YvvandClaude Opus 5.5 5bbcfcdfd5 Lot U : contrôles repris sans les affaiblir (C3, C4, C6, C19 à C21, C23 à C26, C34, M1) ; CONTROLES.md (C35 à C37) ; retouches vues aux captures (ligne d'ordre discrète, en-tête plus court sur téléphone, liste à poignées)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 08:08:28 +01:00
YvvandClaude Opus 5.5 4cf4e47ee9 Lot U : le lecteur refait — l'ordre en une ligne au bout de sa section, poignées sur place (Reorder), le titre et l'ordre votés à leur place ; Propositions seed en tête quand rien n'est en vigueur ; Propositions en cours repliées par section ; panneau sans onglets ; oui pour passer · non pour bloquer ; quorum de l'auteur ; votes simulés dits simulés
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 07:59:24 +01:00
YvvandClaude Opus 5.5 70f7bb7247 Lot U : C35 à C37 écrits avant le code et vus rouges (poignées et vote, oui pour passer · non pour bloquer, quorum de l'auteur) ; leurs mots en fr, en, es ; needOf ; le vote simulé ne promet plus son effacement à l'ouverture de la chaîne
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 07:51:07 +01:00
YvvandClaude Opus 5.5 af08fdaa8b Lot U : après la fusion, les contrats réels de S et V remplacent les champs annoncés ; canCast et byChain retirés (le serveur dit open et way)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 07:43:51 +01:00
Yvv d367d73a9e Merge branch 'chantier/acte-certification' into lot/u-lecteur 2026-11-03 07:34:49 +01:00
YvvandClaude Opus 5.5 0a63bd7876 Lot U, travail en cours : icône poignée, crans dessinés (Crans), champs annoncés de S et V, canCast et byChain
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 07:34:49 +01:00
YvvandClaude Opus 5.5 d57326d8ad Lot V, VoteFold (changement minimal autorisé par orch, M6 sans U) : « ton vote » lit myVoteState — simulé au lieu d'enregistré, rien d'enregistré pour une intention en attente ; la note du vote simulé près des boutons ; « dont N simulés » sur les totaux. C34 le vérifie sous l'article, vu rouge puis vert
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 06:12:28 +01:00
YvvandClaude Opus 5.5 c06c37a24a Lot V : contrôle C34 (la chaîne fermée, Monnaie libre vote quand même : le vote simulé compte aussitôt, marqué dans « Tes bulletins ») ; C24 dit que le serveur sans compte des votes simule depuis le lot V ; CLAUDE.md et CONTROLES.md (buffer, casts_simulated, simulation.rs, C34, 35 contrôles / 36 tests)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 06:03:33 +01:00
YvvandClaude Opus 5.5 f62347cc6b Lot V, interface : les types du contrat (tallyPending, tallySimulated, myVoteState, vote.simulated, mode des bulletins, publication.waitsFor, messages « ballot ») ; i18n des états (simulé, écarté par une objection, messages d'un vote écarté) en fr, en, es ; la boîte « Messages » dit les votes écartés ; « Tes bulletins » marque un vote simulé
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 05:49:57 +01:00
YvvandClaude Opus 5.5 5cd10d16c6 Licence : AGPL-3.0-or-later (choix d'Yvv du 2026-11-03), dans Cargo.toml, web/package.json, son verrou et le README
LICENSE inchangé.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 05:15:18 +01:00
YvvandClaude Opus 5.5 17addf8d9f Lot S, phase 2 : le quorum dans l'interface (fr, en, es), e2e 35 / 35
- types.ts : evaluation.quorum / yesNeeded / noNeeded, levels[].quorum, l'unité
  quorum / quorumDefault / canSetQuorum, doc.quorums (optionnels) ; publication
  « suspended » (ADR 0011) ;
- Réglages de la formule : la colonne « Quorum » des cinq crans et sa note, la
  participation de référence « deux fois 50, le quorum de référence » ; plus de
  ligne C ; sur téléphone, les six colonnes tiennent dans la feuille ;
- La formule du seuil : T' = max(T, Q), R = B^W + ratio(T')·T', la ligne Q (le
  quorum de la version) au lieu de C ;
- textes : deep.note, formula.reading, settings.* parlent du quorum, plus de C
  (test vu rouge puis vert, tests/unit/inertia.test.ts) ;
- e2e : Seuil 9 (cran 2) et 39 (cran 3) dans Monnaie libre, les quorums 12 · 12 ·
  50 · 50 · 50, voix pour à 100 votants 60 · 67 · 75 · 83 · 90, à 0 votant
  8 · 9 · 39 · 43 · 46.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 05:15:18 +01:00
YvvandClaude Opus 5.5 9a9c99b93b Lot S : « Proposition seed » dans l'interface (fr, en, es), le texte sans article en vigueur le dit ; e2e repris
Interface au strict nécessaire (le lot U refera la présentation) : la marque
« Proposition seed » là où une version est montrée (liste des propositions,
Détails, panneau Propositions), seedProposal?: boolean dans types.ts ; au-dessus
des ordres, « Aucun article n'est en vigueur » quand c'est le cas.

e2e : C3 (aucun texte en vigueur, 33 lignes, trois Propositions seed au cran 2),
C9 et C18 (« si tout passe »), C20, C23, C24 et M1 par la liste des propositions
dans Monnaie libre ; dans le groupe d'essai, I1, E1 et E2 entrent d'abord par le
vote (seedsInForce : deux voix puis leur retrait, le texte reste en vigueur) pour
les contrôles qui lisent un texte en vigueur (C4 à C6, C20, C21, C24, C28 à C31).
Boucle e2e : 35 / 35.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 04:27:41 +01:00
YvvandClaude Opus 5.5 48529e5409 e2e : l'accueil sous la voûte (C1 au bureau, M1 sur téléphone à 412 puis 360) : les trois points dans l'ouverture et centrés, le titre centré en deux lignes, rien d'incliné ni de débordant
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 03:58:08 +01:00
YvvandClaude Opus 5.5 c1275512e1 Accueil : sur téléphone, l'italique des trois points garde ses avances exactes (lettres et espaces réguliers)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 03:54:14 +01:00
YvvandClaude Opus 5.5 5637452040 WIP accueil : la bande des trois points sous la clé, centrée sur la naissance de l'arche ; marges latérales du dessin rognées
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 03:42:20 +01:00
YvvandClaude Opus 5.5 1027155091 WIP accueil : la voûte abrite les trois points (boîte à outils en tête), titre centré en deux lignes
Une clé i18n par ligne du titre (fr, en, es), jamais de <br> dans une chaîne.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 07:51:36 +01:00
YvvandClaude Opus 5.5 0919b467c9 Fusion du lot G : sur une version retenue par une objection, « contre » et retrait oui, « pour » non (Yvv, 01/11)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 01:29:35 +01:00
YvvandClaude Opus 5.5 5d1f8652fc v3 : interface d'une version retenue — « Contre » et « Retirer mon vote », jamais « Pour »
Sous l'article, une version retenue montre « Contre » et le retrait, avec la
phrase qui dit pourquoi. Dans le panier, elle se choisit en « contre » ou en
retrait ; « Tout pour » la saute et le dit, « Tout contre » la prend ; un « pour »
gardé d'avant l'objection quitte le panier (basket.kept). Les phrases qui disaient
« ne se vote plus » disent la règle d'Yvv, en fr, en et es. C28 ajusté.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 00:41:50 +01:00
YvvandClaude Opus 5.5 76b8e9f7be Licence : AGPL-3.0 (choix d'Yvv du 02/11)
LICENSE est le texte actuel de gnu.org (661 lignes, vérifié mot à mot contre le
texte SPDX) ; license = "AGPL-3.0-only" dans le workspace Cargo et package.json ;
README.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 00:40:47 +01:00
YvvandClaude Opus 5.5 4d4adcc281 v3 : relecture de cd7e683 — coquilles, objections et retraits
ci/woodpecker/push/app Pipeline was successful
ci/woodpecker/push/maquette Pipeline was successful
- Le revirement de l'auteur sur une coquille (reprendre une correction appliquée,
  valider une correction refusée) ne s'écrit que sur une version encore ouverte :
  Settle porte while_open ; et la garde de statut de write_text marche enfin
  (?9 restait NULL, le statut est le 8e paramètre).
- 0008 lève les signalements debout dont un côté est déjà retiré.
- Une seule objection debout par personne et par paire (index unique partiel) ;
  envoyée plusieurs fois à la fois, les autres reçoivent objection_exists.
- Un retrait relance l'adoption : la version que l'objection retenait entre aussitôt.

Tests vus rouges d'abord. Boucle : 230 tests Rust, svelte-check 0, 55 vitest,
e2e 35 / 35.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 10:00:29 +01:00
YvvandClaude Opus 5.5 033b331228 Fusion de la tête du chantier (924a40d : lots B2 et F) dans le lot D
Les deux côtés gardés partout. Aux coutures :
- une objection (redit / contredit) porte sur deux articles, jamais sur un module ;
  un ordre ne se corrige pas, ni par son auteur ni par un autre ; une coquille du
  titre suit le chemin de F (l'auteur du titre, un administrateur pour le titre
  de départ, ou 3 jours), et documents.title suit à l'application ;
- votable() couvre les modules ; leurs totaux passent par shown_tally, à l'écran
  et dans document.json ;
- « Modules à voter » ne compte plus une version retenue par une objection (test
  vu rouge) ; la liste du groupe la compte toujours parmi les propositions en cours ;
- le panier : une fonction pour les articles et les modules, avec les versions
  retenues de F ; un nouvel article se propose dans une section, à sa fin, et peut
  répondre à une objection ;
- migrations 0007 (modules) puis 0008 (objections) ;
- C25 et C26 supportent un groupe d'essai où une voix suffit (dès 16 membres).

Boucle : fmt, clippy -D warnings, cargo test (227), svelte-check 0, vitest 55,
build, e2e 35 / 35 (C1–C33 et M1).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 09:41:30 +01:00
YvvandClaude Opus 5.5 924a40d790 v3 : C22 ne suppose plus un petit groupe d'essai
Chaque connexion de développement rejoint tous les groupes : B2 et F en ajoutent
quatre chacun, l'essai passe de 13 à 17 membres. Dès 16, B^W passe sous la
précision du calcul et, C valant 1, la voix seule de Chiara fait entrer sa
version de « Connaissance suffisante » en vigueur. Conforme à l'ADR 0002 (essai :
C = 1) ; l'ADR 0007 le dit maintenant. Boucle : 202 tests Rust, svelte-check 0,
49 vitest, e2e 31 / 31.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 06:09:35 +01:00
YvvandClaude Opus 5.5 cd7e683a4b Fusion du lot F : objections redit / contredit, coquilles validées par leur auteur, messagerie, délai de 3 jours
Conflits avec B2 : docs.rs garde shown_tally / shown_evaluation et votable ;
proposals.rs sert les totaux montrés et « votable » ; CONTROLES réunit C24
(« faire une objection », le panier par son adresse), C28–C33 et les deux passages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 05:57:21 +01:00
YvvandClaude Opus 5.5 25af01154a v3 : C20, le cran actuel se clique sans être choisi (aria-disabled, l'automate envoie l'événement)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 05:49:15 +01:00
YvvandClaude Opus 5.5 9c8f4cc568 v3 : relecture de 7ffa4fd — un refus du nœud lâche le bulletin, le reçu ne dit vérifié que ce que scelle l'empreinte
polkadot-api lève InvalidTxError (JSON indenté) quand le nœud refuse la transaction :
elle est désormais lue comme « la chaîne a dit non » (rien n'est parti, le bulletin est
lâché), au lieu de rester en attente 24 h. La page /bulletins ne présente comme vérifiés
que la version, la révision et le choix ; l'article, le titre et le bloc du reçu sont dits
hors du sceau. ADR 0008 : trois affirmations corrigées (indexeur sans filtre, débit de la
tâche de fond, lectures qui n'utilisent pas encore shown_tally).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 05:46:28 +01:00
YvvandClaude Opus 5.5 785580c78f v3 : modules d'ordre et de titre — l'interface, restes mineurs (L11, C25–C27)
Chaque section du lecteur finit par l'ordre de ses articles (inertie 2) : ses
articles numérotés, son vote déplié, « Proposer un autre ordre » — une liste où
l'on clique un article puis sa place, ses flèches, ou le clavier. Le titre du
document (inertie 4) se vote et se propose sous le titre, « traduction à
revoir » quand il a changé. Les deux sont dans la liste des propositions, le
panier et la chaîne Ğ1 ; un nouvel article se propose dans une section, à sa fin.
La liste du groupe compte les propositions ouvertes des modules.

Restes mineurs : la participation ramenée se dit en deux temps (la mesure, puis
ce que le groupe demande), les lignes « habituelle » des réglages resserrées, le
sélecteur d'inertie se parcourt aux flèches (le cran actuel atteignable, jamais
choisi), la marque « seed a minima » porte le vrai nombre de votes.

Contrôles : C25 (ordre, dont la chaîne et le téléphone), C26 (titre), C27
(participation ramenée) ; C3, C17 (41 modules), C20 mis à jour.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 05:35:02 +01:00
YvvandClaude Opus 5.5 83f8ca0981 v3 : interface des objections, des coquilles validées et de la messagerie ; contrôles C28–C31
Une version retenue par une objection le dit sous l'article, à chacun
selon son rôle : la personne qui vote voit qu'elle ne se vote plus (les
votes faits restent) ; l'auteur, quoi faire (« Modifier l'article visé »
pour une redite, « Reformuler » pour une contradiction) ; la personne qui
objecte, lever ou réitérer avant l'échéance. Le panier la montre sans
choix et ne l'envoie jamais.

« Détails » : faire une objection (redit / contredit), les objections et
où elles en sont, les coquilles proposées par d'autres avec leur diff
resserré, valider / refuser / revenir, l'historique dit qui a validé.
Une coquille se propose sur toute version ouverte ou en vigueur.

Boîte « Messages » dans le menu, avec le nombre de non-lus (pastille sur
le bouton du menu en mobile) : objet, texte, gestes, échéance ; un message
traité n'a plus de geste. Répondre à une objection lit son message.

Trilingue (fr, en, es). C6 suit la règle : la coquille d'un administrateur
sur un texte du seed passe tout de suite ; C28–C31 couvrent le reste.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 04:21:20 +01:00
YvvandClaude Opus 5.5 c7d2791ad1 v3 : C32 et C33 votent « contre » sur des propositions qu'aucun autre contrôle ne lit
Le texte de Monnaie libre reste tel que C20 et C23 l'attendent (ils passent après dans
l'ordre des fichiers) ; rien n'entre en vigueur, rien ne devient bien coté.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 03:50:55 +01:00
YvvandClaude Opus 5.5 51c9a4771d v3 : vote par la chaîne, corrections de la relecture de 74f96be (interface)
- rien n'est parti (nœud muet avant la signature, refus, fenêtre fermée avant) :
  la page lâche le bulletin ; signé, ou montré en code Ğecko, il est gardé et
  le serveur le confirme sans la page ; le refus de la chaîne se dit (« chain ») ;
- le reçu : téléchargeable depuis la fenêtre de vote, et la page « Tes
  bulletins » (/bulletins) qui garde l'historique et vérifie un reçu dans le
  navigateur, sans le serveur (lib/receipt.ts, mêmes vecteurs que le moteur) ;
- le panier ne dit plus « Tes votes comptent dès l'envoi » quand le vote est fermé ;
- @noble/hashes déclaré (utilisé par e2e/chain-mock.mjs et le reçu) ;
- chaîne simulée : finalité, pages, filtres, nœud qui tombe ; contrôles C32, C33.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 03:11:54 +01:00
YvvandClaude Opus 5.5 74f96becf7 Fusion du lot B : le vote déplié sous l'article, le panier, le vote par transaction Ğ1 (bulletin scellé)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 00:15:46 +01:00
YvvandClaude Opus 5.5 ef271652df v3 : « Voter en lot » sur sa propre ligne, au-dessus des vues ; C23 se donne le temps de la chaîne
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 00:11:13 +01:00
YvvandClaude Opus 5.5 b260596cfd v3 : le vote déplié sous l'article, le panier, la signature par le portefeuille Ğ1
- Le vote se déplie sous l'article, façon accordéon, l'URL pour état (?vote=) :
  niveau d'eau, totaux, seuil et voix manquantes, ton vote et où il en est
  (enregistré, inscrit sur la chaîne, en attente, à reconfirmer, non compté),
  inertie et formule. Le reste d'une version (coquilles, traductions,
  signalements, historique) passe dans l'onglet « Détails » du panneau.
- Le panier : article par article, « tout pour / tout contre » par section ou
  pour tout le document, jamais pour un article à plusieurs versions ; un seul
  geste (une écriture, ou une transaction).
- La signature : le portefeuille de la page (injectedWeb3), polkadot-api chargé
  au moment de signer ; sans portefeuille, Ğecko par lien et QR ; la page
  attend la confirmation. Un bulletin que le portefeuille n'a pas signé est
  lâché aussitôt (DELETE /api/ballots/{id}).
- Pastilles d'ambiance : flèches dans le groupe, anneau de focus pointillé à
  la couleur d'accent de la page (3:1 au moins), distinct du choix.
- e2e : chaîne simulée (indexeur et nœud), faux portefeuille ; C21–C24, et
  C4, C5, C6, C11, C17, C19, C20, M1 mis à jour.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 22:47:26 +01:00
YvvandClaude Opus 5.5 71819f9012 v3 : relecture de a576b68 — les propositions retirées sortent de la médiane, les réglages montrent la vraie participation
La médiane de participation ne compte plus les propositions retirées (invisibles, votes
non repris). Quand l'échelle ramène la participation dans ses bornes, les réglages disent
la médiane mesurée (ou deux fois C) et, à part, la valeur sur laquelle les seuils se calculent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 19:41:33 +01:00
YvvandClaude Opus 5.5 db64405e1e v3 : inertie à cinq crans — interface (L10)
L'inertie se lit en crans, « 3 / 5 · moyenne » (très basse, basse,
moyenne, haute, très haute ; fr, en, es). Le sélecteur offre les cinq
crans, l'actuel marqué ; le changement se vote au cran de l'article.
L'article dit le passé de son inertie (vote ou réglage de départ).

« Réglages de la formule », en lecture seule, depuis l'en-tête du doc et
depuis le vote d'un article (onglet « Réglages » du panneau, dans
l'URL) : W et sa source, C, B, la participation habituelle (médiane ou
référence, sur combien de propositions, quand), et les cinq crans : M,
G, part exigée, voix pour exigées à la participation de la version
regardée (ou habituelle depuis l'en-tête).

Composants à part (InertiaPicker, FormulaSettings), branchés par
quelques lignes dans VoteView. La formule dépliée ne fait plus déborder
le panneau. e2e : C4 (cran de l'article dans la formule), C20 (réglages
et cinq crans), M1 (réglages lisibles sur mobile).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 16:42:11 +01:00
YvvandClaude Opus 5.5 8727315612 Fusion du lot A : accueil sur le choix du groupe, logo Clé de voûte, quatre ambiances, menu, À venir, Décisions
ci/woodpecker/push/app Pipeline was successful
ci/woodpecker/push/maquette Pipeline was successful
Contrôles du lot R renumérotés C18 (Raison d'être) et C19 (versions d'un article).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 13:24:36 +01:00