Skip to content

[executor] charon-executor/Cargo.toml missing lints.workspace = true — workspace lint policy unenforced #165

@obchain

Description

@obchain

PR: #41 (feat/executor: transaction builder + eth_call simulator)
File: crates/charon-executor/Cargo.toml
Refs #41

Problem

crates/charon-executor/Cargo.toml has no [lints] section. CLAUDE.md documents workspace lint policy:

forbid unsafe_code, deny arithmetic_side_effects, deny cast_possible_truncation, deny unwrap_used

These are only enforced if the root Cargo.toml has a [workspace.lints] table and each crate opts in via lints.workspace = true, or if the crate declares them individually. Neither is present for charon-executor. cargo clippy --workspace silently skips enforcement of these rules in this crate.

Note: the root [workspace.lints] table is also absent from Cargo.toml — this is a pre-existing gap across all crates, but this PR introduces a new crate that compounds the problem.

Fix

Add to crates/charon-executor/Cargo.toml:

[lints]
workspace = true

Add to the root Cargo.toml:

[workspace.lints.rust]
unsafe_code = "forbid"
unwrap_used = "deny"

[workspace.lints.clippy]
arithmetic_side_effects = "deny"
cast_possible_truncation = "deny"

Metadata

Metadata

Assignees

No one assigned

    Labels

    layer:rustRust crates (core / scanner / protocols / executor / cli)pr-reviewFindings from PR review processpriority:p1-coreCore MVP scopestatus:readyScoped and ready to pick uptype:choreMaintenance, config, tooling

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions