$ nightshade vulnerable.compact --config config.json --compiler /path/to/compactc MEDIUM — Duplicate shielded mint commitment [duplicate-shielded-mint] vulnerable.compact:7:3 7 | mintShieldedToken(pad(32,"sdk:reward"),1,disclose(evolveNonce(0,nonce)),to); | ^ rewardTwice invokes mintShieldedToken twice with provably identical token domain, amount, nonce and active recipient on one modeled successful history. The pinned library derives the same coin commitment in this contract context; duplicate commitments are rejected by the ledger. This is a transaction availability defect, not proof of token theft or a generic commitment-opening vulnerability. Source: vulnerable.compact:6:3 Call path: rewardTwice → mintShieldedToken Remediation: Use a distinct nonce for each minted output, for example evolveNonce with a distinct index. Review freshness across separate transactions independently. Semantic profile: compact-0.34.0-zkir2. Baseline analysis: complete; selected rules: complete. Rule coverage: 1 selected rule(s); 0 with incomplete entries. 1 finding(s), 0 suppressed, 0 baseline; 1/1 entrypoint(s) completed; analysis complete. Compiler validation passed.