Skip to content

Release/v1.2.1-a to staging#233

Merged
AugustoL merged 68 commits intodevfrom
release/v1.2.1-a
Feb 22, 2026
Merged

Release/v1.2.1-a to staging#233
AugustoL merged 68 commits intodevfrom
release/v1.2.1-a

Conversation

@AugustoL
Copy link
Collaborator

No description provided.

MatiasOS and others added 30 commits February 10, 2026 16:01
…e component styling\n- Update CSS styles for improved visual consistency\n- Add Spanish translations for settings updates
- Add aiAnalysis.sectionTitle to English and Spanish address translations
- Wrap AccountDisplay, ERC20Display, ERC721Display, ERC1155Display
  in page-with-analysis 2-column grid layout
- Add AIAnalysis panel to each display with appropriate analysis type
  (account for EOA, contract for token displays)
- Build context objects with address data, token metadata, and
  verification status per display type
- Add onTransactionsChange callback to TransactionHistory to expose
  loaded transactions to AccountDisplay for richer AI context
- Include recent transaction summaries (first 10 txs) in EOA context
- Thread app language through AIAnalysis -> useAIAnalysis -> AIService
  -> AIPromptTemplates
- Add language instruction to all prompt templates so AI responds in
  the user's selected language (e.g., Spanish when app is set to es)
- Default to English with no extra instruction for en locale
…once

Use reth's eth_getTransactionBySenderAndNonce RPC method for O(N) sent
transaction discovery on Ethereum mainnet (chain ID 1), where N is the
address nonce. Falls back gracefully to existing binary search if the
method is unavailable.

- Add dedicated reth provider config with 3 public reth RPCs (race strategy)
- Add NonceLookupService for batched nonce-to-tx lookups
- Search gaps between sent tx blocks for received/internal txs using
  adaptive segmentation with exponential narrowing for large gaps
- Progressive interleaved delivery: walk newest-to-oldest alternating
  gap searches and sent tx delivery for correct chronological order
- Fix address case normalization for consistent cache hits

Closes #211

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use @erc7730/sdk ClearSigner to decode transaction calldata into
human-readable format (intent, formatted fields, security warnings)
before sending context to the LLM.
Conditionally inject system prompt hint when erc7730Intent is present
in the context, instructing the LLM to use decoded fields and highlight
security warnings.
- Add 2-column layout with AI analysis panel on the right
- Build rich context from tx data, decoded input, event logs, L2 fields,
  and ERC-7730 pre-analysis for LLM consumption
- Add i18n keys for transaction AI analysis section (en + es)
feat(address): optimize tx search with eth_getTransactionBySenderAndNonce
ci(npm): Add missing alpha tag to publish config
AugustoL and others added 14 commits February 19, 2026 08:40
fix(ens): fix ENS lookup and address transaction receipt fetching
Aligns the UserSettings field name with the derived boolean exposed by
SettingsContext, so consumers reading directly from settings and those
using the context hook see the same identifier.
…thropic model

Replace the hardcoded "groq" primaryAIProviderId in the Settings UI with
AI_PROVIDER_ORDER[0] so the displayed primary card stays in sync if the
priority order ever changes. Also updates the Anthropic default model from
the outdated claude-sonnet-4-5-20250929 to claude-sonnet-4-6.
AIService.doFetch now uses an AbortController with a 30s hard timeout so
a slow or unresponsive provider cannot hang the UI indefinitely.

extractProtocolHints now strips filenames before pattern matching so only
directory segments are tested, preventing contracts whose names happen to
contain a protocol name (e.g. MyUniswapFork.sol) from producing false hints.
…oviders-power-user-prompt-versioning-and-swapping

222 feat enhance ai analyzer providers power user prompt versioning and swapping
Pin metadata package to @1.1.0-alpha.0 and update token data paths
to include /evm/ segment, matching the new multi-chain directory
structure in the metadata repository.
Replace bundled networks.json RPCs and Chainlist fetching with curated
RPC endpoints from @openscan/metadata. RPCs are fetched from the metadata
CDN on startup, cached in localStorage with 24h TTL, and color-coded in
Settings by tracking/open-source status.
Move metadata RPC fetch into loadNetworkData so RPCs are resolved
before the app finishes initializing (fixes empty RPC state on first
load). Add clearMetadataRpcCache to the Settings clear-cache action.
Personal API key URLs now display as "Infura Personal" / "Alchemy
Personal" with the yellow tracking-enabled tag color.
- Add OpenScanCubeLoader as the universal loading animation across all
  loading states (Loader and Loading components)
- Convert cube animation from requestAnimationFrame to CSS keyframes,
  removing all hooks from LoadingLogo.tsx
- Add cube-breathe-{right,left,top} and cube-rotate-{cw,ccw} keyframe
  animations to components.css
- Remove deprecated CSS: .loader-spinner, @Keyframes spin (loader),
  .loader-spinner-container, .wave-loading, .wave, @Keyframes wave,
  .loading-spinner (both theme variants)
- Drop color prop from Loader component
- Show cube loader (size 18) inline in the Analyze button while loading
- Show cube loader (size 60) in the panel content area while awaiting
  the AI response
- Replace .ai-analysis-spinner CSS circle with .ai-analysis-loading
  flex container; remove @Keyframes ai-spin
Adds Polygon RPC endpoints to the metadata directory.
…ha.0

feat(metadata): replace Chainlist with metadata RPC directory
@github-actions
Copy link

github-actions bot commented Feb 22, 2026

🚀 Preview: https://pr-233--openscan.netlify.app
📝 Commit: 17f21385a568c08d1c05bd60dc3281b24af5962a

AugustoL and others added 13 commits February 22, 2026 12:03
Split transaction detail rows into full-width sections for long hex
values (hash, from, to) and a responsive two-column grid for shorter
fields (status, block, gas, L2 fields), mirroring the Bitcoin TX layout.
Brighten tx labels, values, and badges for better dark mode visibility.
Strengthen row borders, L2 backgrounds, and attribute chips. Align BTC
and EVM grid dividers to use consistent color-primary-alpha-15 borders.
Move block hash from hidden "More Details" to a prominent full-width
row at the top with LongString trimming. Split remaining fields into
a two-column grid matching the transaction page layout.
Simplify the transactions page to show one block per page instead of
scanning multiple blocks. This eliminates gaps where transactions could
be lost between pages. URL param changes from ?fromBlock=N to ?block=N.
Add within-block pagination (100 txs/page) alongside existing block-level
navigation. URL scheme: /{slug}/txs?block=N&page=P. Fetches all block txs
once and slices client-side for page changes. Includes i18n for en/es,
new pagination CSS classes, and adapter support for getBlockTransactions.
… titles

Replace hardcoded "Bitcoin Blocks", "Latest Blocks", "Bitcoin Transactions",
and "Latest Transactions" with dynamic "{{network}} Blocks/Transactions"
using the network name from config. Fix EVM pages resolving network name
from raw URL param instead of numericNetworkId to support slug-based routes.
feat(ui): improve layout and pagination for blocks and transactions pages
Bump package version to 1.2.1-alpha
@AugustoL AugustoL merged commit aefd500 into dev Feb 22, 2026
5 of 6 checks passed
@AugustoL AugustoL deleted the release/v1.2.1-a branch March 2, 2026 11:54
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.

2 participants