Yvv e2ae8b196e Qualify : service IA + endpoint ai-chat + wizard Décider (3 cercles + AI 2-rounds)
- qualify_ai_service.py : stub IA 2-allers-retours (réversibilité + urgence)
- qualify.py router : endpoint POST /ai-chat → AIChatRequest/AIChatResponse
- test_qualifier_ai.py : 11 tests A1-A7 (questions stables, done=True au 2e round)
- decisions/new.vue : wizard 4 étapes — branche mandat (liste + lien demande) /
  hors-mandat (3 cercles textarea), questions IA, résultat + boîte à outils,
  formulaire final

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 19:44:00 +02:00

libreDecision

Plateforme de décisions collectives pour la communauté Duniter/G1. Boîte à outils gouvernance multi-collectifs, architecture white-label.

Stack

  • Frontend : Nuxt 4 + Vue 3 + Pinia + UnoCSS (port 3002)
  • Backend : Python FastAPI + SQLAlchemy async + SQLite (port 8002)
  • Auth : Duniter V2 Ed25519 challenge-response
  • Sanctuaire : IPFS (kubo) + hash on-chain (system.remark)

Démarrage

# Backend
cd backend && .venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8002 --reload

# Frontend
cd frontend && npm run dev

Sections

  • Décisions : processus de vote collectif avec boîte à outils (ContextMapper, consentement, advice process)
  • Mandats : élection sociocratique, cycle de mandat, révocation
  • Documents : documents de référence sous vote permanent, niveaux d'inertie, sanctuaire IPFS
  • Protocoles : protocoles opérationnels, jalons de workflow, formules de vote

Architecture

Voir CLAUDE.md pour les conventions et docs/content/dev/ pour la documentation technique.

Description
No description provided
Readme 1.6 MiB
Languages
Vue 46.5%
Python 45.5%
TypeScript 7%
CSS 0.7%
Dockerfile 0.3%