Development records / 2026-10-31

監視アプリ基盤の失敗・改善・制約の記録

Platform monitoring: audit findings and limits

記録追加日:2026年10月31日(過去の開発記録の追補)

Published: October 31, 2026 (historical development notes)

Local AI Audit Platformの初期監査で確認された問題、修正報告と、なお残る監視上の制約を初心者向けに整理します。

A beginner-friendly record of 34 findings and 11 limitations in the monitoring platform.

この記録で何が分かったか

What the historical review covers

Phase 6時点の開発監査(2026年8〜10月)で、失敗・見落とし34項目と、未解決とは限らない制約11項目が整理されました。388件のテスト成功は報告されていますが、実通信を自動遮断できた証拠ではありません。

The Phase 6 audit (August–October 2026) lists 34 defects/oversights and 11 remaining limitations. It reports 388 passing tests, not proof of live automatic traffic blocking.

重要:以下の「修正報告」は資料に記された範囲です。実環境で全項目が受入れ済みとは判断しません。監視アプリはこの段階では自動削除・自動隔離を行うEDRではありません。

Scope: Reported fixes describe their documented tests; complete operational acceptance was not established. This monitoring app did not claim EDR-style automatic deletion/isolation.

確認された34項目

34 recorded findings

番号はPDFの一覧に合わせています。設計上の危険性を事前に発見した項目も含み、34件の独立した実害が起きた意味ではありません。

Numbers follow the source. Several are potential defects found before an incident, not 34 separate real-world accidents.

データベースとログ(A)

Database and logs (A)

  1. 01. 保持期間の設定が削除処理に反映されない(修正報告)

    古いイベントがDBに残っていた。保持設定と実際の削除が一致するよう修正報告。

  2. 01. Retention setting did not remove old events

    Old events remained in the database despite a retention setting. [Reported finding/fix]

  3. 02. ProcessGuardの終了通知が大量発生(修正報告)

    終了イベントのノイズがDB肥大化の大きな原因になったため削減。

  4. 02. Process-exit events flooded storage

    Noisy exit records were a major contributor to database growth. [Reported finding/fix]

  5. 03. JSONLログに容量整理がなかった(修正報告)

    時間が経つほどログが増える設計で、ローテーションを導入。

  6. 03. JSONL logs had no rotation

    Log files could grow indefinitely; rotation was added. [Reported finding/fix]

  7. 04. DB接続のたびに重い検査を実行(修正報告)

    整合性検査やcheckpointを都度実行していた構成を見直し。

  8. 04. Heavy checks ran on each DB connection

    Integrity checks and checkpoints were triggered too frequently. [Reported finding/fix]

  9. 05. DBのschema_versionが重複し得た(修正報告)

    管理用の版番号レコードが重複する可能性を修正。

  10. 05. Schema version records could duplicate

    Database schema metadata could accumulate duplicate rows. [Reported finding/fix]

イベント通知と実行環境(B)

Delivery and runtime (B)

  1. 06. 大量イベント時に通知が取りこぼされ得た(修正報告)

    通知を運ぶDispatcherの処理を改善。

  2. 06. Notification queue could drop events

    Dispatcher handling could miss events under load. [Reported finding/fix]

  3. 07. ログ保存失敗でも処理済み位置が進み得た(修正報告)

    JSONL書込みが失敗してもカーソルを進めない設計へ修正。

  4. 07. Cursor could advance after failed log write

    Events might be lost after a failed JSONL save. [Reported finding/fix]

  5. 08. 逆引きDNSが監視処理を停止させ得た(修正報告)

    相手IPの名前を調べる処理の待ち時間が監視を妨げないよう対処。

  6. 08. Reverse DNS could stall monitoring

    Host-name lookup could block a monitoring thread. [Reported finding/fix]

  7. 09. ネットワーク監視が外部パッケージに依存(修正報告)

    配布・起動時の依存関係を整理。

  8. 09. Network monitor depended on an external package

    An external dependency complicated monitoring and packaging. [Reported finding/fix]

  9. 10. Windows終了処理で子プロセスが残り得た(修正報告)

    停止後に監視用の処理が残存しないよう変更。

  10. 10. Shutdown could leave child processes

    Windows process termination handling was strengthened. [Reported finding/fix]

  11. 11. Toast通知が失敗しても理由が分からない(修正報告)

    Windowsの画面通知に失敗した際の記録・表示を改善。

  12. 11. Toast errors lacked clear diagnostics

    Notification errors were hard to diagnose. [Reported finding/fix]

テストが本番を傷つけるリスク(C)

