Files
decision/docs/chantiers/acte-certification/ONBOARDING.md
T
YvvandClaude Opus 5.5 94907afb20 v3 : points de la relecture indépendante — une personne une voix, ordre de déploiement, durcissements
- Dans Monnaie libre (électorat = toile de confiance), seuls les membres de la
  toile votent (trustin_access::votes_in) ; une identité d'invitation y lit,
  propose et signale. L'interface le dit à la place des boutons (fr/en/es).
- Un lien d'invitation ne vise jamais une identité Ğ1 ; le lien est réservé
  avant de créer l'identité (deux acceptations simultanées : une seule passe).
- Un nombre n'est jamais une coquille (« 50 » → « 5,0 », « 1 5 » → « 15 »).
- Redirection après connexion : caractères de contrôle refusés.
- En-têtes : X-Frame-Options DENY, frame-ancestors 'none', nosniff, Referrer-Policy.
- Déploiement : le produit passe en premier ; la maquette attend son succès.
  Les conteneurs, même arrêtés, qui revendiquent encore la racine sortent de
  « restart: always » (ils reviendraient au redémarrage de Docker).
- Tests : 57 Rust (dont 14 scénarios d'API), e2e 12 / 12 avec C11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 04:23:51 +02:00

74 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Bienvenue sur le chantier — Chiara
Tu es **testeuse et codeuse** sur ce chantier : tes tests d'usage sont nos contrôles (une
remarque de toi = un contrôle à repasser), et tu peux corriger ou construire toi-même.
## 1. Ce qu'on construit
Lis d'abord `CHANTIER.md` (10 minutes) : le texte vivant, le vote permanent, coquille ≠ vote,
les contradictions, l'inertie votée, la publication. Puis `CONTROLES.md` : ce que tu vérifies.
## 2. Tes accès (préparés par Yvv)
| Quoi | Pour quoi | Qui le fait |
|---|---|---|
| Un **lien d'invitation** à decision.librodrome.org (groupes Monnaie libre + groupe d'essai) | tester en production avant la connexion Ğ1 | Yvv, dans trustinWallet (`/acces`) |
| Ta **clé Ğ1** | une fois connect.monnaie-libre.fr branché, tu te connectes comme sur le forum | — |
| Un compte sur **git.open.us.org**, collaboratrice de `yvv/decision` | pousser tes branches, ouvrir des demandes de fusion | Yvv |
Le lien d'invitation s'ouvre **une seule fois** et expire en 14 jours ; il ouvre ta session sur
ce navigateur pour 30 jours.
## 3. Tester sans rien installer
1. Ouvre ton lien d'invitation → tu arrives connectée.
2. Les contrôles qui écrivent (voter, corriger, découper) se font dans le **groupe d'essai** :
il est caché, une seule voix « pour » suffit à faire passer une proposition, et rien n'en
sort. Le texte de Monnaie libre, lui, est le vrai : avec ton lien d'invitation tu le lis,
tu proposes, tu signales ; le vote y est réservé aux membres de la toile (avec ta clé Ğ1).
3. Passe les contrôles C1–C11 et M1 (sur ton téléphone aussi), puis tout ce qui te gêne.
4. Chaque remarque : **« Faire un retour »** dans le menu de gauche. Écris ce que tu as fait, ce
que tu attendais, ce qui s'est passé. La page, la langue et la taille de l'écran sont jointes.
## 4. Coder en local
Prérequis : git, Node 22, Rust (rustup — la version 1.99 s'installe toute seule grâce à
`rust-toolchain.toml`).
```bash
git clone gitea@git.open.us.org:yvv/decision.git libreDecision && cd libreDecision
git switch chantier/acte-certification
curl --proto '=https' -sSf https://sh.rustup.rs | sh -s -- -y # si Rust n'est pas installé
cd web && npm ci && npm run build && cd ..
LD_DEV_LOGIN=1 cargo run -p ld-server # http://127.0.0.1:8002 — API + interface
# dans un second terminal, pour l'interface à chaud :
cd web && npm run dev # http://127.0.0.1:3002
```
`LD_DEV_LOGIN=1` affiche une connexion « développement » : tu tapes un nom, tu es membre de
tous les groupes (y compris l'essai). La base locale vit dans `data/` — supprime ce dossier pour
repartir du texte de départ.
Où sont les choses :
- les **règles** (seuil, coquille, découpage, aperçus) : `crates/ld-engine/` — pur, testé ;
- les **accès** : `crates/trustin-access/` ;
- l'**API** : `crates/ld-server/src/` (une route = une fonction ; scénarios dans `tests/api.rs`) ;
- l'**interface** : `web/src/routes/` (pages) et `web/src/lib/components/` ;
- les **textes affichés** : `web/src/lib/i18n/fr.ts` (puis `en.ts`, `es.ts`) — jamais en dur ;
- le **texte de départ** : `seeds/acte-engagement-certification.json`.
## 5. Ta boucle avant de pousser
```bash
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
```
Tout vert, puis : `git switch -c chiara/<sujet>`, commits, `git push origin chiara/<sujet>`, et une
demande de fusion vers `chantier/acte-certification`. Le détail : `CONTRIBUTING.md`.
## 6. Si tu bloques
Écris à Yvv, ou laisse un retour dans l'outil en commençant par « BLOQUÉE : ».