MICROSOFT AGENT FRAMEWORK · 0.16.0-rc.1
Branches et plans typés
Comparer clarification déterministe, revue native et validation de plan sans effet métier.
Objectifs
- Utiliser cette page pour comprendre : Branches et plans typés.
Travailler sur les programmes complets
Prérequis : Demo230–240 et contrat BacklogDraft. Fichiers : shared/Maf.Workflows/BacklogWorkflow.cs, tests/Maf.Workflows.Tests et programmes Demo230–250. Utiliser une copie de travail. Demo230 et les branches invalides/incomplètes ne nécessitent aucun modèle ; seule la branche prête des variantes natives appelle le profil chat. Le plan de Demo270 est une extension à lire après cette expérience.
Exécuter et consigner les branches
dotnet build BaseTechnique.slnx -m:1 -c Release
dotnet run --project demos/Demo230_TypedWorkflow/Demo230.App.csproj -c Release --no-build
dotnet run --project demos/Demo230_TypedWorkflow/Demo230.App.csproj -c Release --no-build -- --incomplete
dotnet run --project demos/Demo240_AgentWorkflow/Demo240.App.csproj -c Release --no-build -- --invalid
dotnet run --project demos/Demo240_AgentWorkflow/Demo240.App.csproj -c Release --no-build -- --incompleteNoter terminal, erreurs et chemin exécuté. Dans une copie des tests, compter les appels du client scripté : zéro sur clarification, un pour une revue prête. Lire ensuite les validations d’ordre et de domaine du plan ; ne pas exécuter une étape parce que le JSON est valide.
Prévoir un résultat terminal explicite
Le chemin incomplet est AnalyzeDraft → ClarifyDraft et produit NeedsClarification. Le graphe prêt déterministe produit Ready. Une revue native peut être Rejected malgré un JSON parsable si les faits changent. Deux livraisons à l’exécuteur agent ne signifient pas deux appels modèle : message puis TurnToken. Reviewed ne crée aucune ligne de backlog et n’accorde aucune approbation.
Indices de diagnostic
Distinguer le graphe possible des ExecutorInvokedEvent effectivement reçus et du WorkflowOutputEvent final. Examiner IsReady et les conditions exclusives avant le texte modèle. Construire un graphe neuf par entrée ; le snapshot de revue n’est pas un état concurrent durable.
Correction dans les tests et le chapitre
dotnet test tests/Maf.Workflows.Tests/Maf.Workflows.Tests.csproj -m:1 -c Release --no-build --no-restoreValidation et exécution
L’exercice manipule des graphes typés actuels ; les anciens routeurs C# restent une comparaison architecturale. Il ne prouve ni handoff autonome, ni concurrence ouverte, ni reprise durable. Ces mécanismes doivent être évalués séparément.
