component-fuzz

Generates information-isolated fuzz tests for code-to-block round-trip pipelines using dual agents.

9|Updated Mar 4, 2026
One-click install
npx skills add https://github.com/timcsy/semorphe --skill component-fuzz-timcsy
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: component-fuzz
Source: https://github.com/timcsy/semorphe/tree/main/knowledge/skills/component-fuzz
Command: npx skills add https://github.com/timcsy/semorphe --skill component-fuzz-timcsy

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Implementation-aware tests tend to avoid patterns the code cannot handle, so edge cases in a code-to-block round-trip pipeline go undetected. This Skill uses two agents with strict information boundaries to write realistic programs and verify round-trip correctness, exposing bugs that hand-written tests miss. ## Core Features & Use Cases - Dual-agent information isolation: Agent A writes real programs knowing only the language spec, while Agent B validates round-trip correctness with full access to the Semorphe source code. - Multi-language support: Works with C++, Python, Java, and JavaScript, with per-language compile/run commands and difficulty calibration (easy, medium, hard) plus scope filters like loops, functions, or arrays. - Structured result classification: Categorizes outcomes as PASS, SEMANTIC_DIFF, COMPILE_FAIL, LIFT_FAIL, EXPECTED_DEGRADATION, SCAFFOLD_LEAK, ROUNDTRIP_DRIFT, WRONG_COMPONENT, or TIMEOUT, and converts every result into permanent Vitest regression tests. - Use Case: Run cpp hard loops 20 to generate 20 difficult C++ loop programs, lift each to a SemanticTree, regenerate code, compare program output, and file any semantic differences as bugs with reproduction tests. ## Quick Start Ask the AI to run component-fuzz with a target language, difficulty, scope, and program count, for example fuzzing twenty hard C++ loop programs through the round-trip pipeline.

Frequently Asked Questions about component-fuzz

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fuzz test a code-to-block round-trip pipeline?

Invoke the skill with a language, difficulty, scope, and count, such as cpp hard loops 20. It generates realistic programs, runs them through lift and generate stages, and diffs the executed output against the original to classify pass or bug results.

What is dual-agent information isolation in fuzz testing?

Agent A writes programs knowing only the language specification, never the implementation, so it cannot avoid unsupported patterns. Agent B knows the full source code and validates round-trip behavior, which exposes edge cases implementation-aware tests would skip.

Which programming languages does this fuzz testing support?

It supports C++ (C++17 via g++), Python (3.10+), Java (17+), and JavaScript (ES2022 via Node). Each language has its own compile and run commands, and the Agent A prompt is adjusted per target language.

What bug categories can round-trip fuzz testing detect?

It classifies SEMANTIC_DIFF (output differs), COMPILE_FAIL, LIFT_FAIL, SCAFFOLD_LEAK, ROUNDTRIP_DRIFT, WRONG_COMPONENT, and TIMEOUT as bugs. Programs using unsupported features are marked EXPECTED_DEGRADATION and recorded as coverage gaps rather than failures.

Are fuzz test results kept as permanent regression tests?

Yes. Passing programs become Vitest round-trip tests in tests/integration that also assert component identity, while bugs become it.todo or it.skip entries with root-cause notes. Temporary runner scripts are never accepted as final verification.