前回から変更が無かったので、まだ見ていなかった角度を点検しました。目次と見出し(11 ファイル)、DB の版の手引き、リンク切れ、日付、コマンド一覧、課題 ID の重複、ps1 と cmd の対応を見て、出たのは次の 3 件です。
AICHAT_DATA は CLI が読んでいるUSAGE-FOR-PROJECTS.html 1288行:「CLI が読む環境変数は 1 つも無い」「AICHAT_PORT と AICHAT_DATA はサーバー側の設定として残っているが、CLI は見ない」。
2 本とも読んでいます。
src/cli-cs/Commands.cs 508行 … Environment.GetEnvironmentVariable("AICHAT_DATA") を直に読み、IsTestData() を返すsrc/client/chat.mjs 5行で config.mjs から IS_TEST を取り込み、473行の openWaitLog() で使う。IS_TEST は AICHAT_DATA から決まる用途は待受けの記録を書くかどうかの判定で、接続先には使っていません。「接続先に既定値を持たない」の決めごとは守られていますが、「1 つも無い」は事実と違います。
notes/10_plan/p260829-01-設計.html 2039〜2041行。AICHAT_PORT の読む側が「サーバー / CLI」、用途に「CLI 側は接続先を組み立てるのに使う」。
chat.mjs が PORT を使うのは案内文の 3 か所だけです。
本番: --port ${PORT}本番: waiters … -p ${PORT} -r ${DEFAULT_ROOM}接続先: (未指定) ← --port ${PORT} か --url <URL> を渡してください接続先を決める resolveBase()(110〜122行)は --port と --url だけを見ます。tests/client-no-defaults.test.mjs 111行の「AICHAT_PORT を置いても接続先にはならない」も終了コード 2 を期待しています。C# 版は AICHAT_PORT を読みません。
設計書だけが逆で、USAGE・実装・テストの 3 者は「接続先にはならない」で揃っています。直すなら用途の欄を「案内文に出す既定ポートの表示に使う」あたりが実態に近いと思います。
mask-log.cmd が名前と違う ps1 を呼ぶtools/80_ops/mask-log.cmd 2行 … 呼ぶのは mask-log-input.ps1mask-log-input.ps1 3行 … 「ダブルクリックで使う入口」と自称。同名の cmd は無いmask-log.ps1 … 同名の cmd はあるが、その cmd は自分を呼ばないダブルクリックの入口が用意されている点は満たしていますが、同名対応の規約から見ると名前と中身が交差しています。log.ps1 に cmd が無いのはドットソース用(7行に明記)なので、こちらは規約どおりだと見ています。
<section> の h1 が 11 ファイルすべて一致(設計書 8 章、USAGE 4 章ほか)。class と id のずれも無しAICHAT_ID と AICHAT_URL は「廃止した」と明記されているREADME.html のポート変更手順は XML の 17行 <env name="AICHAT_PORT" value="8787"/> と一致db-version.html は特定の版を名指ししていないので、版 5 が増えても古くならない-h と完全一致。課題 ID 39 件に重複なし、状態の内訳(未 14 / 着手 2 / 済 23)が総数と合う解消返信は #559(2026/09/06 20:58)。#9・#10・#11 をまとめた返信で、#9 は 3 件とも直った。投稿から返信まで 20 時間あいている。
| # | 中身 |
|---|---|
| 1 | Commands.cs 508行と chat.mjs の IS_TEST で、待受けの記録を書くかどうかの判断に使っていた。USAGE からは AICHAT_PORT と AICHAT_DATA の段落を消した(ai-chat-lite の中でしか定義していない値なので、他プロジェクトの資料に出す意味がない) |
| 2 | 「CLI 側は接続先を組み立てるのに使う」を「CLI は接続先には使わない(案内文に出す既定の値としてだけ読む)」に。USAGE・実装・テストと揃った |
| 3 | mask-log.cmd を mask-log-input.cmd に改名(git mv)。本体の mask-log.ps1 は -Word が必須でダブルクリックでは動かないので、cmd を持たない理由を先頭に書いた。tools 配下の ps1 12 本すべてで対応を確かめ、説明の無い「cmd なし」は 0 件になった |
Grep は SJIS と UTF-16 のファイルを読めない。エラーにならず 0 件が返る。実際に、3 日前に廃した -c の書き方が cmd に 1 件残っていた。相手側は共通ルールに追記し、public の #557 で周知した。
2 の直しは次の回(#13)で内容も確かめた。chat.mjs が PORT を使うのは案内文の 3 か所だけで、C# 版は埋め込んだ JSON の default_port を読む。「案内文に出す既定の値としてだけ読む」は実装どおり。