{
  "tool_id": "art-611-erc7540-async-vault-request-accounting",
  "kernel_id": "art-611-erc7540-async-vault-request-accounting",
  "display_name": "ERC-7540 Async-Vault Request Accounting",
  "tool_version": "1.0.0",
  "mandate_type": "payment_policy",
  "purpose": "Recomputes ERC-7540 asynchronous-vault request accounting from caller-declared request state. ERC-7540 (Final, Created 2023-10-18, CC0-1.0) extends ERC-4626 with a three-state request lifecycle used by institutional and real-world-asset funds that cannot settle a deposit or redemption in the same transaction: an amount is Pending after a request, becomes Claimable when the vault fulfils it, and is Claimed when the holder finally calls deposit, mint, withdraw or redeem. This node applies a sequence of claims against the claimable buckets at the pro-rata rate they were made claimable at, tracks the pending, claimable and claimed split for both legs, reports the rounding residue a sequence of partial claims strands, and checks the standard's own invariants by name: pending and claimable are disjoint views, a claim never short-circuits the Claim state, a claim never exceeds what is claimable, and a request with a non-zero requestId stays at a single pro-rata rate. ERC-7540 mandates no rounding direction for a partial claim, unlike ERC-4626 which fixes one per function, so the direction here is a declared parameter and the result of the opposite direction is reported beside it rather than a direction being presented as required. All arithmetic is exact uint256 integer math with no floating point. This node never reads any chain: it cannot know whether the declared amounts match a deployed vault, when or whether a pending request will be fulfilled, whether the controller is authorised, or whether a claim transaction would succeed.",
  "control_description": "Recomputes ERC-7540 asynchronous-vault request accounting from caller-declared request state. ERC-7540 (Final, Created 2023-10-18, CC0-1.0) extends ERC-4626 with a three-state request lifecycle used by institutional and real-world-asset funds that cannot settle a deposit or redemption in the same transaction: an amount is Pending after a request, becomes Claimable when the vault fulfils it, and is Claimed when the holder finally calls deposit, mint, withdraw or redeem. This node applies a sequence of claims against the claimable buckets at the pro-rata rate they were made claimable at, tracks the pending, claimable and claimed split for both legs, reports the rounding residue a sequence of partial claims strands, and checks the standard's own invariants by name: pending and claimable are disjoint views, a claim never short-circuits the Claim state, a claim never exceeds what is claimable, and a request with a non-zero requestId stays at a single pro-rata rate. ERC-7540 mandates no rounding direction for a partial claim, unlike ERC-4626 which fixes one per function, so the direction here is a declared parameter and the result of the opposite direction is reported beside it rather than a direction being presented as required. All arithmetic is exact uint256 integer math with no floating point. This node never reads any chain: it cannot know whether the declared amounts match a deployed vault, when or whether a pending request will be fulfilled, whether the controller is authorised, or whether a claim transaction would succeed.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:5cd9dd6c701f8631291807f556d9b14f7f65bf9ccbacc31d2d089ef3a65c0541",
  "trust_label": "independently verified: zkVM execution proof (risc0/groth16-bn254)",
  "data_vintage": "2026-08-12",
  "last_validated": "2026-08-12",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 99,
  "source_url": "https://ainumbers.co/chaingraph/art-611-erc7540-async-vault-request-accounting.html",
  "generated_at": "2026-08-15T11:12:17.704Z"
}
