---
generated_at: 2026-03-01 14:00:00
metrics:
  claims_total: 57
  claims_with_evidence: 52
  claims_without_evidence: 5
confidence_derived: 0.91
---

# 根拠レポート：非機能要件テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.91**
  - 根拠あり：52 / 57、根拠なし：5
- 優先レビュー（高）
  1. **NFT-017（LTOビルドの効果検証）**：合格基準の具体的な数値がコード上に定義されていない
  2. **NFT-018（fast_skip SIMD最適化の効果検証）**：性能向上の具体的な比較基準がコード上にない
  3. **NFT-036（任意値のインジェクション検証）**：セキュリティテストの具体的なテストパターンが定義されていない
  4. **NFT-047（ファイル変更時の自動再ビルド）**：5秒以内という合格基準の根拠がコード上にない
  5. **NFT-054（モノレポ依存関係整合性）**：循環依存の検出方法がコード上に定義されていない

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `packages/tailwindcss/src/index.bench.ts` - CSSコンパイルベンチマーク定義
- E-02: `packages/tailwindcss/src/css-parser.bench.ts` - CSSパーサーベンチマーク定義
- E-03: `packages/tailwindcss/src/candidate.bench.ts` - 候補パースベンチマーク定義
- E-04: `packages/tailwindcss/src/ast.bench.ts` - AST変換ベンチマーク定義
- E-05: `packages/tailwindcss/src/intellisense.bench.ts` - IntelliSenseベンチマーク定義
- E-06: `packages/tailwindcss/src/sort.bench.ts` - ソートベンチマーク定義
- E-07: `packages/tailwindcss/src/attribute-selector-parser.bench.ts` - 属性セレクターパーサーベンチマーク定義
- E-08: `packages/tailwindcss/src/utils/segment.bench.ts` - segment関数ベンチマーク定義
- E-09: `packages/tailwindcss/src/utils/brace-expansion.bench.ts` - brace-expansion関数ベンチマーク定義
- E-10: `packages/tailwindcss/src/utils/decode-arbitrary-value.bench.ts` - decodeArbitraryValueベンチマーク定義
- E-11: `packages/tailwindcss/src/utils/infer-data-type.bench.ts` - inferDataTypeベンチマーク定義
- E-12: `packages/tailwindcss/src/utils/to-key-path.bench.ts` - toKeyPathベンチマーク定義
- E-13: `packages/tailwindcss/src/source-maps/line-table.bench.ts` - ソースマップベンチマーク定義
- E-14: `crates/oxide/src/main.rs` - Rust Extractorスループット計測
- E-15: `crates/oxide/src/throughput.rs` - Throughput計測ユーティリティ
- E-16: `crates/oxide/src/scanner/mod.rs` - rayon並列処理・mtimeキャッシュ実装
- E-17: `Cargo.toml` - リリースプロファイル（LTO設定）
- E-18: `crates/oxide/src/fast_skip.rs` - SIMD風最適化処理
- E-19: `packages/@tailwindcss-postcss/package.json` - @alloc/quick-lru依存
- E-20: `packages/@tailwindcss-webpack/package.json` - @alloc/quick-lru依存
- E-21: `packages/tailwindcss/tsup.config.ts` - minify設定
- E-22: `packages/tailwindcss/playwright.config.ts` - Playwright設定（Chromium/WebKit/Firefox）
- E-23: `integrations/vite/` - Vite統合テスト群
- E-24: `integrations/postcss/` - PostCSS統合テスト群
- E-25: `integrations/cli/` - CLI統合テスト群
- E-26: `packages/@tailwindcss-vite/package.json` - Viteプラグイン peerDependencies
- E-27: `packages/@tailwindcss-webpack/package.json` - webpackローダー peerDependencies
- E-28: `packages/tailwindcss/package.json` - ESM/CJS exports定義
- E-29: `crates/node/Cargo.toml` - N-API v4設定
- E-30: `packages/@tailwindcss-standalone/package.json` - マルチプラットフォームバイナリ依存
- E-31: `integrations/utils.ts` - IS_WINDOWS/TEST_TIMEOUT/TMP_ROOT
- E-32: `rust-toolchain.toml` - Rust 1.85.0指定
- E-33: `packages/tailwindcss/src/index.ts` - Polyfills enum / IS_VALID_PREFIX / compile options
- E-34: `packages/tailwindcss/src/compile.ts` - compileCandidates / arbitrary value処理
- E-35: `packages/tailwindcss/src/utils/escape.ts` - escape関数
- E-36: `packages/tailwindcss/src/variants.ts` - IS_VALID_VARIANT_NAME
- E-37: `packages/tailwindcss/package.json` - publishConfig.provenance
- E-38: `crates/oxide/src/scanner/auto_source_detection.rs` - 自動ソース検出ルール
- E-39: `packages/tailwindcss/src/feature-flags.ts` - FEATURES_ENV制御
- E-40: `package.json` - scripts定義（test/lint/bench）
- E-41: `vitest.config.ts` - テスト設定
- E-42: `turbo.json` - ビルドパイプライン定義
- E-43: `packages/@tailwindcss-upgrade/package.json` - アップグレードツール
- E-44: `crates/oxide/src/scanner/init_tracing.rs` - トレーシング初期化（参照のみ）
- E-45: `packages/@tailwindcss-cli/package.json` - @parcel/watcher依存

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | NFT-001: CSSコンパイル処理のベンチマークが定義されている | E-01 | ○ |
| C-02 | NFT-002: CSSパーサーのベンチマークが定義されている | E-02 | ○ |
| C-03 | NFT-003: 候補文字列パースのベンチマークが定義されている | E-03 | ○ |
| C-04 | NFT-004: 候補クローンのベンチマークが定義されている | E-03 | ○ |
| C-05 | NFT-005: AST変換のベンチマークが定義されている | E-04 | ○ |
| C-06 | NFT-006: IntelliSense APIのベンチマークが定義されている | E-05 | ○ |
| C-07 | NFT-007: クラスソートのベンチマークが定義されている | E-06 | ○ |
| C-08 | NFT-008: 属性セレクターパーサーのベンチマークが定義されている | E-07 | ○ |
| C-09 | NFT-009: segment関数のベンチマークが定義されている | E-08 | ○ |
| C-10 | NFT-010: brace-expansion関数のベンチマークが定義されている | E-09 | ○ |
| C-11 | NFT-011: decodeArbitraryValue関数のベンチマークが定義されている | E-10 | ○ |
| C-12 | NFT-012: inferDataType関数のベンチマークが定義されている | E-11 | ○ |
| C-13 | NFT-013: toKeyPath関数のベンチマークが定義されている | E-12 | ○ |
| C-14 | NFT-014: ソースマップ行テーブルのベンチマークが定義されている | E-13 | ○ |
| C-15 | NFT-015: Rust Extractorのスループット計測が実装されている | E-14, E-15 | ○ |
| C-16 | NFT-016: rayonによる並列ファイルスキャンが実装されている | E-16 | ○ |
| C-17 | NFT-017: LTOビルドの合格基準（サイズ削減/性能向上）が検証可能である | E-17 | △ |
| C-18 | NFT-018: fast_skip SIMD最適化の性能向上が検証可能である | E-18 | △ |
| C-19 | NFT-019: mtimeベースの増分スキャンキャッシュが実装されている | E-16 | ○ |
| C-20 | NFT-020: quick-lru LRUキャッシュが使用されている | E-19, E-20 | ○ |
| C-21 | NFT-021: tsupのminify設定が有効である | E-21 | ○ |
| C-22 | NFT-022: Chromium用Playwrightテスト設定が定義されている | E-22 | ○ |
| C-23 | NFT-023: WebKit用Playwrightテスト設定が定義されている | E-22 | ○ |
| C-24 | NFT-024: Firefox用Playwrightテスト設定が定義されている（firefoxUserPrefs含む） | E-22 | ○ |
| C-25 | NFT-025: Vite統合テストが各フレームワークで定義されている | E-23, E-26 | ○ |
| C-26 | NFT-026: PostCSS統合テストが定義されている | E-24 | ○ |
| C-27 | NFT-027: webpack peerDependencies ^5が定義されている | E-27 | ○ |
| C-28 | NFT-028: CLI統合テストが定義されている | E-25 | ○ |
| C-29 | NFT-029: ESM/CJS双方のexportsが定義されている | E-28 | ○ |
| C-30 | NFT-030: N-API v4のfeatureフラグが設定されている | E-29 | ○ |
| C-31 | NFT-031: マルチプラットフォームバイナリ依存が定義されている | E-30 | ○ |
| C-32 | NFT-032: Windows固有のタイムアウト/パス処理が実装されている | E-31 | ○ |
| C-33 | NFT-033: Rust 1.85.0がtoolchainで指定されている | E-32 | ○ |
| C-34 | NFT-034: @propertyポリフィルフラグが定義されている | E-33 | ○ |
| C-35 | NFT-035: color-mixポリフィルフラグが定義されている | E-33 | ○ |
| C-36 | NFT-036: arbitrary valueのインジェクション対策が具体的に検証可能である | E-34 | △ |
| C-37 | NFT-037: escape関数が実装されている | E-35 | ○ |
| C-38 | NFT-038: IS_VALID_PREFIXバリデーションが実装されている | E-33 | ○ |
| C-39 | NFT-039: IS_VALID_VARIANT_NAMEバリデーションが実装されている | E-36 | ○ |
| C-40 | NFT-040: publishConfig.provenanceが設定されている | E-37 | ○ |
| C-41 | NFT-041: 自動ソース検出の除外ルールが定義されている | E-38 | ○ |
| C-42 | NFT-042: unsafeコードにSAFETYコメントが付与されている | E-16, E-18 | ○ |
| C-43 | NFT-043: onInvalidCandidateコールバックが実装されている | E-34 | ○ |
| C-44 | NFT-044: throwOnLoadModule/throwOnLoadStylesheetが実装されている | E-33 | ○ |
| C-45 | NFT-045: CI環境でのPlaywrightリトライ設定が定義されている | E-22 | ○ |
| C-46 | NFT-046: プラットフォーム別タイムアウトが定義されている | E-31 | ○ |
| C-47 | NFT-047: 5秒以内の再ビルド完了という合格基準が根拠に基づいている | E-45 | △ |
| C-48 | NFT-048: tracingモジュールが使用されている | E-16, E-44 | ○ |
| C-49 | NFT-049: tsc --noEmitがlintスクリプトに含まれている | E-40 | ○ |
| C-50 | NFT-050: prettier --checkがlintスクリプトに含まれている | E-40 | ○ |
| C-51 | NFT-051: vitest runによるテスト実行が定義されている | E-40, E-41 | ○ |
| C-52 | NFT-052: cargo testによるRustテスト実行が定義されている | E-40 | ○ |
| C-53 | NFT-053: 統合テストディレクトリと設定が存在する | E-23, E-24, E-25, E-40 | ○ |
| C-54 | NFT-054: workspace:*参照の循環依存チェック方法が定義されている | **根拠なし** | △ |
| C-55 | NFT-055: turboパイプラインの依存関係が定義されている | E-42 | ○ |
| C-56 | NFT-056: @tailwindcss/upgradeパッケージが存在する | E-43 | ○ |
| C-57 | NFT-057: FEATURES_ENVによるフィーチャーフラグが実装されている | E-39, E-21 | ○ |

