OpenOperator Deployer
Deploy source revision ef73a4b421f2d1ececca20f99c9118f4621c5e28
6918275
|
Raw History Blame Contribute Delete
1.19 kB
# Chat Branching Plugin DOX
## Purpose
- Own branching a chat from any existing message.
- Keep log and history trimming behavior consistent when creating a branched conversation.
## Ownership
- `plugin.yaml` and `README.md` own metadata and user-facing behavior notes.
- `api/branch_chat.py` owns branch creation, clone, trim, persist, and refresh behavior.
- `extensions/` owns WebUI button injection.
- `webui/` owns plugin thumbnail assets.
## Local Contracts
- Preserve UUID-based linking between log entries and history messages.
- Branched chats must include history only up to the selected message.
- Detach inherited Responses continuation and response-ID ownership, while
retaining structured output metadata needed for local replay.
- Clear cached Context Window state after trimming each cloned agent.
- Do not mutate the source chat while creating a branch.
## Work Guidance
- Coordinate UI button injection with message rendering extension points.
## Verification
- Run `conda run -n a0 pytest plugins/_chat_branching/tests`.
- Smoke-test branching from several message positions and confirm source chat remains unchanged.
## Child DOX Index
No child DOX files.