mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-07 04:12:04 +00:00
Stryker runs against encryption at rest, medication compliance, the rollups, source ranking, unit conversion and backup validation, with the unit tests that live next to them (vitest.mutation.config.mts). It is too slow for a pull request and runs nightly and on demand (.github/workflows/mutation.yml). scripts/mutation-floors.mjs reads the JSON report and fails when a module scores below its floor in stryker.floors.json, so one well-tested module cannot hide a weak one. The floors sit two points below the first measured scores: crypto 46.9 %, compliance 66.8 %, rollups 41.7 %, source ranking 57.0 %, units 87.4 %, backup validation 25.5 %. @stryker-mutator/vitest-runner 10.0.0 predates Vitest 5, which names a test "describe > test" where the runner still built "describe test". Every test inside a describe block was filtered out of the mutant runs, so nearly every mutant survived (5.5 % across the set). A pnpm patch builds the name the way Vitest 5 does; the Docker dependency stage copies the patches directory, which the frozen install needs.
104 lines
2.5 KiB
Plaintext
104 lines
2.5 KiB
Plaintext
# dependencies
|
|
/node_modules
|
|
/.pnp
|
|
.pnp.*
|
|
.yarn/*
|
|
!.yarn/patches
|
|
!.yarn/plugins
|
|
!.yarn/releases
|
|
!.yarn/versions
|
|
|
|
# testing
|
|
/coverage
|
|
|
|
# HAR captures from production debugging (may contain auth headers/cookies)
|
|
*.har
|
|
|
|
# playwright e2e
|
|
/test-results
|
|
/playwright-report
|
|
/playwright-json
|
|
/playwright/.cache
|
|
/e2e/setup/storageState*.json
|
|
|
|
# next.js
|
|
/.next/
|
|
/out/
|
|
|
|
# production
|
|
/build
|
|
|
|
# misc
|
|
.DS_Store
|
|
*.pem
|
|
|
|
# debug
|
|
npm-debug.log*
|
|
yarn-debug.log*
|
|
yarn-error.log*
|
|
.pnpm-debug.log*
|
|
|
|
# env files
|
|
.env
|
|
.env.local
|
|
.env.*.local
|
|
|
|
# typescript
|
|
*.tsbuildinfo
|
|
next-env.d.ts
|
|
|
|
# prisma generated — ignore the whole path so a stray symlink at
|
|
# `src/generated` (e.g. from a worktree) can never be committed
|
|
/src/generated
|
|
|
|
# v1.4.43 QoL (L3) — generated at build time by
|
|
# scripts/generate-sw-version.mjs; loaded by public/sw.js to key
|
|
# the cache-version baseline.
|
|
/public/sw-version.js
|
|
/public/i18n/
|
|
# In-browser OCR engine and language data, copied from node_modules by
|
|
# scripts/stage-tesseract-assets.mjs at prebuild/predev.
|
|
/public/tesseract/
|
|
|
|
# v1.4.27 B3 — MaxMind GeoLite2 databases are fetched at build time
|
|
# via `scripts/fetch-geolite2.sh`. Too large for git; license key
|
|
# required. The folder + a `.gitkeep` are tracked so the Dockerfile
|
|
# COPY target always exists.
|
|
/assets/geolite2/*.mmdb
|
|
|
|
# Local workspace files, never committed
|
|
/docs/superpowers/
|
|
.claude/
|
|
.cursor/
|
|
.codex/
|
|
.aider*
|
|
|
|
# Planning scratch — all internal per-release reports, QA findings, ad-hoc
|
|
# backlog, and the iOS coordination channel. These are internal working
|
|
# notes; everything user-facing lives in the public surfaces (README,
|
|
# CHANGELOG, docs/). Kept on disk for the working session, never tracked.
|
|
/.planning/
|
|
|
|
# Docs scratch — temporary spec drafts that live in the repo only
|
|
# while a release is in flight.
|
|
/docs/ios/
|
|
|
|
# Per-release internal forensic notes — retained locally for
|
|
# traceability across releases but not part of the public docs surface.
|
|
/docs/audit/
|
|
|
|
# Local screenshot/audit harnesses (repo-root for module resolution; never committed)
|
|
.audit-*.mjs
|
|
|
|
|
|
# Isolated development worktrees. `/.wt-*/` is the convention actually in use;
|
|
# each one is a full copy of the tree with its own node_modules, so leaving it
|
|
# untracked-but-visible means one `git add -A` commits the repository eleven
|
|
# times over. The same two names are excluded from eslint and vitest, for the
|
|
# same reason in a different tool.
|
|
/.wt-*/
|
|
/.worktrees/
|
|
# Mutation testing (stryker.config.mjs): reports and the sandbox copy.
|
|
/reports/mutation
|
|
/.stryker-tmp
|