Establish the baseline
Run the relevant check against the original source. If the baseline already fails, label that failure rather than attributing it to the new candidate.
Workflow / A deliberate RTL revision
A downstream stall exposes a handshake problem. You need to understand the source, make a bounded repair and hand over evidence another engineer can follow. Here is the workflow.
Understand · Plan · Execute · Review
Install a compatible application build, open the project and configure the engineering tools needed for your checks. If you will use AI, configure a supported route and review its data boundary first. Keep a known baseline and preserve unrelated edits.
01 / Ask
State interfaces, clocks, reset, allowed traffic, capacity, error handling and observable results. For an existing design, begin with a read-only explanation and check the cited implementation.
Explain the ready/valid path from input to output.
Identify where a sample is accepted, transformed and buffered.
Cite the source locations. Do not modify files.
List assumptions and anything you cannot establish.Expected result: a source-grounded explanation you can challenge. Check attached context before sending; do not assume the provider needs the entire repository or unrelated private files.
If the answer conflicts with the source: investigate the mismatch before requesting a repair. A confident explanation is not a test result.
02 / Plan & approve
Ask for a bounded change and a plan covering affected source, interface compatibility and verification. Resolve disagreements between a requirement and the existing implementation before approving execution.
Plan a repair for the demonstrated stall-handling failure.
Preserve the top-level interface and reset contract.
Identify affected files and the smallest reproducible failing test.
Include sustained stalls, simultaneous input/output and reset.
Do not implement until I approve the plan.Expected result: an explicit plan you can approve, revise or reject. A plan approval is not final approval to apply its eventual candidate.
03 / Execute
After approval, execution works on an isolated candidate. Read the actual tool command, input revision, configuration, exit status and artifacts—not just the assistant's summary.
Run the relevant check against the original source. If the baseline already fails, label that failure rather than attributing it to the new candidate.
Run matched checks on the candidate. Examine failed assertions and waveforms; confirm that the stimulus exercises the intended boundary.
An unavailable tool or interrupted run is not a pass. Fix setup or retain the limitation. Never disable a safety check to make a run look successful.

stream_register example: an actual Icarus trace from the first-project guide, opened in native Verify. It illustrates evidence inspection, not the result of the hypothetical repair above.If execution is interrupted: preserve the candidate and recorded outputs. Inspect their state before continuing; do not assume partial work was applied or verified. See recovery and safe diagnostics.
04 / Review
Expected result: a deliberate apply/reject decision tied to the reviewed source. A Git commit, a local checkpoint and a candidate approval are distinct records; none substitutes for the others.
Version-control and candidate-review guide → · Read tool results →
These retained case studies extend the review questions; they are not downloadable projects. Start with the reproducible stream-register exercise if you want to follow along now.
Trace accepted samples through calibration and a fixed-depth buffer. Check ordering, saturation, backpressure and reset accounting before proposing a capacity change.
Follow the telemetry walkthrough →Compare a replacement with its surrounding application. Inspect the completion contract under a delayed decision instead of using source similarity as an acceptance test.
Follow the packet walkthrough →Keep requirements, source identity and evidence together so you—or the next engineer—can pick up the work with confidence. Production qualification remains a separate engineering responsibility.
Run the complete first-project guide →