Skip to content

feat: ユーザーアイコン(user_icon)をプロトコル・モデルに追加#178

Merged
Uno-Takashi merged 1 commit into
mainfrom
feature/user-icon
Jun 25, 2026
Merged

feat: ユーザーアイコン(user_icon)をプロトコル・モデルに追加#178
Uno-Takashi merged 1 commit into
mainfrom
feature/user-icon

Conversation

@Uno-Takashi

Copy link
Copy Markdown
Member

概要

ルーム参加者が表示アイコン (user_icon) を持てるようにする。フロント(拡張)が react-icons (Font Awesome 6) のキー文字列を送り、user_name と同様に create / join で受け取って user / user_list で配信する。

後方互換

  • 旧拡張が user_icon を送らない場合は既定キー "FaRegUser"(現行のシンプルなユーザーアイコン相当)にフォールバック。
  • format.pyUser.user_icon もデフォルト付きで、欠落データに耐える。

変更

  • models.AnimeUser.user_icon(平文 CharField, default="FaRegUser"
  • format.User.user_icondefault="FaRegUser"
  • consumers: create / join / database_create_user で受け渡し、database_user_listvaluesuser_icon を追加
  • factories / tests: 往復と既定フォールバックを検証

migration はリポジトリ方針により gitignore(コンテナ起動時に makemigrations で生成)。

動作確認

  • docker compose の django コンテナで pytest streamer/tests.py 全 6 件 pass
  • makemigrations --check クリーン / ruff formatruff check クリーン

🤖 Generated with Claude Code

Comment thread streamer/consumers.py
@action()
async def join(self, room_id: uuid, user_name: str, **kwargs):
async def join(
self, room_id: uuid, user_name: str, user_icon="FaRegUser", **kwargs

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🚫 [mypy] reported by reviewdog 🐶
Module "uuid" is not valid as a type [valid-type]

Comment thread streamer/consumers.py
@action()
async def join(self, room_id: uuid, user_name: str, **kwargs):
async def join(
self, room_id: uuid, user_name: str, user_icon="FaRegUser", **kwargs

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

📝 [mypy] reported by reviewdog 🐶
Perhaps you meant to use a protocol matching the module structure?

ルーム参加者が react-icons (Font Awesome 6) のキー文字列を表示アイコンとして
持てるようにする。create/join で受け取り、user / user_list で配信する。
後方互換のため、旧拡張が user_icon を送らない場合は既定キー "FaRegUser"
(現行のシンプルなユーザーアイコン相当)にフォールバックする。

- models.AnimeUser.user_icon (平文 CharField, default="FaRegUser") + migration 0003
- format.User.user_icon (default="FaRegUser")
- consumers: create/join/database_create_user で user_icon を受け渡し、
  database_user_list の values に user_icon を追加
- factories/tests: 往復と既定フォールバックを検証

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Uno-Takashi Uno-Takashi merged commit 28994d7 into main Jun 25, 2026
18 of 19 checks passed
@Uno-Takashi Uno-Takashi deleted the feature/user-icon branch June 25, 2026 14:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant