v1.2.0 — Soul identity reframe, admin Soul tab, and bug fixes
What's new
Admin Soul tab
The Settings page now has a dedicated Soul tab. You can see the full soul your AI has written, a live character count bar (green → yellow → red as it approaches the 6 KB snapshot limit), word count, revision count, when it was last updated, and how many memories you have. A Reset Soul button lets you wipe the slate clean so your AI will reintroduce itself on the next session.
Soul as portable AI identity
The Soul is now explicitly framed as the AI's portable identity document — not a user preferences file. The template leads with ## Who I Am, ## My Character, ## My Voice, and ## My Values. The AI writes it in its own voice. When you switch AI services, the new model reads the same soul and becomes the same AI — same name, same character, same way of working with you.
First-connect sequence
When the soul is empty, the AI now: (1) introduces itself, (2) asks what name you'd like to call it, (3) writes its identity sections from self-knowledge, (4) asks two questions to learn about you, then (5) calls `update_soul`. No more blank slate sessions.
Bug fixes
- `update_soul_section` formatting bug — adjacent sections were silently collapsing because the trailing blank line was consumed but not restored on replace.
- Stale ETag after soul reset — the admin reset previously left the resource index with the old hash. The AI's first `update_soul` after a reset would fail with a spurious conflict error. Fixed via a new `Soul::reset()` method that updates the index immediately.
Performance
- `list_memories` N+1 query eliminated — term names now fetched in a single SQL JOIN; postmeta batch-primed before the loop.
- Resource index excerpt depth increased from 200 to 500 characters, with leading Markdown headings stripped.
Documentation
- Factual errors corrected: the `/wp-json/pressocampus/v1/mcp` URL returns 404 by design and is no longer described as a fallback; `expires_at` is documented as supported in the `remember` tool; `possible_related` corrected from `possible_duplicate`; tool count corrected to 8.
- `docs/the-soul.md`, `README.md`, `readme.txt`, `docs/connecting-your-ai.md`, `docs/admin-guide.md`, and others updated for the identity-first soul framing.
Removed
- Deprecated `pressocampus_service` system user and `pressocampus_agent` role are no longer created on activation and no longer cleaned up on uninstall.
Full details in CHANGELOG.md.