Skip to content

Commit b1419c1

Browse files
rv-jenkinsrv-auditorehildenbclaude
authored
Update dependency: deps/haskell-backend_release (#4935)
Bumps `deps/haskell-backend_release` to `v0.1.155`. This release replaces the `implies` RPC result's `valid :: Bool` field with a `status` tri-state (`valid` | `invalid` | `indeterminate`), so pyk's response parsing is updated in lockstep. `indeterminate` is booster's "could not decide" signal (an indeterminate match or an SMT-unknown obligation). The kore-rpc proxy escalates it to a decisive kore verdict on every path except booster-only mode, so it only reaches a client that explicitly opted out of kore; pyk collapses it to the conservative not-implied answer for its binary consumers. **Changes:** - Update `deps/haskell-backend_release`, `flake.{nix,lock}`, and the `haskell-backend` submodule to `v0.1.155`. - Parse the new `status` field in `ImpliesResult.from_dict` (`pyk/src/pyk/kore/rpc.py`), deriving `valid = (status == 'valid')`. - Migrate the `implies` mock-response unit fixture from `valid` to `status`. **Validation:** - `make -C pyk check` clean; full pyk unit suite (1769 tests) passes, including `test_implies`. - Verified no other recorded RPC fixtures in the repo encode the old `valid` field — integration tests drive a live backend and compare against constructed `ImpliesResult` objects. --------- Co-authored-by: devops <devops@runtimeverification.com> Co-authored-by: Everett Hildenbrandt <everett.hildenbrandt@gmail.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 3b9cd43 commit b1419c1

6 files changed

Lines changed: 15 additions & 9 deletions

File tree

deps/haskell-backend_release

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v0.1.154
1+
v0.1.155

flake.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
llvm-backend.inputs.nixpkgs.follows = "nixpkgs";
99

1010
haskell-backend = {
11-
url = "github:runtimeverification/haskell-backend/v0.1.154";
11+
url = "github:runtimeverification/haskell-backend/v0.1.155";
1212
inputs.rv-nix-tools.follows = "rv-nix-tools";
1313
inputs.nixpkgs.follows = "nixpkgs";
1414
};
Submodule haskell-backend updated 70 files

pyk/src/pyk/kore/rpc.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -937,8 +937,14 @@ def from_dict(dct: Mapping[str, Any]) -> ImpliesResult:
937937
substitution = dct.get('condition', {}).get('substitution')
938938
predicate = dct.get('condition', {}).get('predicate')
939939
logs = tuple(LogEntry.from_dict(l) for l in dct['logs']) if 'logs' in dct else ()
940+
# The backend reports a tri-state `status`: valid | invalid | indeterminate.
941+
# `indeterminate` is booster's "could not decide" signal; the kore-rpc proxy
942+
# escalates it to a decisive kore verdict on every path except booster-only
943+
# mode, so it only reaches us when the caller explicitly opted out of kore.
944+
# Collapse it to `valid = False` — the conservative not-implied answer the
945+
# binary consumers expect.
940946
return ImpliesResult(
941-
valid=dct['valid'],
947+
valid=dct['status'] == 'valid',
942948
implication=kore_term(dct['implication']),
943949
substitution=kore_term(substitution) if substitution is not None else None,
944950
predicate=kore_term(predicate) if predicate is not None else None,

pyk/src/tests/unit/kore/test_client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ def test_execute(
178178
int_bottom,
179179
int_top,
180180
{'antecedent': kore(int_bottom), 'consequent': kore(int_top), 'assume-defined': False},
181-
{'valid': True, 'implication': kore(int_top)},
181+
{'status': 'valid', 'implication': kore(int_top)},
182182
ImpliesResult(True, int_top, None, None, ()),
183183
),
184184
)

0 commit comments

Comments
 (0)