# 問い合わせ承認のローカル教材

Node.js 22以降で、リポジトリのルートから実行します。依存パッケージ・APIキーは不要です。

```sh
node public/examples/agent-inquiry-simulation.mjs
node --test public/examples/agent-inquiry-simulation.test.mjs
```

これは架空の問い合わせを固定の受付下書きへ変換し、模擬保存先へ格納する教材です。人が確認する対象は出力の `proposal.record` とそのハッシュです。CLI内の承認値はシナリオを実演する固定値で、実際の人の認証や承認UIではありません。

出力の `events` では、pendingとdeniedが0件、承認後の保存が1件、その応答を失ったあとの再試行も1件であることを確認できます。同じ問い合わせIDの内容を変えた再実行はconflictになり、既存内容を上書きしません。承認後に下書きを変えるとハッシュが一致せず停止します。

保存先は同一プロセス内のMapです。終了すると消えます。永続化、複数プロセス、同時実行、実際の送信先とのトランザクションは扱いません。実システムでは保存先側の一意制約や送信APIの冪等性、認証された承認者、復旧時の整合性を別途実装する必要があります。Gmail、n8n、Make、Zapier、Dify、Copilot Studioの接続試験・性能比較ではありません。分類と文章品質も評価していません。
