$ nightshade vulnerable.compact --config config.json --compiler /path/to/compactc MEDIUM — Public commitment uses predictable randomness [predictable-commitment-randomness] vulnerable.compact:6:3 6 | published = persistentCommit(secret(), pad(32, "")); | ^ persistentCommit commits private-derived input using statically known randomness, and its result influences ledger-write published. This removes the protection supplied by secret, unpredictable commitment randomness; low-entropy inputs can remain guessable. Intentional deterministic commitments require review. Source: vulnerable.compact:6:15 Call path: publish Remediation: Use independently generated, sufficiently entropic private randomness appropriate to the primitive and protocol. Do not replace intentional deterministic protocol commitments without reviewing compatibility. 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.