Centralize role emojis: Witness 👁→🦉, Deacon 🦉🐺

Added centralized emoji constants in internal/constants/constants.go
for easy customization. Updated all files that hardcoded role emojis
to use the new constants.

Changes:
- Witness emoji: 👁 (eye) → 🦉 (owl) - less creepy, matches visual identity
- Deacon emoji: 🦉 (owl) → 🐺 (wolf) - matches hierarchy prompt (wolf in engine room)
- Added RoleEmoji() helper function for string-based lookups
- Maintained backwards compatibility with legacy role names

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
gastown/crew/joe
2026-01-01 11:10:44 -08:00
committed by Steve Yegge
parent 1e53cd78a6
commit 721b4ec1dd
7 changed files with 87 additions and 32 deletions

View File

@@ -1,7 +1,10 @@
// Package feed provides a TUI for the Gas Town activity feed.
package feed
import "github.com/charmbracelet/lipgloss"
import (
"github.com/charmbracelet/lipgloss"
"github.com/steveyegge/gastown/internal/constants"
)
// Color palette
var (
@@ -96,14 +99,14 @@ var (
BorderForeground(colorPrimary).
Padding(0, 1)
// Role icons
// Role icons - uses centralized emojis from constants package
RoleIcons = map[string]string{
"mayor": "🎩",
"witness": "👁",
"refinery": "🏭",
"crew": "👷",
"polecat": "😺",
"deacon": "🔔",
constants.RoleMayor: constants.EmojiMayor,
constants.RoleWitness: constants.EmojiWitness,
constants.RoleRefinery: constants.EmojiRefinery,
constants.RoleCrew: constants.EmojiCrew,
constants.RolePolecat: constants.EmojiPolecat,
constants.RoleDeacon: constants.EmojiDeacon,
}
// MQ event styles
@@ -130,7 +133,7 @@ var (
"delete": "⊘",
"pin": "📌",
// Witness patrol events
"patrol_started": "👁",
"patrol_started": constants.EmojiWitness,
"patrol_complete": "✓",
"polecat_checked": "·",
"polecat_nudged": "⚡",