Test isolation problems (C)

  1. 12. RansomwareGuardのテスト引数が間違い(修正報告)

    worker_runnerの起動テストがTypeErrorになる問題を修正。

  2. 12. Wrong argument in a guard test

    A test runner passed an incorrect argument and raised TypeError. [Reported finding/fix]

  3. 13. テストが本番用canary基準を変更し得た(修正報告)

    ランサムウェア監視の試験データを本番から隔離。

  4. 13. Ransomware tests could modify real baselines

    Test data could overwrite the live canary reference. [Reported finding/fix]

  5. 14. Firewallテストが本番基準を変更し得た(修正報告)

    FirewallAuditテストが本番の差分比較基準へ触れないよう修正。

  6. 14. Firewall tests could modify live baselines

    FirewallAudit tests were separated from operational references. [Reported finding/fix]

  7. 15. デバッグツールが本番DBへ偽イベントを書き得た(修正報告)

    期限のない検証記録を運用データに残さないよう修正。

  8. 15. Debug script could write into the production DB

    Debug inserts could leave misleading permanent events. [Reported finding/fix]

  9. 16. APIテストが同じ呼出しを繰り返して停止(修正報告)

    fixtureの誤った差し替えを修正。

  10. 16. API test fixture could loop indefinitely

    A fixture repeatedly called the same request operation. [Reported finding/fix]

誤検知とWindows固有の問題(D)

False positives and Windows behavior (D)

  1. 17. 日本語WindowsでFirewallルールを読めなかった(修正報告)

    英語を前提にしたnetsh出力解析が通用せず、OS言語差に対応。

  2. 17. English-only parsing failed on Japanese Windows

    Localized netsh output made firewall-rule parsing fail. [Reported finding/fix]

  3. 18. AppData/Roamingを一律に不審扱い(修正報告)

    正常なソフトも使うフォルダーを一律25点加算して誤警告。

  4. 18. Roaming directory was unfairly scored suspicious

    A commonly used folder caused false risk points. [Reported finding/fix]

  5. 19. 正常な音声・Pythonツールが警告された(原因修正報告)

    Stable Audioやuv管理Pythonの正常利用での警告理由を修正。

  6. 19. Normal audio/Python tools triggered alerts

    Known legitimate software was treated as suspicious. [Reported finding/fix]

  7. 20. localhost通信も警告になり得た(修正報告)

    PC自身との通信で不審ポートだけを理由に加点する誤警告を改善。

  8. 20. Localhost traffic could trigger warnings

    Connections within the same PC were over-scored. [Reported finding/fix]

  9. 21. 待受ポートの再出現を見逃し得た(修正報告)

    一度見た待受を永久に既知扱いする方法を改めた。

  10. 21. Returning listening ports could be missed

    The monitor remembered a past listener forever. [Reported finding/fix]

  11. 22. 警告抑制・DNSキャッシュが増え続け得た(修正報告)

    長時間起動によるメモリ増加を防ぐ管理を追加。

  12. 22. Alert/DNS caches could grow indefinitely

    Long-lived in-memory sets needed bounds or expiry. [Reported finding/fix]

  13. 27. ソケット一覧取得失敗を通信ゼロと誤認し得た(修正報告)

    Windows起動時の取得失敗を正常な空状態として扱わないよう修正。

  14. 27. Socket enumeration errors looked like no traffic

    A failed scan could be mislabeled as an empty result. [Reported finding/fix]

監視・説明の不足(E)

Visibility and coverage gaps (E)

  1. 23. 通信イベントに実行ファイルパスが残らない(修正報告)

    取得済みの実行パスを詳細情報として保存するよう修正。

  2. 23. Executable path was not retained in events

    The path was collected but not saved for review. [Reported finding/fix]

  3. 24. 親プロセス情報を旧仕様が制限(仕様改訂・修正報告)

    何がアプリを起動したか追えないため仕様を改訂。

  4. 24. Old spec limited parent-process visibility

    Reviewers could not see which process launched a program. [Reported finding/fix]

  5. 25. Firewall変更の中身が分からない(修正報告)

    変更を検知しても何が変わったかを表示できない問題を改善。

  6. 25. Firewall changes lacked a before/after explanation

    An alert did not show the actual changed settings. [Reported finding/fix]

  7. 26. UIが警告の根拠を十分表示しない(修正報告)

    PID・通信先・加点理由などの詳細を表示して判断しやすく改善。

  8. 26. Alert UI omitted critical context

    PID, network endpoints and scoring reasons were hard to inspect. [Reported finding/fix]

  9. 28. Unknown通信を既存の観測と関連付けられない(Phase 6で改善)

    近接するプロセス記録を「関連候補」として表示する改善。

  10. 28. Unknown traffic was not correlated with process events

    Nearby process records were shown as candidates, not proof. [Reported finding/fix]

  11. 29. BackupStateMonitorが起動体系に未統合(修正報告)

    バックアップ状態監視の一括起動・設定を整備。

  12. 29. Backup monitor was not fully integrated

    The monitor was not included consistently in startup/configuration. [Reported finding/fix]

  13. 30. 検知重要度とbaselineが現実の利用に合わない(Phase Aで改善)

    初期の重要度・比較基準を正常動作も踏まえて見直し。

  14. 30. Alert severity and baselines were poorly calibrated

    Early scoring/reference rules did not match typical use. [Reported finding/fix]

  15. 31. 自動起動設定の変化を監視していなかった(Phase 5で追加)

    Run・Task・Serviceなどを監視する機能をPhase 5で追加。

  16. 31. Persistence changes were not monitored

    Startup entries, tasks and services were added later. [Reported finding/fix]

