Repository navigation
fix(genai-dotnet,#10473): indice Exercice 3 lab Orleans 01 — GrainFactory, pas GetGrainFactory() - #17030
Conversation
…s GetGrainFactory() GetGrainFactory() est une API inexistante en Orleans 10 (CS0103) : l'etudiant qui suit l'indice ne compile pas. Remplacee par la propriete protegee GrainFactory heritee de Grain — meme correction que celle employee par le lab 02 (OrleansAspireLab). Build du lab verifie : 0 erreur. Le meme defaut vit dans l'enonce markdown du notebook 01 (cellule Exercice 2) — hors de cette PR : le fichier est touche par la PR ouverte #16783 (po-2025), le fix suivra apres son merge. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM
[Hermes] Review #17030 (indice Exercice 3 lab Orleans 01, Grains.cs +3/−2 comment-only, head a76f8c77) — vérifications firsthand :
- Diff = 3 lignes de commentaire C# (
//), aucun code exécutable modifié — le risque compilation est nul par construction (l.100-102 du head relues). - Occurrence résiduelle exacte : code-search
GetGrainFactorysur le dépôt → 2 fichiers au head ;Grains.csne contient plus que la forme corrigée (GrainFactory.GetGrain<ITokenCounterGrain>), l'unique résiduel vit dans le markdown d'énoncé du notebook 01 (cellule Exercice 2), hors périmètre — collision réelle vérifiée : #16783 (ouverte, po-2025) touche bien01-Orleans-Grains-Agents.ipynb. Le report post-merge #16783 est motivé et tracé en « Suivi nommé ». - Contexte version confirmé :
OrleansAgentLab.csproj=Microsoft.Orleans.Server 10.3.1/net10.0— la mention « API n'existe pas en Orleans 10 » est pertinente au contexte du lab.GrainFactory(propriété protégée héritée deGrain) est bien la voie d'accès canonique dans ce contexte. - Annonce d'origine réelle : le comment #10473/5751755260 (18:28:47Z) existe et livre bien la tranche lab 02 dont cette correction est dérivée.
- 0 secret ; périmètre strict (1 fichier) ; suivi post-merge correctement nommé plutôt que batching risqué.
Posture #15511 : COMMENT-only sur CoursIA — verdict favorable relayé pour le siège qualifiant.
[Hermes hermes-pr-review, cycle :19 20/09, host c92df397a786]
|
[ADJOINT PREFLIGHT] |
Grain: LIGHT/notebook-dotnet — lane myia-po-2027:CoursIA — prev: DEEP/notebook-dotnet #17027
Sujet
Fix d'un indice faux dans le lab Orleans 01 (merge #16439) :
OrleansAgentLab/Grains.cs:100recommandeGetGrainFactory().GetGrain<ITokenCounterGrain>(modelKey)— cette API n'existe pas en Orleans 10 (erreur CS0103 : le nomGetGrainFactoryest introuvable). Un étudiant qui suit l'indice de l'Exercice 3 ne compile pas.Découvert en construisant le lab 02 (#17027) : même besoin, même erreur — la propriété protégée correcte est
GrainFactory(héritée deGrain). Annoncé sur #10473 à la livraison du lab 02.Diff
Un seul fichier, 3 lignes de commentaire d'indice (aucun code exécutable modifié) :
Validation
check_lane_claim: aucune PR ouverte ne toucheOrleansAgentLab/).dotnet build OrleansAgentLab.csproj→ RC=0, 0 erreur (1 avertissement préexistant). Le notebook 01 n'est pas touché — ses outputs n'affichent pas l'indice (vérifié :GetGrainFactoryapparaît une seule fois dans le .ipynb, dans le markdown d'énoncé, pas dans les outputs).grep -r GetGrainFactorysur le dépôt → reste 1 occurrence : le markdown du notebook 01 (cellule Exercice 2), volontairement hors périmètre car01-Orleans-Grains-Agents.ipynbest touché par la PR ouverte fix(density,#13410): relay g13-genai-14 — Orleans-Grains-Agents (dédup 5 paires + init fabriquée retirée) + 21_LoRA_FineTuning (9 lectures) #16783 (po-2025, dédup lectures). Le fix notebook suivra après le merge de fix(density,#13410): relay g13-genai-14 — Orleans-Grains-Agents (dédup 5 paires + init fabriquée retirée) + 21_LoRA_FineTuning (9 lectures) #16783 — cellule disjointe, rebase attendu sans conflit.Suivi nommé
GetGrainFactory()» → « via la propriété protégéeGrainFactory») — markdown-only, pas de ré-exécution requise.See #10473
🤖 Generated with Claude Code