ci: add PR validation workflow (cargo check/test + npm build) (#60) #61
No reviewers
Labels
No labels
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
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#61
Loading…
Reference in a new issue
No description provided.
Delete branch "issue-60-pr-check-workflow"
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?
Fixes #60
Summary
.forgejo/workflows/check.ymlruns on push (sauf main) + PR vers main.github/workflows/check.ymlmirror with GitHub-native syntaxrust(cargo check + test) andfrontend(npm build + vitest)Cargo.lockpackage-lock.jsonIntegration with the in-flight PRs
This PR is independent and branched from main. Once merged, the chained PRs from spec-monetisation can be rebased to inherit the workflow:
This order ensures the Rust code in #56 (license commands) is finally validated by CI before it touches main.
Test plan
rustjob succeeds (cargo check+cargo test)frontendjob succeeds (npm run build+npm test)Notes
npm testwhich uses vitest. There's currently 1 test file (reportService.test.ts); if it fails, address before merging.cargo clippywas deliberately not added to keep the workflow focused on hard failures. Can be added in a follow-up if desired.Review (sprint inline) — APPROVE (sous réserve d'exécution réussie)
Points vérifiés statiquement
.forgejo/workflows/check.ymlcréé suivant les conventions durelease.ymlexistant (runs-on: ubuntu,container: ubuntu:22.04, env PATH explicite).github/workflows/check.ymlavec syntaxe GitHub native (cohérent avec le release.yml GitHub mirror existant qui utiliseruns-on: windows-latest)rustetfrontend— pas de dépendance croisée, donc indépendantsCargo.lockpackage-lock.json(Forgejo) +cache: 'npm'natif (GitHub)pushsur toutes branches sauf main +pull_requestvers main — match exact des specs de l'issuePoints à valider sur le run réel
cargo checkréussit sur main (devrait, puisque main compile actuellement en release)cargo testpasse (les tests existantsprofile_commands::testspassent — vérifié dans le PR #55 d'Argon2id)npm run buildetnpm test(vitest surreportService.test.ts) passentSuggestion pour la suite
Une fois ce PR mergé, l'ordre recommandé pour faire bénéficier les PRs de spec-monetisation de la CI :
C'est le test grandeur nature : si le workflow fait échouer #56, on aura un signal immédiat sans avoir à attendre une release.
Aucun problème critique identifié.