QA report: external/www.arcade.trading at hosted
Arcade Trading core interface passed most validation checks, with one minor user experience defect and several execution flows blocked by wallet network constraints.
Testing covered 12 deep-feature scenarios across swap configuration, order scheduling, slippage settings, and input validation. Seven validation scenarios passed successfully, including empty input checks, DCA interval validations, and slippage preset updates. One finding regarding custom slippage validation was withdrawn during the audit, leaving a single confirmed low-severity issue.
The lone confirmed defect involves a minor user experience issue in the DCA order summary text, where improper phrasing and spacing render an awkward summary display. Additionally, four scenarios involving live token swaps, gas reserves, limit orders, and multi-token swaps were blocked because the test wallet could not switch to the required Arc chain or provide test token balances.
Overall, user interface forms and validation guards operate reliably, but end-to-end on-chain execution paths require re-testing once mock wallet network configuration and token funding are addressed.
Run summary
| Metric | Count |
|---|
| Scenarios executed | 12 |
| Passed | 7 |
| Failed | 1 |
| Blocked | 4 |
| Findings raised | 1 |
| Issues after the audit | 1 |
| Withdrawn by the audit | 1 |
| Critical / high / medium / low | 0 / 0 / 0 / 1 |
Target: https://www.arcade.trading/swap · Testing level: deep_feature · Stack: unknown
Issues
Low severity
F2 · Grammar and spacing issue in DCA summary text
Severity: low · Type: ux · Verdict: promoted · Scenario: S5
Surfaced by the audit of S5, which the Tester passed, and reproduced live: After dismissing the network prompt and switching to the Limit > DCA Order Form, I set the total amount, target token, number of buys (5), and interval (1h). The summary text read "Buys 4 USDC of ARCDOG every hourly , 5 times.", reproducing the grammar issue and anomalous spacing before the comma.
Expected: The summary text should be grammatically correct and properly formatted (e.g., 'every 1 hour, 5 times' or 'hourly, 5 times').
Actual: The summary text displays as 'every hourly , 5 times' with incorrect phrasing and anomalous spacing before the comma.
Steps to reproduce:
- Navigate to swap and dismiss the network prompt.
- Switch to the Limit tab and toggle the DCA Order Form.
- Select an input and target output token.
- Set total amount, configure Number of buys, and select a 1h interval.
Withdrawn findings
The Critic re-examined these claims and found the evidence did not support them. They are kept here rather than deleted.
- Custom slippage tolerance accepts out-of-range/high values without warning or validation (S8, medium): The defect is claimed from what the tester believes the page ought to do (flag high values) rather than a failure of an implemented mechanism.
Scenario results
| Scenario | Priority | Result | Issues |
|---|
| S1 Bypass wrong network modal | high | pass | none |
| S2 Execute standard token swap | high | blocked (The test wallet is connected to an unsupported network with 0.00 USDC balance and network switching to Arc chainId 5042 cannot be fulfilled by the mock wallet provider.) | none |
| S3 Max button reserves native USDC for gas | high | blocked (The connected test wallet is pinned to chain 5042002 while the app expects Arc mainnet (5042), preventing chain switching and leaving the USDC balance at 0.00 with the MAX button disabled.) | none |
| S4 Place a limit order | high | blocked (The test wallet has 0.00 balance and is on an unsupported network, preventing on-chain limit order execution.) | none |
| S5 Schedule a DCA order | high | pass | F2 |
| S6 Execute a multi-token swap | high | blocked (The test wallet balance is 0 for the selected input tokens on Arc testnet, preventing execution of the multi-token [redacted]) | none |
| S7 Empty from amount validation in swap | medium | pass | none |
| S8 Custom slippage out of range validation | medium | fail | none |
| S9 Limit order missing price validation | medium | pass | none |
| S10 DCA order missing interval validation | medium | pass | none |
| S11 Multi-token swap missing output validation | medium | pass | none |
| S12 Slippage preset selection updates state | low | pass | none |
The audit
The Critic reviewed 1 finding and re-verified 1 of them live in the browser, replaying the reported steps on a fresh page.
- Five scenarios were blocked due to the mock wallet provider's inability to switch to the required Arc network (chainId 5042) or supply sufficient test balances.
- The test environment's mock provider must be configured to support the target network and inject funds to achieve meaningful functional coverage of order executions.
What to fix first
- Fix the phrasing and spacing formatting in the DCA order summary display (Issue F2).
Coverage and caveats
In scope: Standard Token Swap execution and validation; Max balance gas reservation logic for native USDC; Limit Order placement and parameter validation; DCA Order scheduling and missing-field validation; Multi-token batch swap mechanics; Slippage preset and custom value handling.
Not covered: Launchpad module (Out of scope for Swap deep feature testing); Explore/Liquidity module (Out of scope for Swap deep feature testing); Positions dashboard (Out of scope for Swap deep feature testing); Cross-chain Bridge (Out of scope for Swap deep feature testing); Referrals dashboard (Out of scope for Swap deep feature testing).
- Deep feature testing is targeted purely at the Swap aggregator and its related modes (Limit, DCA, Multi-token).
- The test wallet is pre-funded with native USDC on the Arc testnet.
- Tokens other than USDC are available in the test environment to act as destination/input tokens.
- The 'Continue anyway' button on the Wrong Network dialog successfully grants full access to the UI.
- S2 could not be executed: The test wallet is connected to an unsupported network with 0.00 USDC balance and network switching to Arc chainId 5042 cannot be fulfilled by the mock wallet provider..
- S3 could not be executed: The connected test wallet is pinned to chain 5042002 while the app expects Arc mainnet (5042), preventing chain switching and leaving the USDC balance at 0.00 with the MAX button disabled..
- S4 could not be executed: The test wallet has 0.00 balance and is on an unsupported network, preventing on-chain limit order execution..
- S6 could not be executed: The test wallet balance is 0 for the selected input tokens on Arc testnet, preventing execution of the multi-token [redacted].
By the numbers
| Metric | Value |
|---|
| Scenarios | 7 passed, 1 failed, 4 blocked of 12 (50 planned steps) |
| Browser actions | 265 (83 clicks, 28 inputs, 24 navigations, 130 snapshots) |
| Screenshots | 34 (4 explore, 30 scenario, 0 critic), 30 captioned |
| Coverage | 12 pages, 6 forms, 7 flows, 0 console errors |
| Audit | 1 findings, 1 re-verified live, 0 confirmed, 1 promoted, 1 withdrawn |
| Model calls | 212 |
| Tokens | 1,166,314 input, 11,684 output, 17,332 thinking |
| Time | 13 min |
| Wallet | 0 transactions, 0 signatures, 0 refusals on chain 5042002 |
| Stage | Calls | Input | Output | Thinking | Seconds |
|---|
| explore | 32 | 230,549 | 3,622 | 1,642 | 152 |
| plan | 1 | 5,558 | 2,337 | 4,495 | 51 |
| test | 169 | 890,118 | 4,820 | 9,246 | 510 |
| critique | 9 | 38,402 | 650 | 1,949 | 40 |
| report | 1 | 1,687 | 255 | 0 | 3 |