Add a complete StrykerJS CI workflow and publish reports
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 55/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- github-actions, javascript, node.js
- Ambito
- ci-cd, frontend, testing-qa
Direzione di ricerca
First resolve prerequisite #8811, then inspect the existing GitHub Actions workflows, LibreSign's Node version, mutation-test npm script, Stryker configuration, and Vitest setup. Add a main/manual workflow that runs the full mutation test without a score gate, preserves supported reports as artifacts, and exposes operational failures and a summary in the log; verify the listed Done criteria.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Goal
Run the complete LibreSign frontend mutation suite in GitHub Actions and preserve useful mutation reports for maintainers.
This workflow provides the authoritative CI execution surface for complete StrykerJS runs and baseline measurement.
It is not the normal pull-request merge gate.
Prerequisite
The basic Stryker/Vitest integration in #8811 must work reliably.
Execution model
Provide a complete StrykerJS run from GitHub Actions.
Initially support:
- manual workflow dispatch;
- another non-PR cadence only when it is useful for maintaining a trustworthy complete baseline.
Do not require the complete StrykerJS suite on every normal pull request.
Normal pull-request mutation protection belongs to the later change-aware workflow.
Runtime
Use the Node version declared by LibreSign rather than hardcoding a divergent project runtime.
Install dependencies with:
npm ci
and invoke the project's mutation-test script.
Keep workflow logic declarative. Do not move application-specific mutation behavior into GitHub Actions when it belongs in Stryker configuration or project scripts.
Reporting
Preserve an HTML and/or machine-readable mutation report where supported.
Make useful reports available as CI artifacts.
The job log must still contain enough information to diagnose the run without requiring artifact download.
Record at minimum:
- total runtime;
- generated mutants;
- killed mutants;
- surviving mutants;
- no-coverage mutants;
- timeout/error mutants;
- mutation score;
- StrykerJS version;
- Node version;
- LibreSign commit SHA.
Failure behavior
The workflow must fail for operational failures such as:
- Stryker cannot start;
- Vitest cannot run;
- configuration is invalid;
- the mutation process crashes.
Do not hide failures behind unconditional success handling.
Do not introduce an arbitrary blocking mutation-score threshold in this issue.
Done when
- A complete StrykerJS run can execute from GitHub Actions.
- Complete-run reports are inspectable after CI finishes.
- Operational failures remain visible.
- The workflow records enough metadata to reproduce and compare runs.
- The complete run is not required on every normal pull request.
- No arbitrary merge-blocking score is introduced.
References
- Parent epic: #8810
- Lingua principale
- PHP
- Stelle
- 818
- Fork
- 146
- Merge medio
- 6h 48m
- PR unite (30g)
- 622
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di LibreSign/libresign
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
LibreSign/libresign#8284 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
backend enhancement php
Difficoltà 4/5 3-5 giorni Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
backend enhancement php
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
I maintainer di solito rispondono entro 1 giorno
-
backend php
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
-
frontend javascript
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di LibreSign/libresign
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
-
sync-en
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
sync-en
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
Yoast/wordpress-seo#23658 ·
I maintainer di solito rispondono entro 3 giorni
-
fixed
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
firefly-iii/firefly-iii#12934 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno