Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
476 commits
Select commit Hold shift + click to select a range
0517f49
Update api
PurpleTheBest Feb 6, 2026
3db6397
Fix build error
PurpleTheBest Feb 6, 2026
00d25ca
Return detailed network
PurpleTheBest Feb 6, 2026
8f557e8
Add integration guide and fix metamask send button
PurpleTheBest Feb 6, 2026
8566e8b
Add nonce reserve, enable temporal traces, unify redis keys
PurpleTheBest Feb 6, 2026
54f01c6
Make polling interval optional if there is inflight transactions
PurpleTheBest Feb 6, 2026
59e16a1
Add order persistance and secret reveal
PurpleTheBest Feb 6, 2026
a71116b
Fix secret encoding
PurpleTheBest Feb 6, 2026
377f742
Update admin panel status labels
PurpleTheBest Feb 6, 2026
8b80472
Fix hardcoded evm type
PurpleTheBest Feb 6, 2026
4832a62
Add bridgfe ui, fix nonce reserve issue, fix sevent listener checkopi…
PurpleTheBest Feb 6, 2026
da2f7d0
Add autooreveal
PurpleTheBest Feb 9, 2026
62e3347
Update order workflow to wait for any event instead of both
PurpleTheBest Feb 9, 2026
9ae889c
Add reset button in bridge UI
PurpleTheBest Feb 10, 2026
5a27271
Add websocket event listener
PurpleTheBest Feb 10, 2026
2804d4a
Add stopper for catchup
PurpleTheBest Feb 10, 2026
833f49b
Add event source
PurpleTheBest Feb 10, 2026
b15e73c
Update claude md
PurpleTheBest Feb 10, 2026
6864a37
Move network bootstrapper to gateway
PurpleTheBest Feb 10, 2026
f52b02e
Report about expenses
PurpleTheBest Feb 10, 2026
3ad7b47
Move fee reporting to gateway
PurpleTheBest Feb 10, 2026
f054e47
Changes in Quote service
Martin9204 Feb 10, 2026
d7eecae
Fix autoreveal polling
PurpleTheBest Feb 10, 2026
e18758e
Explicitly restoring browser-wasm runtime in .csproj when launching a…
Martin9204 Feb 10, 2026
5bd7b38
Add order settlment
PurpleTheBest Feb 10, 2026
f04b294
Add order metric page in potal
PurpleTheBest Feb 10, 2026
34aa443
Fix route confusion bug
PurpleTheBest Feb 10, 2026
e18a5a4
Fix race condition
PurpleTheBest Feb 10, 2026
ab5adfb
Mke activities local for better speed
PurpleTheBest Feb 11, 2026
b8b951d
Local activitify more activities
PurpleTheBest Feb 11, 2026
1873f10
Add gas station
PurpleTheBest Feb 11, 2026
9d85063
Update md
PurpleTheBest Feb 11, 2026
196e269
Add Refund monitor
PurpleTheBest Feb 11, 2026
991c591
Change refund correlationId
PurpleTheBest Feb 11, 2026
e38a9af
Remove wait confitions from network gateway
PurpleTheBest Feb 11, 2026
cfd91da
Add testing tool
PurpleTheBest Feb 11, 2026
0c2e98f
Changing the app to use new contracts
Martin9204 Feb 11, 2026
8b02eef
Fix transaction processor nonce ordering
PurpleTheBest Feb 11, 2026
8cdaaf2
Add custom Transaction type
PurpleTheBest Feb 12, 2026
0cfcc46
Add approve spender tool, custom tx support, and capacity-based TP pr…
PurpleTheBest Feb 12, 2026
a4b6be2
Update seed
PurpleTheBest Feb 12, 2026
74f7508
Update seed
PurpleTheBest Feb 12, 2026
88f4932
In get quote, get live fee instead of stale expenses
PurpleTheBest Feb 12, 2026
69c1222
Add migration
PurpleTheBest Feb 12, 2026
9213c83
Recreate migrations
PurpleTheBest Feb 12, 2026
b74fe3b
Add monitoring page
PurpleTheBest Feb 12, 2026
b94e89e
Changing reward mecehanism
Martin9204 Feb 12, 2026
4580c46
Merge remote-tracking branch 'origin/dev-aspire' into dev-aspire
Martin9204 Feb 12, 2026
a61f39a
Add user redeem and solver refund
PurpleTheBest Feb 12, 2026
1870b7e
Updating train contracts
Martin9204 Feb 12, 2026
fd3c8f7
Adding enum comment migration
Martin9204 Feb 12, 2026
e321f04
Add orderworkflow tests
PurpleTheBest Feb 12, 2026
9d50443
Adding validation for user's lock
Martin9204 Feb 12, 2026
ee78ddc
Add unit tests
PurpleTheBest Feb 13, 2026
60dff01
Add more unit tests
PurpleTheBest Feb 13, 2026
681961a
Add more tests, webhook endpoint
PurpleTheBest Feb 13, 2026
024f92d
Add test summaries
PurpleTheBest Feb 13, 2026
c65f9aa
Add webhook tests
PurpleTheBest Feb 13, 2026
ded3dd7
Add common tests
PurpleTheBest Feb 13, 2026
e63eeb5
Add data layer tests and service
PurpleTheBest Feb 13, 2026
9c026df
Fix failing tests
PurpleTheBest Feb 13, 2026
ded99e8
Update claude md
PurpleTheBest Feb 13, 2026
dc1b376
fixes in quote-ing
Martin9204 Feb 13, 2026
a419178
Add wallet generator tests
PurpleTheBest Feb 13, 2026
4286641
Instead of quote difference, check only when we lose money
PurpleTheBest Feb 13, 2026
5cf22b0
Filter refund candidates by status as well
PurpleTheBest Feb 13, 2026
cb5632f
fix
Martin9204 Feb 13, 2026
a073809
Add FluentValidation for all API and AdminAPI request models
PurpleTheBest Feb 16, 2026
ba830f2
Merge branch 'feature/fluent-validation' into dev-aspire
PurpleTheBest Feb 16, 2026
3c8f55a
Merge branch 'dev-aspire' of https://github.com/TrainProtocol/solver …
PurpleTheBest Feb 16, 2026
7591fec
Handle estimate gas errors
PurpleTheBest Feb 16, 2026
25df8bb
Add more cases to consider as refunded
PurpleTheBest Feb 16, 2026
6e3b082
Fix secret parsing, add default tollerance
PurpleTheBest Feb 16, 2026
4556f0f
Add webhook notification service
PurpleTheBest Feb 16, 2026
5cb8420
Update webhook failure handling
PurpleTheBest Feb 16, 2026
02c5ddf
Fix test webhook
PurpleTheBest Feb 16, 2026
045b21b
Update claude md
PurpleTheBest Feb 16, 2026
feff6d1
Add bridge admin tool and move webhook temp from worker
PurpleTheBest Feb 16, 2026
61046f6
Adding optional include reward
Martin9204 Feb 16, 2026
3892d93
Merge remote-tracking branch 'origin/dev-aspire' into dev-aspire
Martin9204 Feb 16, 2026
940e832
Fix bug related to not detecting user's redeem
PurpleTheBest Feb 16, 2026
c5fa0bf
Add event listener tests
PurpleTheBest Feb 17, 2026
8a5cf73
Add self transaction on stuck tx, add min/max in bridge tool, add met…
PurpleTheBest Feb 17, 2026
d8e40c6
Update quote calc
PurpleTheBest Feb 17, 2026
52d6a02
Fix tests
PurpleTheBest Feb 17, 2026
f1f2014
Return from order wf if its already crated
PurpleTheBest Feb 17, 2026
89186a1
Update quote service
PurpleTheBest Feb 17, 2026
89bcb74
Phase 1
PurpleTheBest Feb 17, 2026
3a0990b
Update plan
PurpleTheBest Feb 17, 2026
185f4c2
Add remaining repo implementations
PurpleTheBest Feb 18, 2026
6961e1f
Add quote fee calculator
PurpleTheBest Feb 18, 2026
4c4a3c6
Update quote service
PurpleTheBest Feb 18, 2026
26a9b58
Update TP failure handling scenarios
PurpleTheBest Feb 18, 2026
db78b9c
Fix bump bug
PurpleTheBest Feb 18, 2026
27d8235
Add blanace get batching in orchestrator
PurpleTheBest Feb 18, 2026
e48a96c
Fix timouts
PurpleTheBest Feb 18, 2026
bb912e4
Add custom event listeners
PurpleTheBest Feb 18, 2026
2993f11
Move event listeners into evm, they are no longer part of the core
PurpleTheBest Feb 18, 2026
6ebfca1
Fix mempool listener timeout, fix quote min amount calc
PurpleTheBest Feb 19, 2026
b54162f
Fix timout issue
PurpleTheBest Feb 19, 2026
25ea7f0
Add mempool listeners into seed
PurpleTheBest Feb 19, 2026
1068242
Add station api
PurpleTheBest Feb 19, 2026
4b3babc
Fix mismatched query params
PurpleTheBest Feb 19, 2026
e038e3e
Fix quote mismatch bug
PurpleTheBest Feb 19, 2026
54caad3
Add fool check to filter out solver locks
PurpleTheBest Feb 19, 2026
8faa4cf
more aggressive checkpoints for event listeners
PurpleTheBest Feb 19, 2026
dd2b7d4
Remove unused Client project
PurpleTheBest Feb 19, 2026
33606f4
Update quote logic
PurpleTheBest Feb 19, 2026
47fe69f
Fix quote related bugs
PurpleTheBest Feb 19, 2026
ce34831
Update bridge
PurpleTheBest Feb 19, 2026
e968f14
Add fix for lock with reward
PurpleTheBest Feb 19, 2026
bf2b2ea
Fix user fund redeem
PurpleTheBest Feb 19, 2026
539cd31
Remove unused endpoints from public api, and return caip2 instead of …
PurpleTheBest Feb 20, 2026
4ac5149
Simplify event loop in websocket listeners, also fix race condition i…
PurpleTheBest Feb 20, 2026
e590815
Bassify event listeners duplicate codes
PurpleTheBest Feb 20, 2026
9898830
Fix misleading l9ogs
PurpleTheBest Feb 20, 2026
0034196
Clean up gateway and station
PurpleTheBest Feb 20, 2026
e5518b2
Update gas station
PurpleTheBest Feb 20, 2026
b9aea6b
Separate service for gas station
PurpleTheBest Feb 20, 2026
b3f3061
Add price updater for station, use binance price updater in solver
PurpleTheBest Feb 20, 2026
9d625b1
Fix build errors
PurpleTheBest Feb 20, 2026
69bdcdf
Add bsc
PurpleTheBest Feb 20, 2026
7e92766
Update node index
PurpleTheBest Feb 20, 2026
12a7ee0
Update train contract of bsc
PurpleTheBest Feb 20, 2026
ecd6213
Add TokenPrice rate provider
PurpleTheBest Feb 20, 2026
35b098a
Update bridge, add some exception handling in wfs
PurpleTheBest Feb 20, 2026
c2f8ff9
Try to fix nojn determinism error once more time
PurpleTheBest Feb 20, 2026
abd5595
Update UI and add missing iteration increments in wfs
PurpleTheBest Feb 20, 2026
22ec1a8
Rename gateway
PurpleTheBest Feb 20, 2026
4317e1d
Add runtimemonitor
PurpleTheBest Feb 20, 2026
be81b8b
Add subscribtion manager
PurpleTheBest Feb 20, 2026
b0ac1b8
Update event routing
PurpleTheBest Feb 20, 2026
807009f
Rename price updater
PurpleTheBest Feb 20, 2026
8408a13
Fully decompose orchestrator
PurpleTheBest Feb 20, 2026
b9c56e6
Save user lock in db
PurpleTheBest Feb 21, 2026
3ccb000
Update tx types
PurpleTheBest Feb 21, 2026
e687fe6
Update docs
PurpleTheBest Feb 21, 2026
7bafdeb
Update claude md
PurpleTheBest Feb 21, 2026
fd9fde8
Initial changes for Aztec.
erkostandyan Feb 23, 2026
f18e4eb
fixing aztec contract registration
Martin9204 Feb 23, 2026
1162352
Changing aztec contract address and updating claude md
Martin9204 Feb 23, 2026
517789d
Remove redundant signaligs
PurpleTheBest Feb 23, 2026
fce3b4f
Update docs
PurpleTheBest Feb 23, 2026
131fe51
Merge htlc orchestrator decomposxzition
PurpleTheBest Feb 23, 2026
f893f25
Change to regular activities
PurpleTheBest Feb 23, 2026
81b86cd
Add address generator
PurpleTheBest Feb 23, 2026
97d2e57
Temp fix aztec issue
PurpleTheBest Feb 23, 2026
d3d0b35
Move event listener interface int oabstractions
PurpleTheBest Feb 23, 2026
9c7080c
Add missing docker filers
PurpleTheBest Feb 23, 2026
98a42f3
Simplify the network dtos
PurpleTheBest Feb 23, 2026
88db4ae
Remove redundant network calls from gas station
PurpleTheBest Feb 24, 2026
9e22037
Fix noncetoolow infinite retries and missing token include in network…
PurpleTheBest Feb 24, 2026
37d09e8
Update event address matching
PurpleTheBest Feb 24, 2026
0bff7ad
Parallelize RouteMonitor balance fetches and disable routes on failure
PurpleTheBest Feb 24, 2026
53b7e27
Add order detailed logs
PurpleTheBest Feb 24, 2026
2982ed6
Add more logs in OWF
PurpleTheBest Feb 24, 2026
a3d7115
Remove redundant network from signals
PurpleTheBest Feb 24, 2026
c96fa77
Remove unused fields from lock request
PurpleTheBest Feb 24, 2026
3b16b03
Fix network name bug in repo and max attempts in Monitor
PurpleTheBest Feb 24, 2026
6e86218
Add separte events for solver and user
PurpleTheBest Feb 24, 2026
0a5c95c
Add token price caching in settlment
PurpleTheBest Feb 24, 2026
9b525bb
Rename PKProvider to SecretService
PurpleTheBest Feb 24, 2026
6866bf8
Refactor webhook dispatcher
PurpleTheBest Feb 24, 2026
c3d383b
Trying to add aztec
Martin9204 Feb 24, 2026
4552fb5
Adding train contract in admin panel
Martin9204 Feb 24, 2026
ab70250
Fix PercentOf / FeePercentage convention mismatch
PurpleTheBest Feb 24, 2026
376f79b
Merge branch 'dev-aspire' of https://github.com/TrainProtocol/solver …
PurpleTheBest Feb 24, 2026
3e79668
Fix failing tests
PurpleTheBest Feb 24, 2026
6aa1eb3
remove unused start args
PurpleTheBest Feb 24, 2026
30aac92
Revert "remove unused start args"
PurpleTheBest Feb 24, 2026
ccad44b
Dockerify treasury
PurpleTheBest Feb 25, 2026
52e1a35
Fix bug in event listener
PurpleTheBest Feb 25, 2026
892dc18
Push claude files
PurpleTheBest Feb 25, 2026
5076016
Update claude md
PurpleTheBest Feb 25, 2026
17d95db
Move claude related stuff to repos root
PurpleTheBest Feb 25, 2026
2c70357
Move docs to root
PurpleTheBest Feb 25, 2026
576fe1d
Fix Aztec runtime dispatch and Dockerize JS worker
erkostandyan Feb 25, 2026
603275c
Add proto files
PurpleTheBest Feb 25, 2026
296d99b
Merge branch 'dev-aspire' of https://github.com/TrainProtocol/solver …
PurpleTheBest Feb 25, 2026
67d1a5b
Add autorefund
PurpleTheBest Feb 25, 2026
2259657
Prebuild image
PurpleTheBest Feb 25, 2026
00b2e5d
Fix missing wallets
PurpleTheBest Feb 25, 2026
3c34b30
Add starknet skeleton
PurpleTheBest Feb 25, 2026
d7eedea
Update starknet type
PurpleTheBest Feb 25, 2026
b016068
trying to add aztec
Martin9204 Feb 25, 2026
dde0446
Add event types on webhook subscribers, add rebalance workflow
PurpleTheBest Feb 26, 2026
1dd2ab8
Add rebalance tool
PurpleTheBest Feb 26, 2026
9582205
Add starknet account deploy and starknet seed
PurpleTheBest Feb 26, 2026
36c889e
Update starknet native token
PurpleTheBest Feb 26, 2026
c56d410
Finish starknet address generation
PurpleTheBest Feb 26, 2026
da65842
Add TP bootstraping logic
PurpleTheBest Feb 26, 2026
63c6309
Do not use routes in motitors
PurpleTheBest Feb 26, 2026
4ba3a42
Finalize starknet integration
PurpleTheBest Feb 26, 2026
1eaec16
Merge with dev
PurpleTheBest Feb 26, 2026
0ff5b22
trying to add aztec
Martin9204 Feb 26, 2026
1b79bc1
Fix typo
PurpleTheBest Feb 27, 2026
399ec30
Fix errors
PurpleTheBest Feb 27, 2026
f0445db
adding env for aztec
Martin9204 Feb 27, 2026
1764f29
Update TPs
PurpleTheBest Feb 27, 2026
0521718
adding aztec token
Martin9204 Feb 27, 2026
c4c4504
Add Tron integration
PurpleTheBest Feb 27, 2026
0cd86e4
Add code review skill
PurpleTheBest Mar 2, 2026
de9a858
Add tron contract seed
PurpleTheBest Mar 2, 2026
e7c3576
Update tron address formatting
PurpleTheBest Mar 2, 2026
cdc2de1
Implement emv review
PurpleTheBest Mar 2, 2026
65a9ae9
Finalize evm refactoring
PurpleTheBest Mar 2, 2026
00c8df9
Refactor starknet and tron according to reviews
PurpleTheBest Mar 3, 2026
5ee0177
Normalize starknet addresses
PurpleTheBest Mar 3, 2026
5273ecc
Normalize evm addresses
PurpleTheBest Mar 3, 2026
2ffa0c6
trying to add aztec
Martin9204 Mar 3, 2026
8c8c2b2
Fix evm tests
PurpleTheBest Mar 3, 2026
a427c39
Merge branch 'dev-aspire' of https://github.com/TrainProtocol/solver …
PurpleTheBest Mar 3, 2026
a2078d3
Implement changes according to order wf review
PurpleTheBest Mar 3, 2026
f58a1da
Fixing aztec log processing
Martin9204 Mar 3, 2026
7166661
IMplement changes according to selfhealing review
PurpleTheBest Mar 3, 2026
b6258a5
Fix failing tests
PurpleTheBest Mar 3, 2026
a303966
Merge branch 'dev-aspire' of https://github.com/TrainProtocol/solver …
PurpleTheBest Mar 3, 2026
d46d977
Fix remaining tests
PurpleTheBest Mar 3, 2026
4f1baf6
Making to return reward as 0 instead of null when no data is available
Martin9204 Mar 3, 2026
58f60b0
Updating train contracts to new versions
Martin9204 Mar 4, 2026
09030ba
Adding core activities for aztec
Martin9204 Mar 4, 2026
064e9e4
Enabling transfer in aztec
Martin9204 Mar 4, 2026
a760964
Add missing Dockerfiles and CI workflows, fix worker base images
arkoc Mar 4, 2026
83dab5b
Remove solana workflow (project source deleted)
arkoc Mar 4, 2026
3b1604a
Remove api-client workflow (project source deleted)
arkoc Mar 4, 2026
91b8a3a
Trigger all CI workflows
arkoc Mar 4, 2026
aa79633
Fix docker build context for JS and treasury workflows
arkoc Mar 4, 2026
ea79109
Remove docker-compose (unused, superseded by Helm/K8s)
arkoc Mar 4, 2026
ecf6148
Add Api health endpoint to admin api
arkoc Mar 5, 2026
ae33b45
Add config for admin api
arkoc Mar 5, 2026
e632733
Add starknet htlc
PurpleTheBest Mar 6, 2026
ab32cb3
Add starknet seed
PurpleTheBest Mar 6, 2026
f4b8d84
Fix events bug
PurpleTheBest Mar 6, 2026
8c5dd2a
Update starknet integraion
PurpleTheBest Mar 6, 2026
31c7faf
Fix Aztec HTLC redeem secret encoding and add GasStation workflow
Martin9204 Mar 6, 2026
d460c56
Merge remote-tracking branch 'origin/dev' into dev
Martin9204 Mar 6, 2026
4efeac2
Update starknet integration
PurpleTheBest Mar 6, 2026
df859cd
Merge branch 'dev' of https://github.com/TrainProtocol/solver into dev
PurpleTheBest Mar 6, 2026
1e826dd
Fix enum convertion
PurpleTheBest Mar 6, 2026
c5962bc
Separate wallet activation from wallet generation
PurpleTheBest Mar 6, 2026
40db7dd
Fix address generator formatting
PurpleTheBest Mar 6, 2026
c8d0197
Add Helm chart, multi-arch Docker builds, and Temporal Cloud support
arkoc Mar 8, 2026
1a1d236
update readme
arkoc Mar 8, 2026
ce30053
Improve Dockerfile layer caching across all services
arkoc Mar 8, 2026
63230b9
Fix worker base image: runtime → aspnet
arkoc Mar 8, 2026
e4d5cf2
Remove arm64 from Docker builds
arkoc Mar 8, 2026
ddf066a
Retrigger all image builds
arkoc Mar 8, 2026
08e6605
Replace Hashicorp with Infisical
arkoc Mar 8, 2026
504c2af
Cache Infisical auth token with retry-on-401 pattern
arkoc Mar 8, 2026
4ae97fe
Make api, treasury, and workerSwap required (remove enabled flag)
arkoc Mar 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
56 changes: 56 additions & 0 deletions .claude/agents/csharp-reviewer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
name: csharp-reviewer
description: Reviews C# code for best practices, clean code principles, and maintainability
tools: Read, Grep, Glob
model: sonnet
---

