Skip to content
Back to skills

Indexedex Ui Tx Testing

ASecurity

Runs IndexedEx/DTF frontend transactions through the UI with Playwright injected wallets (not MetaMask) and verifies on-chain effects. Use when the user asks to "test UI txs", "e2e bond", "live swap UI", "Playwright staking", "verify deposit through UI", "DTF e2e", "Robinhood Anvil UI", "click through money path", or after frontend money-path changes. DO NOT use for Foundry contract tests (crane-testing / indexedex-testing) or pure copy/IA smoke without txs.

  • 9 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 10, 2026
testingshellbashtestingfrontend

Works with

  • cli
  • mcp

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 4 files and shows the line behind each finding

Scanned September 10, 2026

npx -y skills add cyotee/indexedex --skill indexedex-ui-tx-testing --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Indexedex Ui Tx Testing?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Indexedex Ui Tx Testing
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cyotee-indexedex-ui-tx-testing-indexedex/badge)](https://www.skillsdirectory.com/skills/cyotee-indexedex-ui-tx-testing-indexedex)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: indexedex-ui-tx-testing
description: >-
  Runs IndexedEx/DTF frontend transactions through the UI with Playwright
  injected wallets (not MetaMask) and verifies on-chain effects. Use when the
  user asks to "test UI txs", "e2e bond", "live swap UI", "Playwright staking",
  "verify deposit through UI", "DTF e2e", "Robinhood Anvil UI", "click through
  money path", or after frontend money-path changes. DO NOT use for Foundry
  contract tests (crane-testing / indexedex-testing) or pure copy/IA smoke without txs.
license: MIT
---

# IndexedEx UI transaction testing

Prove the **Next app builds and submits correct txs** by driving the real UI with an **injected EIP-1193 wallet**, then asserting **RPC balances / receipts** — not click-only.

## When / when not

| Use | Skip |
|-----|------|
| After deposit / swap / staking / approval wiring changes | Solidity unit/fork tests only |
| Robinhood Anvil (4663) + DTF launch verification | Pixel/visual QA without chain |
| Fee DETF bond/mint paths on `/staking` | Deploying stacks *as part of* a pure UI PR (prefer operator-provided RPC) |

## Default target (DTF / Robinhood)

| Item | Value |
|------|--------|
| App | `frontend/apps/dtf` (`@indexedex/app-dtf`) |
| Port | **3002** |
| Chain id | **4663** |
| RPC | `http://127.0.0.1:8545` |
| Wallet | Anvil **#0** (e2e inject); scripts fund **#1** as human UI wallet |
| Artifacts | `frontend/packages/protocol/src/addresses/chain/4663/` |

Do not look for `frontend/apps/indexedex`. That app was removed. DTF is the only Next app.

## Quick start

```bash
# 0) Repo root — operator stack already up (pick ONE family; do not merge)
# Fee DETF / staking (CHIR live after first bond):
bash scripts/shell/anvil_robinhood_fee_detf.sh all --restart-anvil
# OR lab multi DETF/SE (inert until UI bond):
# bash scripts/shell/anvil_robinhood_main.sh all --restart-anvil

cast chain-id --rpc-url http://127.0.0.1:8545   # must be 4663

# 1) Frontend
cd frontend
npm install
npm run build -w @indexedex/app-dtf
npm run test:e2e:install -w @indexedex/app-dtf

# 2) Shell + IA (no live txs required)
npm run test:e2e -w @indexedex/app-dtf

# 3) Live money paths (bond / deposit when stack allows)
npm run test:e2e:live -w @indexedex/app-dtf
```

Reuse a running DTF dev server:

```bash
npm run dev:dtf
E2E_SKIP_WEBSERVER=1 npm run test:e2e:live -w @indexedex/app-dtf
```

## Navigation (read on demand)

| Need | Open |
|------|------|
| Env vars, suite map, pass criteria | [references/dtf-e2e-runbook.md](references/dtf-e2e-runbook.md) |
| Manual click checklist (bond / swap / deposit) | [references/manual-tx-journeys.md](references/manual-tx-journeys.md) |
| Stack + wallet setup (RH Anvil) | [references/stacks-and-wallets.md](references/stacks-and-wallets.md) |
| Product route matrix (historical full plan) | `frontend/UI_FULL_FUNCTIONALITY_TEST_PLAN.md` |
| RH agent runbook | `docs/ANVIL_ROBINHOOD_UI_AGENT_RUNBOOK.md` |

## Hard rules

1. **No MetaMask automation** — use Playwright inject (`e2e/wallet/injectWallet.ts`).
2. **Pass = on-chain effect** — balance delta, NFT mint, or receipt via RPC; not “button enabled.”
3. **Query vs execute** — deposit query **8-tuple** / execute **10-tuple**; never spread execute into query.
4. **Approvals** — multi-leg uses **split** Permit2 + router CTAs (`swap-approve-*`, ActionCta gates).
5. **List-driven addresses** — read `chain/<id>/` tokenlists + `platform.json`; do not hardcode vaults.
6. **Two Anvil families** — `fee_detf` (CHIR live) vs `main` (inert demos). Last export wins for `chain/4663/`.
7. **Do not invent APY/USD** in assertions or UI checks.

## Key files

| Path | Role |
|------|------|
| `frontend/apps/dtf/e2e/` | DTF Playwright suite (RH default) |
| `frontend/apps/dtf/e2e/staking-bond-live.spec.ts` | Bond WETH via `/staking` |
| `frontend/apps/dtf/e2e/swap-routes-live.spec.ts` | Live swap/deposit when stack supports |
| `frontend/apps/dtf/playwright.config.ts` | Port 3002 + RH env |
| `frontend/packages/protocol/` | Shared addresses / tokenlists |
| `frontend/packages/protocol/src/addresses/chain/4663/` | RH artifacts |

## Agent verification loop

```text
1. Confirm RPC + chain id (cast)
2. Confirm artifacts exist for that chain
3. npm run test:e2e (shell/IA)
4. npm run test:e2e:live (bond/deposit) — skip-only is OK if stack missing; document blocker
5. Optional: browser MCP walk /staking?detf=<chir> for manual confirm
6. Fix UI → re-run live suite → only then claim money-path done
```

## See also

- `skill:indexedex-ui-refactor` — env / artifacts / wagmi transports  
- `skill:indexedex-product-voice` — copy only  
- `skill:ethskills-qa` — general dApp ship checklist  
- Deploy stacks: `scripts/foundry/anvil_robinhood_fee_detf/`, `anvil_robinhood_main/`

Files in this skill

  • SKILL.md4.7 KB
  • references/dtf-e2e-runbook.md2.9 KB
  • references/manual-tx-journeys.md2.6 KB
  • references/stacks-and-wallets.md1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…