# Writing UAT Reports **When to use:** After completing a phase, feature, or release and you need to document what was tested and the outcomes. ## Prerequisites - Completed UAT testing session - Access to test results and logs - Understanding of what was in scope ## Quick Start ```bash # Create a UAT report following the template cp uat/how-to.md uat/{feature}-{date}.md # Edit with your results # File naming: uat/phase6-distributed-2026-02-02.md ``` ## Report Structure Every UAT report follows the template in `uat/how-to.md`: 1. **Header** — Date, phase/feature, tester, overall status 2. **Summary** — 1-2 sentences on what was tested 3. **Scope** — What was and wasn't tested 4. **Environment** — Rust version, OS, commit 5. **Test Results** — Tables with Expected/Actual/Status 6. **Issues Found** — Severity, status, description 7. **Fixes Applied** — Changes made during UAT 8. **Recommendations** — Future improvements 9. **Sign-Off** — Checklist for release readiness ## File Naming ``` uat/{feature-or-phase}-{YYYY-MM-DD}.md ``` Examples: - `uat/phase6-distributed-2026-02-02.md` - `uat/skeptic-endpoint-2025-12-15.md` - `uat/go-sdk-v2-2026-01-20.md` ## Test Result Tables Use consistent formatting: ```markdown | Test | Expected | Actual | Status | |------|----------|--------|--------| | Build | Compiles | Compiled in 36s | PASS | | Health endpoint | 200 OK | 200 OK | PASS | ``` ## Issue Severity Levels | Severity | Meaning | |----------|---------| | Critical | Blocks release, data loss risk | | High | Major functionality broken | | Medium | Functionality degraded but workaround exists | | Low | Minor issue, cosmetic, or edge case | ## Sign-Off Checklist Before marking a UAT complete: - [ ] All critical tests pass - [ ] No blocking issues remain - [ ] Documentation updated - [ ] Ready for release ## Troubleshooting ### Test results are inconsistent Check the environment section — version mismatches cause false failures. Re-run in a clean environment. ### Can't reproduce an issue Document what you tried and mark the issue as "intermittent" with reproduction steps attempted. ## Related - [Testing Guide](.claude/guides/local/testing.md) - [Quality Checks](.claude/guides/local/quality-checks.md) - [UAT Template](uat/how-to.md)