Skip to content

Commit 43ea3fc

Browse files
hyperpolymathclaude
andcommitted
docs: add TEST-NEEDS.md and/or PROOF-NEEDS.md from audit
Documents testing and proof gaps identified during batch audit. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent e8c8a22 commit 43ea3fc

1 file changed

Lines changed: 47 additions & 0 deletions

File tree

TEST-NEEDS.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Test & Benchmark Requirements
2+
3+
## Current State
4+
- Unit tests: 14 pass / 0 fail (11 unit + 3 doc-tests)
5+
- Integration tests: NONE
6+
- E2E tests: NONE
7+
- Benchmarks: NONE (benchmark dir has only README placeholder)
8+
- panic-attack scan: NEVER RUN (feature dir exists but no report)
9+
10+
## What's Missing
11+
### Point-to-Point (P2P)
12+
- lib.rs — 11 inline tests exist, reasonable for module size
13+
- parser.rs — tests exist but edge cases likely missing (malformed input, unicode, deeply nested structures)
14+
- renderer.rs — likely untested or minimally tested
15+
- types.rs — likely untested
16+
- error.rs — error paths and formatting not tested
17+
- tests/fuzz/ contains only placeholder.txt — no fuzzing
18+
19+
### End-to-End (E2E)
20+
- Parse real-world A2ML files from other hyperpolymath repos
21+
- Round-trip (parse -> render -> parse) equality check
22+
- Cross-implementation compatibility with a2ml_ex, a2ml_gleam, a2ml-haskell
23+
- CLI integration if binary exists
24+
25+
### Aspect Tests
26+
- [ ] Security (untrusted A2ML input, DoS via deeply nested structures)
27+
- [ ] Performance (large document parsing)
28+
- [ ] Concurrency (N/A for library)
29+
- [ ] Error handling (all error.rs variants reachable and tested)
30+
- [ ] Accessibility (N/A)
31+
32+
### Build & Execution
33+
- [x] cargo build — clean
34+
- [x] cargo test — 14 pass, 0 fail
35+
- [ ] Self-diagnostic — none
36+
37+
### Benchmarks Needed
38+
- Parse throughput (Criterion benchmarks)
39+
- Memory allocation profile
40+
- Comparison vs a2ml_ex (BEAM) and a2ml-deno (V8)
41+
42+
### Self-Tests
43+
- [ ] panic-attack assail on own repo
44+
- [ ] Built-in doctor/check command (if applicable)
45+
46+
## Priority
47+
- **MEDIUM** — 5 source files with 14 tests is decent ratio but renderer and types likely lack coverage. Fuzz directory is empty. No benchmarks despite benchmark dir existing. As the Rust reference implementation, this should have the most comprehensive tests of all A2ML libraries.

0 commit comments

Comments
 (0)