Python SDK
Le Python SDK de MissionWeaveProtocol est l’implémentation de référence officielle en Python de MissionWeaveProtocol 0.1. Il comprend le Core faisant autorité, l’environnement d’exécution des Agent, le Worker Scheduler, la passerelle de Group, les adaptateurs de stockage, l’outil de conformité et une preuve de concept exécutable.
Ces instructions utilisent un checkout source du dépôt du SDK.
Prérequis
Section intitulée « Prérequis »- Python 3.12 ou version ultérieure
uv- Docker, pour les tests d’intégration PostgreSQL facultatifs
Checkout et préparation du SDK
Section intitulée « Checkout et préparation du SDK »git clone https://github.com/missionweaveprotocol/python-sdk.gitcd python-sdkuv sync --extra devLe package source est
src/missionweaveprotocol/.
Les métadonnées du projet et les points d’entrée des commandes sont définis dans
pyproject.toml.
Vérifier le checkout source
Section intitulée « Vérifier le checkout source »uv run pytestuv run ruff check .uv run ruff format --check .uv run mypyuv run missionweaveprotocol-conformance --root .La commande de conformité vérifie les 56 vecteurs embarqués par rapport aux 21
schémas Draft 2020-12 embarqués. Le dépôt du protocole reste normatif ;
PROTOCOL_PIN.json
enregistre le commit exact du protocole et les empreintes d’artefact utilisées
par le SDK.
Pour valider à la place un checkout voisin du dépôt canonique du protocole :
git clone https://github.com/missionweaveprotocol/missionweaveprotocol.git ../missionweaveprotocoluv run missionweaveprotocol-conformance --root ../missionweaveprotocolExécuter la preuve de concept
Section intitulée « Exécuter la preuve de concept »uv run missionweaveprotocol-demo --workdir .missionweaveprotocol/pocLa commande produit un rapport JSON canonique et se termine avec un statut non nul si un comportement requis manque. Le scénario déterministe couvre deux Missions concurrentes, des Workers partagés, une sous-tâche, la clarification entre pairs, la planification, la préemption uniquement aux Checkpoint, la récupération, la vérification du Coordinator et l’Approval humaine du résultat exact.
Exécuter les tests d’intégration PostgreSQL
Section intitulée « Exécuter les tests d’intégration PostgreSQL »docker compose up -d --wait postgresMISSIONWEAVEPROTOCOL_TEST_POSTGRES_URL=postgresql://missionweaveprotocol:missionweaveprotocol@127.0.0.1:55432/missionweaveprotocol \ uv run pytest tests/test_core.py -qUne fois terminé, arrêtez le service local :
docker compose down --volumesExécuter le gateway de développement
Section intitulée « Exécuter le gateway de développement »Créez des clés de développement jetables et un Agent Registry signé par l’Organization :
uv run python examples/create_dev_registry.pyexport MISSIONWEAVEPROTOCOL_ORGANIZATION_PUBLIC_KEY="$(uv run python -c \ 'import json; print(json.load(open(".missionweaveprotocol/dev-keys.json"))["organizationPublicKey"])')"export MISSIONWEAVEPROTOCOL_AUTHORITY_PRIVATE_KEY="$(uv run python -c \ 'import json; print(json.load(open(".missionweaveprotocol/dev-keys.json"))["authorityPrivateKey"])')"export MISSIONWEAVEPROTOCOL_SESSION_SECRET='development-only-session-secret-32-bytes'
uv run missionweaveprotocol-server \ --registry .missionweaveprotocol/dev-registry.json \ --database-url postgresql://missionweaveprotocol:missionweaveprotocol@127.0.0.1:55432/missionweaveprotocol \ --organization-public-key "$MISSIONWEAVEPROTOCOL_ORGANIZATION_PUBLIC_KEY" \ --allow-insecure--allow-insecure est réservé au développement en boucle locale. Un déploiement
doit fournir --tls-certfile et --tls-keyfile ; MissionWeaveProtocol 0.1
exige un transport WebSocket sécurisé sur TLS 1.3.
Construire les artefacts locaux
Section intitulée « Construire les artefacts locaux »uv buildLe wheel local obtenu contient py.typed et les 21 schémas fixés utilisés pour
la validation des documents à l’exécution.
Pour les détails d’implémentation, les tests et les informations de compatibilité actuelles, consultez le README canonique du SDK.