Skip to content

feat(ui): unified Metaswaps swap-bridge on transfer page (Arbitrum ↔ Base)#939

Draft
paulbalaji wants to merge 85 commits intopbio/ui-rebrandingfrom
pb/offsite-swap
Draft

feat(ui): unified Metaswaps swap-bridge on transfer page (Arbitrum ↔ Base)#939
paulbalaji wants to merge 85 commits intopbio/ui-rebrandingfrom
pb/offsite-swap

Conversation

@paulbalaji
Copy link
Collaborator

@paulbalaji paulbalaji commented Feb 10, 2026

Summary

Demo metaswap flow hardened for Optimism -> Base canonical USDC with ICA return support and cross-chain command wiring.

Changes

  • Phase 0 rails:
    • switched demo path to optimism -> base
    • moved route/address resolution to registry utils (USDC/eclipsemainnet)
    • strict whitelist now only allows USDC/eclipsemainnet
    • enforced canonical Base USDC collateral and rejected route-token misuse
  • ICA return fixes:
    • autoswitch to origin chain before submission
    • robust return quote parsing + tokenPull approval handling
    • explicit insufficient ICA gas / insufficient ICA token balance errors
  • Phase 2/3 wiring:
    • re-enabled EXECUTE_CROSS_CHAIN in forward swap-bridge path
    • added commitment generation (salt / commitment hash)
    • wired ICA fee quoting (getIcaFee) and surfaced ICA fee in review UI
    • added origin native balance hard-fail for total tx value (swap + bridge + ICA execution fee)
    • wired commitment posting status flow via private relayer API path (triggered when destination calls exist)
  • UX copy fix:
    • ICA form now uses dynamic origin chain name instead of Arbitrum-specific text

Verification

  • pnpm typecheck
  • pnpm test (77 passing)
  • pnpm build

Related

troykessler and others added 27 commits January 16, 2026 17:25
## Summary

Adds Claude-powered code review to this repository, adapted from
hyperlane-monorepo.

## Changes

### Workflow (`.github/workflows/claude-code-review.yml`)
3 jobs with fork security guards:
- **code-review**: Triggered by `@claude review` comment or
`claude-review` label (claude-opus-4-5)
- **security-review**: Auto-runs on non-draft PRs from same repo
(claude-opus-4-5)
- **interactive**: Responds to `@claude` mentions in PR comments
(claude-sonnet-4-5)

Security features:
- `author_association` check (MEMBER/OWNER/COLLABORATOR only) for
comment triggers
- Same-repo check (`github.event.pull_request.head.repo.full_name ==
github.repository`) for auto-triggered jobs
- Same-repo check for label triggers
- `actions/checkout@v6`

### Prompts (`.github/prompts/`)
- **code-review.md**: Frontend-specific TypeScript review (chain-aware
addresses, useQuery patterns, CSP)
- **security-scan.md**: Frontend/Web3 security (XSS, wallet security,
blind signatures, CSP headers)

### Skills (`.claude/skills/`)
- `/claude-review` → `.github/prompts/code-review.md`
- `/claude-security-review` → `.github/prompts/security-scan.md`

### Other
- **CLAUDE.md**: Added engineering philosophy, tips, and verification
guidelines
- **.gitignore**: Added `.opencode` and `.sisyphus`

## Setup Required

⚠️ **Before merging**, configure the `ANTHROPIC_API_KEY` secret:
1. Go to Settings → Secrets and variables → Actions
2. Add repository secret: `ANTHROPIC_API_KEY`

## Usage

| Trigger | Action |
|---------|--------|
| `@claude review` comment | Full code review |
| `claude-review` label | Full code review |
| `@claude security` comment | Security review |
| `@claude <question>` comment | Interactive help |
| Non-draft PR (same repo) | Auto security review |
## Summary
- Adds AGENTS.md as a duplicate of CLAUDE.md for compatibility with
other AI coding tools

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
- Update CSP directive to allow Web Assemble execution 
- Upgrade Hyperlane packages
Prevent white screen flashing when page loads by using main bg color as
the base color
## Summary
- Update `claude-opus-4-5` to `claude-opus-4-6` in the Claude code
review workflow (code review + security review jobs)

