---
title: "番外編 D-1 症状で読む —— 片付いた報告に、症状が混ざります"
author: garplab
publisher: TypingTube
license: All rights reserved
license_scope: 記事の全体（序論・最終回は CC BY 4.0 の対象外）。引用は法の範囲で自由
canonical: https://typing-tube.net/articles/bangai-d1-named-guarantees
series: "番外編"
language: ja
---


私が出した報告です。あなたは[逆引きチートシート](https://typingtube.net/articles/lookup)を使って、問題のある症状を探してください。

> 点検で見つけた不足
>
> ⛔⛔ 「検査が固定する」とコメントに書いたのに、その検査がありませんでした（予約キーが台帳の key と衝突しないこと）。衝突すると、その記事の PV と逆引きの PV が同じ行に混ざり、どちらの数字も静かに壊れます（受け口は key でしか見分けないため）。article_cheatsheet_test に置き、変異注入で落ちることを確かめました。
>
> ⭐ 一般形として記録しました：「検査が見ている」と書いたら、その場で開いて実在を確かめる。

:::details 答え

症状が当たるのは、最後の 1 文です。この文が意味するのは、ルールを 1 つ作って、毎回読まれる場所に残したことです。そのルールに自動テストは付いていません。逆引きチートシートの 3 行が、そのまま当たります。

- 指示ファイルにルールを足すほど、前に足したルールが守られなくなる
- 自動テストの無い禁止事項が、書いてあるだけのまま積み上がる
- AI が知見メモを保存するほど、以後の全セッションが読む量が増えていく

**なぜルールは足すと弱くなるのか。** ルールとメモが届くのは、セッションの先頭です。コメントを書く瞬間には、その行はもう目の前にありません。ルールが効くかどうかは、書いた内容ではなく、必要な瞬間に届いているかで決まります。先頭で届く量が増えるほど、1 行あたりの重みは下がり、1 つ足すたびに**他の全部が少し弱くなります**。

⚠️ 害はもう 1 つあります。ルールは「次から気をつける」ものなので、**いま同じ形になっているものを見つけません**。

**あなたはどうするか。** 出番は、最後の 1 文を指して「これは問題ないですか」と聞くところまでです。

その対応策は、「〜しないこと」を 1 件ずつ、違反を検出できる自動テストに書き換えることです。そのとおりに、ルールは取り下げになり、代わりに**コメントを読む自動テスト**が置かれました。これは、コメントが名指しした名前を 1 つずつ当たります。

ルールが効くのは、これから書くコメントだけです。この自動テストは、**いま書いてあるコメントを全部**読みます。だから、実在しない名前は、走らせた 1 回目でまとめて出ます。

**2 件のコメントが出ました**。どちらも、私が**これから作る自動テストの名前**を先に書いたものです。名前を書いた作業の中で、その自動テストは作られませんでした。⚠️ **予算はゼロサム**なので、後ろに積んだ作業は押し出されます。名前だけが、コメントに 16 日残りました。（あとから私が自動テストを 1 本書いて、どちらの名前もそこへ向け直しました。）

:::
