- Noms des liens d'équipe : comparés sans casse, accents ni ponctuation (ld_engine::names), lettres latines seulement (pas de sosie cyrillique, grec ou pleine chasse), une ligne ; index unique (migration additive 0003) contre deux ouvertures simultanées sous le même nom. - Une personne déjà connectée ne prend une place que si le lien lui ajoute un groupe ; « Ce n'est pas moi » la déconnecte sur un navigateur partagé ; un lien collé dans le même onglet est relu. - Coller ou couper un mot de quantité n'est pas une coquille (« sur tout » → « surtout », « par tout » → « partout »). - Libellés sans caractère de contrôle ; la soumission revérifie le titre. Boucle : 68 tests Rust, svelte-check, 9 vitest, e2e 13/13. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
56 lines
3.9 KiB
Markdown
56 lines
3.9 KiB
Markdown
# 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 est sur
|
||
maquette.decision.librodrome.org (certificat jusqu'au 19/01/2027). Sur la branche du chantier,
|
||
pas encore en ligne : les points des septième, huitième et neuvième relectures, les **liens d'équipe**
|
||
(demandés par Yvv le 2026-10-21) et la publication vers git.open.us.org.
|
||
|
||
- v3 Rust + Svelte à la racine du dépôt ; la maquette v2 intacte dans `maquette/`.
|
||
- Boucle : Rust (fmt, clippy `-D warnings`, 68 tests dont 15 scénarios d'API et la
|
||
publication vers un dépôt nu) · interface (svelte-check 0 avertissement, 9 vitest) ·
|
||
e2e 13 / 13 (C1–C12, 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.yml` d'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, puis
|
||
`fa8e8dc : ok` (mis en ligne), `c3d6bf8 : ok`, `fd19dbf : ok`. 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 en `restart: 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
|
||
|
||
1. **Envoyer la demande à poka** : `docs/chantiers/acte-certification/DEMANDE-CONNECT.md`.
|
||
2. **Créer le dépôt des textes**, vide : `yvv/libredecision-textes` sur **git.open.us.org**
|
||
(Yvv, 2026-10-21 : « pour l'instant sur open.us ; on fera un dépôt pour l'ouverture, un
|
||
transfert, et le dépôt officiel pour les textes en vigueur »). 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. Changer de dépôt plus tard : `LD_PUBLISH_REMOTE` dans `docker/app-compose.yml`.
|
||
3. **Ouvrir trustinWallet** avec le lien administrateur initial (remis hors conversation, un
|
||
seul usage : il crée l'identité administratrice). Pour l'équipe : un **lien d'équipe**
|
||
(`/acces` → Liens d'équipe ; chaque personne qui l'ouvre a sa propre identité), ou une
|
||
invitation par personne. Pour soi sur un autre appareil : « Nouveau lien de connexion ».
|
||
4. Donner à Chiara un compte **git.open.us.org** collaboratrice de `yvv/decision`.
|
||
5. 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.md` puis `CONTROLES.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.
|