Files
evm/core/txpool
zeekay 99c0ada936 txpool: read per-chain ChainConfig.PQ, not the dead process-global
CTO swarm audit found the strict-PQ tx-pool gate was dead code:
the previous commit checked vm.ActivePQProfile() (process-global)
but the EVM plugin sets vm.chainConfig.PQ per-chain and never
calls SetPQProfile. So the global stayed nil and the strict-PQ
branch never fired — classical tx types were still admitted on
strict-PQ chains, defeating the gate.

This commit reads pool.chainconfig.PQ directly — same field the
EVM precompile gate reads (params.ChainConfig.PQ via runPrecompile),
so the tx-pool admission and the precompile refusal are now driven
by the same per-chain profile pin. Multi-chain hosts (strict-PQ +
permissive in one process) get the right gate per pool because
the profile lives on each chain's config.

Drops the vm package import (no longer needed).

Closes red-team finding "per-chain profile" from the strict-PQ
adversarial review.
2026-05-12 09:46:23 -07:00
..
2025-08-01 01:23:42 +00:00