5.2 KiB
description, argument-hint
| description | argument-hint |
|---|---|
| Misskey の lint / typecheck / 高速テストを順に実行して品質ゲートを通すコマンド。完了前の軽量検証用。 | [repo|backend|frontend|<path/to/file.ts>] |
/quality-gate — Misskey 軽量品質ゲート
/quality-gate [scope]
完了前の 軽量 品質チェック。重い E2E / 連合テスト (test:e2e / test:fed / Cypress) は CI 側で実行されるため、本コマンドには含めない。
Scope
repo(default) — 全パッケージbackend—packages/backendのみfrontend—packages/frontendのみpath/to/file.ts— 単一ファイルへの ESLint --fix のみ
Pipeline
Repo scope (全部)
各パッケージの lint スクリプト実体は pnpm typecheck && pnpm eslint (packages/backend/package.json, packages/frontend/package.json) で、ルートの pnpm lint は pnpm --no-bail -r lint (= 全パッケージで lint を --no-bail で実行)。typecheck は lint に含まれているため、通常はこの 2 コマンドで十分:
# 1. Lint (= typecheck + ESLint、全パッケージ。--no-bail で最初の失敗で止まらず全結果を集める)
pnpm lint
# 2. Unit test (高速、e2e は含まない)
pnpm --filter backend test
pnpm --filter frontend test
詳細を分けて見たい時のみ (optional)
lint がまとめて失敗していて typecheck の結果だけ単独で見たい場合は、以下を個別に回す。通常は不要 (lint の出力を読めば足りる):
pnpm --filter backend typecheck # tsgo 単体
pnpm --filter frontend typecheck # vue-tsc 単体 (Vue SFC の型を見るため)
Backend scope
pnpm --filter backend lint は内部で pnpm typecheck && pnpm eslint を実行する (packages/backend/package.json) ので、lint を回せば typecheck も終わる。軽量ゲートでは typecheck の二重実行を避けるため lint + test のみ:
pnpm --filter backend lint
pnpm --filter backend test
tsgo の出力を単独で見たい時のみ optional で pnpm --filter backend typecheck を別途回す。
Frontend scope
pnpm --filter frontend lint も内部で pnpm typecheck && pnpm eslint を実行する (packages/frontend/package.json) ため、軽量ゲートでは Backend 同様に lint + test のみ:
pnpm --filter frontend lint
pnpm --filter frontend test
vue-tsc の出力を単独で見たい時のみ optional で pnpm --filter frontend typecheck を別途回す。
Single file scope
pnpm exec eslint --fix <path>
Output
実行したフェーズの pass/fail と件数を集計する。標準パイプラインは pnpm lint (typecheck 内包) と unit test のみなので、デフォルトの出力は以下のようになる:
Quality Gate (repo):
Lint: PASS (0 errors, 2 warnings)
Backend ut: PASS (412/412)
Frontend ut: PASS (87/87)
→ 完了前の軽量チェック OK。重い e2e / 連合テストは CI 側で実行される。
#### 詳細を分けて見たい時のみ (optional) で個別 typecheck (pnpm --filter backend typecheck / pnpm --filter frontend typecheck) も回した場合のみ、その結果を追加行として表示する:
Quality Gate (repo):
Lint: PASS (0 errors, 2 warnings)
Backend tc: PASS (0 errors) # optional 実行時のみ
Frontend tc: PASS (0 errors) # optional 実行時のみ
Backend ut: PASS (412/412)
Frontend ut: PASS (87/87)
失敗時は最初に落ちたフェーズで停止して詳細を見せる。
関連 skill / コマンド
/check-misskey-jsコマンド — API 変更時の misskey-js 再生成- AGENTS.md §必須コマンド — pnpm コマンド一覧の正典
元 ECC 版との差分
- ジェネリックな言語自動判定を排除し、Misskey 固定 pipeline に。
- formatter フェーズなし (Misskey は ESLint --fix のみ採用)。
- e2e / federation / Cypress は重いため除外し CI 側に委譲。