{"exportType":"railzero.scan","generatedAt":"2026-10-16T11:01:43.238Z","payload":{"address":"0x92b7c5310eb6a8df2f4a4d5e1d2e22c9a4e63a21","chain":"ethereum","generatedAt":"2026-10-16T11:01:43.238Z","findings":[{"id":"eth-open-approval","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","tokenAddress":"0x0000000000000000000000000000000000eTh001","symbol":"OLD","name":"Old Yield Receipt","estimatedUsd":94.75,"balanceDisplay":"49.5 OLD","riskLevel":"high","riskReasons":["Open unlimited approval","Dormant token contract","Unknown spender still active"],"liquiditySignal":"thin","recommendedAction":"revoke","hasOpenApproval":true,"spenderAddress":"0x0000000000000000000000000000000000eThA11","spenderLabel":"Legacy Router","source":"demo"},{"id":"eth-ambiguous-claim","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","tokenAddress":"0x0000000000000000000000000000000000eTh002","symbol":"vCLAIM","name":"Vault Claim Ticket","estimatedUsd":41.2,"balanceDisplay":"3 vCLAIM","riskLevel":"medium","riskReasons":["Ambiguous claim contract","Selector overlaps with claim-and-approve pattern"],"liquiditySignal":"moderate","recommendedAction":"bounded_route","hasOpenApproval":false,"source":"demo"},{"id":"eth-low-context","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","tokenAddress":"0x0000000000000000000000000000000000eTh003","symbol":"VEN","name":"Known Venue Receipt","estimatedUsd":12.03,"balanceDisplay":"0.75 VEN","riskLevel":"low","riskReasons":["Known venue","No open approval"],"liquiditySignal":"strong","recommendedAction":"ignore","hasOpenApproval":false,"source":"demo"}],"routes":[{"routeHash":"rz_a0681b18","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","targetAddress":"0x0000000000000000000000000000000000eThA11","targetLabel":"Legacy Router approval review","targetCodeHash":"0xeth-demo-codehash-01","selector":"0x095ea7b3","interactionType":"revoke","policyId":"rz-revoke-readonly-v1","policyName":"Approval exposure review","maxInputUsd":0,"approvalPolicy":"revoke_after","executionMode":"prepared_transaction_disabled","status":"simulation_candidate","postconditions":["Approval should be zero after user-verified revoke","No transaction is generated by this MVP"],"warnings":["Verify spender address in an independent wallet interface","Approval data may be stale"],"createdAt":"2026-05-01T15:00:00.000Z","expiresAt":"2026-05-06T15:00:00.000Z","evidenceNotes":["Fixture route describes approval review evidence only","Prepared transaction remains disabled"],"source":"demo"},{"routeHash":"rz_a60d5db9","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","targetAddress":"0x0000000000000000000000000000000000eTh002","targetLabel":"Vault Claim Ticket","targetCodeHash":"0xeth-demo-codehash-02","selector":"0x4e71d92d","interactionType":"claim","policyId":"rz-bounded-sim-v1","policyName":"Bounded claim simulation","maxInputUsd":5,"minOutputAsset":"ETH","approvalPolicy":"exact_amount_only","executionMode":"simulation_only","status":"bounded_pass","postconditions":["Exact input only","No unlimited approval","Output asset must be ETH or route is rejected"],"warnings":["Bounded pass is not a certification","Route evidence can be incomplete or stale"],"createdAt":"2026-05-01T15:15:00.000Z","expiresAt":"2026-05-04T15:15:00.000Z","evidenceNotes":["Fixture route shows bounded-route evidence without live execution"],"source":"demo"}],"approvals":[{"id":"eth-open-approval-approval","chain":"ethereum","chainId":1,"walletAddress":"0x92b7C5310eB6A8Df2f4A4d5E1D2e22c9a4E63A21","tokenAddress":"0x0000000000000000000000000000000000eTh001","tokenSymbol":"OLD","spenderAddress":"0x0000000000000000000000000000000000eThA11","spenderLabel":"Legacy Router","allowanceDisplay":"Demo allowance signal","riskLevel":"high","riskReasons":["Open unlimited approval","Dormant token contract","Unknown spender still active"],"recommendedAction":"revoke","source":"demo"}],"liquidity":[{"id":"eth-open-approval-liquidity","chain":"ethereum","chainId":1,"tokenAddress":"0x0000000000000000000000000000000000eTh001","symbol":"OLD","liquiditySignal":"thin","source":"demo","updatedAt":"2026-10-16T11:01:43.238Z"},{"id":"eth-ambiguous-claim-liquidity","chain":"ethereum","chainId":1,"tokenAddress":"0x0000000000000000000000000000000000eTh002","symbol":"vCLAIM","liquiditySignal":"moderate","source":"demo","updatedAt":"2026-10-16T11:01:43.238Z"},{"id":"eth-low-context-liquidity","chain":"ethereum","chainId":1,"tokenAddress":"0x0000000000000000000000000000000000eTh003","symbol":"VEN","liquiditySignal":"strong","source":"demo","updatedAt":"2026-10-16T11:01:43.238Z"}],"providerStatus":[{"providerId":"demo","label":"Demo fallback","configured":true,"status":"ready","message":"Deterministic demo fallback is available."},{"providerId":"evm-rpc","label":"RPC provider","configured":false,"status":"disabled","message":"Live scan is disabled by environment."},{"providerId":"approval-provider","label":"Approval provider","configured":false,"status":"disabled","message":"Live scan is disabled by environment."},{"providerId":"dex-provider","label":"DEX/liquidity provider","configured":false,"status":"disabled","message":"Live scan is disabled by environment."},{"providerId":"security-provider","label":"Security provider","configured":false,"status":"disabled","message":"Live scan is disabled by environment."}],"dataFreshness":{"generatedAt":"2026-10-16T11:01:43.238Z","liveScanEnabled":false,"sourcesUsed":["demo"],"fallbackUsed":true,"warnings":["Using deterministic demo fallback where live public-data providers are unavailable."]},"summary":{"unknownAssets":0,"openApprovals":1,"blockedFindings":0,"boundedCandidates":2,"estimatedRecoverableUsd":147.98,"highestRiskLevel":"medium"},"riskScore":{"score":0,"level":"low","components":{"approvalExposure":0,"unknownAssetPenalty":0,"liquidityConfidence":12,"routeEvidenceConfidence":-35,"blockedListPenalty":0,"freshnessPenalty":0},"explanation":["No unknown-spender approval penalty was applied.","No unknown-asset liquidity penalty was applied.","Thin liquidity adds a smaller uncertainty penalty.","Bounded route evidence reduces triage risk but is not a certification.","No local blocked-list penalty was applied.","Demo fallback was used because live provider data was unavailable or disabled."]}}}