Acte M1 figé sur 8727315 (relecture ok), prémisse sur le Préambule ; CHANTIER : le nouvel accueil

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Yvv
2026-10-30 14:55:17 +01:00
co-authored by Claude Opus 5.5
parent 6bbc282cb1
commit 1593e50a29
3 changed files with 36 additions and 10 deletions
+2 -2
View File
@@ -52,7 +52,7 @@ web/src/
# g/[group]/docs · g/[group]/docs/[doc] (lecteur,
# panneau dans l'URL ?onglet=&article=) · g/[group]/decisions · g/[group]/mandats ·
# g/[group]/protocoles (à venir) · acces (trustinWallet) ; /groupes, /decisions… redirigent
web/e2e/ # Playwright C1–C17 + M1 ; serve.sh = serveur jetable /tmp/ld-e2e sur :8092
web/e2e/ # Playwright C1–C19 + M1 ; serve.sh = serveur jetable /tmp/ld-e2e sur :8092
docker/ # app.Dockerfile · app-compose.yml (sonic)
.woodpecker/ # app.yml · maquette.yml
docs/ # chantiers/ · adr/ · dev/BLUEPRINT-V2.md (doctrine de la maquette) · recherche/
@@ -73,7 +73,7 @@ maquette/ # v2 intacte (frontend Nuxt, backend FastAPI, docker, docs-v
```bash
export PATH=$HOME/.cargo/bin:$PATH
cargo fmt --all --check && cargo clippy --workspace --all-targets -- -D warnings && cargo test --workspace
cd web && npm run check && npm test && npm run build && npm run e2e # e2e : 18 contrôles
cd web && npm run check && npm test && npm run build && npm run e2e # e2e : 20 contrôles
LD_DEV_LOGIN=1 cargo run -p ld-server # :8002, sert web/build
cd web && npm run dev # :3002 à chaud
+27 -4
View File
@@ -1,7 +1,7 @@
# Acte — Mise en ligne M1 (revue du 30/10 : entrée, DA, menu, listes, Raison d'être, versions)
Classe : déploie
Projet : libreDecision Date : 2026-10-30
**État : PRÉPARÉ** (relecture indépendante en cours ; le SHA est figé quand elle rend « ok »)
**État : FIGÉ (2026-10-30, 14 h 50)** sur `8727315` — relecture « 8727315 : ok » inscrite (sous-agent neuf, 30/10 14 h 45)
## Intention
@@ -71,6 +71,24 @@ sont identiques à ceux de `dc2de09` (prémisse 4).
0 avertissement, 16 vitest, e2e 20 / 20), et l'image de production se construit
(`docker build --target production`, sortie 0, `seeds/upcoming/` présent dans l'image).
6. Le Préambule est toujours intact en production, sans proposition de texte rivale. Sur une
copie fraîche de la base (`docker exec lpk-libredecision-app cat /data/libredecision.db*`
vers `/tmp/ld-prod-copie/`, lecture seule), la requête suivante :
```sql
SELECT d.group_slug, p.kind, p.status, p.origin,
(SELECT COUNT(*) FROM votes v WHERE v.proposal_id=p.id),
(SELECT group_concat(kind) FROM revisions r WHERE r.proposal_id=p.id)
FROM proposals p JOIN units u ON u.id=p.unit_id JOIN documents d ON d.id=u.doc_id
WHERE u.code='I1';
```
doit rendre, comme le 30/10 à 13 h 43 :
- `monnaie-libre|text|in_force|seed|0|initial` ;
- `monnaie-libre|inertia|open|member|0|initial`, la proposition d'Yvv du 29/10 ;
- `essai|text|in_force|seed|0|initial`.
Toute autre ligne `text` ou `remove` arrête l'acte : la relecture a montré que l'amendement
ne regarde pas les propositions rivales.
## Commandes exactes
```sh
@@ -117,9 +135,14 @@ reste en base, et le commit du dépôt des textes reste publié.
Plus rapide, sur sonic : `docker tag libredecision-app:previous libredecision-app:latest`,
puis `cd /opt/libredecision-app && docker compose up -d --force-recreate`.
L'ancienne version démarre sur la base migrée (la table ajoutée ne la gêne pas). Elle
affiche la clé brute « history.amendment » dans l'historique de I1, et y refuse toute
coquille, parce qu'elle la mesure contre le Préambule : c'est un refus, jamais une
écriture à tort.
affiche la clé brute « history.amendment » dans l'historique de I1. Elle mesure les
coquilles de I1 contre le Préambule, ce qui a deux effets :
- une vraie coquille sur la Raison d'être est refusée ;
- n'importe quel membre peut ramener le Préambule par une « coquille », qui serait alors
publiée. La relecture l'a prouvé.
Un retour de code se fait donc au plus court, puis on revient sur une version corrigée.
Tant qu'il dure, on surveille l'historique de I1.
- **La Raison d'être en base** : **pas de retour automatique**. Revenir au Préambule
demanderait un amendement inverse, écrit et relu comme celui-ci.
- **Le commit publié** dans le dépôt des textes : **IMPOSSIBLE à retirer sans réécrire
@@ -14,10 +14,13 @@ les applications clientes (Cesium, Ğecko…) peuvent suivre.
## Ce que voit la personne
1. **Accueil sobre** : « Rendre possible la décision collective » / « en fonction du contexte,
processus et modalités, boîte à outils », les quatre outils en une ligne chacun, puis la
connexion. Le menu complet à gauche : Décisions · Docs de référence · Mandats · Protocoles
(seul Docs de référence est actif).
1. **Accueil sobre** (revue du 2026-10-30) : « Rendre possible la décision collective », puis 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). Le pavé des quatre outils
accueille dans le groupe choisi, suivi de ce qui y est « En cours ». Le menu complet à gauche :
Décisions · Docs de référence (avec le nombre de docs en cours) · Mandats · Protocoles ; seul
Docs de référence réagit, les autres s'ouvrent sur leurs « À venir », éteints. Décisions : une
ligne par doc en cours, avec le nombre de modules qui restent à voter.
2. **Connexion Ğ1** — la même que le forum Monnaie libre (connect.monnaie-libre.fr). En attendant
l'inscription du client OAuth2, des **liens d'invitation** à usage unique (une personne),
et des **liens d'équipe** réutilisables jusqu'à une date (chaque ouverture crée sa propre