Skip to content

feat(dystopia): rebuild the profile screens with shift and review sheets - #1546

Merged
panicboat merged 16 commits into
feat/dystopia-post-screensfrom
feat/dystopia-profile-screens
Oct 17, 2026
Merged

panicboat merged 16 commits into
feat/dystopia-post-screensfrom
feat/dystopia-profile-screens

Conversation

@panicboat

Copy link
Copy Markdown
Owner

Why

#1517 のモックに合わせて、プロフィールまわりの画面を作り直します。第 4 段(カルテ以外の画面)を 4 つに分けたうちの 4b(プロフィールまわり)です。stack: #1521 → #1542 → #1544 → #1545 → 本 PR。

Decisions

  • プロフィールの上部をモックの並びにし、役割とエリアを自己紹介の下のチップにする。今ある項目(年齢・体型・サイト・SNS など)は残す
  • タブの並び: キャストは 投稿・出勤・レビュー・返信・メディア・いいね、ゲストは 投稿・カルテ(キャストが見たときだけ)・返信・メディア・いいね・レビュー。今あるタブは消さない
  • キャストのプロフィールでは、出勤タブ以外のときに「今週の出勤」の要約を出す
  • 出勤はタブにし、本人には 2 週間分を「まとめて編集」するシートを出す。保存は今の API を日ごとに呼ぶ(リクエスト内容は変えない)。バックエンドに「休み」の状態がないため、モックの「休み」は「予定を消す」とする
  • 出勤タブは 7 日を曜日付きで出し、「もっと見る」で 14 日に広げる(今の画面で誰でも 2 週間先まで見られるため、spec の「7 日」より「今ある機能を消さない」を優先した)
  • プロフィール編集のモーダルと人格の追加を、右からのシートにする。人格の削除の確認は中央のダイアログのまま
  • レビューはカルテと同じく、要約のカードと詳細シートに分け、操作(編集・削除・非表示・再表示)はシートに置く。キャストのプロフィールのレビュータブから、相手を選び済みでレビューを書ける
  • フォロー一覧の行は変えない(すでにモックと同じ形。エリアは API が返さない)

Fixes carried from 4a

  • 投稿詳細シートの中で、パスが同じでクエリだけ変わる移動(検索ページの上のハッシュタグ)でもシートを閉じる。閉じる処理が Next の replace より先に履歴を戻すと移動が打ち消されるため、クエリが実際に変わったあとで閉じる

Known limitations

  • 出勤のまとめて編集で、反映の途中にブラウザの戻るを押すと、シートは閉じないまま履歴の項目が 1 つ消える
  • 人格の追加の送信中にシートを閉じると、あとで失敗してもエラーが見えない
  • ゲストが書いたレビューの一覧で、キャストのアバターは出ない(キャストのプロフィールへのリンクは残る)

Verification

  • frontend: pnpm exec vitest run → 176 files / 767 tests passed、pnpm exec tsc --noEmit エラーなし、pnpm exec next build 成功
  • 実機(使い捨て DB + bin/grpc + next dev、puppeteer)
    • キャストのプロフィールでタブの並び・今週の出勤・役割のチップ。「もっと見る →」で出勤タブに切り替わり要約が消える
    • まとめて編集で 3 日を 20:00〜02:00 で反映 → トースト「出勤予定を更新しました」、出勤タブに反映。1 日を「予定を消す」で反映 → 未設定
    • 閲覧者には 7 日が曜日付きで出て「もっと見る」で 14 日。本人以外に「まとめて編集」は出ない
    • プロフィール編集シートで自己紹介を保存すると上部に反映
    • ゲストがキャストのレビュータブから相手を選ばずにレビューを書き、カードから詳細シートを開くと作者の操作が出る。キャストが非表示にするとトーストと「非表示中」
    • 設定の人格の管理から「プロフィールを追加」でシートが開く
    • ホームのレビュータブが新しいカードで出る
    • 検索ページの上の投稿詳細シートでハッシュタグを押すと、新しい検索に移ってシートが閉じ、戻る 1 回で元の検索に戻る
    • サーバーに ERROR なし

Docs

  • spec: docs/superpowers/specs/2026-10-16-dystopia-profile-screens-design.md
  • plan: docs/superpowers/plans/2026-10-16-dystopia-profile-screens.md

Refs #1517

🤖 Generated with Claude Code

https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5

…kly shift summary

Claude-Session: https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5
Signed-off-by: panicboat <panicboat@gmail.com>
…sheet and write one from a cast's profile

Claude-Session: https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5
Signed-off-by: panicboat <panicboat@gmail.com>
…ly changes the query

Claude-Session: https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5
Signed-off-by: panicboat <panicboat@gmail.com>
…commits instead of racing history.back

Claude-Session: https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5
Signed-off-by: panicboat <panicboat@gmail.com>
…profile screen details

Claude-Session: https://claude.ai/code/session_01DA9qTtJtm2tPquKk7hyPR5
Signed-off-by: panicboat <panicboat@gmail.com>
@panicboat
panicboat added this pull request to stack #1543 October 16, 2026 14:16
@coderabbitai

coderabbitai Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: d1e9b8a5-0ccb-4009-8558-8c4124f10c5f
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@panicboat-github-workflow-bot panicboat-github-workflow-bot Bot added the deploy:frontend Auto-generated deployment label label Oct 16, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Kustomize Diff

Service: frontend
Environment: production

No changes

@panicboat
panicboat marked this pull request as ready for review October 17, 2026 01:44
@panicboat
panicboat merged commit 325f3b8 into main Oct 17, 2026
13 checks passed
@panicboat
panicboat deleted the feat/dystopia-profile-screens branch October 17, 2026 01:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

deploy:frontend Auto-generated deployment label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant