- Mots collés ou coupés : deux au plus, jamais sur une négation (« Si non » → « Sinon », « ne certifier » → « necertifier » sont du fond). - Titre et corps jugés chacun pour soi, puis ensemble : le titre n'absorbe plus le début du corps. - Caractères invisibles refusés aussi au découpage d'un brouillon et à la soumission. - Tabulation et retour chariot ne sont plus des espaces libres ; les lettres latines rares (ǃ, Ʒ…) font partie de la forme. - Le diff renvoyé après une coquille couvre le titre. Boucle : 62 tests Rust, svelte-check, 9 vitest, e2e 12/12. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3.7 KiB
3.7 KiB
HANDOFF — libreDecision
Dernière mise à jour : 2026-10-21, session orch du chantier 1.
Où on en est
Chantier 1 — Acte d'engagement Certification : en ligne sur decision.librodrome.org
depuis le 2026-10-21 (version fa8e8dc, pipeline Woodpecker n° 30). La maquette part sur
maquette.decision.librodrome.org. Sur la branche du chantier, les trois points laissés par la
septième relecture sont corrigés (pas encore en ligne).
- v3 Rust + Svelte à la racine du dépôt ; la maquette v2 intacte dans
maquette/. - Boucle : Rust (fmt, clippy
-D warnings, 62 tests dont 14 scénarios d'API et la publication vers un dépôt nu) · interface (svelte-check 0 avertissement, 9 vitest) · e2e 12 / 12 (C1–C11, M1). L'image Docker rejoue tout et a été essayée localement : santé, interface, volume non-root, clé de publication, lien admin initial (0600, absent des journaux), publication immédiate au démarrage, redémarrage sans commit superflu. - Déploiement :
.woodpecker/app.ymld'abord (le produit à la racine, qui retire de la racine tout conteneur qui la revendique), puis.woodpecker/maquette.yml(la maquette part sur maquette.decision.librodrome.org, seulement si le produit a réussi). - Relectures indépendantes avant mise en ligne, chacune traitée avant de livrer :
1f9c241 : ok,94907af : ok, puis quatre « à reprendre » (ac9c904,9203fd2,1eac6f8,6c0754a), toutes sur la même question : une « coquille » (sans vote, publiée) qui change un sens, puisfa8e8dc : ok(mis en ligne). La règle est désormais simple et explicable : une coquille touche les lettres et les espaces, rien d'autre (CHANTIER.md, ADR 0003). Autres points traités : ordre des workflows, anciens conteneurs enrestart: always, vote réservé aux membres de la toile dans Monnaie libre (une personne, une voix), lien d'invitation jamais vers une identité Ğ1, réservation du lien avant usage, redirection après connexion, en-têtes anti-encadrement, cookies__Host-, retour arrière automatique du déploiement (maquette au premier, version précédente ensuite), courses entre correction et entrée en vigueur, syft épinglé.
Ce qui attend Yvv
- Envoyer la demande à poka :
docs/chantiers/acte-certification/DEMANDE-CONNECT.md. - Créer le dépôt des textes, public et vide :
Yvv/libredecision-textessur git.duniter.org (choix du formulaire, « là où regardent Cesium et Ğecko ») — question rouverte le 2026-10-21 : git.open.us.org à la place ? (une ligne,LD_PUBLISH_REMOTEdansdocker/app-compose.yml). Y ajouter la clé de déploiement du serveur, en écriture (sa partie publique s'affiche dans trustinWallet,/acces, section Publication). Le serveur réessaie toutes les 60 s et fait lui-même le premier envoi. - Ouvrir trustinWallet avec le lien administrateur initial (remis hors conversation, un seul usage : il crée l'identité administratrice), puis créer l'invitation de Chiara (groupes Monnaie libre + groupe d'essai). Question ouverte : un « lien d'équipe » réutilisable (une identité par ouverture, jamais l'administration) ?
- Donner à Chiara un compte git.open.us.org collaboratrice de
yvv/decision. - Décider : la licence du code ; le texte F1.2 du seed (annonce C = 0 et 30 jours).
Pour reprendre
- Lire
docs/chantiers/acte-certification/CHANTIER.mdpuisCONTROLES.md. - Les retours de Chiara arrivent dans
/acces→ Retours : chacun est un contrôle à repasser. - Quand les identifiants connect arrivent :
DEMANDE-CONNECT.md§ « À la réponse ». - Chantier suivant (après la mise en production et les retours) : Acte d'engagement forgeron.