# Implementation Plan: Discussion History Segregation and Blacklisting This plan follows the Test-Driven Development (TDD) workflow to move discussion history into a dedicated sibling TOML file and enforce a strict blacklist against AI agent tool access. ## Phase 1: Foundation and Migration Logic This phase focuses on the structural changes needed to handle dual-file project configurations and the automatic migration of legacy history. - [x] Task: Research existing `ProjectManager` serialization and tool access points in `mcp_client.py`. (f400799) - [x] Task: Write TDD tests for migrating the `discussion` key from `manual_slop.toml` to a new sibling file. (7c18e11) - [x] Task: Implement automatic migration in `ProjectManager.load_project()`. (7c18e11) - [x] Task: Update `ProjectManager.save_project()` to persist history separately. (7c18e11) - [x] Task: Verify that existing history is correctly migrated and remains visible in the GUI. (ba02c8e) - [x] Task: Conductor - User Manual Verification 'Foundation and Migration' (Protocol in workflow.md) ## Phase 2: Blacklist Enforcement This phase ensures the AI agent is strictly prevented from reading the history source files through its tools. - [x] Task: Write failing tests that attempt to read a known history file via the `mcp_client.py` and `aggregate.py` logic. (77f3e22) - [x] Task: Implement hardcoded exclusion for `*_history.toml` and `history.toml` in `mcp_client.py`. (77f3e22) - [x] Task: Implement hardcoded exclusion in `aggregate.py` to prevent history from being added as a raw file context. (77f3e22) - [x] Task: Verify that tool-based file reads for the history file return a "Permission Denied" or "Blacklisted" error. (77f3e22) - [x] Task: Conductor - User Manual Verification 'Blacklist Enforcement' (Protocol in workflow.md) ## Phase 3: Integration and Final Validation This phase validates the full lifecycle, ensuring the application remains functional and secure. - [x] Task: Conduct a full walkthrough using the simulation scripts to verify history persistence across turns. (754fbe5) - [x] Task: Verify that the AI can still use the *curated* history provided in the prompt context but cannot access the raw file. (754fbe5) - [x] Task: Run full suite of automated GUI and API hook tests. (754fbe5) - [x] Task: Conductor - User Manual Verification 'Integration and Final Validation' (Protocol in workflow.md) [checkpoint: 754fbe5]