- Le seed porte les nouveaux textes (fr, en, es), ceux du brouillon relu
(textes-regles-seed.md), pour les bases neuves.
- L'amendement de seed vise aussi une proposition ouverte du seed, par son
étiquette (Version::Open) ; mêmes gardes : rien d'une personne, 0 vote,
révision 1, empreinte attendue. Quatre amendements, de l'empreinte du seed du
21/10 (inchangée depuis 67ddee2) à celle d'aujourd'hui.
- Tests vus rouges : remplacement une fois, un vote garde le texte, republication
de Monnaie libre seule, base neuve « present ».
Boucle : 237 tests Rust, svelte-check 0, 55 vitest, e2e 35 / 35.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ADR 0010 révisée : « Retirer ou "contre" » remplace la ligne qui gelait tout ;
la levée fait entrer la version avec les voix encore là, et le coût le dit.
CHANTIER et l'invariant de CLAUDE.md suivent. CONTROLES : C28 ajusté (chez Vera,
pas de « Pour », mais « Contre » et le retrait ; le panier), passage du lot G :
C1–C33 et M1, 35 tests verts.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 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>
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>
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>
ADR 0009 : un module est une unité du document (units.kind), ses versions des
propositions ; l'ordre d'une section se complète à la fin quand des articles
entrent ou sortent pendant son vote (ni caduc, ni à reconfirmer) ; un nouvel
article se place à la fin de sa section ; à l'entrée d'un titre, ses traductions
passent « à revoir » ; l'ajout gardé des documents existants.
ADR 0007 : l'échantillon de la participation nomme ses statuts (open, in_force,
applied) ; ce que les réglages disent d'une participation ramenée.
CHANTIER : ce que voit la personne, la règle des modules, les crans 2 et 4.
CONTROLES : C3, C17, C20 mis à jour, C25 à C27, le passage du lot D (29 / 29).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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>
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>
ADR 0010 remplace 0004 et complète 0003 (renvois dans les deux). CHANTIER :
« Corriger n'est pas voter » et « Deux articles qui se répètent ou se
contredisent » réécrits avec le tableau des gestes (qui, quoi, effet,
échéance), la boîte « Messages », deux limites connues. CONTROLES : C6
suit la règle, C24 son nouveau texte, C28–C31, le passage du lot F.
CLAUDE.md : l'invariant de l'objection et de la coquille validée, les
nouveaux modules, 29 contrôles.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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>
ADR 0008 : la requête (finalité, filtre, pages), ce que l'indexeur expose (squidStatus :
name, height, hash ; height reste 3 blocs derrière le bloc le plus récent, relevé du
2026-10-31), la tâche de fond, lâcher ou garder un bulletin, le plafond par identité et la
purge, le reçu, la variante « prise par une copie payée », les totaux affichés isolés.
CONTROLES : C24 (panier fermé), C32 (lâcher ou garder), C33 (le reçu).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- ADR 0008 : bulletin scellé (ld1: + blake2b-256, sel de 128 bits), la transaction
utility.batchAll (virement + remarque), la confirmation sur l'indexeur, le dernier
fait foi dans l'ordre de la chaîne, groupes gérés, ce que voit la chaîne, ce que
sait le serveur, réglages LD_VOTE_*, coût et limites. Noté dans 0006.
- CHANTIER : le vote déplié, le panier, « une personne, une voix » par la chaîne ;
le droit de vote se vérifie au moment de la confirmation sur la chaîne.
- CONTROLES : C4, C5, C6, C11, C17, C19, C20, M1 mis à jour ; C21–C24 ; passage
du lot B, 25 / 25 verts.
- CLAUDE.md : ballots.rs, indexer.rs, ballot/address du moteur, wallet/, panier,
chaîne simulée des e2e. Compose : où poser LD_VOTE_ACCOUNT (en commentaire).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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>
ADR 0007 : les cinq crans, M_k et s_k, G_k déduit à la participation
habituelle ; la médiane (propositions votées dans l'année, au moins 5,
T compté à la mesure), la référence 2C/W, les bornes [1 %, 50 %], le
recalcul une fois par jour, l'héritage de l'inertie de l'inertie,
l'arrondi stable, la migration et l'amendement de E1 et E2, ce que ça
coûte (seuils comparés à ceux d'avant). L'ADR 0002 le note ; index.
CHANTIER.md : la table des crans et « l'inertie se vote aussi » au cran
de l'article. CLAUDE.md : l'invariant devient « hérite du cran de
l'article ». CONTROLES.md : C4, M1, et C20 « réglages de la formule et
cinq crans ». README, note de source du seed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Accueil : le titre, le leitmotiv en trois lignes (contexte et cadrage ·
processus et modalités · boîte à outils), puis directement le choix du
groupe ; sans session, la connexion à sa place. /groupes redirige vers /,
« Mes groupes » et le retour après connexion mènent à /.
- Logo « Clé de voûte » du DA (signe en currentColor, clé en --cle, libre
Literata italique, Decision romain), droit, dans le menu et la barre
mobile ; Stamp retiré, le sceau 井 ne bouge pas. Favicon, icônes 16/32/48,
apple-touch, 192/512, manifeste.
- Quatre ambiances : pierre et calcaire (claires), nuit et ardoise
(sombres), --cle par ambiance ; quatre pastilles à la place du soleil /
lune ; première visite selon l'appareil (pierre / nuit). Calcaire et
ardoise : textes, accent, mousse et avertissement à 4,5:1 au moins.
- Page d'un groupe : les quatre piliers, puis « En cours ».
- Menu : nombre de docs en cours à côté de « Docs de référence », surligné
seulement dedans, seul Docs réagit au survol ; les trois autres éteints
mais ouvrent leur page ; hors d'un groupe, le dernier groupe ouvert.
- /g/[group]/docs « En cours » + « À venir » ; /mandats et /protocoles du
groupe : « À venir » éteints ; /g/[group]/decisions : une ligne par doc,
« N modules à voter », « dont N sans ton vote ». Anciennes adresses
/decisions, /mandats, /protocoles : vers le groupe courant, sinon /.
- e2e : C1, C2, C11, C12, M1 mis à jour ; C13–C17 pour L1–L6 ; CONTROLES.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- « Propositions en cours » : une ligne par article. Un article à plusieurs versions montre
leur nombre et la meilleure en tête (niveau d'eau, pour / contre, « en tête » quand elle
devance vraiment) ; la ligne se déplie (bouton à aria-expanded, clavier) sur ses versions,
chacune avec son étiquette (variante, auteur), son niveau, ses marques, et un extrait qui
part de là où les versions divergent ; un clic ouvre son vote comme avant.
- Règle pure dans versions.ts (vitest) : ordre du document, meilleure d'abord (niveau d'eau,
puis pour, puis contre ; une version bloquée jamais en tête), un article reste dans un
filtre dès qu'une de ses versions passe.
- e2e : C3 compte 30 lignes, C14 déplie « Connaissance suffisante » au clavier ; C11 passe
par un article à une seule version.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- seed : I1 devient « Raison d'être », texte d'Yvv (fr), traduit en « Purpose » et
« Razón de ser » ; apostrophes droites comme le reste du seed, insécables avant « ; » et
dans les guillemets.
- seed_amend.rs : un amendement de seed remplace un texte de départ dans une base existante,
décidé une fois par document et seulement si personne n'a touché l'article (seed a minima
d'origine, révision 1, aucun vote, aucune correction, aucune traduction de membre, aucun
signalement, empreinte attendue). Décision consignée (migration 0004, table
seed_amendments), ligne d'historique « texte de départ remplacé » avec son diff,
republication mise en file là où le document publie.
- Une coquille se mesure désormais aussi contre le texte posé par l'amendement.
- Tests : règle pure (3), scénarios d'API (base neuve, amendement appliqué et republié une
seule fois, cinq refus), e2e C13 ; C3, C6 et l'API suivent le nouveau texte (C6 : les
apostrophes typographiques d'Unicité du compte, « latransmission » ayant disparu).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Douzième relecture (850f9c4 : ok), défauts anciens de publish.rs mis en
jeu par le nouveau dépôt :
- un commit que le dépôt n'a jamais reçu (premier envoi refusé, clé sans
droit d'écriture) repart au passage suivant, au lieu d'une file marquée
faite avec un dépôt vide ;
- un changement de remote vers un dépôt neuf et vide lui envoie
l'historique ;
- au démarrage, ce qui attendait repart aussitôt (le délai croissant
pouvait atteindre 6 h).
trustinWallet montre l'état de la publication (en attente, dernier échec,
dernier commit) et offre « Publier maintenant ».
Boucle : 69 tests Rust, svelte-check, 9 vitest, e2e 13/13.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Le dépôt des textes créé par Yvv sur git.open.us.org (2026-10-21) :
séparé du code, pour que la clé du serveur n'écrive jamais dans
yvv/decision et que le dépôt se transfère d'un bloc à l'ouverture.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Tout auteur venu par invitation porte « sur invitation » à côté de son
nom (propositions, révisions, signalements) : un nom pris avant l'arrivée
de son titulaire Ğ1, ou une lettre sosie, ne passe pas pour un membre de
la toile.
- Un lien d'équipe refuse aussi le nom qu'une invitation attend encore.
Boucle : 68 tests Rust, svelte-check, 9 vitest, e2e 13/13.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>