* feat: add ability to delete version tags from skill detail page
- Add deleteTags mutation to convex/skills.ts (protects 'latest' tag)
- Add delete button (×) on each tag in SkillHeader (visible to owner/moderator only)
- Wire up onTagDelete prop from SkillDetailPage to SkillHeader
- Add .tag-delete CSS styles
Closes: version tags accumulate across publishes with no way to remove them
* fix: address review feedback on deleteTags PR
- Add window.confirm() before deleting a tag (P2: missing confirmation)
- Skip db.patch when no tags are actually removed (P2: unnecessary write)
- Add test suite for deleteTags mutation covering:
- Tag deletion with latest protection
- No-op when only latest is targeted
- No-op for nonexistent tags
- Permission check for non-owner
- Moderator access on other user's skill
- Skill not found error
* fix: repair deleteTags test harness
* fix: satisfy deleteTags test typecheck
---------
Co-authored-by: Jeff <tjefferson518@gmail.com>