State Directory

All NoFlake state lives in .noflake/ as human-readable files. No vendor database. No cloud storage. You own everything.

Directory structure

.noflake/
ā”œā”€ā”€ manifest.md            # Human-readable test manifest
ā”œā”€ā”€ manifest.json          # Machine-readable manifest
ā”œā”€ā”€ test-plan.md           # AI-generated test plan
ā”œā”€ā”€ coverage-map.md        # Which routes have test coverage
ā”œā”€ā”€ run-history.md         # Pass/fail history per run
ā”œā”€ā”€ report.md              # Latest run report
└── playwright-results.json # Raw Playwright JSON output

File descriptions

manifest.md / manifest.json

Lists every test NoFlake has generated — name, file path, status (passing/failing/stale), and when it was last updated. The .md version is for humans, the .json is for the CLI to read.

test-plan.md

The test plan generated by Claude based on your codebase scan. Lists what flows will be tested and why. Useful for reviewing AI decisions before generation.

coverage-map.md

Maps your application routes to test files. Shows which routes have coverage and which don't. Helps you spot gaps.

run-history.md

Log of every test run — timestamp, pass/fail counts, and which tests failed. Added to .gitignoreby default since it's ephemeral.

report.md

The latest report generated by noflake run. Includes pass/fail status, error details, and AI-suggested fixes. Drop it in a PR as a comment.

Git workflow

Everything in .noflake/ is designed to be committed to your repo, with one exception:

  • Commit: manifest.md, manifest.json, test-plan.md, coverage-map.md
  • Gitignore: run-history.md, playwright-results.json

This way your team shares the test plan and manifest, but not individual run logs.

No lock-in: The .noflake/ directory is purely informational. Your actual tests are standard Playwright files in tests/e2e/. You can delete .noflake/ at any time and your tests still work independently.