Commit Graph

200 Commits

Author SHA1 Message Date
ed 630c9abd3a feat(gui): Improve External Editor panel with combo selector
- Add dropdown combo to select default editor
- Add _set_external_editor_default method to save selection to config
- Clean up layout and improve visual hierarchy
- Add better color coding for configured vs default editors
2026-05-07 19:35:49 -04:00
ed 8fe366e041 fix(external-editor): Fix TextEditorConfig parsing and add error handling
- TextEditorConfig.from_dict no longer requires 'name' field since name comes from dict key
- Added try/except around _render_external_editor_panel to prevent tab bar mismatch
2026-05-07 19:30:45 -04:00
ed 0948cae5a0 fix(external-editor): Move panel to Operations Hub, fix config key lookup
- Moved External Editor panel from AI Settings to External Tools tab in Operations Hub
- Fixed default_editor lookup to use nested [tools.default_editor] structure
- Added example entries for vscode, notepadpp, 10xEditor, rider, sublime
- Improved panel UI with section header and clearer formatting
2026-05-07 19:27:07 -04:00
ed d2beb79563 feat(gui): Add External Editor configuration panel to AI Settings
- Added _render_external_editor_panel method to display configured editors
- Shows default editor marker and diff args
- Displays config file locations for user reference
- Integrated as 'External Editor' section in AI Settings
2026-05-07 19:12:28 -04:00
ed c711d26eac feat(gui): Add 'Open in External Editor' button to patch modal
- Added button to launch external editor for reviewing agent proposed changes
- Added _open_patch_in_external_editor method to handle the launch logic
- Integrated with ExternalEditorLauncher and create_temp_modified_file
2026-05-07 19:10:13 -04:00
ed 7d12806ce6 finally? 2026-05-07 13:42:31 -04:00
ed 2b5185a78f perf(entropy): Fix nested imports in hot paths
Hoisted imports from inside frequently-called functions to module level:

app_controller.py:
- Added traceback and inspect at module level
- Removed 3 nested traceback imports from exception handlers

gui_2.py:
- Added traceback at module level
- Removed nested traceback import from _gui_func exception handler
- Kept uvicorn lazy-loaded (only for --headless mode)

multi_agent_conductor.py:
- Removed unused 'import sys' from run()
- Removed redundant nested imports (already at module level)

Also adds audit scripts and entropy findings documentation.
2026-05-06 20:18:30 -04:00
ed f6feab9243 fix(gui): Correct indentation bug in _render_mma_dashboard that caused crash
The code after the 'prior session' return block was incorrectly indented
at 1 space, placing it inside the 'if is_viewing_prior_session' block
instead of after it. This caused 'total_cost' and 'perc' to be undefined
when viewing an active session, triggering an IM_ASSERT error.

