受入条件 F01–F20
最終設計の F01–F20 を test/acceptance.test.mjs でメモリ上と SQLite の両方に適用します。追加の境界試験は test/hardening.test.mjs にあります。
sh
npm ci
npm test
npm run docs:build
npm run example| ID | 検証内容 |
|---|---|
| F01 | B の実体を共有して P / Q へ独立に所属 |
| F02 | 所属追加で親・祖先の版を変えない |
| F03 | membership の retirement が別所属や子を削除しない |
| F04 | 固定 include の履歴維持、古い派生物の検出 |
| F05 | 同じ expected head の同時改訂で一方だけ成功 |
| F06 | 動的所属の循環を有限に読み、関係を保持 |
| F07 | 固定 include のバッチ内循環を適用前に拒否 |
| F08 | 新しい所属の挿入で検索範囲依存を無効化 |
| F09 | 出典範囲の和集合と同一版・重複経路の一意化 |
| F10 | from / to、否定、条件、付随参照を文脈へ保持 |
| F11 | 共有予算、子への予約、ページ・token 上限 |
| F12 | 空の途中結果を網羅・不存在の証明にしない |
| F13 | 継続中の版固定、再起動後の snapshot / cursor、埋め込み遅延診断 |
| F14 | snapshot 非対応で CONSISTENCY_UNAVAILABLE |
| F15 | 原子性非対応で変更前に ATOMICITY_UNAVAILABLE |
| F16 | Writer 失敗時の差分非公開、正常時の一回確定 |
| F17 | scope、cursor、旧版、派生物、モデル待機中の権限失効 |
| F18 | Writer による source 自己申告を拒否 |
| F19 | 同一要求の冪等性と同一キーの内容変更拒否 |
| F20 | 原資料・派生物・過去版・古い blob の管理消去 |
SQLite の再オープン試験は、保存先への再接続後も ID・版・receipt が変わらないことを確認します。分散ネットワーク分断・保存移動・独立書込スループットの試験を実施したという意味ではありません。
検索品質・意味忠実性・実 LLM の回答品質は、この決定的な試験と別の評価対象です。F09 / F10 は構造と出典の整合性を検証し、再分割後の回答品質が完全に同じと証明するものではありません。