Skip to content

refactor: Biomeのlintルールを厳格化する #28

Closed

Description

@s-yoshiki

背景

Biomeの既定のrecommendedプリセットでは、フォーマットと基本的なlint違反は検出できるが、コードの一貫性・保守性・ブラウザ互換性に関わるルールの多くは既定で有効にならない。Biome利用リポジトリ全体で、汎用ルールをより厳格に適用する。

参照方針は ex-foundry.comのADR 0020 とする。

現状

"biome.json"(preset: "recommended"。a11y / correctness / security / suspicious の一部を個別に無効化)

対応方針

  • 汎用linterルールは preset: "all"(またはBiomeの現行仕様における同等設定)を基本とする
  • 実際に利用しているReact、Next.js、テスト、Tailwind CSSなどのdomainだけを all で有効化する
  • 利用していないframework domainは none で明示的に無効化する
  • project domainはworkspaceのpackage exportや生成物の解決精度を確認したうえで段階的に判断する
  • 既存のoverride・個別無効化は理由を確認し、必要なものだけに限定する
  • 既存コードの違反修正はルール単位で分割し、レビュー可能な変更範囲にする

作業項目

  • Biome設定を厳格化し、汎用ルールと利用中domainの適用範囲を明確にする
  • 厳格化後の診断をルール単位で棚卸しする
  • 既存コードの違反を、理由を残しながら修正する
  • 既存のoverride・ignoreを棚卸しし、不要な緩和を削除する
  • CIの品質ゲートで新しい違反を検出できることを確認する
  • 必要に応じてADR・開発ガイド・検証コマンドを更新する

完了条件

  • 汎用ルールが厳格化され、利用中domainと未使用domainの扱いが設定上明確になっている
  • 既存コードの違反がルール単位で追跡・修正されている
  • pnpm run check、pnpm run build が成功する
  • 無関係なフォーマット変更や、理由のない一括ignore追加を含めない

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions