doc: analyze JIT seed generation + scope the lafleur MVP#138
Merged
Conversation
Add doc/jit-seed-generation.md: an empirical trace of what lafleur actually uses from fusil to generate JIT seeds, and the exact MVP port list. Key findings: - JIT fuzzing emits hot-loop harnesses, not classic call-spray scripts. - lafleur uses fusil ONLY as a subprocess, ONLY via --jit-target-uop=ALL (which overrides --jit-mode), so synthesize/variational/legacy are never exercised and bug_patterns.py is unused by seeding. - The evil/stateful object generators already live in lafleur.mutator (fusil imports them back via HAS_MUTATOR); only the simple argument generators are fusil-side. - MVP = port UOP_RECIPES + generate_uop_targeted_pattern + _generate_uop_targeted_ scenario + a trimmed simple-value generator; wire the object branch to lafleur.mutator. bug_patterns.py / the synthesize grammar are a later quality step. Also adds a Refinement note to jit-decision-memo.md narrowing the recommended scope and pointing at the new doc. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
doc/jit-seed-generation.md— an empirical trace of what lafleur actually uses from fusil to generate JIT seeds, and the exact MVP port list. Companion tojit-decision-memo.md(which gets a Refinement note narrowing the recommended scope).Why
We're deciding how to pay down the
fusil/python/jit/tech debt and move seed generation into lafleur. This doc answers the prerequisites empirically: what each JIT option generates, whether it's lafleur-usable, and exactly which fusil code lafleur depends on.Key findings
--jit-target-uop=ALL— which overrides--jit-mode, sosynthesize/variational/legacyare never exercised andbug_patterns.pyis unused by seeding.lafleur.mutator(fusil imports them back viaHAS_MUTATOR); only the simple argument generators are fusil-side.UOP_RECIPES+generate_uop_targeted_pattern+_generate_uop_targeted_scenario+ a trimmed simple-value generator; wire the object branch tolafleur.mutator.bug_patterns.py/ the synthesize grammar are a later quality step (better seeds).Docs only — no code changes.
🤖 Generated with Claude Code