Commit Graph

53 Commits

Author SHA1 Message Date
Ed_
c952d2f67b feat(testing): stabilize simulation suite and fix gemini caching 2026-02-25 01:44:46 -05:00
Ed_
fb80ce8c5a feat(gui): Add auto-scroll, blinking history, and reactive API events 2026-02-25 00:41:45 -05:00
Ed_
2ab3f101d6 Merge origin/cache 2026-02-23 22:03:06 -05:00
bd8551d282 Harden reliability, security, and UX across core modules
- Add thread safety: _anthropic_history_lock and _send_lock in ai_client to prevent concurrent corruption
  - Add _send_thread_lock in gui_2 for atomic check-and-start of send thread
  - Add atexit fallback in session_logger to flush log files on abnormal exit
  - Fix file descriptor leaks: use context managers for urlopen in mcp_client
  - Cap unbounded tool output growth at 500KB per send() call (both Gemini and Anthropic)
  - Harden path traversal: resolve(strict=True) with fallback in mcp_client allowlist checks
  - Add SLOP_CREDENTIALS env var override for credentials.toml with helpful error message
  - Fix Gemini token heuristic: use _CHARS_PER_TOKEN (3.5) instead of hardcoded // 4
  - Add keyboard shortcuts: Ctrl+Enter to send, Ctrl+L to clear message input
  - Add auto-save: flush project and config to disk every 60 seconds
2026-02-23 21:29:30 -05:00
Ed_
6d825e6585 wip: gemini doing gui_2.py catchup track 2026-02-23 21:07:06 -05:00
69401365be Port missing features to gui_2 and optimize caching
- Port 10 missing features from gui.py to gui_2.py: performance
    diagnostics, prior session log viewing, token budget visualization,
    agent tools config, API hooks server, GUI task queue, discussion
    truncation, THINKING/LIVE indicators, event subscriptions, and
    session usage tracking
  - Persist window visibility state in config.toml
  - Fix Gemini cache invalidation by separating discussion history
    from cached context (use MD5 hash instead of built-in hash)
  - Add cost optimizations: tool output truncation at source, proactive
    history trimming at 40%, summary_only support in aggregate.run()
  - Add cleanup() for destroying API caches on exit
2026-02-23 20:06:13 -05:00
Ed_
0f9f235438 feat(tokens): Implement accurate token counting for Gemini history 2026-02-23 17:08:08 -05:00
Ed_
f0eb5382fe feat(anthropic): Align Anthropic integration with latest SDK and enable prompt caching beta 2026-02-23 17:07:22 -05:00
Ed_
842bfc407c feat(gemini): Align Gemini integration with latest google-genai SDK 2026-02-23 17:05:40 -05:00
Ed_
66f728e7a3 fix(conductor): Apply review suggestions for track 'event_driven_metrics_20260223' 2026-02-23 16:45:34 -05:00
Ed_
20ebab55a0 feat(ai_client): Emit API lifecycle and tool execution events 2026-02-23 16:31:48 -05:00
Ed_
cd3f3c89ed feat(events): Add EventEmitter and instrument ai_client.py 2026-02-23 16:23:55 -05:00
Ed_
f10a2f2ffa feat(conductor): Expose history bleed flags
This change introduces a new function, get_history_bleed_stats, to calculate and expose how close the current conversation history is to the provider's token limit. The initial implementation supports Anthropic, with a placeholder for Gemini.
2026-02-23 13:29:06 -05:00
Ed_
8aa70e287f fix(conductor): Implement Gemini cache metrics
This change corrects the implementation of get_gemini_cache_stats to use the Gemini client instance and updates the corresponding test to use proper mocking.
2026-02-23 13:27:49 -05:00
Ed_
92aa33c6d3 feat(core): Wire tool toggles to AI provider tool declaration payload 2026-02-23 11:30:36 -05:00
Ed_
8a3c2d8e21 fix to ai_client.py 2026-02-22 17:19:15 -05:00
Ed_
73fad80257 carlos patches 2026-02-22 17:03:38 -05:00
Ed_
17eebff5f8 Revert "final updates"
This reverts commit 1581380a43.
2026-02-22 12:15:49 -05:00
Ed_
1581380a43 final updates 2026-02-22 11:57:23 -05:00
Ed_
8bf95866dc fix for gemini. 2026-02-22 11:41:11 -05:00
Ed_
4755f4b590 claude final fix pass 2026-02-22 11:28:18 -05:00
Ed_
da8df7a393 add history truncation 2026-02-22 10:34:53 -05:00
Ed_
bf2d09f3fd expose tunings. 2026-02-22 10:19:05 -05:00
Ed_
4a6721c3be cache improvement (gemini) 2026-02-22 10:09:19 -05:00
Ed_
254ca8cbda Doing final pass of adjustments with anythingllm 2026-02-22 09:54:36 -05:00
Ed_
5103a256bf bugfixes 2026-02-22 09:23:48 -05:00
Ed_
be42d21842 docs 2026-02-22 09:20:02 -05:00
Ed_
96a013c3dc fixes and possible wip gui_2/theme_2 for multi-viewport support 2026-02-22 01:43:24 -05:00
Ed_
b69338f880 fixes for anthorpic client? Still sucks (need to do better with token throughput) 2026-02-22 01:28:06 -05:00
Ed_
813297c099 web search support. 2026-02-21 23:17:42 -05:00
Ed_
00d14131a9 fixes 2026-02-21 22:40:50 -05:00
Ed_
478dbb9b86 wip 2026-02-21 22:37:57 -05:00
Ed_
32af96b365 fixes 2026-02-21 22:25:11 -05:00
Ed_
f126cdcb21 fixing api usage for gemini 2026-02-21 22:19:46 -05:00
Ed_
f6c06ec381 system prompt suspport 2026-02-21 22:06:57 -05:00
Ed_
9a23941e59 adding better gemini support 2026-02-21 21:53:57 -05:00
Ed_
f258fc5765 progress 2026-02-21 21:42:42 -05:00
Ed_
0a591d58eb wip better file support and word wrap 2026-02-21 21:16:50 -05:00
Ed_
b01dfc09cb done with multi-project 2026-02-21 20:50:14 -05:00
Ed_
c101d7b7d1 fixing... 2026-02-21 20:22:19 -05:00
Ed_
4a9c23b2da fixes 2026-02-21 20:04:35 -05:00
Ed_
eb347d6b01 fixes 2026-02-21 19:44:47 -05:00
Ed_
383a3f3971 fixes 2026-02-21 18:33:55 -05:00
Ed_
a70ebd92a1 fixes 2026-02-21 17:04:34 -05:00
Ed_
330c8604c9 progress 2026-02-21 16:51:00 -05:00
Ed_
d0d8f3e145 add file cache 2026-02-21 16:31:33 -05:00
Ed_
d2568cd616 progress 2026-02-21 16:07:26 -05:00
Ed_
0258a41c47 rever client for now bugged 2026-02-21 15:53:56 -05:00
Ed_
600ddff092 progress 2026-02-21 15:51:08 -05:00
Ed_
105a80bbe7 amazing 2026-02-21 15:35:44 -05:00