|
| 1 | +{"entry_id":"ced68556-00db-4933-a0e0-5ebee5fc47ce","timestamp":"2026-07-17T01:01:43.903Z","contract_path":"valuepacket/bindings/CrossChainSettlement.binding.json","contract_sha256":"379fd965087af5043570fbf91c0787cc4e08ceca333735c7d2f99bb76cfd5bee","invariants_text":"(pre-reviewed binding)","binding":"{\"model\":\"erc20_pool\",\"notes\":\"POOL-LEVEL ONLY. Escrow/per-escrow lifecycle invariants are NOT modeled. Escrow-level properties (single settlement, signature verification, Axelar gateway gating, deadline-based refund) require an escrow-aware model extension.\",\"functions\":[{\"name\":\"deposit\",\"guards\":[\"amt_gt_0\"],\"effects\":[\"total_add_amt\"]},{\"name\":\"settleFromSource\",\"guards\":[\"amt_gt_0\",\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]},{\"name\":\"refund\",\"guards\":[\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]}],\"invariants\":[\"nonneg_total\"],\"invariant_mapping\":[{\"english\":\"Total token balance held by the contract must never go negative.\",\"invariant\":\"nonneg_total\"},{\"english\":\"Total held cannot exceed the practical supply cap.\",\"invariant\":\"supply_cap\"}],\"coverage\":{\"checked\":[\"deposit conservation (pool-level)\",\"non-negative contract balance\"],\"not_checked\":[\"escrow single-settlement\",\"per-escrow spent ≤ deposit\",\"Axelar gateway-only access\",\"signature verification\",\"deadline-based refund gating\",\"paymentId uniqueness\"],\"recommendation\":\"Extend trusted core with an escrow_pool model that tracks per-escrow state (payer, payee, deposit, spent, settled, deadline) and escrow lifecycle invariants.\"}}","binding_source":"provided","verdict":"proved","solver_output_sha256":"2eb2a05013a88497d7fd7ee40b0da01a2a0e862cfd3f871d6cc028fde9682ab0","llm_provider":null,"llm_model":null,"llm_input_tokens":0,"llm_output_tokens":0,"duration_ms":115,"prev_hash":"0000000000000000000000000000000000000000000000000000000000000000","hash":"11fedef1ad8154fc9fef16d0dfd9012f0dbc414f35e1bb6ee63148c02af64d54"} |
| 2 | +{"entry_id":"693be868-b1a7-4c7a-b61c-8d3d3020ddb0","timestamp":"2026-07-17T01:01:44.125Z","contract_path":"valuepacket/bindings/PaymentChannel.binding.json","contract_sha256":"c08b3119196a315553148f32729bfe417ab5c4c4d4e4506b7097ada0c8cb4e3c","invariants_text":"(pre-reviewed binding)","binding":"{\"model\":\"erc20_pool\",\"notes\":\"POOL-LEVEL ONLY. Channel/struct lifecycle invariants are NOT modeled here — the current vocabulary covers total contract token accounting. Channel-level properties (spent ≤ deposit, expiry gating, signature authorization, status transitions) require a channel-aware model extension.\",\"functions\":[{\"name\":\"openChannel\",\"guards\":[\"amt_gt_0\"],\"effects\":[\"total_add_amt\"]},{\"name\":\"closeChannel\",\"guards\":[\"amt_gt_0\",\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]},{\"name\":\"refundChannel\",\"guards\":[\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]},{\"name\":\"extendChannel\",\"guards\":[\"amt_gt_0\"],\"effects\":[\"total_add_amt\"]}],\"invariants\":[\"nonneg_total\"],\"invariant_mapping\":[{\"english\":\"Total token balance held by the contract must never go negative.\",\"invariant\":\"nonneg_total\"},{\"english\":\"Total held cannot exceed the practical supply cap for any ERC-20.\",\"invariant\":\"supply_cap\"}],\"coverage\":{\"checked\":[\"deposit conservation (pool-level)\",\"non-negative contract balance\"],\"not_checked\":[\"channel status transitions\",\"per-channel spent ≤ deposit\",\"signature authorization in closeChannel\",\"expiry gating on refundChannel\",\"reentrancy safety (nonReentrant modifier)\",\"payee-only close, payer-only refund\"],\"recommendation\":\"Extend trusted core with a channel_pool model that tracks per-channel state (deposit, spent, status, payer, payee, expiry) and channel lifecycle invariants.\"}}","binding_source":"provided","verdict":"proved","solver_output_sha256":"27a6d5469f8dc3581d9c339d7d499c77bfcba0bec22bab5c61a816d1d6cb4421","llm_provider":null,"llm_model":null,"llm_input_tokens":0,"llm_output_tokens":0,"duration_ms":137,"prev_hash":"11fedef1ad8154fc9fef16d0dfd9012f0dbc414f35e1bb6ee63148c02af64d54","hash":"d2e5dcc994b653b989d92bec1491299ac9173a6ed44128a586f9dd07bda7aff6"} |
| 3 | +{"entry_id":"4caaac3e-06b6-44aa-b2f5-66b4b6bd7921","timestamp":"2026-07-17T01:01:44.324Z","contract_path":"valuepacket/bindings/SubscriptionManager.binding.json","contract_sha256":"2ccc526e963390de9a5e989eb34e9dce257a0813308a42b032a7c606615ce54a","invariants_text":"(pre-reviewed binding)","binding":"{\"model\":\"erc20_pool\",\"notes\":\"POOL-LEVEL ONLY. Subscription lifecycle and per-period invariants are NOT modeled. Subscription-level properties (active→cancelled transition, completedPeriods ≤ maxPeriods, per-period spend limits, EIP-712 authorization, cancellation refund formula) require a subscription-aware model extension.\",\"functions\":[{\"name\":\"createSubscription\",\"guards\":[\"amt_gt_0\"],\"effects\":[\"total_add_amt\"]},{\"name\":\"renew\",\"guards\":[\"amt_gt_0\",\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]},{\"name\":\"cancel\",\"guards\":[\"total_ge_amt\"],\"effects\":[\"total_sub_amt\"]}],\"invariants\":[\"nonneg_total\"],\"invariant_mapping\":[{\"english\":\"Total token balance held by the contract must never go negative.\",\"invariant\":\"nonneg_total\"},{\"english\":\"Total held cannot exceed the practical supply cap.\",\"invariant\":\"supply_cap\"}],\"coverage\":{\"checked\":[\"deposit conservation (pool-level)\",\"non-negative contract balance\"],\"not_checked\":[\"subscription active→cancelled transition\",\"completedPeriods ≤ maxPeriods\",\"per-period spent ≤ amountPerPeriod\",\"EIP-712 subscription signature verification\",\"cancel refund formula correctness\",\"totalDeposited tracking accuracy\",\"reentrancy safety (nonReentrant modifier)\"],\"recommendation\":\"Extend trusted core with a subscription_pool model that tracks per-subscription state (payer, payee, amountPerPeriod, completedPeriods, maxPeriods, active, totalDeposited, totalSpent) and subscription lifecycle invariants.\"}}","binding_source":"provided","verdict":"proved","solver_output_sha256":"af10f186cb8b974963b2e3ba4aa3d6892489275ac84bc860ddbec6334c46509d","llm_provider":null,"llm_model":null,"llm_input_tokens":0,"llm_output_tokens":0,"duration_ms":116,"prev_hash":"d2e5dcc994b653b989d92bec1491299ac9173a6ed44128a586f9dd07bda7aff6","hash":"a33aa59393ed73cd63770d50163422b56951cba618c65c8c950882396ab496c1"} |
0 commit comments