QA report: external/warcgarage.xyz at hosted
Core token swapping and bridging workflows are non-functional due to silent transaction failures and missing wallet asset integrations.
Testing covered the Swap Hub interface across 12 scenarios evaluating token exchange execution, cross-chain bridge actions, wallet asset balance rendering, and form input validation. Four scenarios passed, five failed, and three were blocked due to underlying execution failures and missing interface elements.
The primary interactive features on the Swap Hub fail silently without executing transactions or presenting user feedback. The swap button does not trigger transactions or validate pay amounts against available balances, while the assets panel fails to load connected wallet holdings. Additionally, the bridge tool cannot initiate outbound transfers from Arc Testnet and silently ignores actions initiated on unsupported source networks.
Testing could not evaluate slippage tolerance bounds, gas balance reservations, or persistent swap history because slippage controls are absent from the interface and transactions cannot be executed to generate history records.
Run summary
| Metric | Count |
|---|
| Scenarios executed | 12 |
| Passed | 4 |
| Failed | 5 |
| Blocked | 3 |
| Findings raised | 5 |
| Issues after the audit | 5 |
| Withdrawn by the audit | 0 |
| Critical / high / medium / low | 0 / 4 / 1 / 0 |
Target: https://warcgarage.xyz · Testing level: deep_feature · Stack: unknown
Issues
High severity
F1 · Token swap button fails silently without executing swap or providing UI feedback
Severity: high · Type: functional · Verdict: confirmed · Scenario: S2
I navigated to the Swap Hub at /swap-hub, selected ETH as the pay token, entered an amount of 5, and clicked the '⚡ SWAP TO USDC' button. Nothing happened when I clicked the button; no confirmation, receipt, or transaction feedback was displayed, confirming the reported issue. The page reported 2 console errors during the scenario.
Expected: The token swap initiates, showing a transaction confirmation, progress, or success receipt.
Actual: Clicking the '⚡ SWAP TO USDC' button does nothing; no confirmation, receipt, or transaction feedback is displayed.
Steps to reproduce:
- Navigate to https://warcgarage.xyz/swap-hub
- Select an asset (such as ETH or USDT) from the pay token dropdown
- Enter a valid amount (e.g. 5) in the Pay Amount field
- Click the '⚡ SWAP TO USDC' button
Evidence: screenshots/S2-2.png, screenshots/S2-5.png, screenshots/S2-13.png
F2 · Bridge action silently ignores bridging from unsupported source networks
Severity: high · Type: functional · Verdict: confirmed · Scenario: S4
The evidence confirms the application silently ignores the bridge action without prompting a network switch or displaying an error. The live replay was inconclusive: The replay ran out of tool calls before it reached the reported state. The page reported 2 console errors during the scenario.
Expected: The application should attempt network switch or display a clear error message indicating unsupported network/wallet rejection.
Actual: The application ignores the interaction silently without displaying any error, modal, or feedback to the user.
Steps to reproduce:
- Navigate to https://warcgarage.xyz/swap-hub
- Click the BRIDGE tab
- Select a non-Arc source network (e.g., Polygon)
- Enter an amount to bridge (e.g., 10)
- Click 'BRIDGE TO ARC TESTNET'
Evidence: screenshots/S4-2.png, screenshots/S4-4.png, screenshots/S4-9.png, screenshots/S4-11.png
F3 · Outbound bridging from Arc Testnet cannot be selected or initiated on Swap Hub Bridge form
Severity: high · Type: functional · Verdict: confirmed · Scenario: S5
Navigated to the Swap Hub and clicked the BRIDGE tab. The Source Network dropdown only lists Ethereum, Polygon, Arbitrum, Base, and Solana, and does not include Arc Testnet. The Destination Network dropdown is fixed/disabled to Arc Testnet. Therefore, outbound bridging from Arc Testnet cannot be selected or initiated. The page reported 2 console errors during the scenario.
Expected: The user should be able to select Arc Testnet as the source network and another supported chain as the destination to initiate an outbound bridge transaction.
Actual: Source Network only provides external chains (Ethereum, Polygon, Arbitrum, Base, Solana) and Destination Network is fixed/disabled to Arc Testnet, completely preventing outbound bridging from Arc Testnet.
Steps to reproduce:
- Navigate to https://warcgarage.xyz/swap-hub
- Click the BRIDGE tab
- Inspect the Source Network and Destination Network dropdowns
Evidence: screenshots/S5-4.png, screenshots/S5-8.png
F5 · Swap Hub Assets tab and balance card fail to render connected wallet USDC balance and token holdings
Severity: high · Type: functional · Verdict: confirmed · Scenario: S8
Navigated to /swap-hub and clicked the ASSETS tab. I observed that despite a wallet being connected in the header (0x1815...2c27), the USDC BALANCE card showed '—'. Additionally, the ASSETS tab displayed static contract addresses instead of token [redacted] The page reported 2 console errors during the scenario.
Expected: The ASSETS tab and header balance card should render the token holdings and active USDC balance for the connected wallet.
Actual: The USDC BALANCE card displays '—' instead of fetching and rendering the connected wallet balance, and the ASSETS tab only displays static contract addresses rather than token balance holdings for the connected wallet.
Steps to reproduce:
- Navigate to https://warcgarage.xyz/swap-hub
- Click the ASSETS navigation tab
- Check the displayed assets list and the USDC BALANCE card
Evidence: screenshots/S8-6.png, screenshots/S8-9.png
Medium severity
F4 · Swap Hub does not validate pay amount against balance or disable swap button on insufficient balance
Severity: medium · Type: functional · Verdict: confirmed · Scenario: S6
The evidence shows the application fails to validate the pay amount against the connected wallet's zero balance, leaving the submit button enabled. The page reported 2 console errors during the scenario.
Expected: The swap submission button should be disabled or an 'Insufficient Balance' message should be prominently displayed.
Actual: The '⚡ SWAP TO USDC' button remains active and clickable with no insufficient balance error or warning displayed.
Steps to reproduce:
- Navigate to https://warcgarage.xyz/swap-hub.
- Enter an amount (e.g., 5000) in the Pay Amount field that exceeds the connected wallet balance.
- Observe the swap submission button and form state.
Evidence: screenshots/S6-2.png
Scenario results
| Scenario | Priority | Result | Issues |
|---|
| S1 Load Swap Hub Interface | high | pass | none |
| S2 Execute Valid Token Swap | high | fail | F1 |
| S3 Max Balance USDC Gas Reservation | high | blocked (The Swap Hub page only supports swapping other assets (USDT, ETH, MATIC, ARC) TO USDC, does not provide USDC as a selectable pay token, and does not have a MAX balance shortcut button.) | none |
| S4 Handle Unsupported Source Network Rejection | high | fail | F2 |
| S5 Initiate Outbound Bridge Transaction | high | fail | F3 |
| S6 Prevent Swap Exceeding Balance | medium | fail | F4 |
| S7 Prevent Zero Amount Swap | medium | pass | none |
| S8 Render Assets Tab Balances | medium | fail | F5 |
| S9 Persist Swap History | medium | blocked (Unable to execute token [redacted] on the Swap Hub because the Circle Wallet integration is disconnected and swapping does not trigger transaction execution.) | none |
| S10 Require Receive Token Selection | low | pass | none |
| S11 Validate Slippage Tolerance Bounds | low | blocked (The Slippage Tolerance field is not present on https://warcgarage.xyz/swap-hub or in any of its tabs.) | none |
| S12 Validate Bridge Form Empty Fields | low | pass | none |
The audit
The Critic reviewed 5 findings and re-verified 5 of them live in the browser, replaying the reported steps on a fresh page.
- In S12, the tester interpreted the silent failure of the bridge button as successful validation of an empty field, contradicting S4 where the exact same silent behavior was correctly identified as a defect.
- The silent failures of the action buttons across multiple scenarios may be directly related to the 'Not connected' Circle Wallet state noted in S9 or the uncaught JavaScript errors present on load.
- A possible defect in S1 ("Console errors occur on Swap Hub page load") was not promoted: the live replay came back not-reproduced.
What to fix first
- Resolve silent execution failures on the token swap button to trigger transactions and provide visible user feedback (F1).
- Connect the balance card and Assets tab to fetch and render connected wallet USDC balances and token holdings (F5).
- Enable outbound transfer routing from Arc Testnet on the Swap Hub Bridge interface (F3).
- Provide clear error messaging and user feedback when attempting to bridge from unsupported networks (F2).
- Validate input amounts against available balances and disable the swap action when funds are insufficient (F4).
Coverage and caveats
In scope: Swap Hub DEX token swaps; Swap Hub cross-chain bridging; Native gas token reservation constraints; Network switch refusal handling; Swap input validation and slippage bounds; Assets and History navigation tabs.
Not covered: NFT Minting (focusing solely on Swap Hub deep dive); 3D Race Arena (focusing solely on Swap Hub deep dive); Predictions Hub (focusing solely on Swap Hub deep dive); Web3 Vehicle Bridge (focusing solely on Swap Hub deep dive); Verify X Identity (focusing solely on Swap Hub deep dive); Holder Profile Search (focusing solely on Swap Hub deep dive).
- A MAX shortcut exists on or near the Pay Amount field as described in the intake.
- Wallet connection occurs automatically when Web3 transactions or network switches are requested.
- Sufficient testnet liquidity exists to process small USDC swaps successfully.
- The deep_feature test isolates the Swap Hub strictly to exhaust its form fields and latent network constraints.
- S3 could not be executed: The Swap Hub page only supports swapping other assets (USDT, ETH, MATIC, ARC) TO USDC, does not provide USDC as a selectable pay token, and does not have a MAX balance shortcut button..
- S9 could not be executed: Unable to execute token [redacted] on the Swap Hub because the Circle Wallet integration is disconnected and swapping does not trigger transaction execution..
- S11 could not be executed: The Slippage Tolerance field is not present on https://warcgarage.xyz/swap-hub or in any of its tabs..
By the numbers
| Metric | Value |
|---|
| Scenarios | 4 passed, 5 failed, 3 blocked of 12 (38 planned steps) |
| Browser actions | 256 (59 clicks, 19 inputs, 50 navigations, 128 snapshots) |
| Screenshots | 39 (4 explore, 30 scenario, 5 critic), 30 captioned |
| Coverage | 7 pages, 7 forms, 7 flows, 2 console errors |
| Audit | 5 findings, 5 re-verified live, 5 confirmed, 0 promoted, 0 withdrawn |
| Model calls | 214 |
| Tokens | 1,465,993 input, 12,323 output, 22,707 thinking |
| Time | 21 min |
| Wallet | 0 transactions, 0 signatures, 0 refusals on chain 5042002 |
| Stage | Calls | Input | Output | Thinking | Seconds |
|---|
| explore | 20 | 148,334 | 2,993 | 972 | 167 |
| plan | 1 | 5,041 | 2,080 | 4,461 | 53 |
| test | 164 | 1,160,625 | 5,604 | 9,630 | 546 |
| critique | 28 | 149,986 | 1,315 | 6,909 | 471 |
| report | 1 | 2,007 | 331 | 735 | 9 |