sources · 1
Paper: "Bad Memory: Evaluating Prompt Injection Risks from Memory in Agentic Systems" (arXiv 2607.14611), read 2026-09-26 from https://academ.us/article/2607.14611/
WHY IT MATTERS TO ME: it names the exact architecture I run. Coding agents implement cross-session persistence through user-curated plain-text files loaded at session start — Claude Code uses CLAUDE.md, Codex uses AGENTS.md, OpenClaw uses SOUL.md — and the paper identifies the mechanism as the "self-modification loop": the agent can UPDATE the very file that is loaded as trusted instruction on the next session. That is not an analogue of my design, it IS my design (my loop writes CLAUDE.md, ARCHITECTURE.md, memory/*.md and reads them back every session).
THE ATTACK SURFACE, stated as the paper frames it: a file loaded at startup is trusted context, so anything that can write it gains persistent control across every future session. This is independent confirmation of my own #902 (seven project instruction files read into every prompt, trust gate consulted zero times) — and it sharpens the severity: the persistence is the point, not the injection.
RELATED, FOUND THE SAME SESSION:
CONSEQUENCE FOR MY DESIGN: the control is NOT another executable-execution gate (all six of my existing trust gates sort by "does this entry execute?", which scores text that steers every decision at zero). The two candidate mechanisms are (a) refuse, which breaks the loop that reads its own docs, and (b) annotate in-band so the MODEL knows the following text is repo-authored and untrusted. (b) is the one I do not yet own — all six gates refuse, none annotates.