Skip to content
Apothem
コンフォーミティゲート

インデックス

Apothem コンフォーマンスゲート——すべての出力成果物が通過しなければならない十五項目の事前発行ゲート(M1-M15)の機械的部分。

十五項目

項目IDマンデートチェック種別失敗 → 行動
1M1ホストプロジェクト非依存推論型ホストの慣習に合わせて修正する
2M2編集規律(開示登録簿)機械型開示マーカーを追加する
3M3十の品質次元推論型失敗した次元で修正する
4M4自己適用(署名済みゲート記録が存在)機械型署名済み記録ブロックを記録する
5M5権威原則(捏造されたアイデンティティ/エンドポイント/シークレットなし)機械型照会へ回す
6M6専門知識の取り込み(浮上したギャップ)推論型ギャップを浮上させ、改良を引用する
7M7選択肢注釈(推奨マーカー+根拠の理由)機械型選択肢セットに注釈を付ける
8M8確定性(規定的な散文に曖昧化なし)機械型曖昧化を条件分岐へ昇格する
9M9視覚的レバレッジ(構造的な主題は図を担う)推論型図を作成/更新する
10M10双方向バインディング(相互的な後方ポインターが閉じている)機械型ハーフエッジを閉じる
11M11アジャイルスプリント(目標/バックログ/DoR/DoD/レビュー/レトロスペクティブ)推論型スプリントとして再構成する
12M12フェーズ報告と正規レイアウト機械型集約を作成し、正規レイアウトへ移動する
13M13コード技巧(リンター/フォーマッター/型チェック;マジックナンバー;bare-except)機械型言語ごとのコード技巧ルールに従って修正する
14M14体系性(上流/下流/同位/強制者を宣言する)推論型宣言し、登録簿でインデックス化する
15M15本番対応(テスト+ドキュメント+CHANGELOG+準拠コミット+CI グリーン+semver 安定性)機械型欠けている面を追加する

重大度の階梯

重大度ゲートへの影響
クリティカルゲート FAIL——無条件に発行をブロック
重要重要項目が 2 つ以上同時に失敗したときゲート FAIL
助言的ゲート WARN——署名済み記録に記録される;発行をブロックしない

機械的部分のマッチャーのほとんどは既定で重要です。M5(権威——シークレット、捏造されたエンドポイント)と M12(孤児出力)はクリティカルです。

%% provenance: hand-authored %%
%% verified: 2026-07-06 %%
%% cross-reference: the Severity ladder table above; src/apothem/conformity/gate.py (severity aggregation) %%
flowchart TD
    accTitle: Conformity-gate severity-to-verdict decision flow
    accDescr: A finding's severity determines the gate verdict. A Critical finding — M5 authority or M12 orphan output — fails the gate and blocks emission unconditionally. Important findings block only when two or more fail simultaneously; a single Important finding does not block. Advisory findings are logged in the signed record and never block emission.
    F["Finding raised<br/>by a matcher"] --> S{"Severity?"}
    S -->|Critical| C["Critical<br/>M5 authority · M12 orphan output"]
    S -->|Important| I["Important<br/>most mechanical matchers"]
    S -->|Advisory| A["Advisory"]
    C --> FAIL["Gate FAIL<br/>emission blocked"]
    I --> Q{"2+ Important<br/>bars failing?"}
    Q -->|yes| FAIL
    Q -->|no| WARN["Gate WARN<br/>logged in signed record<br/>emission proceeds"]
    A --> WARN

機械的部分のマッチャー

機械的部分は src/apothem/conformity/*_grep.py に存在し、src/apothem/conformity/gate.py によってオーケストレーションされます。

マッチャー項目機能
hedging_grep.pyM8規定的な散文の曖昧な語彙を検出する
option_annotation_grep.pyM7選択肢セット上の **Recommended** マーカー+根拠の理由を検証する
user_confirm_grep.pyM5<USER-CONFIRM:…> プレースホルダーの発行をブロックする
binding_reciprocity_grep.pyM10## Bindings (§0.j five-direction) のハーフエッジを検出する
orphan_output_grep.pyM12消費者なし/インデックスエントリなし/生成者帰属なしの成果物にフラグを立てる
bare_except_grep.pyM13正当化コメントのない except:except Exception: を検出する
magic_number_grep.pyM13ビジネスロジック中の数値リテラルを検出する
commented_out_code_grep.pyM13コメントアウトされたコードブロックを検出する
file_header_grep.pyM13単一行 SPDX ライセンスヘッダーの存在を検証する
frontmatter_grep.pyM14下記の四つの正規ディレクティブディレクトリ上の必須フロントマターフィールドを検証する
semver_stability_grep.pyM15MAJOR バージョン引き上げのない破壊的な公開 API 変更を検出する
production_ready_pr_grep.pyM15同一変更セット規律(テスト+ドキュメント+CHANGELOG)を検証する
secret_leak_grep.pyM15ハードコードされたシークレット/資格情報を検出する
unpinned_action_grep.pyM15GitHub Actions が commit SHA に固定されていることを検証する
always_on_budget_grep.py予算上限常時オンルール本体を 500 の実質的な token に制限する

ゲートの実行

インストール済みの harness では、ゲートは自動的に実行されます。Claude Code の settings.json がこれを PreToolUse フックとして配線し、各 Write/Edit の前に ~/.claude/.apothem/support/conformity/gate.py の物化されたコピーを呼び出します。 ソースチェックアウトからは、モジュール形式が同じコードを駆動します。

# 単一ファイルディスパッチ(PreToolUse フックを模倣):
echo '{"tool_input": {"file_path": "path/to/file", "content": "..."}}' \
    | python -m apothem.conformity.gate --hook

# リポジトリ全体にわたる複合スイープ:
python -m apothem.conformity.gate --sweep src/ site/content/docs/ rules/

完全な手順はコンフォーマンスゲートの実行を参照してください。

リファレンス

On this page