Repository navigation
Conversation
Explain how forge properties generates test properties with an external generator, how Forge decides to keep, report, or reject them, how to check a candidate, and the stateful handler convention.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
0xKarl98
left a comment
There was a problem hiding this comment.
Three review concerns against Book 6ab2c677, compared with the current implementation of foundry-rs/foundry#17259 at a6fb4fc9. All three remain applicable if the companion PR merges unchanged: the runnable command uses an obsolete option, the candidate schema excludes the audit fields, and the documented retention guarantees differ from the implementation.
Each inline comment includes implementation excerpts and links pinned to that commit. The schema conflict was reproduced locally against the companion PR's test candidate; CLI and retention behavior were checked against source and test expectations. I did not build or run the companion Rust tests.
Align the guide with the current agent-session implementation in foundry-rs/foundry#17259. Replace the obsolete mutation rounds and candidate JSON protocol with the environment interface, seed validation, quorum reporting, output paths, and execution boundaries.
Describe the verifier command and verdicts, the grouping and report flow, the environment protections, and sample agent and verifier scripts. Regenerate the forge properties CLI reference from the current help.
Why
Before: the
forge propertiesguide described an older agent workflow. It had no verifier, no sample verifier, and an out-of-date CLI reference.After: the guide matches the current command: bring-your-own agents with a quorum,
@bugtagged failing tests, grouped reports, an optional disprove-first verifier, and the execution protections.Change
Rewrites
guides/forge-properties.mdxfor foundry-rs/foundry#17259, with a sample agent script and a sample verifier script. Regeneratesreference/forge/properties.mdxfromforge properties --help. Merge after the Foundry implementation lands.Downstream
None. Docs only.