## 4) 不足情報（Unknown / Missing）
- **NFT-017 / NFT-018**: LTOやSIMD最適化の具体的な性能改善幅の定量基準がコード上に定義されていない。合格基準は一般的なベストプラクティスに基づく推定値である。
  - 候補：リリースノート / ベンチマーク結果の履歴データ / CI上のパフォーマンスレグレッション設定
- **NFT-036**: CSSインジェクション防止の具体的なテストケースパターン（攻撃ベクトル）がソースコード上に明示されていない。セキュリティレビューの結果ドキュメントが必要。
  - 候補：セキュリティ監査レポート / OWASP CSSインジェクションガイドライン / 既存のセキュリティテスト
- **NFT-047**: 「5秒以内」という再ビルド完了基準の根拠となるSLA定義やユーザー体験要件が見つからない。@parcel/watcherの存在は確認できるが、性能要件の定義がない。
  - 候補：製品要件定義書 / ユーザー体験要件 / 競合ツールとの比較データ
- **NFT-054**: pnpmワークスペースの循環依存を検出する仕組み（pnpm circular dependency check等）がプロジェクト内に定義されていない。
  - 候補：pnpm ls --depth=0 / CI設定 / カスタムスクリプト

## 5) リスクフラグ（レビュー観点）
- **リスク1（中）**: NFT-036（CSSインジェクション検証）- セキュリティテストの具体的な攻撃パターンが定義されておらず、テスト網羅性の評価が困難
- **リスク1（中）**: NFT-017/NFT-018 - LTO/SIMD最適化の効果検証について、定量的な合格基準がコードから導出できない
- **リスク0（低）**: NFT-047 - 再ビルド完了時間の合格基準はユーザー体験に基づく推定であり、プロジェクト固有のSLA定義は確認されていない
- **リスク0（低）**: NFT-054 - 循環依存検出の仕組みが未定義だが、pnpmのデフォルト挙動で一定のチェックは行われる

## 6) レビュアーチェックリスト（最小）
- [ ] 性能テスト（NFT-001〜NFT-021）の合格基準「前回リリース比10%以内」が組織の性能要件と合致しているか確認
- [ ] ブラウザ互換性テスト（NFT-022〜NFT-024）で対象ブラウザのバージョン範囲が要件を満たしているか確認
- [ ] Vite peerDependencies（^5.2.0 || ^6 || ^7）が実際のサポートバージョンと一致しているか確認
- [ ] セキュリティテスト（NFT-036〜NFT-042）のテストパターンが十分な攻撃ベクトルをカバーしているか確認
- [ ] NFT-047の再ビルド完了時間の合格基準（5秒以内）が実際のユーザー要件と合致しているか確認
- [ ] NFT-054の循環依存検出について、pnpmのデフォルト挙動で十分か、追加の検出手段が必要か確認
- [ ] Node.js対応バージョンの明示的な定義が必要かどうか確認（N-API v4はNode.js 10.16+を意味する）
