nautechsystems/nautilus_trader · error
Proxy kind is unsupported
Error message
Proxy kind is unsupported
What it means
Deployment manifest validation: a contract's proxy kind string is not one of the supported schemes (eip1967_implementation, zeppelinos_implementation), so its proxy cannot be resolved and the manifest is rejected.
Source
Thrown at crates/adapters/blockchain/src/rpc/verification.rs:1284
anyhow::ensure!(
contract_addresses.insert(address),
"Deployment manifest contains a duplicate contract address"
);
roles.insert(contract.role);
let code_hash = B256::from_str(&contract.runtime_code_hash)
.map_err(|_| anyhow::anyhow!("Deployment manifest contains an invalid code hash"))?;
anyhow::ensure!(
code_hash != B256::ZERO,
"Manifest code hashes must be nonzero"
);
anyhow::ensure!(
matches!(contract.role, BlockchainContractRole::Implementation)
|| !contract.probes.is_empty(),
"Every deployed contract role requires at least one identity probe"
);
if let Some(proxy) = &contract.proxy {
anyhow::ensure!(
matches!(
proxy.kind.as_str(),
"eip1967_implementation" | "zeppelinos_implementation"
),
"Proxy kind is unsupported"
);
B256::from_str(&proxy.storage_slot)
.map_err(|_| anyhow::anyhow!("Proxy storage slot is invalid"))?;
let storage_value = B256::from_str(&proxy.storage_value)
.map_err(|_| anyhow::anyhow!("Proxy storage value is invalid"))?;
let target = Address::from_str(&proxy.target_address)
.map_err(|_| anyhow::anyhow!("Proxy target address is invalid"))?;
let target_hash = B256::from_str(&proxy.target_code_hash)
.map_err(|_| anyhow::anyhow!("Proxy target code hash is invalid"))?;
anyhow::ensure!(
target != Address::ZERO
&& target != address
&& target_hash != B256::ZEROView on GitHub (pinned to 18893faf8b)
Solutions
- Use one of the supported proxy kinds in the manifest
- Remove the proxy entry if the contract is not a proxy
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/adapters/blockchain/src/rpc/verification.rs:1284 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of nautechsystems/nautilus_trader@18893faf8b (2026-09-08).
Data as JSON: /api/errors/0a285b92d8fd54b6.
Report an issue: GitHub.