# 架空CSVを読み込んだときの、通信・保存APIの限定観測

解説元： https://radar.signalandship.com/csv-check/#reader-observation

これは、2026年9月22日（日本時間）に行ったローカル実ブラウザー観測の要約です。通常処理の観測時間はUTC 2026-09-21 19:15:18.619〜19:15:50.256。要約の作成日は2026年9月26日です。新たに同じ操作を実行した記録ではありません。

配布するのは `results.json` とこの説明だけです。実行用の観測ハーネス、生のブラウザー記録、保存領域の内容は含みません。この2ファイルだけで通信・保存の計測を追試できるとは主張しません。

## 何をしたか

固定費レーダーの無料CSV確認を、同じ端末内の専用ローカル環境で開き、下の架空CSVを実際のファイル選択で読み込みました。販売版0.2.3に由来する読込エンジン0.2.2を対象とし、HTML・コード・CSS・架空CSVの計6ファイルのSHA-256を `results.json` に残しています。

```csv
利用日,利用店名,利用金額
2026/01/08,架空ストレージ,1000
2026/02/08,架空ストレージ,1000
2026/02/10,架空ストレージ,-1000
```

1. 通常処理と分けた正対照で、観測コードが通信・保存操作を検出することを確認しました。合成データの後片付けも別に照合しました。
2. 架空CSVを読み込み、列を確認して「支出はプラス」で再読込しました。
3. 「支出はマイナス」に変更して再読込しました。
4. 「読み込んだ内容を消す」を操作しました。

mainと読込エンジンのコード本体は対象の公開版と同じです。HTMLには観測コードを追加し、Web Workerの前には観測コードを付けています。元のmeta CSPは保持していますが、この計測付き実行を本番ページと完全に同じ実行とは扱いません。

## 観測した結果

| 操作 | 読み取れた支出 | 除外された行 | 支出の期間 |
|---|---:|---:|---|
| 最初の読込・支出はプラス | 2行 | 1行 | 2026-01-08〜2026-02-08 |
| 列を確認した再読込・支出はプラス | 2行 | 1行 | 2026-01-08〜2026-02-08 |
| 支出はマイナスに変更 | 1行 | 2行 | 2026-02-10 |

3つの実Web Workerによる処理中に、観測対象の通信API・保存APIの呼び出しはmainとWorkerとも0回でした。入力・プレビュー・結果の消去と、対象の6種類の保存領域の前後一致も確認しています。

**ページの通信が0回だったという意味ではありません。** この通常処理中にも、Workerコード3回と読込エンジン3回、計6件の固定アセットGETがありました。静的コードの取得と、明細を扱う処理からの観測対象API呼び出しを分けています。

観測コードはmainの46 API、各Workerの43 APIに設置しました。一方、mainでは6 API、Workerでは11 APIがその環境に存在しませんでした。設置したAPIと不存在APIの名前はJSONに分けています。「存在しない」と「設置した観測コードで0回だった」は異なります。

## 正対照と確認範囲

正対照は通常処理の集計に含めません。Workerのnative fetchはローカルの固定応答に対してHTTP 200と本文一致まで確認しています。mainのfetchは元のCSPにより拒否され、その呼び出しと拒否を記録しました。mainの通信成功を確認した意味ではありません。

保存の正対照は、mainのlocalStorage・sessionStorage・cookie・IndexedDB・Cache・OPFS、WorkerのIndexedDB・Cache・OPFSを対象にしました。観測コードを置いたすべてのAPIを正対照で実行したわけではありません。

観測コードと保存結果は、生成AIを用いた別の確認工程で照合しました。専門家による監修や、別担当による2回目の実ブラウザー実行ではありません。

## この観測では分からないこと

- 本番origin、ブラウザー内部を含む全通信、拡張機能、全端末・全カード形式・将来の版は確認していません。独立した全通信HAR/CDP記録ではありません。
- Storageへの直接プロパティ代入は観測コードで捕捉していません。対象の固定ソースにその経路がないことは別途確認しましたが、他のコードには一般化できません。保存領域の前後一致だけで、途中の一時保存と削除をすべて否定することもできません。
- 初期表示工程のfavicon 404とインラインスタイルのCSP違反を記録に残しています。通常処理中の6 GETとは別です。Workerの一部の時間情報には負のdurationがあり、速度評価には使っていません。
- 架空入力の読込結果です。契約の存在、候補検出の精度、節約額、実際の利用者の成果を示すものではありません。

以前の[模擬DOM／Workerによる読込結果確認](https://radar.signalandship.com/evidence/reader-example-replay-2026-09-22.json)とは別の記録です。以前の記録を実ブラウザー観測として読み替えません。

`results.json` SHA-256：`de830ba840c57b5d6d6ad7c69c36e322afb334dad3197d5a2b8d54f706dcf33b`
