Skip to content

feat(plugin): add TinyActorCard contract and mood-to-face mapping (#1270)#1283

Merged
JeremyDev87 merged 1 commit into
masterfrom
taskmaestro/1775268085/pane-1
Apr 4, 2026
Merged

feat(plugin): add TinyActorCard contract and mood-to-face mapping (#1270)#1283
JeremyDev87 merged 1 commit into
masterfrom
taskmaestro/1775268085/pane-1

Conversation

@JeremyDev87

Copy link
Copy Markdown
Owner

Summary

  • Add TinyActorCard frozen dataclass as the stable data contract for the Tiny Actor Grid
  • Implement build_face(mood, eye_glyph) with deterministic mood-to-face mapping (speaking, reviewing, proposing, unsure, blocked)
  • Support ASCII fallback mode (o_o, o.o, o~o, oxo) for terminals without Unicode
  • Provide create_actor_card() factory with Buddy moderator separation via is_moderator flag

Test plan

  • build_face returns correct Unicode face for each of 5 moods
  • build_face with custom eye_glyph from agent JSON visual.eye
  • build_face ASCII fallback mode with custom eye_fallback
  • Unknown mood falls back to unsure
  • TinyActorCard dataclass holds all fields with correct defaults
  • create_actor_card factory produces valid cards (defaults, custom mood, eye glyph, moderator, ASCII mode)
  • 25 tests passing, 536 total suite passing

Closes #1270

)

Introduce a stable, reusable data contract for the Tiny Actor Grid:
- TinyActorCard frozen dataclass with agent_id, label, face, eye, mood,
  quote, color_ansi, and is_moderator fields
- build_face() deterministic face builder with 5 mood mappings
  (speaking, reviewing, proposing, unsure, blocked)
- ASCII fallback mode for terminals without Unicode support
- create_actor_card() factory with eye_glyph and moderator support
- 25 unit tests covering all moods, custom eyes, ASCII fallback,
  dataclass contract, and Buddy moderator separation

Closes #1270
@JeremyDev87 JeremyDev87 added feat plugin packages/claude-code-plugin wow-experience Plugin Wow Experience Design labels Apr 4, 2026
@vercel

vercel Bot commented Apr 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
codingbuddy-landing Ready Ready Preview, Comment Apr 4, 2026 2:12am

@JeremyDev87 JeremyDev87 left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: APPROVE ✅

CI Status: ALL PASS (28/28)

Code Quality

  • TinyActorCard frozen dataclass — immutable, clean field set
  • build_face(mood, eye_glyph, ascii_mode): deterministic face from mood + eye
  • 5 moods (speaking, reviewing, proposing, unsure, blocked) with Unicode + ASCII mappings
  • create_actor_card() factory with sensible defaults (mood="unsure")
  • Keyword-only params for optional args prevent argument position errors
  • Comprehensive docstrings with parameter descriptions

Tests (25 in 5 classes)

  • Mood-to-face mapping for all 5 moods + unknown fallback
  • Custom eye glyphs (star, diamond, buddy)
  • ASCII fallback (7 cases)
  • Dataclass field assertions
  • Factory with defaults, custom mood, eye glyph, moderator flag, ASCII mode

No Issues Found

Recommendation: APPROVE

@JeremyDev87 JeremyDev87 self-assigned this Apr 4, 2026
@JeremyDev87 JeremyDev87 merged commit 9afa3db into master Apr 4, 2026
28 checks passed
@JeremyDev87 JeremyDev87 deleted the taskmaestro/1775268085/pane-1 branch April 4, 2026 02:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat plugin packages/claude-code-plugin wow-experience Plugin Wow Experience Design

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(plugin): add a TinyActorCard contract and mood-to-face mapping for ASCII actor scenes

1 participant