Contract Playground

BucketedRateLimiter

Direct read and write access to the deployed limiter, using the same guarded send flow as the main demo.

Contract Address

--

Network

Base Sepolia

Back to comparison

Window Limit

--

Window Usage

--

Remaining Capacity

--

Window Layout

--

Execution Flow

The debug route uses the same four-stage execution path as production: validate, simulate, wallet approval, then confirmation.

Execution Status

Ready

Run the same public-client preflight here before you prompt the wallet on the debug page.

1

Validate input

complete

Display amount 250,000 maps to raw contract amount 250000.

2

Simulate on public client

pending

Run publicClient.simulateContract(borrow(250000)) to catch limiter reverts before the wallet prompt.

3

Prompt wallet

pending

Ask the wallet to sign and broadcast the prepared borrow request with zero ETH value.

4

Confirm onchain

pending

Wait for the receipt so the UI only reports success after settlement.

Status Logs

0 entries

No execution logs yet. Run simulate or send to populate the audit trail.

Window Internals

Useful low-level state for validating the ring-buffer behavior and the current active window.

Current Bucket

--

Window Duration

--

Preview Allowed

No

Remaining After

0 units

Recent Buckets

The latest rolling-window slots from oldest to newest. This is the bounded storage shape that matters for the bucketed limiter.

Bucket IndexAmount
DeFi rate limiting proof of concept.simulation-first workflow.