CI: wire vitest into .woodpecker.yaml so #14's lib tests run on every PR #19
Loading…
Add table
Add a link
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?
Type
Feature
Lineage
Discovered scope from
forgejo_admin/westside-admin#14(PR #18 merge, 2026-05-03) andreview-1134-2026-05-03-iter2(QA recommended a CI gate before sub-tasks #15/#16 consume the lib).Repo
forgejo_admin/westside-adminUser Story
story-westside-admin-admin-row-crud. The cookie-SSR auth gate is the funnel-auth safety constraint perfeedback_funnel_requires_auth. Its 25 vitest cases are useless if CI doesn't run them — a future change could regress JWT verification or AES-GCM tamper handling and ship to main green.Context
PR #18 added vitest as a devDependency and the
npm testscript; it ran tests locally before merge..woodpecker.yaml(added in PR #11) doesn't yet have ateststep. Until it does, the test suite only runs when a developer remembers — which is exactly the failure mode the gate is supposed to prevent.File Targets
Update:
.woodpecker.yaml— add ateststep before thekanikostep. Use the same node-22-alpine base image as the build step. Runnpm ci && npm test. Block the build step on test exit-0.Do NOT touch:
src/lib/server/keycloak.ts(frozen at merge of #14).Dockerfile(already has its ownnpm cifor build).Acceptance Criteria
npm ciwith cache).Test Expectations
Constraints
kustomizeorhelmstep here — westside-admin is a SvelteKit app, not a deployment artifact..woodpecker.yamlstep style; do not introduce a different YAML format or step naming convention.mainpushes — every commit including main-direct pushes must pass.Checklist
Related
project-westside-adminforgejo_admin/westside-admin#14— the lib whose tests this PR will gatefeedback_qa_ci_blockers— driving rule (tests that can't run in CI are blockers)feedback_woodpecker_quote_heavy_scripts— yaml authoring discipline