stemedb/.claude/guides/local/uat-reports.md
jordan d3a88585fe feat: Phase 6 UAT - Admission control, HLC recency, cluster coordination
This commit includes comprehensive work on Phase 6 features:

## Admission Control (Phase 6 admission middleware)
- AdmissionStore implementation backed by TrustRankStore
- PoW verification with tier-based difficulty computation
- Trust tier progression (Newcomer → Established → Trusted → Authority)
- API integration with admission status endpoints

## HLC Recency Lens (Phase 6C)
- HlcRecencyLens for distributed system ordering
- Hybrid logical clock integration with causality preservation

## Cluster Coordination (Phase 6C)
- Multi-node cluster tests (availability, partition tolerance)
- CRDT convergence tests for anti-entropy sync
- Gateway handler improvements

## Aphoria Code Linter (Phase 2A)
- RFC/OWASP corpus builders with network fetching and caching
- Concept hierarchy with auto-alias creation on conflict detection
- Multiple security extractors (TLS, JWT, CORS, secrets, rate limiting)

## Code Organization
- Split large files into modules to comply with 500-line limit
- Improved test organization with separate test modules
- Fixed rkyv serialization for EigenTrustState (AgentScore struct)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 00:43:37 -07:00

90 lines
2.3 KiB
Markdown

# 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)