diff --git a/docs/features/coding_assistant.md b/docs/features/coding_assistant.md index 8a9b4ec..b077281 100644 --- a/docs/features/coding_assistant.md +++ b/docs/features/coding_assistant.md @@ -52,7 +52,8 @@ - **Empty**: Boot up the execution context with a clean slate. - **Sync from Server**: Clone the master "Ghost Mirror" codebase state down to the execution nodes. - **Initialize from Node**: Use an existing local absolute path on the node (useful for massive pre-existing local repositories). -- **Attachment Controls**: List of nodes with one-click `ATTACH` / `DETACH` functionality. +- **Attachment Controls**: Checkbox list of nodes to select or deselect. +- **Save & Sync Workflow**: Changes made in the modal are held in a draft state and only applied when the user explicitly clicks the **Save & Sync** button. Clicking **Cancel** instantly reverts the selections to the actual truth from the server. ### B. Session Engine Overlay (LLM Config) - **Purpose**: Switch the logical "Brain" powering the assistant on the fly. @@ -90,5 +91,6 @@ ## 5. Architectural Principles - **Separation of Concerns**: The AI's conversational context/history is completely decoupled from the actual Node execution state. The UI simply acts as a bridge displaying both simultaneously. -- **Stateless Client Polling**: The React layer assumes the backend is the source of truth for node attachments. It polls `getSessionNodeStatus` every 5 seconds to ensure the top-bar badges reflect reality. +- **Stateless Client Polling**: The React layer assumes the backend is the authoritative source of truth for node attachments. It polls `getSessionNodeStatus` every 5 seconds to ensure the top-bar badges reflect reality. Modal interactions temporarily suppress this polling to avoid overwriting user edits until the "Save & Sync" submission. +- **Incremental & Deletion Reconciliation**: File synchronization between the Hub's Ghost Mirror and attached Agent Nodes strictly tracks and mirrors file creations, modifications, and deletions for true bidirectional consistency. - **Responsive Degradation**: If no nodes are available, the interface degrades gracefully back into a standard LLM chat interface, abstracting away orchestration complexities from standard users.