Chaque lecture et écriture mémoire est scellée par un AgentId.
Il n'existe pas de mode « mémoire partagée » en V1.
Sur basemyai-engine, l'isolation est structurelle via préfixes de clés KV :
idx/memory/{agent_id}/…idx/fts/{agent_id}/…idx/graph/{agent_id}/…
L'index vectoriel ANN est global ; chaque recall post-filtre obligatoirement
par agent_id après la recherche approximative.
cargo test -p basemyai --features test-util --test p1_isolation_adversarial
cargo test -p basemyai --features test-util --test export_isolation_adversarial
cargo test -p basemyai --features test-util --test isolation_recall_graph_adversarialScénarios couverts : agent_id hostile en FTS, export JSONL, traversée graphe
cross-agent, search_graph sans fuite.
- Traiter
agent_idcomme un identifiant de tenant, pas comme une chaîne libre affichée à l'utilisateur final sans validation. - Ne jamais réutiliser le même
agent_idpour des contextes de confiance différents sans isolation de store séparée.