Factory Metrics — 実測

実測データ

このページの数値はすべて実測です(デモデータではありません)。 Nuwel の制作環境(検証パイプラインを同梱した「工場」)が機械集計した運用実績を、 採取日つきでそのまま掲載します。数値は採取時点のスナップショットで、更新時に差し替えます。 検証証跡レポートの表示例が「何を検査するか」を示すのに対し、 このページは「その検査が実際にどれだけ動いているか」を示します。

採取日
2026-07-17
集計元
リポジトリ内の機械集計ツール
対象期間
直近 7 日(一部は累計)
方針
実測のみ・盛らない
ゲート実行 / 7日
3,364
バイパス
5 件(全件理由つき記録)
検出力テスト
15/15(100%)
署名済みゲート定義
27 ファイル(v38)

01ゲートは実際に止まっている

保存・コミット・push・デプロイの各段で、機械ゲートが成果物を検査します。 直近 7 日間の実行 3,364 件のうち、実際に「止めた」回数が多かったゲートは次のとおりです。 止まった記録・バイパスした記録がすべて残ること——「都合の悪い結果を消せない」ことが、この仕組みの価値です。

ゲート実行停止(fail)無断バイパス
統合検査(secret・構文・参照切れ ほか)60150
自己テスト(検証ツール自身のテスト)212120
push 時 secret スキャン21480

バイパス 5 件は全件が理由つきでログに記録されています(見えないバイパスは「穴」、見えるバイパスは「プロセス」です)。

02検証の検証 — 検査自体を検査する

「チェックが通っているのに何も検査していない」状態(空回りの緑)が、AI 実装の最悪の失敗モードです。 これを防ぐため、既知の欠陥 15 種類をわざと注入し、ゲートが 15/15 で捕まえることを CI が常時確認しています。 捕捉率が下がる変更はマージできません。

項目実測値
注入欠陥の捕捉率15/15(100%)
注入欠陥の拡張履歴13 種 → 14 種 → 15 種(実案件で見逃しが出るたび、その見逃しを注入欠陥に昇格)

15/15 はトロフィーではありません。「既知の欠陥に対して 100%」であって「100% 完全」ではない—— この数字は、盲点が見つかるたびに分母ごと増えていきます。

03ゲート自身の改竄防止

ゲートは攻撃対象にもなります——AI は赤いゲートを「直す」代わりに骨抜きにできてしまう。 そこでゲート定義 27 ファイルのハッシュを人間の署名つきタグ(現在 v38)に刻み、 署名のないゲート変更はマージ自体ができない構成にしています。AI は提案し、人間の鍵だけが承認します。

項目状態
署名対象のゲート定義27 ファイル(merkle ルートを署名タグに刻印・現在 v38)
未署名のゲート変更マージ不能(CI の必須チェック)
CI の供給網GitHub Actions 全アクション SHA 固定+未固定は組織ポリシーで拒否・CI シークレットゼロ・読み取り専用トークン

04捨てたゲートの記録(negative results)

役に立たなかった検査も、消さずに記録しています。常に赤のゲートは、常に緑のゲートと同じだけ無価値だからです。

導入を見送った検査理由(実測)
依存関係の脆弱性レビュー(dependency-review)プライベートリポジトリでは前提サービスが必須で常時赤になることを、無害な PR と脆弱な PR の両方で実測して確認。「検出できたように見えた」最初の結論を自分で棄却
npm パッケージ署名検証(audit signatures)旧署名鍵の失効により、改竄ゼロでも 2025 年以前のパッケージが恒常的に検証失敗。運用不能と判断

05実案件での稼働

この仕組みは実案件で動いています。直近の実案件 LP(9 セクション)は、全コミットがゲートを通過して出荷されました。 制作中、検証ハーネスは実装の不一致を検出して実際にコミットを止めています—— 「止まる」ことが実証済みであることが、「通った」ことの意味を保証します。 (クライアント名は公開しません)

06正直な限界

機械照合がすべてを保証するわけではありません。座標・数値ベースの自動照合は、 要素の種類・並び順・存在の有無といった「意味」の差分を取りこぼすことがあります。 そのため機械ゲートに加えて、人手の目視チェックリストと、実装とは独立した敵対的レビュー (「壊すつもり」で監査する第三者 AI・複数系統)を重ねています。 このページの数値も「機械が保証する範囲」と「人が補う範囲」を分けて読んでください。

再掲: 本ページの数値は 2026-07-17 採取の実測値です。 集計はリポジトリ内のツールが機械的に行い、手作業の加工はしていません。 数値は運用にともなって変わるため、更新時にページごと差し替えます。