Skip to content

Add deterministic recipe parser fuzz gate - #54

Merged
dovvnloading merged 1 commit into
mainfrom
codex/parser-fuzz-release-gate
Jul 29, 2026
Merged

Add deterministic recipe parser fuzz gate#54
dovvnloading merged 1 commit into
mainfrom
codex/parser-fuzz-release-gate

Conversation

@dovvnloading

Copy link
Copy Markdown
Owner

Summary

  • Add a deterministic, bounded parser-fuzz qualification probe for image, calculator, and check payloads.
  • Assert stable redacted RecipeValidationError categories, canonical identity, reproducibility, and iteration budgets.
  • Fix check.v1 optional tolerance validation so is_close with None fails closed as invalid_check instead of leaking an AttributeError.
  • Add regression tests and update the Phase 2 ADR/qualification README with the evidence and remaining release gates.

Why this is needed

Parser fuzzing is an explicit Phase 2 release gate. The first 2,000-case run found a real edge-case defect in the tolerance: Decimal | None validator: a None value called the non-optional decimal validator and escaped as an uncaught AttributeError. The optional validator now preserves the typed contract and the regression test locks the stable failure category.

Validation

  • Deterministic parser fuzz (--iterations 2000 --seed 20260728 --json --strict): 158 accepted, 1,842 rejected, 0 unexpected exceptions.
  • Fuzz regression and recipe-contract tests: 19 passed.
  • Full Python suite: 263 passed, 1 Windows-inapplicable skip, 1 existing pytest-asyncio deprecation warning.
  • compileall and git diff --check passed.
  • No production execution provider is enabled by this change.

Release-gate status

This closes deterministic parser-fuzz evidence. Artifact security review, resource/watchdog accounting, external review, and production lifecycle health/wiring remain explicit blockers before provider enablement.

Cortex.pyproj was intentionally excluded because it contains an unrelated user edit.

Builds on merged PR #53.

@dovvnloading
dovvnloading merged commit 7c76d73 into main Jul 29, 2026
1 check passed
@dovvnloading
dovvnloading deleted the codex/parser-fuzz-release-gate branch July 29, 2026 02:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant