v0.5.1 — idempotent annotation upsert
Patch: idempotent upsert for cache-class / system-derived annotations.
annotate --replace— upsert by(type, key)for a symbol (delete-then-write). Append-only stays the default for advisory/note/comment/question;--replaceis opt-in for re-projectable cache tags so a re-project doesn't duplicate rows.clusters --annotateis now idempotent — re-running replaces each symbol'scommunityannotation instead of duplicating it.
Unblocks consumers that project a re-buildable cache as annotations. Gate green: build 0 warnings, 44 test suites, clippy -D warnings, fmt.
🤖 Generated with Claude Code