CI: Forgejo — split workflows + rust-cache + cargo-audit pre-buildt #232
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#232
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 — RE-SEQUENCE post-baseline #231 (2026-06-30).
La baseline #231 a confirme la cause #2 (save du cache echoue :
reserveCache failed: Request timeout). Consequence : rust-cache ne peut PAS aider tant que #234 (connectivite serveur-de-cache du runner, acces hote VPS) n'est pas fait — il partage le meme backendreserveCache. Cette issue fait donc les GAINS IMMEDIATS (sans VPS) ; rust-cache est defere a un follow-up apres #234.Gains immediats (sans acces VPS) — cible : PR Rust ~11-12 min (au lieu de 24), PR frontend ~3 min
.forgejo/workflows/check.yml->check-rust.yml+check-frontend.yml.check-rust.yml:on.pull_request.branches:[main]+paths:[src-tauri/**, self];concurrencyDISTINCT (ci-rust-${{ github.ref }}) ;permissions: contents: read; etape « install sysdeps + Node.js + toolchain » verbatim ; envCARGO_INCREMENTAL=0/CARGO_PROFILE_TEST_DEBUG=0.target/manuel : il gaspille ~7 min/run en saves rates (reserveCache timeout), inutile tant que #234 n'est pas fait. (Cache registry+git : le retirer aussi ou le garder, marginal.)cargo-auditviataiki-e/install-action(binaire, ~5.5 min gagnees) au lieu decargo install; SANS|| true; + unon: schedulequotidien pour la couverture RustSec hors PR Rust.check-frontend.yml: job frontend inchange (+ commentaire « cache npm manuel volontaire ») ;branches:[main]+paths:frontend ;concurrencyDISTINCT (ci-frontend-${{ github.ref }}) ;permissions: contents: read.src-tauri/**-> check-rust ; PR frontend-only -> check-rust SAUTE.Defere (follow-up apres #234)
Swatinem/rust-cache@v2(workspaces: "src-tauri -> target") une fois la connectivite serveur-de-cache reparee (#234) -> cache reellement persiste + prune. Verifier alors un vraiCache restoredau run suivant.Depends on #231 (baseline, fait). Prerequis pour rust-cache : #234.
Ajustements issus de /review-spec (2026-06-30) — à intégrer en plus du body :
on.pull_request.branches:[main]ET un groupeconcurrencyDISTINCT (ci-rust-${{ github.ref }}/ci-frontend-${{ github.ref }}). Sinon, en héritant deci-${{ github.ref }}+cancel-in-progress, les 2 workflows s'annulent mutuellement sur une PR mixte.nodedans le PATH.permissions: contents: readen tête de chaque nouveau workflow.on: schedulequotidien (ou un workflow audit dédié sanspaths:) pour garder la couverture RustSec hors des PR Rust ; retirer le|| true(échouer sur erreur d'outillage, advisories non-bloquantes).src-tauri/** + self(retirer les globs**/*.rsredondants — tout le Rust est sous src-tauri/).Détail : spec-plan-ci-build-optimization.md → Issue 2 + « Revision — Synthese ».
Ré-orientation suite à la baseline #231 : la cause dominante est #2 (save échoue,
reserveCache timeout), pas #1. rust-cache seul ne débloquera PAS les 24 min — il partage le backendreserveCache.→ Prérequis : #234 (connectivité serveur-de-cache du runner, accès hôte VPS). Une fois #234 résolu, rust-cache reprend tout son sens (cache pruné + réellement persisté).
Restent applicables indépendamment dans cette issue (gains immédiats, sans dépendre de #234) : cargo-audit en binaire pré-buildé (~5.5 min/run), path-filter (skip rust sur PR frontend), + le fix concurrency/permissions/install-Node de la revue. À reséquencer : ces gains d'abord, rust-cache après #234.