CI: baseline & diagnostic du job rust #231
Labels
No labels
autopilot:pending-human
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-clarification
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/Simpl-Resultat#231
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Refs: spec-decisions-ci-build-optimization.md + spec-plan-ci-build-optimization.md
Mesurer la baseline du job rust Forgejo AVANT tout changement, pour confirmer la cause (le diagnostic est infere : Gitea ne scope pas les caches par branche, donc le suspect n1 est le cache manuel sur target/ que cargo reinvalide) et avoir un avant/apres chiffre.
Cache restored from key: ...-cargo-target-...(restore effectif ou miss).Cache savedvsreserveCache failed: socket hang up/ timeout.Aucune dependance.
Ajout /review-spec (2026-06-30) : inclure dans le chrono la durée de
apt-get+rustup(install toolchain + libs système), qui n'est PAS cachée par rust-cache. Si l'install domine le temps total, la cible ~12 min peut ne pas tenir → ces chiffres serviront à re-décider l'image pré-buildée (actuellement OUT).Baseline — job rust (run 358, PR #230, 100% TypeScript, Cargo.lock inchangé)
Logs récupérés via la route web
/actions/runs/295/jobs/0/logs(l'API/actions/tasks/*/logsrenvoie 404 ; la route web accepte le token).Findings (preuves)
Cache not found for input keys: Linux-cargo-target-…ETLinux-cargo-registry-…(aucunCache restoreddans tout le log).::warning::Failed to save: reserveCache failed: Request timeout: /…/_apis/artifactcache/caches(2 fois — registry puis target).Chrono par étape (total 24 min 24 s)
Conclusion — cause dominante : #2 (save échoue, réseau job↔runner)
Pas #1 (cache réinvalidé) : le cache n'est même pas restauré. C'est le gotcha Gitea documenté — le conteneur job n'atteint pas (ou timeout sur) le serveur de cache de
act_runner. Twist : les saves ratés gaspillent ~7 min/run (tar d'un target/ multi-Go pour rien).Implications pour le fix (ré-oriente #232)
reserveCache. SireserveCachetimeout, son save échoue aussi → même miss. (Le prune de target/ pourrait aider si le timeout était lié à la taille — mais « Request timeout » surreserveCachepointe vers l'accessibilité du serveur de cache, pas la taille.)act_runner:cache.host/cache.port+ réseau conteneur↔runner). Accès hôte VPS requis.