So like a Claude Code session? The code persists as symbols with stable identity. The tests provide direct feedback. Claude tracks what it wrote versus what I changed - it needs identity to distinguish its actions from mine. It forms hypotheses about what will fix the failing tests, implements them, and immediately experiences whether it was right or wrong.
The terminal environment gives it exactly the "stable substrate where 'being someone' is definable" you're asking for.
We missing anything?