配布ZIPの問題(F)

Packaging mistakes (F)

  1. 32. 配布ZIP v1に変更履歴・SHA一覧がない(修正報告)

    中身の説明と確認用一覧を入れ忘れた。

  2. 32. ZIP v1 omitted changelog and hash list

    Distribution metadata was incomplete. [Reported finding/fix]

  3. 33. 配布ZIP v2で一覧のHTMLが古い(修正報告)

    Markdownだけ更新してHTMLを同期し忘れた。

  4. 33. ZIP v2 included a stale HTML checksum list

    Markdown and HTML copies were out of sync. [Reported finding/fix]

  5. 34. 配布ZIP v3で大量ファイル欠落と日本語名破損(破棄・修正報告)

    除外条件とZIP文字コードの扱いを誤った。v3は破棄し再配布。

  6. 34. ZIP v3 omitted files and damaged Japanese names

    Packaging filters and filename encoding caused a critical broken archive; v3 was discarded. [Reported finding/fix]

用語:DB=記録の保存庫。JSONL=1行ずつ保存するログ。baseline=変化を比べるための前回状態。Toast=Windows画面の通知。PID=動作中のプログラムに付く番号。

Terms: DB stores data; JSONL is a line-based log; baseline is the previous reference state; Toast is a Windows notification; PID identifies a running process.

残る制約11項目

11 documented limitations

未修正の事故を11件追加したわけではありません。監視間隔や負荷、プライバシーとの兼ね合いによる仕様も含みます。

These are not automatically 11 unresolved incidents. Some are deliberate tradeoffs related to cost, coverage and privacy.

  1. G-1. 短時間で終了する処理や通信は取りこぼす:定期的に見に行く監視なので、その間だけ発生したものを見逃すことがあります。
  2. G-1. Short-lived activity can be missed: Periodic checks may miss events between scans.
  3. G-2. デジタル署名の有効性は未検証:ファイル内の会社名表示は、本当の署名確認とは違います。
  4. G-2. Authenticode validation was not implemented: A displayed company name is not a verified publisher signature.
  5. G-3. 自動起動設定の監視間隔は120秒:短い変化を取りこぼす可能性と処理負荷を天秤にかけています。
  6. G-3. Persistence polling is every 120 seconds: Brief changes may occur between observations.
  7. G-4. Windows COM呼出しに制限時間がない部分:OS側の操作が固まると途中で安全に打ち切れない可能性。
  8. G-4. Some Windows COM calls lack timeouts: A stalled native call may not be interruptible.
  9. G-5. DB記録とbaseline更新が同一取引ではない:途中失敗すると同じ変更を再度記録する場合があります。
  10. G-5. DB and baseline saves are not atomic: A partial failure may produce duplicate later records.
  11. G-6. 破損baselineの保管ファイルは自動消去しない:調査用に残すため、長期的には手作業で整理が必要です。
  12. G-6. Invalid baseline backups have no retention: Forensic copies can accumulate.
  13. G-7. イベント関連付けには時刻・件数の上限:関連候補の表示は証拠ではなく、大量イベントは範囲から漏れ得ます。
  14. G-7. Correlation has time and count limits: Suggested links are neither exhaustive nor proof of causation.
  15. G-8. 古い形式の日時は関連付け対象から外れる場合:日付の書き方が違う履歴を検索し損ねる可能性。
  16. G-8. Legacy timestamps can be excluded: Older date formats may fall outside index searches.
  17. G-9. backup_state補助ログの長期整理が未完成:主要ログとは別に増加を管理する余地が残っています。
  18. G-9. Auxiliary backup logs have limited rotation: A low-volume log may still grow over years.
  19. G-10. Pythonの非推奨日時関数の警告:現状の故障ではないが将来の互換性に課題が残ります。
  20. G-10. Deprecated Python time APIs remain: Warnings suggest future compatibility work.
  21. G-11. 長期CPU・メモリ負荷の実測が不足:模擬テストは実機で数日〜数か月動かす試験の代わりにはなりません。
  22. G-11. Long-run CPU/RAM behavior needs live measurement: Short simulations do not prove months of stability.

資料の範囲

Source and chronology

出典:添付PDF『Local AI Audit Platform 失敗と改善の記録(Phase 6/2026年8〜10月)』、2026年10月31日作成。34項目は監査報告上の分類であり、10月31日の24項目やAuto90のF01〜F16と単純に合算しません。

Source: supplied “Local AI Audit Platform: Failures and Improvements” (Phase 6, August–October, compiled October 31, 2026). Counts overlap other reports and must not be summed.

関連記録

Related records