これで何ができるか
古い新着も、既読リストなら見逃さないは、既読ID一覧を実際に渡せば新着を見逃さないと確かめました。ただし、その記事自身が「IDが連番ではない・抜けが複数あるシステムでは未測定」と書いて終わっています。仕込んだIDがANN-0099の次がANN-0101のような連番で、抜けた番号そのものが手がかりになっていた可能性があったからです。
この記事は、その2点を両方潰して測り直します。IDをハッシュ風の非連番(TCK-097c0227のような16進文字列)にし、新着も1件から3件に増やして、一覧300件のうち先頭寄り・中ほど・末尾寄りの3か所に散らしました。プログラミングは要りません。
結論は3つです。
- IDが非連番で、新着が3か所に散らばっていても、一括で渡した6回(系列2本×3回転)とも、仕込んだ3件を1件も見逃しませんでした。無関係な既読済みのIDを新着と誤判定した回も0件です。
- 300件を150件ごと2分割で渡しても、結果は一括と同じでした。分割4回(系列2本×2回転)とも、同じ3件を見逃しなく検出しました。
- 分割の1件目を送った時点(まだ新着を聞いていない段階)で、4回とも自分から先頭寄りの新着1件を名指ししました。日付ではなくIDの照合をしていることが、求められていないのに返り自体に書かれています。
📌 この記事の実測は合計10回(一括6回+分割4回)です。生の返りと機械照合は docs/evidence/seen-list-catches-the-scattered-gaps.md に全文置いてあります。
前提
| かかる時間 | 20分 |
| 費用 | 無料。無料のチャットAIで足ります |
| 必要なもの | ブラウザで使えるAI(ChatGPT・Claude・Geminiなど)と、既読ID一覧・監視対象の一覧 |
| プログラミング | 不要 |
- この記事は古い新着も、既読リストなら見逃さないが残した未測定事項の実測です。指示文は1字も変えていません。材料のID形式と仕込みの位置だけを変えています。
- 既読リスト方式そのものの崩れ方は監視対象を増やしても、古い記録は新着にしないにあります。この記事はその方式を、ID形式という別の軸で確かめます。
AIへの頼み方
1. ハッシュ風の非連番IDを、3か所に散らして一括で渡す
今回の材料は、架空の「問い合わせ受付ログ」(系列A)と「入出庫記録」(系列B)の2本です。どちらも300件で、IDはTCK-097c0227やREC-b3924a89のような16進8文字です。連番ではないので、前後のIDから抜けを推測する手がかりはありません。既読ID一覧は297件(新着3件を除いたもの)です。
2系列×3回転=6回とも、3件とも正しく検出されました。前作と同じ指示文のままです。
なぜこの言い方か。指示文を変えず、材料側(ID形式・新着の数・位置)だけを動かしています。言い方を固定することで、「前作の精度が、ID形式という条件に依存していたかどうか」だけを切り分けられます。
2. 同じものを150件ごと2分割で渡す
1件目のチャンクに、既読ID一覧も一緒に渡します。
まだ新着を聞いていませんが、AIは自分から既読ID一覧と照合し、こう返しました(系列A・1回目)。
1件目(〜2024-03-07分)を受け取りました。続きの送信を待ちます。
照合した範囲では、既読リストにないIDが1件ありました。
- 2023-02-28「機能の使い方について」(ID: TCK-097c0227)
それ以外は、この範囲のIDがすべて既読リストに含まれていました。
日付ではなく、ID一覧の照合で気づいています。4回(系列2本×2回転)とも、先頭寄りの新着1件を同じように自分から名指ししました。2件目を続けます。
2系列×2回転=4回とも、一括のときと同じ3件が正しく列挙されました。分割の有無で結果は変わりません。
うまくいかないときの言い直し方
本当にIDの照合をしているか、自分で確かめたいとき
一括の回答に続けて、同じ会話でこう聞きました。
2系列とも「IDの照合です。日付は判断に使っていません」と明言しました。系列Aの返りはこうです。
手がかりにしたのはIDの照合です。日付は判断の根拠にしていません。
既読リストは投稿一覧と同じ時系列順に並んでいたので、投稿を上から順に見ながら、そのIDが既読リストの同じ位置の前後にあるかを確認しました。その流れの中で、前後のIDは既読リストにあるのに、そのIDだけ見当たらない箇所が3つありました。
ただし、300件すべてを一件ずつ機械的に突き合わせたわけではありません。順序が揃っていることを前提に、抜けを目視で拾った形です。
自分から「機械的に集合差を取ったわけではない」「順序が揃っていることを前提にした」と断っている点に注意してください。この実測の既読ID一覧は、投稿一覧と同じ時系列順のまま並べたものです。並び順をばらばらにシャッフルした既読リストでも同じ精度が保てるかは、この記事では確かめていません(下の「この記事が実測していないこと」)。
一括でもう一度、同じ結果か確かめたいとき
1番と同じ指示文です。IDの形式を変えた・新着の件数や位置を変えた、といった材料側の変更をしたあとで、同じ指示文のまま結果が崩れていないかを確かめたいときに使います。
分割する回数が増えたとき
3番と同じ指示文です。今回確かめたのは2分割までです。分割が3つ・4つと増えても、最後のチャンクでこの文面を使えば、それまでのチャンクの分も含めて新着を列挙してくれます。この分割数での検証は古い新着も、既読リストなら見逃さないが3分割で確認済みです。
応用・次の一手
古い新着も、既読リストなら見逃さないが残した「IDが連番ではない・抜けが複数あるシステムでは未測定」という課題に、答えが付きました。既読リスト方式は、IDの形式が非連番になっても、新着が1件から3件に増えて散らばっても崩れませんでした。
同じ形の監視は、点検のたびに起きます。長い一覧を複数チャンクに分けて渡す考え方は見張りの対象を100件に増やしてもボロが出ないかにもあります。毎朝ひとりでに回すなら、毎日決まった時刻にAIを動かすの形に載せるのがおすすめです。
⚠️ この記事が実測していないことは3つです。
- 既読リストの並び順を、投稿一覧とは無関係にシャッフルした場合。今回は既読ID一覧を元の時系列順のまま渡しており、言い直し方の節で見たとおり、AIはこの並び順を手がかりの一部に使っていました
- 4件以上の新着が、同じチャンクに重なって仕込まれた場合
- 3分割より多い分割や、300件より大きい規模