Yvv 428299c9c8 TDD Qualifier : moteur de qualification des décisions (R1–R12)
- engine/qualifier.py : QualificationConfig (seuils configurables),
  QualificationInput, QualificationResult, DecisionType enum, qualify()
- Règles : within_mandate→consultation_avis, affected_count→routing,
  is_structural→recommend_onchain, seuils lus depuis config
- Stub suggest_modalities_from_context() — interface LLM définie,
  intégration Qwen3.6 (MacStudio) à venir
- 22 tests, 212/212 verts, zéro régression

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 16:16:35 +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%