docs(conductor): replace manual pruner with advanced interactive AST and Slice tracks
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
# Track: Interactive Text Slice Highlighting
|
||||
|
||||
- [Specification](./spec.md)
|
||||
- [Plan](./plan.md)
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"id": "interactive_text_slice_highlighting_20260510",
|
||||
"title": "Interactive Text Slice Highlighting",
|
||||
"status": "planned"
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
# Implementation Plan: Interactive Text Slice Highlighting
|
||||
|
||||
## Phase 1: Slice Model & Fuzzy Anchors
|
||||
- [ ] Update `FileItem` in `src/models.py` with a `custom_slices: list[dict]` field.
|
||||
- [ ] Implement a `FuzzyAnchor` utility to generate and re-resolve slices based on contextual text hashing.
|
||||
|
||||
## Phase 2: Editor UI Integration
|
||||
- [ ] In `src/gui_2.py`, add `[Edit Slices]` to the Context Panel.
|
||||
- [ ] Enhance the `TextEditor` wrapper to support visual highlighting and a context menu for adding/removing slices.
|
||||
|
||||
## Phase 3: Aggregation Execution
|
||||
- [ ] Update `src/aggregate.py` to respect `custom_slices` when building the final markdown text for a file.
|
||||
@@ -0,0 +1,10 @@
|
||||
# Specification: Interactive Text Slice Highlighting
|
||||
|
||||
## Overview
|
||||
Allow users to define custom text slices in any file (not just C/C++) by highlighting code in a text editor and tagging it. Slices use a 'Fuzzy Anchor' heuristic to survive file modifications.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] An `[Edit Slices]` button in the Context Panel opens the file in the `TextEditor` widget.
|
||||
- [ ] Users can highlight text and use a context menu/button to tag the slice (e.g., Include, Exclude, Summarize).
|
||||
- [ ] `FileItem` model is updated to persist `CustomSlices` with fuzzy anchors (hashed start/end context).
|
||||
- [ ] `aggregate.py` dynamically resolves these slices during payload generation, falling back gracefully if anchors are lost.
|
||||
Reference in New Issue
Block a user