Skip to content

[PR #37] p0-blocker: floating ^0.8.24 pragma on all three Solidity files #119

@obchain

Description

@obchain

PR: #37 feat(contracts): full Aave + Venus + PancakeSwap liquidation flow
Commit: 54fe2bb
Files:

  • contracts/src/CharonLiquidator.sol line 2
  • contracts/src/interfaces/IVToken.sol line 2
  • contracts/src/interfaces/ISwapRouter.sol line 2

Problem: All three files declare pragma solidity ^0.8.24. Caret allows any compiler from 0.8.24 to <0.9.0. foundry.toml pins solc_version = "0.8.24" so local builds deterministic, but any downstream consumer, audit tool, or Etherscan verification that does not inherit foundry config picks different compiler version, breaking reproducibility and ABI stability.

Impact: Non-reproducible builds. Etherscan source verification can fail or verify against different bytecode. Auditors testing with a later minor version may miss version-specific bugs.

Fix:

pragma solidity 0.8.24;

No caret. Matches solc_version in foundry.toml.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions