Skip to content

enrich(search,#13410): prose interpretative VRP-Logistics App-17/17b (densite 766/658/1074 -> 1215/1220/1247) - #16024

Merged
myia-ai-01 merged 2 commits into
mainfrom
feature/densite-13410-vrp-logistics
Sep 14, 2026
Merged

myia-ai-01 merged 2 commits into
mainfrom
feature/densite-13410-vrp-logistics

Conversation

@jsboige

@jsboige jsboige commented Sep 13, 2026 •

Copy link
Copy Markdown
Owner

Grain: DEEP/notebook-python — lane myia-po-2026:CoursIA — prev: LIGHT/tooling #15948

Tranche densite #13410 — VRP-Logistics (Search/Applications/Hybrid)

Rotation de famille (R6) : apres ML (#16007), DecInfer .NET (#16012) et SMT/Z3 (#16021), cette tranche couvre la famille Search, jamais touchee aujourd'hui. Candidats choisis sur mesure LIVE (pedagogy_density.py sur origin/main 80fc3a815) — le baseline #13410 etant un snapshot Phase-1 fige, jamais retro-fit.

Notebook Avant Apres Plancher
App-17-VRP-Logistics.ipynb (python3) 766 1215 1200
App-17b-VRP-Logistics-Python.ipynb (python3) 658 1220 1200
App-17b-VRP-Logistics-Csharp.ipynb (.net-csharp) 1074 1247 1200

19 cellules markdown d'interpretation placees APRES la cellule de code lue, chacune ancre sur sa sortie executee :

  • App-17 (7 cellules) : pourquoi aucun solveur dans les imports ; solution-as-data / is_valid comme oracle independant ; criterium d'insertion glouton et sa myopie ; charges OR-Tools 60/60 x5 + 43/60 + 45/60 vs glouton 48..60 (tasser, pas equilibrer) ; mecanisme du 2-opt avant sa mesure ; decomposition de l'ecart 417.49 -> 414.49 -> 403.45 (le 2-opt ne recupere que 3.00 des 13.04 unités, moins d'un quart) ; lecture geographique de la carte du solveur.
  • Twin Python (9 cellules) : contrat « numpy seul » ; matrice de distances comme unique structure (le code ne depend pas de la metrique) ; borne ceil(328/60) = 6 — compte de vehicules structurellement optimal, tout l'ecart se joue sur la distance ; validateur independant ; 595.83 (myopie NN) ; -1.7% CI ; +12.80 2-opt et son plafond intra-tournee ; 569.24 recuit (relocate inter-tournees + Metropolis) ; « plus compactes » relu structurellement.
  • Twin C# (3 cellules) : instance canonique identique au jumeau Python (toute divergence sera algorithmique/RNG, jamais les donnees) ; detail des tournees — l'axe long 176,92 contre cinq secteurs courts 36,37..107,08 ; OR-Tools 510,59 vs Python 510,47 — deux bindings du meme moteur C++ (NuGet 9.11 / pip), budgets distincts (3 s / 5 s), moins de 0,12 d'ecart : convergence robuste a l'hote.

Validation

Gate Resultat
Round-trip byte-identity avant edition OK x3 (json.dumps ensure_ascii=False, indent=1)
Cellules code byte-identiques a origin/main OK x3 (comparaison JSON post-commit)
Diff insertions pures (+410/-2, les -2 = normalisation newlines du hook pre-commit)
enrich_quality_ci.py --base --head rc=0 x3
detect_repeated_prose.py findings pre-existants (paires intro/summary presentes sur base), reduits : App-17 1->0, twin Python 5->3, C# 6->6 identiques
pre-commit (H.3, markdown-rendering, cell-parses, fix-newlines) Passed
pedagogy_density.py (LIVE, post-commit) 1215 / 1220 / 1247 — tous >= 1200

Preflight collisions : gh pr list sur chemins Search -> #15999 (Part2-CSP dll), #15995 (MGS-29), #15955 (09c/09d markdown-only) — aucun chevauchement VRP/Hybrid. Notebooks deja executes (exec = code, 0 erreur) -> exception C.2 markdown-only, aucune re-execution requise.

Rectification twin : le preflight initial avait cherche twin_pairs.d/ a la racine du depot (inexistant) et conclu « aucune entree Search » — le registre vit en reality dans scripts/notebook_tools/twin_pairs.d/, ou la paire App-17 VRP Logistics (App-17 python <-> App-17b-Csharp, native-both) est enregistree. Les deux cotes ayant recu du markdown, le gate --per-pair sortait DRIFT INTRODUCED ; rebaseline prescribe passee en DERNIER operation (commit ba28d3d10, python_sha 507af7c1 / csharp_sha 417ae30a, verifies = blob SHA au HEAD). Re-verification locale : 157 paire(s) | OK=154 INTRO=0 (les 3 PRE restants sont pre-existants, hors perimetre #8264). Le twin App-17b-Python n'est PAS dans le registre (gap documente dans l'entree meme).

See #13410

🤖 Generated with Claude Code

…(densite 766/658/1074 -> 1215/1220/1247)

Tranche densite sur le trio VRP-Logistics de Search/Applications/Hybrid :
19 cellules markdown d'interpretation placees APRES la cellule de code lue,
chacune ancre sur sa sortie executee (borne ceil(328/60)=6 ; NN 595.83 ;
CI 585.89 ; 2-opt 583.03 / +12.80 ; recuit 569.24 / +13.79 ; OR-Tools 403.45
charges 60/60 x5 + 43/45 ; decomposition de l'ecart 3.00 vs 10.04 ; Tours C#
36,37..176,92 ; OR-Tools C# 510,59 vs Python 510,47 -- budgets 3 s vs 5 s,
NuGet 9.11 vs pip).

Diff en insertions pures ; cellules code byte-identiques a origin/main
(verifie par comparaison JSON) ; enrich_quality_ci rc=0 x3 ;
detect_repeated_prose : findings pre-existants (intro/summary), reduits sur
App-17 (1->0) et le twin Python (5->3).

See #13410

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 8/8 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 5.7s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 6.4s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 9.3s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 10.8s
Search-01-StateSpace.ipynb ✅ SUCCESS 8.2s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 4.9s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 41.4s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 4.8s

Pinned lockfile: scripts/notebook_tools/golden_set.lock.txt (H.7 P3, axe A #4208)

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Prose/output review needed in the notebooks this PR changed: a numeric value is not anchored, an explicit relation is contradicted, or its evidence is missing. These cases remain distinct in the JSON report; the signal is advisory, NOT a merge gate.

Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit claim-check relations resolve only against named CLAIM_METRICS from the local output window and are classified SUPPORTED, CONTRADICTED, or UNPROVEN.
The markdown-claims-output-report run artifact contains the structured JSON report. See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 numeric pathology, extended with low-noise relational evidence.

@github-actions

Copy link
Copy Markdown
Contributor

Notebook outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 3
  • Code cells validated: 40
  • Result: All passed

Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns)
Non-Python kernels (.NET/Lean): C.1 + errors only (execution_count advisory)
QuantConnect notebooks: C.1 + errors only (require QC Cloud for execution)

@github-actions

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-po-2026:CoursIA` voit ces signaux actifs sur les mergees du jour (UTC 2026-09-13) :

G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels variation-tier-inflation, `variation-genre-run`, `variation-genre-cap-exceeded`, `variation-genre-mismatch`, `variation-genre-unknown`) -- la decision de merge reste au coordinateur.

…e densite #13410

Les deux cotes de la paire enregistree (App-17 python, App-17b Csharp) ont
recu des cellules markdown interpretatives (code byte-identique) -- le gate
--per-pair sortait DRIFT INTRODUCED. Attestation --update passee en DERNIER
operation (#8957) : python_sha 507af7c, csharp_sha 417ae30 (verifies =
blob SHA au HEAD).

See #13410
See #8057

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #16024 (enrich(search,#13410): prose interpretative VRP-Logistics App-17/17b (densite 766/658/1074 -> 1215/1220/1247)) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

@myia-ai-01
myia-ai-01 merged commit ae2c74e into main Sep 14, 2026
81 of 83 checks passed
myia-ai-01 pushed a commit that referenced this pull request Sep 14, 2026
…uctural fold (#16112)

The existing organ (#15901) measures source VOLUME. A cell whose source folds
entirely into a comment is invisible to it by construction: on the founding
case (PR #16097, Lean-18 cell 40cb37d5) the head GROWS 1132 -> 1728 chars
because the same write that stripped the newlines appended a 639-char recovery
note, so the magnitude gate stops before any floor. The BLOCKING
notebook-cell-source-parses guard is blind too -- a fully commented cell parses
clean -- which is why it stayed green on a cell whose code had disappeared.

Adds two structural signals to the SAME check-run, no new fast-lane wiring:

  * `emptied`       matched cell whose statement count went from > 0 to 0.
  * `orphan-output` non-empty outputs with 0 statements and no IPython magic
                    (base-free by construction -- the issue's 3rd criterion).

The existing exemptions speak about the base->head RELATION, so they arbitrate
the comparative signal only; `orphan-output` is intra-cell and stays true
whatever happens to the code elsewhere. Both exemption fractions measure 0.00
on the founding case, so nothing was suppressed.

`_scan_line` / `_strip_ipython_magics` / `_is_python_kernel` are imported from
check_cell_source_parses rather than reimplemented, so the organs cannot
disagree about the same cell.

Criterion 1 of the issue (unterminated-item count) is REFUTED by measurement,
not implemented: per-character serialization already exists on main
(GenAI/Texte/21_LoRA_FineTuning.ipynb cell 69b296cb -> 802 unterminated items,
10 statements, real output, healthy). Histogram over the 11970 code cells of
main's 953 Python notebooks: {0: 11970, 1: 1, 802: 1}. The signal is withdrawn
rather than shipped with a threshold; the folds it targeted are covered twice
without it (code-first fold -> the blocking syntax guard; comment-first fold ->
`emptied`).

Calibration: 0 structural findings on main's full Python corpus; 0 structural
findings on the 18 notebooks changed by 12 merged PRs (#16080, #16071, #16069,
#16067, #16041, #16039, #16027, #16024, #16021, #16020, #16013, #16012). A
first sweep without the no-magic guard flagged 6 cells, all `# comment` +
`!python`/`%pip` -- the magic IS the producer, so the guard is measured
necessity, not caution.

Evidence: 30 tests green in the file, 89 across the sibling organ files;
`--self-test` OK with BOTH founding-case replays firing (volume #15901 and
structure #16110); live end-to-end run at #16097's head reports the exact
measured finding with RC=1.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
myia-ai-01 pushed a commit that referenced this pull request Sep 24, 2026
…17046)

* fix(density,#17040): App-17 VRP-Logistics Python — 1 paraphrase supprimee, 1 parasite editorial retire

Suppression de cellules 'Lecture' ajoutees par la campagne de densite
(#16024) qui ne portent pas d'interpretation utile sur la sortie lue.

* App-17 : suppression 'pourquoi aucune bibliotheque de solveur dans les imports'
  (f8fba7ef) — paraphrase sans interpretation de l'absence d'OR-Tools dans
  les imports ; le code de la cellule 6a0adef8 documente deja la strategie.
* App-17b-Python : suppression 'le contrat numpy seul' (68a43a2f) —
  paraphrase du commentaire introductif 'from-scratch' deja explicite
  dans la section d'introduction du notebook.
* App-17b-Python : retrait d'une phrase parasite ('La meme mesure, refaite
  depuis la solution de l'insertion au moindre cout, en dirait moins
  encore') inseree au milieu du paragraphe de la cellule 38855cac par
  la generation automatique — residue editorial sans lien logique.

Cellules 'Lecture' conservees : interpretationnelles, chiffrees et
positionnees apres la cellule code dont elles lisent la sortie (regle b
respectee, regle a OK car aucune lecture ne se chevauche sur une meme
sortie).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix(density): restore App-17b transition and attest twin parity

Read both App-17 twins at the PR head; code, outputs and execution counts remain unchanged. Restore the dropped sentence ending and re-attest the markdown-only App-17 change.

Co-Authored-By: Claude Code <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants