Files
alkgit/.gitignore
T
glm-5.3-flash a9fc1f9ec6 test(fuzz): the wave-5 fuzz harness — the fuzz/ sidecar, five ingress targets, the corpus gate
The family standing rule (anything worth fuzzing gets fuzzed) landed on
the core's ingress surfaces, per the plan's wave-5 charter and the
alkblobs precedent (core/w5-fuzz-harness):

- the fuzz/ sidecar: workspace-excluded cargo-fuzz runner, nightly
  pinned inside fuzz/ only; the invariant batteries live in the stable
  fuzz/shared crate (consumes alkgit's public API + two doc(hidden)
  exposures), so the committed corpus replays without a session
- five targets: request_line (the ADR-016 grammar parser + wire reader
  as a differential pair against a framing oracle), pktline_framing
  (duplex read_request/read_push_request + stateless read_post, both
  services, budget arms at small bounds, machinery-misuse defenses
  asserted), command_parse (parse_fetch_args + parse_push_request),
  repo_id (validate_repo_id vs an independent oracle), open_params
  (the exact channels/git/sub establisher + the plan: None fallback's
  production param parse, cross-checked per input)
- the committed corpus: 153 deterministic seeds via gen_fuzz_seeds.py;
  grown corpora/artifacts gitignored
- the corpus gate joins AGENTS.md §Verification Commands
- channels.rs: make_git_establisher + OpenParams exposed doc(hidden)
  for the open-op-params target (additive, pre-freeze; publish
  disposition flagged for release-readiness)
- campaigns: all five clean — 0 crash/oom/timeout across ~4.3M execs;
  the R-5 io read-error arm fuzz-reached at 148 executions; the
  plan: None fallback body + accept_bi arm recorded honestly as not
  fuzz-reachable (behind the alkcall Connection transport)

Verification: cargo test (workspace + --all-features + -p alkgit),
both clippies (-D warnings), fmt, doc --no-deps clean; corpus gate
13/13; taskgraph validate ✓; five detached 90 s campaigns clean.
2026-10-23 07:24:18 +00:00

5 lines
48 B
Plaintext

/target
Cargo.lock
!fuzz/Cargo.lock
.worktrees/