fix(release): bind advisory policy runs to live snapshots
The advisory check previously failed closed on every real invocation: the generated config used a duration string rejected by the cargo-deny 0.20.2 pin, and the command ran from a working directory with no Cargo.toml. It also measured advisory identity at db_root rather than the tree cargo-deny actually scanned, so a db_root inside the checkout could git-walk-up and record solstone's own commit as the advisory identity.
Measure identity at the single cargo-deny snapshot under db_root instead. The snapshot must be its own git top level, and the scanned path parsed from -L debug must equal the measured tree. Freshness now comes from measured values: FETCH_HEAD mtime within 24h and HEAD commit timestamp within 14 days, because cargo-deny's own staleness bound reads FETCH_HEAD mtime only and is silently skipped when that file is absent.
Record a measured advisory count so a zero-advisory snapshot cannot pass. Remove RELEASE_ADVISORY_MODE and RELEASE_ADVISORY_ACQUIRED_AT, along with the refresh-once network fetch, so no advisory acquisition is reachable from candidate entry.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>