Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
213 commits
Select commit Hold shift + click to select a range
ab73b8a
[skip ci] Update CHANGELOG.md (prepend template)
github-actions[bot] Jun 22, 2026
6d89d47
fix(dev): tweak frontend-bundle-report
syuilo Jun 22, 2026
7a3e034
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jun 22, 2026
fff87f6
enhance(dev): tweak Frontend Chunk Report
syuilo Jun 22, 2026
5d8c31b
fix(dev): tweak frontend-bundle-report-comment
syuilo Jun 22, 2026
f5806a0
enhance(dev): tweak Frontend Chunk Report
syuilo Jun 22, 2026
d54b948
enhance(dev): tweak Frontend Chunk Report
syuilo Jun 22, 2026
6d11f57
enhance(dev): improve backend memory usage comparison workflow (#17591)
syuilo Jun 23, 2026
09b761e
enhance(dev): tweak report-backend-memory
syuilo Jun 23, 2026
72d91ce
refactor(dev): report-backend-memoryのmarkdown生成ロジックを分離
syuilo Jun 23, 2026
c899aaf
enhance(dev): tweak report-backend-memory
syuilo Jun 23, 2026
cb1d1d6
enhance(dev): tweak report-backend-memory
syuilo Jun 23, 2026
6e4380f
enhance(dev): tweak report-backend-memory
syuilo Jun 23, 2026
544c422
chore(dev): refactor
syuilo Jun 23, 2026
8186742
refactor(dev): unify frontend-bundle-visualizer-report.mjs and fronte…
syuilo Jun 23, 2026
4bacb1b
chore(dev): fix typo
syuilo Jun 23, 2026
05e00e4
refactor(dev): refactor frontend-js-size.mjs
syuilo Jun 23, 2026
2c814ec
chore(dev): tweak frontend-js-size.mjs
syuilo Jun 23, 2026
f703413
chore(dev): tweak frontend-js-size.mjs
syuilo Jun 23, 2026
f6cfe15
chore(dev): tweak frontend-js-size.mjs
syuilo Jun 23, 2026
e77184f
chore(ci): simplify FFmpeg installation in workflows (#17612)
samunohito Jun 24, 2026
3e1a090
fix(dev): tweak frontend-js-size.mjs
syuilo Jun 24, 2026
a27b155
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jun 24, 2026
e12f97b
enhance(dev): improve Frontend Bundle Report
syuilo Jun 24, 2026
1173550
chore(dev): refactor frontend bundle report
syuilo Jun 24, 2026
59ae380
enhance(dev): improve backend memory usage report (#17608)
syuilo Jun 24, 2026
69ae0c1
chore(dev): tweak frontend-js-size.mjs
syuilo Jun 24, 2026
bfad097
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jun 24, 2026
4a056bc
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
5ab352d
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
8dfa900
(test) enhance(dev): improve backend-memory-report
syuilo Jun 24, 2026
83319d1
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
351f878
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
7b2790e
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
fdc2f79
chore(dev): tweak backend-memory-report
syuilo Jun 24, 2026
d008103
chore(dev): tweak frontend-js-size
syuilo Jun 24, 2026
079ec86
chore(dev): tweak frontend-js-size
syuilo Jun 24, 2026
453f38b
chore(dev): tweak backend-memory-report
syuilo Jun 25, 2026
0904855
chore(dev): tweak backend-memory-report
syuilo Jun 25, 2026
2116213
chore(dev): tweak backend-memory-report
syuilo Jun 25, 2026
4d6ad90
chore(dev): tweak frontend-js-size
syuilo Jun 25, 2026
1f4978b
Update frontend-bundle-report.yml
syuilo Jun 25, 2026
e90ef7e
[ci skip] chore(dev): tweak frontend-js-size
syuilo Jun 25, 2026
1c4bcd9
refactor(dev): refactor of backend memory comparison workflow (#17619)
syuilo Jun 25, 2026
faecacc
fix(dev): follow up of 1c4bcd9b32414e826fecdeda89f769d9f383b9b6
syuilo Jun 25, 2026
8a479bd
fix(dev): follow up of 1c4bcd9b32414e826fecdeda89f769d9f383b9b6
syuilo Jun 25, 2026
9785962
fix(dev): follow up of 1c4bcd9b32414e826fecdeda89f769d9f383b9b6
syuilo Jun 25, 2026
aad6ce8
fix(dev): follow up of 1c4bcd9b32414e826fecdeda89f769d9f383b9b6
syuilo Jun 26, 2026
73dca04
chore(dev): refactor workflow js
syuilo Jun 26, 2026
93fd491
refactor(dev): extract heap snapshot logic
syuilo Jun 26, 2026
5cbdbd1
chore(dev): tweak backend-memory-report
syuilo Jun 26, 2026
08ca482
chore(dev): tweak some workflows
syuilo Jun 26, 2026
2747fd0
chore(dev): tweak some workflows
syuilo Jun 26, 2026
a1f995c
fix(dev): fix measure-memory
syuilo Jun 26, 2026
669889f
chore: センシティブ判定を外部サービス扱いにする (#17570)
samunohito Jun 26, 2026
61f734d
Bump version to 2026.6.1-alpha.0
github-actions[bot] Jun 26, 2026
038a2d0
refactor
syuilo Jun 26, 2026
9b32c6f
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jun 26, 2026
1068c64
feat: コントロールパネルから二要素認証を解除できるように (#17614)
kakkokari-gtyih Jun 26, 2026
8af2579
enhance(frontend): drop pref migration (#17379)
syuilo Jun 26, 2026
3cd772e
Merge branch 'master' into develop
syuilo Jun 26, 2026
a7503c2
chore(deps): update pnpm to v11.8.0 [security] (#17625)
renovate[bot] Jun 27, 2026
8fc3403
chore(dev): clean up unnecessary logs
syuilo Jun 27, 2026
a107cae
chore(dev): clean up unnecessary logs
syuilo Jun 27, 2026
d1cac26
fix(dev): fix typo of report-api-diff.yml
syuilo Jun 27, 2026
1faeb9b
refactor(dev): use actions/download-artifact
syuilo Jun 27, 2026
228beff
chore(dev): tweak backend-memory-report
syuilo Jun 27, 2026
dbbc5fc
chore(dev): clean up unnecessary step
syuilo Jun 27, 2026
e9715aa
enhance(dev): make heap snapshot downloadable
syuilo Jun 27, 2026
cec23e5
enhance(dev): improve heap snapshot analysis (#17628)
syuilo Jun 27, 2026
529c4d4
chore(dev): tweak heap snapshot table
syuilo Jun 27, 2026
554339a
deps: update dependencies (#17631)
kakkokari-gtyih Jun 27, 2026
42ff280
Bump version to 2026.6.1-alpha.1
github-actions[bot] Jun 27, 2026
797dec7
Update CHANGELOG.md
kakkokari-gtyih Jun 27, 2026
ba3fb4a
Merge branch 'master' into develop
kakkokari-gtyih Jun 27, 2026
4f993ce
enhance: Set default Node.js version to v26 (#17623)
kakkokari-gtyih Jun 27, 2026
ffe65ca
Update CHANGELOG.md
kakkokari-gtyih Jun 27, 2026
7544ebf
Update CHANGELOG.md
kakkokari-gtyih Jun 27, 2026
1220f05
Update CHANGELOG.md
kakkokari-gtyih Jun 27, 2026
6193c35
fix: stats API の型に reactionCount が定義されていない問題を修正 (#17634)
kakkokari-gtyih Jun 27, 2026
62f8589
Update CONTRIBUTING.md
syuilo Jun 28, 2026
4daa1ff
chore(deps): 未使用依存パッケージを削除 (#17641)
kakkokari-gtyih Jun 29, 2026
bf88122
chore(deps): update [github actions] update dependencies [ci skip] (#…
renovate[bot] Jun 30, 2026
7e29f04
fix(chat): don't send message while the IME is composing (#17646)
greymoth-jp Jul 1, 2026
174fb43
fix: frontend-embedで見つけた型エラーの修正 (#17650)
samunohito Jul 2, 2026
2d67380
fix(backend): 同名の新規ハッシュタグが複数同時に作成されたとき、DBで発生した競合を適切にハンドリング (#17640)
ihoronir Jul 2, 2026
1eedf04
fix(frontend): デバイスサイズをスマートフォンに固定している場合はページヘッダーのアイコンを常に表示するように (#17590)
kakkokari-gtyih Jul 2, 2026
96d6a09
fix(backend/test): e2e testの固定待ち時間をポーリングに変更 (#17654)
kakkokari-gtyih Jul 3, 2026
97e54a1
fix(frontend): APIキーを指定するいくつかのフォームでautocompleteが発動する問題を修正 (#17655)
kakkokari-gtyih Jul 3, 2026
721b1b0
fix(backend/test): backend e2e test の beforeAll でdispose前にschema drop…
kakkokari-gtyih Jul 3, 2026
c29a3d9
refactor(frontend): MkNote/MkNoteDetailedのロジックを統合 (#17636)
kakkokari-gtyih Jul 3, 2026
5432984
Bump version to 2026.7.0-alpha.0
github-actions[bot] Jul 3, 2026
9f61451
fix: tsconfig.jsonにskipLibCheck: trueを追加する (#17651)
samunohito Jul 3, 2026
eb2c7ff
fix(backend/test): follow-up of #17654 (waitForを他のe2eテストにも展開) (#17659)
kakkokari-gtyih Jul 4, 2026
0f056c4
refactor: Sentry呼び出し個所の抽象化 (#17661)
samunohito Jul 4, 2026
f59bf35
feat: 条件に一致したURLプレビューのサムネイルを隠すことができるように (#17635)
kakkokari-gtyih Jul 4, 2026
c423bf9
Update CHANGELOG.md
kakkokari-gtyih Jul 4, 2026
426f674
fix: frontend-builderのutils.tsが型エラーを起こしていたのを修正 (#17649)
samunohito Jul 4, 2026
00b2cb2
fix(backend/test): streaming.ts e2e の検証不備を修正 (#17663)
kakkokari-gtyih Jul 4, 2026
187610d
fix(frontend): correctly detect isMe in mention (#17664)
Johann150 Jul 4, 2026
97082ef
Update CHANGELOG.md [ci skip]
kakkokari-gtyih Jul 4, 2026
1858d56
fix(frontend): ワードミュートの判定が誤っている問題を修正 (#17668)
kakkokari-gtyih Jul 5, 2026
1d41cb3
perf(frontend): UNIX時計ウィジェットでrequestAnimationFrameを使用するように (#17665)
kakkokari-gtyih Jul 5, 2026
f066c1c
Bump version to 2026.7.0-alpha.1
github-actions[bot] Jul 5, 2026
3817f00
Revert "fix(dev): fix typo of report-api-diff.yml"
syuilo Jul 5, 2026
d4dd02c
feat: Sentryバックエンドの自動計装を個別で無効化出来る仕組みを追加する (#17673)
samunohito Jul 6, 2026
7243bd3
fix: Sentry 使用環境下にて、Misskey が発行した SQL クエリが span に含まれない問題を修正 (#17671)
samunohito Jul 6, 2026
c24ce9b
deps: update dependencies (#17669)
kakkokari-gtyih Jul 6, 2026
03d224a
Bump version to 2026.7.0-alpha.2
github-actions[bot] Jul 6, 2026
c15f93e
fix: Sentry 使用環境下にて、外部送信リクエストへ `sentry-trace` / `baggage` ヘッダが既定で付与され…
samunohito Jul 8, 2026
5590f8b
chore(backend): COOP/COEPヘッダーを送信するテスト用引数
syuilo Jul 8, 2026
b2867eb
fix(frontend): ディレクティブのイベントリスナーがマウント解除後も残る問題を修正 (#17683)
kakkokari-gtyih Jul 8, 2026
9440423
refactor(frontend): フロントエンドのfluent-emojisをemoji-assetsから取ってくるように (#17…
kakkokari-gtyih Jul 8, 2026
9472e72
enhance(frontend/test): frontend e2eをPlaywrightに移行 (#17682)
kakkokari-gtyih Jul 8, 2026
76ab562
fix: follow-up of #17682 [ci skip]
kakkokari-gtyih Jul 8, 2026
059fbaa
fix(frontend/test): follow-up of #17682 of 2 (#17685)
kakkokari-gtyih Jul 8, 2026
2335eb7
chore: pnpm dev時のプロセス管理をより綿密に行い、Windows環境でのプロセス残留を抑止 (#17690)
samunohito Jul 10, 2026
b4abbe4
fix: ensure color output for child processes in Windows environment (…
samunohito Jul 11, 2026
15c187f
enhance(frontend): misskey-native lightbox (#17687)
syuilo Jul 12, 2026
df5c491
enhance(backend): summalyの結果をキャッシュするように (#17367)
kakkokari-gtyih Jul 12, 2026
6ceda0f
Bump version to 2026.7.0-alpha.3
github-actions[bot] Jul 12, 2026
aab7903
fix(backend): summalyの結果のキャッシュが後続処理によって書き換わる問題を修正
kakkokari-gtyih Jul 12, 2026
f74b427
fix(backend): configテンプレートのallowedPrivateNetworksをリスト記法に変更してエラーの発生を抑制…
kakkokari-gtyih Jul 12, 2026
53c398c
fix(frontend): loadRawImages有効時、リモート画像をタップしてからビューワーが開くまでに初回のみラグが発生する問…
jj1guj Jul 13, 2026
ecd1d61
fix(frontend): 未ログイン時のトップページがスクロール不可だったのを修正 (#17681)
samunohito Jul 13, 2026
49e59a3
feat(backend): add OTLP trace export (#17679)
samunohito Jul 14, 2026
5a2acf7
fix(deps): update dependency @opentelemetry/core to v2.8.0 [security]…
renovate[bot] Jul 14, 2026
a98469d
feat: OTelのHTTPリクエスト自動計装を追加 (#17709)
samunohito Jul 14, 2026
3d4c62b
feat: BullMQのジョブ追加時に発動する手動計測の追加 (#17710)
samunohito Jul 14, 2026
91ea966
Bump version to 2026.7.0-alpha.4
github-actions[bot] Jul 14, 2026
ecd85e5
feat: OTelのHTTPサーバ自動計装を追加 (#17711)
samunohito Jul 14, 2026
4d7e62d
feat: Otel pgとredis自動計装 (#17712)
samunohito Jul 14, 2026
e3cb641
Update CHANGELOG.md
kakkokari-gtyih Jul 14, 2026
152e0fc
perf(frontend): タイムラインのリアルタイム更新のアニメーションでTransitionGroupを使用しないように (#17…
kakkokari-gtyih Jul 15, 2026
6679195
enhance: 新しいLoggerのコア実装 (#17714)
samunohito Jul 15, 2026
1110d33
Bump version to 2026.7.0-alpha.5
github-actions[bot] Jul 15, 2026
ed70123
Create .coderabbit.yaml
syuilo Jul 15, 2026
0849dc7
enhance: 構造化ログAPIと正規化 (#17719)
samunohito Jul 15, 2026
ce41181
Update .coderabbit.yaml
syuilo Jul 15, 2026
d74a7a5
docs: design generated chunk handling
syuilo Jul 15, 2026
9076a4e
docs: plan generated chunk reporting fix
syuilo Jul 15, 2026
b6996a2
chore: ignore local worktrees
syuilo Jul 15, 2026
945fd40
fix(dev): aggregate generated frontend chunks
syuilo Jul 15, 2026
afca066
fix(dev): clarify frontend chunk comparisons
syuilo Jul 15, 2026
11c6fb1
test(dev): capture expected frontend report failures
syuilo Jul 15, 2026
0ad7252
test(dev): check frontend bundle report
syuilo Jul 15, 2026
ef852e6
fix(dev): validate frontend startup manifest
syuilo Jul 15, 2026
fb483d8
Merge branch 'codex/frontend-bundle-generated-chunks' into develop
syuilo Jul 15, 2026
a7fd58e
docs: define small frontend chunk aggregation
syuilo Jul 15, 2026
1e4260c
feat: add Japanese language support and tone instructions (#17720)
samunohito Jul 15, 2026
2199f90
docs: plan small frontend chunk aggregation
syuilo Jul 16, 2026
1122631
fix(dev): group small frontend chunk deltas
syuilo Jul 16, 2026
8439080
Merge remote-tracking branch 'origin/develop' into develop
syuilo Jul 16, 2026
61b8332
Merge branch 'codex/frontend-bundle-small-deltas' into develop
syuilo Jul 16, 2026
0f32109
fix(dev): refine frontend chunk report layout
syuilo Jul 16, 2026
3c1f01a
feat(dev): frontend browser metrics report (#17630)
syuilo Jul 16, 2026
df063d9
enhance(dev): tweak get-backend-memory
syuilo Jul 16, 2026
22cdc24
add test
syuilo Jul 16, 2026
212fcaf
enhance(dev): tweak get-backend-memory
syuilo Jul 16, 2026
b5e470b
enhance(dev): tweak get-backend-memory
syuilo Jul 16, 2026
ac8e8c4
chore(dev): tweak get-backend-memory
syuilo Jul 16, 2026
828a24f
enhance: プロセス起動直後のログから新logger適用+logger設定機構の追加 (#17725)
samunohito Jul 16, 2026
8755540
feat(dev): report frontend browser diagnostics
syuilo Jul 16, 2026
93bbc89
chore(dev): tweak frontend browser diagnostics
syuilo Jul 16, 2026
12be1fe
[skip ci] chore(dev): tweak backend-memory-report
syuilo Jul 16, 2026
1a04d4c
refacotr(gh): rename some files
syuilo Jul 16, 2026
77c2f54
refacotr(gh): refactor
syuilo Jul 16, 2026
ab92f98
refacotr(gh): rename some files
syuilo Jul 16, 2026
64f98fa
refacotr(gh): refactor
syuilo Jul 16, 2026
fd83c9c
enhance(gh): tweak frontend-browser-diagnostics
syuilo Jul 16, 2026
153875e
[skip ci] refacotr(gh): add note
syuilo Jul 16, 2026
8aff44a
refactor(misskey-js): モデレーションログの型を手動で書かずにすむように (#17729)
kakkokari-gtyih Jul 16, 2026
2874a6d
refacotr(gh): refactor
syuilo Jul 16, 2026
203a6b3
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jul 16, 2026
68193dd
refacotr(gh): refactor
syuilo Jul 16, 2026
b028d4a
refacotr(gh): rename some files
syuilo Jul 16, 2026
ceb31f1
refacotr(gh): refactor
syuilo Jul 16, 2026
5d0ecf9
refacotr(gh): refactor
syuilo Jul 16, 2026
ab21fc7
refacotr(gh): refactor
syuilo Jul 16, 2026
0272ee7
refacotr(gh): refactor
syuilo Jul 16, 2026
88c6cd1
refactor(gh): unify heap snapshot output paths
syuilo Jul 16, 2026
3760e7a
chore(gh): fix workflow name
syuilo Jul 17, 2026
3de6b61
enhance: JSON形式の構造化ログ出力に対応 (#17728)
samunohito Jul 17, 2026
5a6b943
Bump version to 2026.7.0-alpha.6
github-actions[bot] Jul 17, 2026
b5f0e96
New Crowdin updates (#17717)
syuilo Jul 17, 2026
8691bab
fix(frontend): Update MkLightbox.item.vue
kakkokari-gtyih Jul 17, 2026
0be4d35
New Crowdin updates (#17732)
syuilo Jul 17, 2026
1812f7c
chore(gh): tweak workflow
syuilo Jul 17, 2026
71a50f3
chore(gh): tweak workflow
syuilo Jul 17, 2026
00a123d
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jul 17, 2026
227268f
chore(gh): tweak workflow
syuilo Jul 17, 2026
65bcca0
refactor(gh): tweak workflow
syuilo Jul 17, 2026
37b4a7a
refactor(gh): tweak workflow
syuilo Jul 17, 2026
b674da1
refactor(gh): tweak workflow
syuilo Jul 17, 2026
fca7859
refactor(gh): tweak workflow
syuilo Jul 17, 2026
bdf1547
refactor(frontend): メディアメニューのメニューボタンのスタイルを統一 (#17742)
kakkokari-gtyih Jul 18, 2026
95de10e
fix(backend): fix dev mode
kakkokari-gtyih Jul 19, 2026
9eca9b6
fix(frontend): MkLightboxを上下方向にスワイプして閉じることができないことがある問題を修正 (#17740)
kakkokari-gtyih Jul 20, 2026
3f28489
fix(backend): multipart apiの処理終了時に一時ディレクトリが消えない問題を修正 (#17750)
kakkokari-gtyih Jul 20, 2026
f7c070c
chore(gh): tweak workflow
syuilo Jul 20, 2026
95405e3
chore: oktetoやめる対応の消し漏れと関連ファイルの削除 (#17749)
samunohito Jul 20, 2026
d0de75d
deps: update dependencies (#17751)
kakkokari-gtyih Jul 20, 2026
1399416
fix(frontend): ローカルユーザーへのホスト付きメンションが本文に含まれる指名ノートの作成時、投稿フォームにて、当該ユーザーが…
Sayamame-beans Jul 20, 2026
3f11a28
chore(gh): fix workflow
syuilo Jul 20, 2026
cc2ed93
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Jul 20, 2026
8c28fd3
fix(frontend): use instant postform for createNoteFromTheFile/gallery…
Sayamame-beans Jul 20, 2026
23de803
Fix(backend): フォロワー限定投稿へのリプライをホーム投稿に出来る問題を修正 (#17747)
Sayamame-beans Jul 20, 2026
e06878b
fix: skip coderabbit review in certain condition
kakkokari-gtyih Jul 20, 2026
79340ae
Bump version to 2026.7.0-beta.0
github-actions[bot] Jul 20, 2026
36c442a
Bump version to 2026.7.0-beta.1
github-actions[bot] Jul 20, 2026
bbd57c7
enhance: OTel設定時、JSONログにtrace_id, span_id, trace_flagがつくように (#17748)
samunohito Jul 20, 2026
7157f37
Update CHANGELOG.md [ci skip]
kakkokari-gtyih Jul 20, 2026
ab36978
refactor(gh): CI用スクリプトをpackageとして整理 (#17727)
kakkokari-gtyih Jul 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .claude/THIRD_PARTY_LICENSES.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
|---|---|---|---|
| `skills/context-budget/SKILL.md` | `skills/context-budget/SKILL.md` | ECC | description を日本語化、Misskey 固有メモを追記 |
| `commands/harness-audit.md` | `commands/harness-audit.md` | ECC | scripts 依存の自動採点を、Claude が `pnpm`/`git`/`grep` で手動採点する版に書き換え。Misskey 固有の評価軸 (SPDX / endpoint-list / migration / locales) を組み込み |
| `commands/quality-gate.md` | `commands/quality-gate.md` | ECC | 言語自動判定を排除し Misskey 固定 pipeline (`pnpm` + tsgo + ESLint + Vitest) に。Prettier/Biome フェーズを削除 |
| `commands/quality-gate.md` | `commands/quality-gate.md` | ECC | 言語自動判定を排除し Misskey 固定 pipeline (`pnpm` + tsc + ESLint + Vitest) に。Prettier/Biome フェーズを削除 |

### MIT License (full text)

Expand Down
2 changes: 1 addition & 1 deletion .claude/commands/harness-audit.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Misskey リポジトリの `.claude/` 構成を 7 カテゴリで採点し、改
| 2 | Context Efficiency | frontmatter description の冗長度、SKILL.md の長さ分布、重複情報、CLAUDE.md の肥大化 |
| 3 | Quality Gates | Stop / PreToolUse / PostToolUse hook の整備、`/quality-gate` 等の完了前ゲートの有無、自動 lint/typecheck |
| 4 | Memory Persistence | `.claude/skills/*/SKILL.md` と `references/` の同期状態を評価。プロジェクト側 `.claude/memory/` は未採用方針 (auto-memory はユーザーホーム側で自動運用) のため、ここを採点起点にせず既定 5/10 から開始する |
| 5 | Eval Coverage | `working-on-backend` / `working-on-frontend` の testing リファレンス (backend-testing.md / frontend-testing.md) の網羅、Misskey 固有の e2e/fed/Storybook/Cypress 適用ガイド |
| 5 | Eval Coverage | `working-on-backend` / `working-on-frontend` の testing リファレンス (backend-testing.md / frontend-testing.md) の網羅、Misskey 固有の e2e/fed/Storybook/Playwright 適用ガイド |
| 6 | Security Guardrails | SPDX 規約適用、migration 不変性ルール、ja-JP.yml 限定編集ルール、secrets 検出 |
| 7 | Cost Efficiency | enabledPlugins の重複・過剰、context-budget の整備、MCP 過剰登録なし |

Expand Down
12 changes: 6 additions & 6 deletions .claude/commands/quality-gate.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@ upstream path: commands/quality-gate.md
upstream license: MIT — https://github.com/affaan-m/everything-claude-code/blob/main/LICENSE
project-level notice: see .claude/THIRD_PARTY_LICENSES.md (Misskey 内サードパーティ一覧 + MIT 全文)

Imported into Misskey .claude/ on 2026-05-10. Pipeline 概念 (lint → typecheck → test) は upstream ECC 版から借用 (MIT)。実コマンド層は Misskey の pnpm + tsgo + ESLint + Vitest に固定し、formatter (Prettier/Biome) フェーズは削除した。
Imported into Misskey .claude/ on 2026-05-10. Pipeline 概念 (lint → typecheck → test) は upstream ECC 版から借用 (MIT)。実コマンド層は Misskey の pnpm + tsc + ESLint + Vitest に固定し、formatter (Prettier/Biome) フェーズは削除した。

note: 元 ECC 版は言語自動判定 + format/lint/type のジェネリック版だったが、Misskey 専用に pnpm + tsgo + ESLint + Vitest の組み合わせに固定。重い test:e2e / test:fed は含まない (CI 側で実行される)。
note: 元 ECC 版は言語自動判定 + format/lint/type のジェネリック版だったが、Misskey 専用に pnpm + tsc + ESLint + Vitest の組み合わせに固定。重い test:e2e / test:fed は含まない (CI 側で実行される)。
-->

# /quality-gate — Misskey 軽量品質ゲート

`/quality-gate [scope]`

完了前の **軽量** 品質チェック。重い E2E / 連合テスト (test:e2e / test:fed / Cypress) は CI 側で実行されるため、本コマンドには含めない。
完了前の **軽量** 品質チェック。重い E2E / 連合テスト (test:e2e / test:fed / Playwright) は CI 側で実行されるため、本コマンドには含めない。

## Scope

Expand Down Expand Up @@ -50,7 +50,7 @@ pnpm --filter frontend test
lint がまとめて失敗していて typecheck の結果だけ単独で見たい場合は、以下を個別に回す。**通常は不要** (lint の出力を読めば足りる):

```bash
pnpm --filter backend typecheck # tsgo 単体
pnpm --filter backend typecheck # tsc 単体
pnpm --filter frontend typecheck # vue-tsc 単体 (Vue SFC の型を見るため)
```

Expand All @@ -63,7 +63,7 @@ pnpm --filter backend lint
pnpm --filter backend test
```

`tsgo` の出力を単独で見たい時のみ optional で `pnpm --filter backend typecheck` を別途回す。
`tsc` の出力を単独で見たい時のみ optional で `pnpm --filter backend typecheck` を別途回す。

### Frontend scope

Expand Down Expand Up @@ -120,4 +120,4 @@ Frontend ut: PASS (87/87)

- ジェネリックな言語自動判定を排除し、Misskey 固定 pipeline に。
- formatter フェーズなし (Misskey は ESLint --fix のみ採用)。
- e2e / federation / Cypress は重いため除外し CI 側に委譲。
- e2e / federation / Playwright は重いため除外し CI 側に委譲。
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ cp .github/misskey/test.yml .config/test.yml

補足:

- ルートの `pnpm start:test` (Cypress 用にテストサーバーを起動するコマンド) を使う経路では実行時に `ncp` で自動コピーされる ([package.json](../../../../../package.json))。それ以外で backend テストを直接走らせる時は上記の手動コピーが必要
- ルートの `pnpm start:test` (Playwright 用にテストサーバーを起動するコマンド) を使う経路では実行時に `ncp` で自動コピーされる ([package.json](../../../../../package.json))。それ以外で backend テストを直接走らせる時は上記の手動コピーが必要
- すでに `.config/test.yml` があれば各テストスクリプトの内部 `compile-config` で十分なので、追加で `pnpm --filter backend compile-config` を叩く必要はない
- `pnpm start:test` は backend e2e テスト (`pnpm --filter backend test:e2e`) の前提ではない (ポート競合の元になるため使わないこと)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Misskey の backend は NestJS 11 + Fastify 5 + TypeORM 1 (PostgreSQL) + Redis

- **DI コンテナ**: NestJS の `@Injectable()` サービス + Repository (TypeORM) パターン
- **DI トークン**: [`@/di-symbols.js`](../../../../../packages/backend/src/di-symbols.ts) の `DI` から `@Inject(DI.xxx)` で注入
- **ビルド**: `rolldown -c` で `built/` にバンドル。型チェックは `tsgo`
- **ビルド**: `rolldown -c` で `built/` にバンドル。型チェックは `tsc`

## エンドポイント内での DI

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ pnpm --filter backend test:e2e
```bash
# 個別ファイルを高速にチェック
pnpm exec eslint --fix packages/backend/src/server/api/endpoints/<category>/<name>.ts
pnpm --filter backend typecheck # tsgo --noEmit (backend のみ)
pnpm --filter backend typecheck # tsc --noEmit (backend のみ)

# 一括 (PR 提出前)
pnpm --filter backend lint
Expand Down
2 changes: 1 addition & 1 deletion .claude/skills/working-on-frontend/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ SKILL.md 本体は references への索引だけ。具体的な手順や規約
- SCSS Modules / `--MI_THEME-*` `--MI-*` CSS 変数 / グローバル utility class (`_button` 等) → [references/knowledge/scss-modules.md](references/knowledge/scss-modules.md)
- `os.alert` / `os.confirm` / `os.popup` 等 UI ヘルパー (ブラウザ標準 `alert()` 直呼びは禁止) → [references/knowledge/os-api.md](references/knowledge/os-api.md)
- `*.stories.impl.ts` 併設規則 + 複数 story / argTypes / layout / action パターン → [references/knowledge/storybook.md](references/knowledge/storybook.md)
- frontend Vitest / Cypress E2E の書き方と前提 → [references/knowledge/frontend-testing.md](references/knowledge/frontend-testing.md)
- frontend Vitest / Playwright E2E の書き方と前提 → [references/knowledge/frontend-testing.md](references/knowledge/frontend-testing.md)

## 必ず最後に通る場所

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Frontend テスト (Vitest / Cypress)
# Frontend テスト (Vitest / Playwright)

Misskey frontend のテスト構成。

Expand All @@ -13,11 +13,11 @@ pnpm --filter frontend test-and-coverage # カバレッジ付き

- 主な配置: `packages/frontend/test/*.test.ts` (例: `i18n.test.ts`, `theme.test.ts`, `is-birthday.test.ts`)
- ビルドツール周りなど対象コードと隣接させた方が分かりやすいテストは、コードと同じディレクトリに `*.test.ts` として置く (例: [packages/frontend/lib/rollup-plugin-unwind-css-module-class-name.test.ts](../../../../../packages/frontend/lib/rollup-plugin-unwind-css-module-class-name.test.ts))
- 共有コンポーネント (`MkX.vue`) のユニットテストは現状少なく、`*.spec.ts` / `__tests__/` 形式は採用していない (Storybook + Cypress でカバー)
- 共有コンポーネント (`MkX.vue`) のユニットテストは現状少なく、`*.spec.ts` / `__tests__/` 形式は採用していない (Storybook + Playwright でカバー)

## Cypress E2E
## Playwright E2E

Cypress は **起動済みのテストサーバー** に対して走るため、unit より前提が多い。[.github/workflows/test-frontend.yml](../../../../../.github/workflows/test-frontend.yml) の `e2e` ジョブと同じ手順をローカルで踏む:
Playwright は **起動済みのテストサーバー** に対して走るため、unit より前提が多い。[.github/workflows/test-frontend.yml](../../../../../.github/workflows/test-frontend.yml) の `e2e` ジョブと同じ手順をローカルで踏む:

```bash
# 1. テスト用 DB / Redis を起動 (テスト用ポート。開発用の compose.local-db.yml ではない)
Expand All @@ -29,15 +29,14 @@ cp .github/misskey/test.yml .config/test.yml
# 3. 全体ビルド
pnpm build

# 4. テストサーバー起動 + Cypress 実行 (いずれもルートから)
pnpm e2e # 内部で pnpm start:test を起動し http://localhost:61812 を待って Cypress run
pnpm cy:open # 対話的に開く (サーバーは別途 pnpm start:test で起動しておく)
# 4. テストサーバー起動 + Playwright 実行 (いずれもルートから)
pnpm e2e # 内部で pnpm start:test を起動し http://localhost:61812 を待って Playwright を実行
```

- 設定: ルート [cypress.config.ts](../../../../../cypress.config.ts)
- テスト本体は [cypress/](../../../../../cypress/) 配下
- 設定: ルート [packages/frontend/playwright.config.ts](../../../../../packages/frontend/playwright.config.ts) で、`packages/frontend/test/e2e/` 配下の `*.spec.ts` を対象にする
- テスト本体は [packages/frontend/test/e2e/](../../../../../packages/frontend/test/e2e/) 配下に配置する。

新規 frontend 機能の E2E は Cypress に書くのが基本。ただし対象は主要 UI フロー (login / post / drive etc) に限定し、細かい単位テストは Vitest または Storybook で代替する慣習。
新規 frontend 機能の E2E は Playwright に書くのが基本。ただし対象は主要 UI フロー (login / post / drive etc) に限定し、細かい単位テストは Vitest または Storybook で代替する慣習。

## Storybook (視覚確認 + Chromatic 視覚回帰)

Expand All @@ -55,6 +54,6 @@ pnpm --filter frontend build-storybook # 静的ビルド
frontend のテスト種別で DB / Redis の要否が違う:

- **Vitest (unit)** — DB 不要。ロジック / コンポーネント単体のテストで backend に繋がない (CI の `vitest` ジョブにも `services:` は無い)
- **Cypress (E2E)** — テストサーバー (`pnpm start:test`) 経由で backend に繋ぐため DB / Redis が必要。**テスト用ポートの [packages/backend/test/compose.yml](../../../../../packages/backend/test/compose.yml)** を使う (上記 Cypress E2E の手順を参照)
- **Playwright (E2E)** — テストサーバー (`pnpm start:test`) 経由で backend に繋ぐため DB / Redis が必要。**テスト用ポートの [packages/backend/test/compose.yml](../../../../../packages/backend/test/compose.yml)** を使う (上記 Playwright E2E の手順を参照)

開発用の `compose.local-db.yml` (db `5432` / redis `6379`) は **テストには使わない**。テスト用の `packages/backend/test/compose.yml` (`54312` / `56312`) とはポートが異なり、混同すると接続できない。
17 changes: 17 additions & 0 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
language: "ja-JP"
tone_instructions: "常に丁寧語(です・ます調)を用い、敬意のある表現で応答してください。人格や能力への評価、皮肉、威圧的・高圧的・命令的な表現は避けてください。指摘では問題点と影響を明確にし、理由を簡潔に説明したうえで、具体的な改善案を提案してください。不確実な事項は推測と明示し、確認を促してください。重大なバグやセキュリティ上の懸念は重要度と根拠を明確に伝えてください。"
reviews:
profile: "chill"
high_level_summary: false
poem: true
auto_review:
enabled: true
drafts: false
base_branches:
- "develop"
ignore_title_keywords:
- "New Crowdin updates"
ignore_usernames:
- "dependabot[bot]"
- "renovate[bot]"
- "github-actions[bot]"
15 changes: 12 additions & 3 deletions .config/docker_example.yml
Original file line number Diff line number Diff line change
Expand Up @@ -233,15 +233,24 @@ proxyBypassHosts:
# For security reasons, uploading attachments from the intranet is prohibited,
# but exceptions can be made from the following settings. Default value is "undefined".
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
#allowedPrivateNetworks: [
# '127.0.0.1/32'
#]
#allowedPrivateNetworks:
# - '127.0.0.1/32'

# Upload or download file size limits (bytes)
#maxFileSize: 262144000

# Log settings
# logging:
# # ログの出力形式。「json」で1行JSON、未指定時は「pretty」です。
# format: pretty
# # Minimum level for all loggers. Defaults to info in production and debug otherwise.
# level: info
# # The longest matching logger domain takes precedence over the global level.
# domains:
# core.boot: info
# queue: error
# queue.deliver: debug
# db.sql: off
# sql:
# # Outputs query parameters during SQL execution to the log.
# # default: false
Expand Down
95 changes: 92 additions & 3 deletions .config/example.yml
Original file line number Diff line number Diff line change
Expand Up @@ -303,8 +303,88 @@ id: 'aidx'

#sentryForBackend:
# enableNodeProfiling: true
# # Specify Sentry integration names to disable individual auto-instrumentation.
# # The names are integration .name values, not factory function names.
# # To check enabled names, set `options.debug: true` and see
# # "Integration installed: <name>" in the Sentry logs.
# #
# # As of 2026-07-07 / @sentry/node 10.62.0, useful names for Misskey include:
# # Postgres ... DB queries (when pg is externalized)
# # Redis ... ioredis commands
# # Fastify ... inbound HTTP routes
# # Http ... inbound/outbound HTTP; disabling this can also affect request isolation
# # NodeFetch ... fetch/undici requests
# disabledIntegrations: ['Postgres']
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# # By default, Misskey prevents Sentry trace headers (`sentry-trace` and
# # `baggage`) from being sent to remote ActivityPub/Webhook/etc. hosts.
# # To intentionally propagate distributed traces to trusted internal services,
# # list only those internal URL patterns here.
# # Avoid broad patterns that match remote servers unless you intentionally
# # want to restore Sentry's legacy behavior of propagating traces to all
# # outbound HTTP requests.
# #tracePropagationTargets: []
# # Internal allowlist example:
# #tracePropagationTargets:
# # - 'internal-service.example'

# ┌─────────┐
#───┘ Tracing └────────────────────────────────────────────────
# OpenTelemetry distributed tracing (Traces only, opt-in).
# Existing API and Queue spans are exported to an OTLP http/protobuf endpoint.
#
# Standard OTEL_* environment variables are honored for values omitted below:
# OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, OTEL_EXPORTER_OTLP_ENDPOINT,
# OTEL_EXPORTER_OTLP_HEADERS, OTEL_TRACES_SAMPLER, OTEL_TRACES_SAMPLER_ARG, etc.
#
# When this is enabled together with sentryForBackend, Misskey shares Sentry's
# TracerProvider and adds an OTLP SpanProcessor to it. In that mode:
# - sampleRate below is ignored; sampling follows sentryForBackend.options
# tracesSampleRate / tracesSampler.
# - resourceAttributes below is ignored; set OTEL_SERVICE_NAME and
# OTEL_RESOURCE_ATTRIBUTES in the environment if you need to override them.
# - spans produced by Sentry integrations are exported to both Sentry and OTLP.
# - sentry-trace / baggage propagation to outbound remote requests is disabled
# by default while OTel is enabled. Set propagateTraceToRemote: true only if
# you intentionally want Sentry trace propagation for your deployment.

#otelForBackend:
# endpoint: 'http://localhost:4318/v1/traces'
# #headers:
# # authorization: 'Bearer xxxxx'
# #sampleRate: 1.0
# # Record PostgreSQL query spans. Disabled by default to avoid instrumentation
# # overhead when database-level diagnostics are not needed.
# #capturePgSpans: false
# # Include raw SQL text in PostgreSQL spans. Requires capturePgSpans and is
# # disabled by default because non-parameterized queries can expose values to
# # the OTLP Collector.
# #capturePgStatement: false
# # Include PostgreSQL connection-pool spans with an existing parent span.
# # Requires capturePgSpans and is disabled by default to avoid noisy spans
# # from connection churn.
# #capturePgConnectionSpans: false
# # Record Redis command spans. Disabled by default because subscribing to the
# # ioredis diagnostics channel adds work to every Redis command, including
# # commands without a parent span. Enable for development diagnostics or when
# # the added overhead is acceptable in production.
# #captureRedisCommandSpans: false
# # Include Redis startup/reconnect spans. Disabled by default to avoid noisy
# # connection churn; these spans are recorded even without an HTTP or job
# # parent span.
# #captureRedisConnectionSpans: false
# # Record Redis commands without an HTTP or job parent span. Disabled by
# # default because queue polling and background work can produce many root
# # traces; only applies when captureRedisCommandSpans is enabled.
# #captureRedisRootSpans: false
# #resourceAttributes:
# # deployment.environment: 'production'
# #propagateTraceToRemote: false
# # Queue worker spans are independent traces linked to their enqueuer by default.
# # Set to 'parent' to make them child spans instead. This can create very large
# # traces for high-fan-out queues such as federation delivery.
# #jobTraceContextMode: 'link'

#sentryForFrontend:
# vueIntegration:
Expand Down Expand Up @@ -383,9 +463,8 @@ proxyBypassHosts:
# For security reasons, uploading attachments from the intranet is prohibited,
# but exceptions can be made from the following settings. Default value is "undefined".
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
#allowedPrivateNetworks: [
# '127.0.0.1/32'
#]
#allowedPrivateNetworks:
# - '127.0.0.1/32'

# Upload or download file size limits (bytes)
#maxFileSize: 262144000
Expand All @@ -395,6 +474,16 @@ proxyBypassHosts:

# Log settings
# logging:
# # ログの出力形式。「json」で1行JSON、未指定時は「pretty」です。
# format: pretty
# # Minimum level for all loggers. Defaults to info in production and debug otherwise.
# level: info
# # The longest matching logger domain takes precedence over the global level.
# domains:
# core.boot: info
# queue: error
# queue.deliver: debug
# db.sql: off
# sql:
# # Outputs query parameters during SQL execution to the log.
# # default: false
Expand Down
Loading
Loading