# fuzz/ — cargo-fuzz harness directory (placeholder) **Status:** placeholder. Not yet a cargo-fuzz project — just the directory. Fuzz harnesses land at spearhead step 5 (PSTN trunk) alongside the SIP/SDP/RTP wire parsers (PORT_PLAN §10 mandates continuous fuzzing of every wire parser). Slice 1 has no hostile-bytes surface (the browser is trusted), so no harnesses here yet — the `fuzz/` dir pre-paves the layout. Populating this directory with a real `cargo-fuzz` project (`fuzz/Cargo.toml` + `fuzz/fuzz_targets/*.rs`) happens at step 5. If you're at step 5, replace this README with that structure: - `fuzz/Cargo.toml` — cargo-fuzz manifest. - `fuzz/fuzz_targets/sip_parser.rs` — fuzz the SIP parser. - `fuzz/fuzz_targets/sdp_parser.rs` — fuzz the SDP parser. - `fuzz/fuzz_targets/rtp_packet.rs` — fuzz the RTP packet parser. - CI job running a short fuzz burst on each PR (the cargo-fuzz integration lands in `.github/workflows/` at that point). The hot-path "drop + observe, don't crash" policy (spec §3.8) is what the future harnesses assert against: throw arbitrary bytes at the parser, assert it returns an error or drops silently — never panics.