Surfaces /ho-liquidity from the Operations dropdown, site footer, and institutional quick paths; use formatTimestamp on the HO liquidity page for consistent audit timestamps.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add a three-line TokenLiquidityStack with Fineract audit freshness and a token-detail HoBackingSummaryCard fed by token-aggregation market-batch HO metrics.
Co-authored-by: Cursor <cursoragent@cursor.com>
Defer heavy getServerSideProps on home, operator, addresses, and wallet to cut TTFB; centralize locale-safe formatters with client-only relative times; add compact ops UX, bridge/operator relay pagination, and Playwright route/scroll smoke in deploy.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add Chain 138 wallet network metadata and stats coin-price enrichment; sync frontend explorer SPA, command center, and address/token pages with backend config.
Co-authored-by: Cursor <cursoragent@cursor.com>
Probe LINK balances on CCIP bridge contracts, expose proof-transfer metadata on bridge status, and render funded/unfunded lane health on /bridge with extended smoke coverage.
Co-authored-by: Cursor <cursoragent@cursor.com>
Expose mission-control mode on home/bridge/analytics, quiet-chain freshness copy, and a canonical-first indexed token list with WETH9 metadata override and non-canonical warnings.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align CCIP catalog UX with 11-lane config-ready routes, document the no-key public API decision, and enable browser WalletConnect pairing with backend session registration and deploy-time project ID wiring.
Co-authored-by: Cursor <cursoragent@cursor.com>
Close the 1024–1279px nav dead zone, align ops/footer labels, split homepage quick links, route successful wallet connect to /wallet with inline errors, add WETH to ops sub-nav, and demote legacy SPA with noindex plus banner.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align backend EIP-191 auth message with the DBIS Explorer text the frontend and legacy SPA already sign, instead of the stale SolaceScan string.
Co-authored-by: Cursor <cursoragent@cursor.com>
Publish walletconnect config endpoints, Track 3/4 notes on analytics/operator pages, legacy SPA at /legacy/index.html with root redirect, and a parity verifier for explorer.d-bis.org vs blockscout.defi-oracle.io.
Co-authored-by: Cursor <cursoragent@cursor.com>
Operations pages get collapsible surface navigation on small screens and a shared action-card accordion; the footer surfaces read-only JSON endpoints with e2e coverage.
Co-authored-by: Cursor <cursoragent@cursor.com>
Move extended token-list label to the operations intro, wait for network idle
before asserting, and clear conflicting NO_COLOR/FORCE_COLOR in Playwright config.
Co-authored-by: Cursor <cursoragent@cursor.com>
Unify wallet/catalog/extended token-list policy, add contract verification CTA,
trim the homepage dashboard with status strip and recent activity, and add Playwright smoke coverage.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align wallet SSR with report token-list, dedupe featured v1 tokens, refresh home and wallet snapshots on a 60s cadence, and drive vanilla SPA chain add/watch from API metadata. Add shared pagination/tabs for address, token, and transaction pages, extend token aggregation helpers, and harden stats API with tests and health checks.
Co-authored-by: Cursor <cursoragent@cursor.com>
- Add TokenSigningSurfaceCard: ABI flags, eip712Domain eth_call decode, verification metadata
- Pass contract profile into GRU standards detection on token page
- Table layout=tabular for Top Holders column layout at all breakpoints
- Fallback provenance name/symbol; show signing card when token API empty
- eip712Domain.ts: decode ERC-5267 tuple return data
Co-authored-by: Cursor <cursoragent@cursor.com>
Corrections per 2026-04 institutional review:
- MLFO reclassified as Global Family Office (was incorrectly labeled central bank)
- BIS Innovation Hub reclassified as Standards Body (does not hold observer seat)
- Added missing entities: ICCC, SAID, PANDA, Order of Hospitallers (XOM)
- Added BRICS founding + expanded member central banks (10 entries)
New institutional tier taxonomy (7 tiers):
sovereign_central_bank, global_family_office, settlement_member,
infrastructure_operator, oversight_judicial, delegated_authority,
standards_body
Backend changes:
- New auth/membership.go: tier types, DefaultTrackForTier mapping,
MembershipStore with DB queries for member directory
- New migration 0017: institutional_members + institutional_member_wallets
tables with seed data for all corrected members
- Updated wallet_auth.go getUserTrack(): now resolves institutional
membership (via wallet junction table) before defaulting to Track 1
- WalletAuthResponse now includes institutional_tier and institution_name
- New REST endpoints: GET /api/v1/membership/{tiers,members,members/:slug}
- Added TrackLabel() helper in featureflags
Frontend changes:
- Added InstitutionalTier type and label map to access.ts
- WalletAccessSession extended with institutionalTier/institutionName
- Navbar getAccessTier() now displays institutional tier label when present
- Session summary shows institution name
Co-Authored-By: Nakamoto, S <defi@defi-oracle.io>
Fixes the 'unfinished router migration + inconsistent packageManager'
finding from the review:
1. src/app/ only ever contained globals.css; every actual route lives
under src/pages/. Keeping both routers in the tree made the build
surface area ambiguous and left a trap where a future contributor
might add a new route under src/app/ and break Next's routing
resolution. PR #9 commits to the pages router and removes src/app/.
2. globals.css moved from src/app/globals.css to src/styles/globals.css
(so it no longer sits under an otherwise-deleted app router folder)
and _app.tsx's import was updated accordingly. This is a no-op at
runtime: the CSS payload is byte-identical.
3. tailwind.config.js had './src/app/**/*.{js,ts,jsx,tsx,mdx}' at the
top of its content glob list. Replaced with './src/styles/**/*.css'
so Tailwind still sees globals.css; the src/components/** and
src/pages/** globs are unchanged.
4. Unified the package manager on npm:
- package.json packageManager: 'pnpm@10.0.0' -> 'npm@10.8.2'.
The lockfile (package-lock.json) and CI (npm ci / npm run lint /
npm run type-check / npm run build in .github/workflows/ci.yml)
have always used npm; the pnpm declaration was aspirational and
would have forced contributors with corepack enabled into a tool
the repo doesn't actually support.
- Added an 'engines' block pinning node >=20 <21 and npm >=10 so
CI, Docker, and a fresh laptop clone all land on the same runtime.
Verification:
npm ci 465 packages, no warnings.
npm run lint next lint: No ESLint warnings or errors.
npm run type-check tsc --noEmit: clean.
npm run build Next.js 14.2.35 compiled 19 pages successfully;
every route (/, /blocks, /transactions, /tokens,
/bridge, /analytics, /operator, /docs, /wallet,
etc.) rendered without emitting a warning.
Advances completion criterion 5 (frontend housekeeping): 'one router;
one package manager; build is reproducible from the lockfile.'