Files
archicratie-edition/docs/FEATURE-PROPOSER.md
Archicratia b78eb4fc7b
All checks were successful
CI / build-and-anchors (push) Successful in 1m52s
SMOKE / smoke (push) Successful in 11s
docs: normalisation md + diagnostics dedup + LEGACY strict
2026-02-02 12:08:53 +01:00

58 lines
1.8 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.
# FEATURE — “Proposer” (édition par paragraphe → issue Gitea)
Dernière mise à jour : 2026-02-01
Cette feature permet à un lecteur de proposer une correction/amélioration dun paragraphe, en générant une issue pré-remplie dans Gitea.
---
## 0) Objectif fonctionnel
Depuis une page chapitre :
1) clic sur **Proposer** sur un paragraphe
2) choix #1 (type)
3) choix #2 (state/catégorie selon UI)
4) ouverture dun seul onglet vers Gitea : `/issues/new?...`
5) issue pré-remplie avec :
- chemin / URL / ancre
- texte actuel (citation)
- champs “Proposition / Justification”
6) lutilisateur valide, et le runner/CI traite.
---
## 1) Dépendances de configuration (critique)
Le lien Gitea est construit à partir de variables publiques injectées au build Astro :
- `PUBLIC_GITEA_BASE` (ex: `https://gitea.archicratie.trans-hands.synology.me`)
- `PUBLIC_GITEA_OWNER` (**casse sensible**, ex: `Archicratia`)
- `PUBLIC_GITEA_REPO` (ex: `archicratie-edition`)
### Symptômes si mauvais
- mauvais repo → 404
- redirect login inattendu
- création dissues impossible
---
## 2) Contrat “une seule ouverture donglet”
Le flow ne doit jamais ouvrir deux onglets.
### Contrat
- pas de `window.open(...)`
- un seul `a.target="_blank"` (ou équivalent) déclenché
- sur click : handler doit neutraliser les propagations parasites
## Diagnostic (canonique)
Le diagnostic détaillé est centralisé dans `docs/TROUBLESHOOTING.md` pour éviter les doublons.
- 404 / non autorisé / redirect login :
- voir : `TROUBLESHOOTING.md#proposer-404`
- cause la plus fréquente : `PUBLIC_GITEA_OWNER/REPO` faux (souvent casse)
- Double onglet :
- voir : `TROUBLESHOOTING.md#proposer-double-onglet`
- cause la plus fréquente : double handler (bubbling) ou `window.open` + `a.click()`