DeepQA for dApps
Find what breaks in your dApp before your users do.
DeepQA tests your live dApp on the chain it runs on, wallet and all.
- connect0.4s
- render1.1s
- loading0.9s
- pending statenever clears
- error messageshown
- linksqueued
- detect0.2s
- connect request0.6s
- sign1.3s
- rejecthandled
- switch networkrefused
- disconnectqueued
- networkmatched
- send0.7s
- receipt2 of 2
- balanceupdated
- decimalswrong scale
- explorer linkqueued
18 checks, 13 passed, 2 issues, 3 queued
Summed from every published dApp report.
Campaigns so far, and room for yours.
A campaign tests the apps of one chain in public and publishes every report.
Your chain
Give your builders a public QA pass.
A campaign runs DeepQA across your ecosystem's apps. Builders get findings they can fix, and new apps can put themselves forward.
It fits alongside a builder or grant program as a shared quality check.
We welcome partnerships with chain teams and ecosystems.
The bugs users hit live between the page and the chain.
Unit tests stop at the contract. Users meet the page, the wallet and the chain together.
The hard moments are in between: a wrong network, a rejected signature, a transaction still pending, an amount off by its decimals.
A test without a funded wallet stops at the connect button, so these flows usually ship untested.
- dApp in a browser
- QA wallet
- Chain
- Explorer
An agent team that uses your dApp like a person.
Agents explore the app, plan scenarios and run them in a real browser against the live app. A separate Critic then replays every finding live and withdraws what it cannot reproduce, so only real issues reach you.
- Connect walletconnected
The app shows the connected address.
- Wrong networkrefused
The app notices another chain and asks for the right one.
- Signsigned
Every request to sign is recorded.
- Reject on purposedeclined
The app stays usable after a user says no.
- Pendingpending
The page shows the chain is still working.
- Confirmedconfirmed
The transaction is checked against its receipt on the chain.
- Balances and explorer linkchecked
Amounts use the token's decimals, and links open the right explorer page.
What it catches.
Real issues from published dApp reports, sorted by kind and counted after the audit.
- 19issues
Amounts, balances and gas
MAX buttons that leave nothing for gas, amounts over the balance, negative values accepted.
highSwap MAX balance button does not reserve native gas when USDC is selected
- 14issues
Actions that hang or fail with no feedback
Buttons that do nothing, spinners that never end, errors the user never sees.
highPortfolio view remains indefinitely stuck in 'Reading your positions on-chain…' state
- 11issues
Broken links and navigation
Links to missing pages and anchors that go nowhere.
highCreator track record link on prediction call detail page leads to 404 error
- 8issues
Address handling
Invalid addresses accepted, valid ones rejected.
highSend Token modal accepts invalid recipient address and advances to confirmation
- 6issues
Transactions that fail or revert
Swaps, transfers and orders that revert, often with no reason shown.
criticalUSDC to EURC swap fails during token approval/gas estimation
- 5issues
Wallet connect and sign-in dead ends
Connections the app's own setup refuses, and sign-ins that go nowhere.
highWalletConnect/Reown integration fails due to domain missing from allowlist
A report you can act on.
Every run ends in one report, in four parts.
- 1
7 of 12 scenarios passed, 5 failed, 5 issues after the audit, 2 high.
The verdict
One line a reader can act on, written after the audit.
- 2S3Execute Buy YES Orderfail



Scenarios
Each flow the agents ran, with the screenshots they took.
- 3high
Buy order submission for YES outcome fails with 'Execution reverted for an unknown reason'
4 repro steps
Issues
Severity, steps to reproduce and the evidence for each one.
- 4eth_sendTransactiontx 0xea3470…94affbeth_sendTransactionrefused: execution reverted
Wallet activity
Every request the app made, each transaction with its explorer link, and what the chain said about it.
From your app to your report.
- 01
Tell us about the app
Where it lives and which chain it uses.
- 02
DeepQA runs it
The run needs nothing else from your team.
- 03
You get the report
Straight to your team, ready to fix from.
Questions teams ask.
- Do you need our code?
- Your choice. Give us the public URL and we test the live app in place, or point us at the repository and we clone and run it in an isolated sandbox.
- Which chains and wallets do you support?
- Any chain we set up, with EVM chains and Sui today. Your app connects to the QA wallet the way it connects to a user's.
- Do you need funds or keys from us?
- No. DeepQA funds its own QA wallet for your chain, it signs outside the page, and no key of yours is ever asked for.
- What if our app only offers certain wallets or needs a sign-in?
- The run tells you. When a wallet picker leaves out the QA wallet or a flow sits behind a sign-in, the report names what could not be reached.
- What does a run cover, and how long does it take?
- The main flows of your app, from connecting a wallet to a confirmed transaction. A run takes minutes, not days.
- Who sees the report?
- Only your team, until you choose to publish it. A published report comes down whenever you ask.
- Can we run it again after a fix?
- Yes. Each run gets its own numbered report, so you can compare them.
- How do we start?
- dApp teams, send us a message with Get your dApp tested. Chain teams, start from the Your chain card under Campaigns.



