[workspace]
members = [
    # Canonical V3 supported-candidate allowlist. Source-retained retired and
    # redesign-required programs are intentionally outside the release workspace.
    "programs/ai_accountability_bonds",
    "programs/ai_partnership_bonds",
    "programs/identity_registry",
    "programs/multisig_governance",
    "programs/privacy_guarantees",
    "programs/vaultfire_adapter",
]
exclude = [
    "programs/anti_surveillance",
    "programs/belief_attestation_verifier",
    "programs/dilithium_attestor",
    "programs/flourishing_metrics_oracle",
    "programs/mission_enforcement",
    "programs/production_belief_verifier",
    "programs/reputation_registry",
    "programs/trust_data_bridge",
    "programs/validation_registry",
]
resolver = "2"

[profile.release]
overflow-checks = true
lto = "fat"
codegen-units = 1
[profile.release.build-override]
opt-level = 3
incremental = false
codegen-units = 1

[workspace.lints.rust]
# These values are generated by upstream Anchor 0.32.1/Solana 2.3.0 macros.
# Keep this list exact: it extends Cargo's check-cfg set rather than allowing
# arbitrary configurations or suppressing unexpected_cfgs.
unexpected_cfgs = { level = "deny", check-cfg = [
    'cfg(target_os, values("solana"))',
    'cfg(feature, values("anchor-debug", "custom-heap", "custom-panic"))',
] }
