From 53732d5ba4833eb7869789c2d793fcfaa5ad6832 Mon Sep 17 00:00:00 2001 From: jsboige Date: Thu, 3 Sep 2026 04:36:10 +0200 Subject: [PATCH] chore(planners,#14410): rebaseline twin parity Planners-8 Temporal (post-qualification Graham) Co-Authored-By: Claude-Code --- .../twin_pairs.d/planners-8-temporal.yaml | 44 ++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/scripts/notebook_tools/twin_pairs.d/planners-8-temporal.yaml b/scripts/notebook_tools/twin_pairs.d/planners-8-temporal.yaml index 1334d66034..232373606b 100644 --- a/scripts/notebook_tools/twin_pairs.d/planners-8-temporal.yaml +++ b/scripts/notebook_tools/twin_pairs.d/planners-8-temporal.yaml @@ -5,8 +5,50 @@ parity_level: native-both bridge_verdict: SOTA-OK bridge_verdict_reason: "Python = `ortools` (Google, Apache-2.0, CP-SAT SOTA temporal : `CpModel()` + `NewIntervalVar` + `AddCumulative` + `AddNoOverlap2D` + `model.Minimize(makespan)` + `solver.Solve()` pour atelier job-shop RCPSP). C# = Tranche 1 from-scratch BCL .NET (PDDL duratives, Allen algebra 13 relations, STN Floyd-Warshall, RCPSP glouton LPT) + Tranche 2 `Google.OrTools` NuGet (Google, Apache-2.0, MEME solveur CP-SAT : `#r \"nuget: Google.OrTools\"` + `using Google.OrTools.Sat;` + `CpModel()` + `AddBoolVar` + `AddCumulative` + `solver.Solve()`) + `ScottPlot` NuGet 5.0.55 (MIT-license, timeline gantt chart). Verdict SOTA-OK (modele owner c.217 PR #10557 MERGED 2026-08-12 App tranche 4 lib-vs-lib + PR #10389 Planners-8 Tranche 2 MERGED substance Google.OrTools validee firsthand instance d'atelier : makespan optimal = 10 des deux cotes, le glouton LPT etait deja optimal, CP-SAT le PROUVE et explique pourquoi le chemin critique 7 est inaccessible via la contention de ressource) : les DEUX cotes atteignent un moteur CP-SAT de production (Python OR-Tools, C# Google.OrTools), bridge direct sans glue non-SOTA. Le from-scratch C# reste EN PLUS (jamais a la place), critere owner #10382. `parity_level: native-both` preserve : parite engine + from-scratch pedagogique." + audits: + - date: "2026-08-04" + by: myia-po-2023:CoursIA + python_sha: dea984c63c87f8fd18e79a7c3a679f8afeb75605 + csharp_sha: 131d4a0bea72a0ad043ed44798468fd98dd7a2e5 + - date: "2026-08-11" + by: myia-po-2024:CoursIA + python_sha: dea984c63c87f8fd18e79a7c3a679f8afeb75605 + csharp_sha: 2ebcbc046b781ee49449dc216402b603d5e7fb4b + content_python_sha: cc583657ae2a15b36e01b29bcf1f639b6fa93359f42635aaa6554b08d153d175 + content_csharp_sha: 536a248cb5af410b7867159f605d558bedc8eecc39c0827d93480d736b820bb4 + - date: "2026-08-16" + by: myia-po-2023:CoursIA + python_sha: 94d90a0461447759bcbe0029b70b8985527349f1 + csharp_sha: 2ebcbc046b781ee49449dc216402b603d5e7fb4b + content_python_sha: cdd2d4c542af4a175ee483624f05abe745a6a8a0283eb1082b24b7fbc6be2a1f + content_csharp_sha: 536a248cb5af410b7867159f605d558bedc8eecc39c0827d93480d736b820bb4 + reason: "Rebaseline apres fix citation arXiv #11168 (branche fix/11168-arxiv-symbolic, commit a3a0e595a) : le lien 'Temporal Planning Survey' arXiv:2104.08553 etait le mauvais papier, remplace par le fondement canonique Fox & Long PDDL2.1 arXiv:1106.4561 (1 ligne markdown, section References). Python-only, csharp_sha inchangee (identique aux entrees precedentes), markdown-only (C.2 exception), aucun contenu code/output touche. Diff verifie firsthand : 1 ligne remplacee, rien strippe." + - date: "2026-08-16" + by: myia-po-2026:CoursIA-2 + python_sha: 94d90a0461447759bcbe0029b70b8985527349f1 + csharp_sha: a18ba874a5e4c005d2ab34eb7d25f144d95cd75a + reason: "Re-exec seq only (#11112 etage 3): csharp DUPLICATE -> CLEAN 1..10 (dotnet_executor, Google.OrTools), sources byte-identiques, 0 erreur, outputs deterministes (0 derive), probe banner strip L532. Cote python non touche." + content_python_sha: cdd2d4c542af4a175ee483624f05abe745a6a8a0283eb1082b24b7fbc6be2a1f + content_csharp_sha: e632c8b243ed22203671ec0dad4a8bcc54df2ae108f9afefcdfd7574de5f3816 + - date: "2026-08-29" + by: myia-po-2023:CoursIA-2 + python_sha: b08fd59774e2608cb07ee18dc2076a25c4503155 + csharp_sha: 91e719eb433c502dcf1e0b3993ec4d288db4fe98 + content_python_sha: e02f2d24b43877c40cf8f5958aa1dc9cb25d9d3bf5ec2524e45131b8e16ef795 + content_csharp_sha: e917a9bb27b010e0e989a11d7fd04dc676bc0e0b83d334933e08f6daf16770c2 + - date: "2026-09-03" + by: myia-po-2026:CoursIA-2 + python_sha: b08fd59774e2608cb07ee18dc2076a25c4503155 + csharp_sha: 6e26986754d1eb7e3cd11c1429d1185c4f23821b + content_python_sha: e02f2d24b43877c40cf8f5958aa1dc9cb25d9d3bf5ec2524e45131b8e16ef795 + content_csharp_sha: a6d8ea5bcab172a8a22f5db59d3c2690194bb6ff59762ee4626e613e361fdcb0 + - date: "2026-09-03" + by: myia-po-2026:CoursIA-2 + python_sha: b08fd59774e2608cb07ee18dc2076a25c4503155 + csharp_sha: f5d34f021a6c68d51e5a5005d913aac12c26c30e + content_python_sha: e02f2d24b43877c40cf8f5958aa1dc9cb25d9d3bf5ec2524e45131b8e16ef795 + content_csharp_sha: 9c53d285a6d62b39ea4b341034126245c1217674bf9e69d3cbbbe88079d63905 known_differences: - - "#navfix 03-Advanced (PR a venir) : le twin C# n'avait AUCUNE ligne Navigation (orphelin de chaine). Ligne posee en miroir du twin Python, cibles chaine C# : << Planners-7-OR-Tools-Csharp.ipynb | Index | Planners-9-HTN-Csharp.ipynb >>. Divergence de liens nav VOLONTAIRE, hors perimetre de comparaison contenu." - "Concept : planification temporelle (actions duratives, ordonnancement avec parallelisme)." - "Python : unified-planning temporal + CP-SAT + Gantt. C# : deux tranches — Tranche 1 from-scratch BCL .NET (PDDL duratives, Allen, STN Floyd-Warshall, RCPSP glouton LPT) + Tranche 2 Google.OrTools CP-SAT natif .NET (moteur de production, depuis 2026-08-11, contrainte cumulative AddCumulative)." - "Parite engine (native-both depuis 2026-08-11) : les deux cotes atteignent un moteur CP-SAT de production (Python OR-Tools, C# Google.OrTools). Le from-scratch C# reste EN PLUS (jamais a la place), critere owner #10382. Instance d'atelier : makespan optimal = 10 des deux cotes (le glouton LPT etait deja optimal, CP-SAT le PROUVE et explique pourquoi le chemin critique 7 est inaccessible via la contention de ressource)."