You are a senior C# code reviewer with deep expertise in clean code principles and software craftsmanship.

## Your Focus Areas

### Clean Code Principles
- Meaningful, intention-revealing names for classes, methods, variables
- Small, focused methods that do one thing well (Single Responsibility)
- Avoid magic numbers and strings - use constants or enums
- Prefer composition over inheritance
- Keep cyclomatic complexity low

### SOLID Principles
- **S**ingle Responsibility: Each class has one reason to change
- **O**pen/Closed: Open for extension, closed for modification
- **L**iskov Substitution: Subtypes must be substitutable for base types
- **I**nterface Segregation: Many specific interfaces over one general
- **D**ependency Inversion: Depend on abstractions, not concretions

### C# Best Practices
- Proper use of `async/await` (avoid async void, use ConfigureAwait appropriately)
- Correct disposal patterns (IDisposable, IAsyncDisposable, using statements)
- Null safety (nullable reference types, null checks, null-coalescing operators)
- Collection best practices (IEnumerable vs IReadOnlyList, LINQ efficiency)
- Exception handling (specific exceptions, don't catch Exception, use when clauses)

### Code Organization
- Logical file and namespace structure
- Appropriate access modifiers (prefer private, expose only what's needed)
- Record types vs classes for DTOs
- Extension methods used judiciously
- Proper separation of concerns

### Performance Awareness
- Avoid premature optimization but recognize obvious inefficiencies
- String concatenation in loops (use StringBuilder)
- LINQ in hot paths (consider alternatives)
- Memory allocations (Span<T>, ArrayPool, stackalloc where appropriate)
- Async overhead considerations

## Review Style

When reviewing code:
1. Start with the most impactful issues
2. Explain *why* something is problematic, not just *what*
3. Provide concrete code examples for improvements
4. Distinguish between critical issues and suggestions
5. Acknowledge what's done well

Be direct and constructive. Focus on code quality, not style preferences.
73 changes: 73 additions & 0 deletions .claude/agents/evm-specialist.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
name: evm-specialist
description: Blockchain expert specializing in EVM, smart contracts, and cross-chain operations
tools: Read, Grep, Glob, Bash
model: sonnet
---

You are a blockchain specialist with deep expertise in the Ethereum Virtual Machine and cross-chain operations.

## Your Expertise

### EVM Fundamentals
- EVM architecture: stack-based, 256-bit word size, storage model
- Gas mechanics: intrinsic gas, execution gas, gas limits, EIP-1559
- Transaction types: legacy, EIP-2930 (access lists), EIP-1559 (dynamic fees)
- Account model: EOAs vs contract accounts, nonces, balance
- State trie, storage trie, receipts trie

### Smart Contract Interaction
- ABI encoding/decoding (function selectors, parameter encoding)
- Call types: call, staticcall, delegatecall, create, create2
- Event logs and topics (indexed vs non-indexed parameters)
- Revert reasons and error handling
- Low-level calls and return data handling

### Common Patterns
- ERC-20, ERC-721, ERC-1155 token standards
- Approve/transferFrom patterns and security considerations
- Permit (EIP-2612) for gasless approvals
- Proxy patterns (transparent, UUPS, beacon)
- Multicall and batching patterns

### Gas Optimization
- Storage vs memory vs calldata costs
- Packing storage slots
- Short-circuiting in conditionals
- Batch operations to amortize base costs
- View/pure function gas considerations for off-chain calls

### Cross-Chain & L2
- Bridge patterns and security models
- Arbitrum: L1-L2 messaging, retryable tickets, ArbOS precompiles
- Optimism: cross-domain messaging, deposits/withdrawals
- Message passing and finality considerations
- Chain-specific quirks (block.timestamp, block.number semantics)

### Security Awareness
- Reentrancy and checks-effects-interactions pattern
- Front-running and MEV considerations
- Oracle manipulation risks
- Integer overflow (pre-0.8.0) and precision loss
- Access control and privilege escalation
- Flash loan attack vectors

### Web3 Development (.NET)
- Nethereum library patterns
- RPC providers and rate limiting
- Transaction building and signing
- Event filtering and log parsing
- Gas estimation strategies
- Nonce management in concurrent environments

## When Reviewing Blockchain Code

1. Verify correct ABI encoding for contract calls
2. Check gas estimation and buffer strategies
3. Review error handling for reverts and failed transactions
4. Validate chain-specific logic (Arbitrum vs Ethereum mainnet)
5. Ensure proper nonce management
6. Check for security anti-patterns
7. Review token approval flows

Explain blockchain concepts when providing feedback - not everyone has deep EVM knowledge.
Loading