## Test plan
- [ ] Verify workflow triggers correctly on next PR

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…928)

## Summary

- Adds `sourcemaps: { disable: true }` to Sentry config in
`next.config.js`

## Context

Vercel builds randomly hang 45+ minutes, getting stuck on "sending
sentry telemetry info" during source map upload. The Sentry API has
variable response times with no timeout configured, causing indefinite
waits.

## What this changes

Disables Sentry source map upload during build. Error tracking via the
tunnel route (`/monitoring-tunnel`) and all other Sentry configuration
remain intact.

## Verification

- `pnpm build` completes successfully
- Tunnel route confirmed present in build output
- All other Sentry config preserved (org, project, authToken,
hideSourceMaps, tunnelRoute, bundleSizeOptimizations)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
  * Updated error tracking configuration settings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary

- Skip ESLint and TypeScript checking during `next build` (Vercel)
- Disable Sentry build telemetry (Sentry SDK phoning home to Sentry Inc.
— unrelated to your error tracking)
- Add dedicated `typecheck` CI job (so `typescript.ignoreBuildErrors` is
safe)
- Parallelize all CI jobs — remove `install` gate, no serial
dependencies

## Vercel build results

| | Before | After | Savings |
|---|--------|-------|---------|
| **Total build** | 9 min | **5 min** | **~4 min (44%)** |
| Lint + typecheck | ~4 min | Skipped | -4 min |

## CI changes

**Before:**
```
install ─┬─ build ─── test (serial)
         ├─ prettier
         └─ lint
```

**After:**
```
build, typecheck, test, prettier, lint — all parallel, no gates
```

- Removed `install` gate job — every job already does its own `pnpm
install`, the gate just added ~30s of serial delay
- `typecheck` added — catches type errors that
`typescript.ignoreBuildErrors` skips in Vercel build
- `test` no longer depends on `build` — Vitest runs against source,
doesn't need Next.js build output
- Lockfile drift check moved into `build` job's install step

## Changes

- `next.config.js`: `eslint.ignoreDuringBuilds`,
`typescript.ignoreBuildErrors`, `sentryOptions.telemetry: false`
- `.github/workflows/ci.yml`: Remove `install` gate, add `typecheck`,
parallelize `test`

## Verification

- `pnpm build` ✅ on Vercel (5 min, down from 9 min)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Optimized CI/CD pipeline with improved job separation and caching
strategies
* Updated build configuration for enhanced development workflow
efficiency

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary

- Add `/inline-pr-comments` skill for posting inline PR review comments
- Update `/claude-review` and `/claude-security-review` to reference
inline-pr-comments
- Simplify workflow to call skills directly instead of reading prompt
files
- Add PR Review Comment Format section to AGENTS.md

Mirrors hyperlane-xyz/hyperlane-monorepo#8040
for this repo.
## Automated Dependency Update

This PR updates the Hyperlane dependencies to their latest versions.

**Updated versions:**
- `@hyperlane-xyz/sdk`: `25.0.0`
- `@hyperlane-xyz/utils`: `25.0.0`
- `@hyperlane-xyz/registry`: `23.14.0`
- `@hyperlane-xyz/widgets`: `25.0.0`

**Changes include:**
- Updated `package.json` with latest Hyperlane package versions
- Updated `pnpm-lock.yaml` via `pnpm install`

---
🤖 This PR was automatically generated by the [update-hyperlane-deps
workflow](.github/workflows/update-hyperlane-deps.yml)

Co-authored-by: hyper-gonk[bot] <246310972+hyper-gonk[bot]@users.noreply.github.com>
This PR adds aleo support for the nexus ui

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Integrated Aleo wallet support so users can connect and interact with
Aleo wallets in the app.
* **Chores**
* Added Aleo wallet adapter packages to support the new wallet
integration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
feat: add script for local dependency linking
Resolve conflicts:
- .gitignore: keep both branch additions
- analytics/utils.ts: keep current TransferFormValues shape, use KnownProtocolType
- _document.tsx: keep rebrand styling
- pnpm-lock.yaml: regenerated

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link

