1. Initialiser le projet¶
Objectif : créer un projet Arclith minimal, installable et guidé, sans choisir à la place du développeur ses transports ou sa persistance.
Prérequis¶
Depuis le dossier parent :
init ne crée ni entité, ni feature, ni FastAPI, ni FastMCP, ni RabbitMQ, ni
MongoDB, ni Dockerfile. La configuration sélectionne memory comme repository
fonctionnel par défaut, mais aucun dossier d'adapter n'est scaffoldé tant que
add-adapter n'est pas appelé.
Arborescence canonique¶
Le niveau src/todo_list_service est intentionnel : src/ isole le code du
checkout et todo_list_service est le namespace Python distribué. Des dossiers
globaux domain/, application/ ou adapters/ directement sous src/
créeraient des packages génériques susceptibles d'entrer en collision.
Contrat obligatoire pour les agents¶
Le projet contient deux fichiers de gouvernance :
AGENTS.mdimpose la lecture du contrat et interdit les racines parallèles,utils.py,helpers.pyet les features déduites d'une entité ;ARCHITECTURE.mddécrit chaque couche, les seuls points d'extension et les chaînes d'enregistrement des transports.
Chaque add-adapter ajoute ensuite un README par rôle et un manifeste fermé
.arclith/blueprints/<capability>-<adapter>.yaml. Si aucun emplacement ne
convient à un besoin, le blueprint officiel, sa documentation et ses tests
doivent évoluer avant la création d'un nouveau chemin.
Étape suivante : créer l'entité Todo.