Skip to content

enhance: アバターデコレーションへのカテゴリの導入#17034

Open
EbiseLutica wants to merge 8 commits intomisskey-dev:developfrom
shrimpia:feature/avatar-decoration-category
Open

enhance: アバターデコレーションへのカテゴリの導入#17034
EbiseLutica wants to merge 8 commits intomisskey-dev:developfrom
shrimpia:feature/avatar-decoration-category

Conversation

@EbiseLutica
Copy link
Contributor

@EbiseLutica EbiseLutica commented Dec 25, 2025

What

close #16854
アバターデコレーションに、カスタム絵文字と同様にカテゴリを設定できるようにしました。

Why

1画面に収まりきらないほど多くのデコレーションを登録しているサーバーにおいて整理できるようにし、管理画面およびアバターデコレーション設定画面の見通しの改善を支援します

Additional info (optional)

管理画面のスクリーンショット

一覧画面
localhost_3000_admin_avatar-decorations(iPad Air)

編集画面
localhost_3000_admin_avatar-decorations(iPad Air) (1)

プロフィール画面のスクリーンショット

localhost_3000_admin_avatar-decorations(iPad Air) (2)

Checklist

  • Read the contribution guide
  • Test working in a local environment
  • (If needed) Add story of storybook
  • (If needed) Update CHANGELOG.md
  • (If possible) Add tests

@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Dec 25, 2025
@github-actions github-actions bot added packages/frontend Client side specific issue/PR packages/backend Server side specific issue/PR packages/misskey-js labels Dec 25, 2025
@codecov
Copy link

codecov bot commented Dec 25, 2025

Codecov Report

❌ Patch coverage is 79.16667% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 63.56%. Comparing base (b5121dc) to head (1dd8157).

Files with missing lines Patch % Lines
...r/api/endpoints/admin/avatar-decorations/create.ts 71.42% 2 Missing ⚠️
...ver/api/endpoints/admin/avatar-decorations/list.ts 80.00% 1 Missing ⚠️
...r/api/endpoints/admin/avatar-decorations/update.ts 50.00% 1 Missing ⚠️
...src/server/api/endpoints/get-avatar-decorations.ts 80.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop   #17034      +/-   ##
===========================================
+ Coverage    63.53%   63.56%   +0.03%     
===========================================
  Files         1163     1163              
  Lines       116166   116190      +24     
  Branches      8388     8405      +17     
===========================================
+ Hits         73803    73854      +51     
+ Misses       40154    40127      -27     
  Partials      2209     2209              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@EbiseLutica EbiseLutica marked this pull request as draft December 25, 2025 11:19
@github-actions
Copy link
Contributor

github-actions bot commented Dec 25, 2025

Backend memory usage comparison

Before GC

Metric base (MB) head (MB) Diff (MB) Diff (%)
VmRSS 308.56 MB 315.10 MB +6.53 MB +2.11%
VmHWM 315.63 MB 315.10 MB -0.53 MB -0.16%
VmSize 23103.06 MB 23109.86 MB +6.79 MB +0.02%
VmData 1372.87 MB 1379.70 MB +6.83 MB +0.49%

After GC

Metric base (MB) head (MB) Diff (MB) Diff (%)
VmRSS 308.59 MB 315.10 MB +6.51 MB +2.11%
VmHWM 315.63 MB 315.10 MB -0.53 MB -0.16%
VmSize 23103.06 MB 23109.86 MB +6.79 MB +0.02%
VmData 1372.87 MB 1379.70 MB +6.83 MB +0.49%

After Request

Metric base (MB) head (MB) Diff (MB) Diff (%)
VmRSS 309.05 MB 315.51 MB +6.45 MB +2.08%
VmHWM 315.99 MB 315.51 MB -0.47 MB -0.15%
VmSize 23103.31 MB 23109.86 MB +6.54 MB +0.02%
VmData 1373.12 MB 1379.70 MB +6.58 MB +0.47%

See workflow logs for details

@github-actions
Copy link
Contributor

github-actions bot commented Dec 25, 2025

このPRによるapi.jsonの差分

差分はこちら
--- base
+++ head
@@ -3318,6 +3318,12 @@
                     "items": {
                       "type": "string"
                     }
+                  },
+                  "category": {
+                    "type": [
+                      "string",
+                      "null"
+                    ]
                   }
                 },
                 "required": [
@@ -3367,6 +3373,12 @@
                         "type": "string",
                         "format": "id"
                       }
+                    },
+                    "category": {
+                      "type": [
+                        "string",
+                        "null"
+                      ]
                     }
                   },
                   "required": [
@@ -3376,7 +3388,8 @@
                     "name",
                     "description",
                     "url",
-                    "roleIdsThatCanBeUsedThisDecoration"
+                    "roleIdsThatCanBeUsedThisDecoration",
+                    "category"
                   ]
                 }
               }
@@ -3735,6 +3748,12 @@
                           "type": "string",
                           "format": "id"
                         }
+                      },
+                      "category": {
+                        "type": [
+                          "string",
+                          "null"
+                        ]
                       }
                     },
                     "required": [
@@ -3903,6 +3922,12 @@
                     "items": {
                       "type": "string"
                     }
+                  },
+                  "category": {
+                    "type": [
+                      "string",
+                      "null"
+                    ]
                   }
                 },
                 "required": [
@@ -51264,6 +51289,12 @@
                           "type": "string",
                           "format": "id"
                         }
+                      },
+                      "category": {
+                        "type": [
+                          "string",
+                          "null"
+                        ]
                       }
                     },
                     "required": [

Get diff files from Workflow Page

@EbiseLutica EbiseLutica force-pushed the feature/avatar-decoration-category branch from 7b5389a to 844bf91 Compare December 25, 2025 11:24
@EbiseLutica EbiseLutica marked this pull request as ready for review December 25, 2025 11:25
@samunohito
Copy link
Member

(追加されたUIのキャプチャがあるとレビューがスムーズかもしれません)

@EbiseLutica
Copy link
Contributor Author

画面キャプチャを追加しておきました

Copy link
Contributor

@kakkokari-gtyih kakkokari-gtyih left a comment

Choose a reason for hiding this comment

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

group-avatar-decorations.ts が用意されているにも関わらず使われていないかもしれません

Copy link
Member

@samunohito samunohito left a comment

Choose a reason for hiding this comment

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

バックエンド側実装は問題ないと思います(フロントエンド側は任せた)。
ただ、1点だけ軽微な指摘があります。

@EbiseLutica EbiseLutica force-pushed the feature/avatar-decoration-category branch from a75c87c to 552dff7 Compare February 11, 2026 06:31
@EbiseLutica
Copy link
Contributor Author

@samunohito @kakkokari-gtyih 遅くなってすみません。ご指摘いただいた箇所の修正をいたしました

また、最新版をマージしたことで型エラーが生じたので、 7014326 でgroupAvatarDecorations関数をジェネリック化することで対処しています

@github-project-automation github-project-automation bot moved this from Todo to Approved in [実験中] 管理用 Feb 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packages/backend Server side specific issue/PR packages/frontend Client side specific issue/PR packages/misskey-js size:L This PR changes 100-499 lines, ignoring generated files.

Projects

Status: Approved

Development

Successfully merging this pull request may close these issues.

アバターデコレーションへのカテゴリの導入

3 participants