Fix: Moved 'track_name', 'track_stats', and 'total_cost' to the
correct 2-space indentation (method body level).
2026-05-06 19:41:22 -04:00
ed 6bd052efc5 chore(perf): Save state before comprehensive entropy cleanup 2026-05-06 16:09:41 -04:00
ed 23c1e21661 feat(perf): Expand instrumentation with context manager and extended metrics 2026-05-06 14:30:22 -04:00
ed 2b66f3569b feat(beads): integrate Beads Mode backend, MCP tools, and GUI support 2026-05-06 13:48:47 -04:00
ed ecc5a66027 feat(workspace): implement contextual auto-switch layout based on MMA active tier 2026-05-05 21:57:08 -04:00
ed ded9f38a00 feat(workspace): implement layout menu and save profile modal 2026-05-05 21:25:53 -04:00
ed eab1945035 feat(workspace): implement layout capture/restore and controller integration 2026-05-05 21:09:51 -04:00
ed 446a58717e conductor(checkpoint): Checkpoint end of Phase 4 - UI Features & History List 2026-05-05 17:50:55 -04:00
ed 0a5b90e772 conductor(checkpoint): Checkpoint end of Phase 3 - Discussion & Context Structure Mutation 2026-05-05 12:17:53 -04:00
ed a02849b9a3 conductor(checkpoint): Checkpoint end of Phase 2 - Text Input & Control Undo/Redo 2026-05-05 00:23:55 -04:00
ed 213747a9fc conductor(checkpoint): Checkpoint end of Phase 3 - RAG GUI Integration 2026-05-04 18:49:18 -04:00
ed 8b487536c5 feat(rag): Implement auto-indexing and status indicators 2026-05-04 11:34:01 -04:00
ed d4dc23720f feat(gui): Implement RAG context visualization in Discussion history 2026-05-04 11:26:36 -04:00
ed f57e2fe4f0 feat(gui): Implement RAG Settings panel in AI Settings 2026-05-04 11:22:06 -04:00
ed 6bf6c79db4 feat(ui): Expose cache status and controls in UI 2026-05-04 05:18:04 -04:00
ed 2441ea64a3 conductor(checkpoint): Checkpoint end of Phase 4 2026-05-02 19:00:28 -04:00
ed c74971bdb2 feat(ui): Refine base system prompt editor with collapsing header and character count 2026-05-02 18:33:36 -04:00
ed 4f1bcea381 feat(ai): Implement configurable base system prompt and expose in UI 2026-05-02 14:49:47 -04:00
ed 7fdf6c9782 feat(mma): Enable manual ticket approval via Hook API for Step Mode 2026-05-02 13:48:14 -04:00
ed 3b59028259 fix(gui): Resolve syntax error from merge 2026-05-02 12:08:11 -04:00
ed bf148ff6a2 conductor(checkpoint): Checkpoint end of Phase 2 2026-05-02 12:07:38 -04:00
ed cc6a651664 feat(gui): Implement Takes panel (Phase 4)
- Replaced _render_takes_placeholder with _render_takes_panel
- Shows list of takes with entry count and switch/delete actions
- Includes synthesis UI with take selection and prompt
- Uses existing synthesis_formatter for diff generation
2026-03-22 13:27:41 -04:00
ed a3c8d4b153 feat(gui): Implement Context Composition panel (Phase 3)
- Replaced placeholder with actual _render_context_composition_panel
- Shows current files with Auto-Aggregate and Force Full flags
- Shows current screenshots
- Preset dropdown to load existing presets
- Save as Preset / Delete Preset buttons
- Uses existing save_context_preset/load_context_preset methods
2026-03-22 13:17:19 -04:00
ed e600d3fdcd fix(gui): Use correct ImVec4 color API in placeholder methods
imgui.ImColor.IM_COL32 doesn't exist - use C_LBL (vec4) instead.
Fixes Missing EndTabBar() error caused by exception in placeholder methods.
2026-03-22 13:10:42 -04:00
ed 2b73745cd9 feat(gui): Merge Session Hub into Discussion Hub
- Removed Session Hub window from _gui_func
- Discussion Hub now has tab bar: Discussion | Context Composition | Snapshot | Takes
- _render_discussion_tab: history + message/response tabs
- _render_snapshot_tab: Aggregate MD + System Prompt (moved from Session Hub)
- _render_context_composition_placeholder: placeholder for Phase 3
- _render_takes_placeholder: placeholder for Phase 4
2026-03-22 13:06:15 -04:00
ed 9ddbcd2fd6 feat(gui): Remove Context Presets tab from Project Settings
Context Presets tab removed from Project Settings panel.
The _render_context_presets_panel method call is removed from the tab bar.
Context presets functionality will be re-introduced in Discussion Hub -> Context Composition tab.
2026-03-22 12:59:10 -04:00
ed 2ed9867e39 feat(gui): Rename Context Hub to Project Settings
- gui_2.py: Window title changed to 'Project Settings'
- app_controller.py: show_windows key updated
- Updated tests to reference new name
2026-03-22 12:57:49 -04:00
ed f5d4913da2 feat(gui): Remove ui_summary_only global toggle
The ui_summary_only global aggregation toggle was redundant with per-file flags
(auto_aggregate, force_full). Removed:
- Checkbox from Projects panel (gui_2.py)
- State variable and project load/save (app_controller.py)

Per-file flags remain the intended mechanism for controlling aggregation.

Tests added to verify removal and per-file flag functionality.
2026-03-22 12:54:32 -04:00
ed f6fe3baaf4 fix(gui): Skip empty strings in selectable to prevent ImGui ID assertion
Empty strings in bias_profiles.keys() and personas.keys() caused
imgui.selectable() to fail with 'Cannot have an empty ID at root of
window' assertion error. Added guards to skip empty names.
2026-03-22 11:16:52 -04:00
ed 133fd60613 fix(gui): Ensure discussion selection in combo box is immediately reflected in takes tabs 2026-03-21 17:02:28 -04:00
ed f53e417aec fix(gui): Resolve ImGui stack corruption, JSON serialization errors, and test regressions 2026-03-21 15:28:43 -04:00
ed f770a4e093 fix(gui): Implement correct UX for discussion takes tabs and combo box 2026-03-21 10:55:29 -04:00
ed 2a8af5f728 fix(conductor): Apply review suggestions for track 'Discussion Takes & Timeline Branching' 2026-03-21 10:39:53 -04:00
ed a452c72e1b feat(gui): Implement AI synthesis execution pipeline from multi-take UI 2026-03-19 20:06:14 -04:00
ed 510527c400 feat(backend): Implement multi-take sequence differencing and text formatting utility 2026-03-19 19:53:09 -04:00
ed 1f7880a8c6 feat(gui): Add UI button to promote active take to a new session 2026-03-19 19:45:38 -04:00
ed e48835f7ff feat(gui): Add branch discussion action to history entries 2026-03-19 19:44:30 -04:00
ed 3225125af0 feat(gui): Implement tabbed interface for discussion takes 2026-03-19 19:42:29 -04:00
ed 8ee8862ae8 checkpoint: track complete 2026-03-18 18:39:54 -04:00
ed 84b6266610 feat(gui): Implement Session Hub and context injection visibility 2026-03-18 09:04:07 -04:00
ed 791e1b7a81 feat(gui): Add context preset field to persona model and editor UI 2026-03-18 00:20:29 -04:00
ed 573f5ee5d1 feat(gui): Implement Context Hub UI for context presets 2026-03-18 00:13:50 -04:00
ed 2826ad53d8 feat(gui): Update all text viewer usages to specify types and support markdown preview for presets 2026-03-17 23:15:39 -04:00