Repository navigation
Conversation
|
@palinatolmach I tightened the regression coverage for #1134 and marked this ready for review. Validation on this branch:
I also checked uv run make test against a clean master clone. It hits the same existing pytest-xdist collection mismatch in src/tests/unit/test_natspec.py, so that failure is not introduced by this PR. |
|
@peter941221 It seems that the fallback copies every
I guess one way to solve this would be to only inherit the shared options ( The tests check |
|
Thanks, fixed in 1982fd1. The [prove] fallback is now restricted to the shared FoundryOptions, RpcOptions, and SMTOptions keys before it is merged with the command-specific profile. Command-specific options such as depth, workers, and reinit are no longer inherited by the RPC proof commands, while command-specific values still override the fallback. The regression tests now verify smt-timeout and kore-rpc-command inheritance and explicitly verify that depth is not inherited by simplify-node, step-node, section-edge, or get-model. Validation: uv run black --check src/kontrol/main.py src/tests/unit/test_toml_args.py passed; uv run pytest src/tests/unit/test_toml_args.py -q --basetemp .pytest-tmp passed with 12 tests. |
Fixes #1134
When
kontrol.tomlonly defines proof-time settings under[prove.<profile>], the RPC proof commands that accept--config-fileand--config-profileread no TOML settings at all.pyk.parse_toml_args(...)only loads[args.command], sosimplify-node,step-node,section-edge, andget-modelignore the generatedkontrol.tomllayout and the reproducer from #1134.This patch makes those commands load
[prove.<profile>]first and then overlay any command-specific TOML section on top. Command-local overrides still win when both sections exist.Tests cover:
[prove.default]for all four RPC proof commandsValidation:
uv run make checkuv run pytest src/tests/unit/test_toml_args.py -quv run make teststill fails on a cleanmasterclone with the same existingpytest-xdistcollection mismatch insrc/tests/unit/test_natspec.py, so this PR does not introduce that failure