vercel bot commented Feb 10, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hyperlane-warp-template Ready Ready Preview, Comment Feb 12, 2026 10:28pm
5 Skipped Deployments
Project Deployment Actions Updated (UTC)
analytics-test Ignored Ignored Feb 12, 2026 10:28pm
injective-bridge Ignored Ignored Feb 12, 2026 10:28pm
nexus-bridge Ignored Ignored Feb 12, 2026 10:28pm
ousdt-bridge Ignored Ignored Feb 12, 2026 10:28pm
trump-bridge Ignored Ignored Feb 12, 2026 10:28pm

Request Review

@socket-security
Copy link

socket-security bot commented Feb 10, 2026

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedeslint-config-next@​15.5.7 ⏵ 15.5.1299 +11006598100
Updatednext@​15.5.7 ⏵ 15.5.1268 +199 +2491 +197 +4770
Added@​provablehq/​aleo-wallet-adaptor-react@​0.3.0-alpha.169100819470
Updated@​cosmos-kit/​cosmostation@​2.15.8 ⏵ 2.17.169 -21007594 +2100
Updated@​typescript-eslint/​parser@​8.49.0 ⏵ 8.55.01001007198100
Updated@​cosmos-kit/​leap@​2.15.8 ⏵ 2.17.171 -11007595 +2100
Updated@​cosmos-kit/​keplr@​2.15.9 ⏵ 2.17.1721007595 +2100
Updated@​next/​eslint-plugin-next@​15.5.7 ⏵ 15.5.121001007399100
Updated@​tanstack/​eslint-plugin-query@​5.91.2 ⏵ 5.91.410010074 +197100
Updated@​tanstack/​query-core@​5.90.12 ⏵ 5.90.2099 +110076 +199100
Added@​provablehq/​aleo-wallet-adaptor-shield@​0.3.0-alpha.176100809370
Updated@​hyperlane-xyz/​widgets@​20.1.0 ⏵ 25.1.1-beta.31a839be3df605757637acf66867bed50b08d2d277 +110083 +198 +1100
Updated@​types/​react@​18.3.27 ⏵ 18.3.281001007996100
Updated@​hyperlane-xyz/​utils@​20.1.0 ⏵ 25.1.1-beta.31a839be3df605757637acf66867bed50b08d2d285 +41008098 +1100
Updated@​typescript-eslint/​eslint-plugin@​8.49.0 ⏵ 8.55.09910080 +198100
Updated@​types/​node@​24.10.12 ⏵ 24.10.1310010081 +196100
Updated@​hyperlane-xyz/​registry@​23.10.0 ⏵ 23.14.084 -410085 +198100
Updated@​cosmos-kit/​core@​2.16.7 ⏵ 2.18.185 -110088 +194 +2100
Updated@​hyperlane-xyz/​sdk@​20.1.0 ⏵ 25.1.1-beta.31a839be3df605757637acf66867bed50b08d2d285 +41008598 +1100
Updatedtailwindcss@​3.4.18 ⏵ 3.4.1996 +110087 +198100
Updated@​tanstack/​react-query@​5.90.12 ⏵ 5.90.2099 +110088 +1100100
Updatedautoprefixer@​10.4.22 ⏵ 10.4.2499 +110089 +188100
Updated@​next/​bundle-analyzer@​15.5.7 ⏵ 15.5.121001008999100
Updatedprettier@​3.7.4 ⏵ 3.8.19010097 +196100
Updatedeslint@​9.39.1 ⏵ 9.39.294 +410010097100
Updated@​eslint/​js@​9.39.1 ⏵ 9.39.210010010095100
Updatedaxios@​1.13.2 ⏵ 1.13.597 -1100 +1610097100
Updatedviem@​2.41.2 ⏵ 2.45.399 +1100100 +198 +1100
Updated@​aws-sdk/​client-s3@​3.986.0 ⏵ 3.987.09810010098100

View full report

@paulbalaji paulbalaji changed the base branch from main to pbio/ui-rebranding February 10, 2026 04:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants