jesxion
d9627ffbad
feat: v3 architecture - ConversationHistory + MessageDetector cursor
- Add src/core/conversation_history.py: JSON-persisted per-contact chat history
- One file per contact under histories/
- add_user() / add_assistant() for stable history maintenance
- to_llm_messages(max_count=100) replaces VLM snapshot as LLM context
- Rewrite src/core/message_tracker.py: cursor-based MessageDetector
- Replaces fingerprint-set approach (was fragile due to VLM non-determinism)
- _last_other cursor + _sent deque(50) for is_self flip protection
- MessageTracker kept as backward-compat wrapper
- Update test_live_monitor.py to v3:
- Uses MessageDetector for detection, ConversationHistory for LLM context
- history.add_user() on new message, history.add_assistant() after send
- Removes recently_sent set (superseded by detector._sent)
- Update src/wechat/controller.py: dynamic chat area detection, DPI helpers
- Update src/vlm/qwen_vl.py: analyze_chat_area(), find_contact_in_list()
- Update src/config/settings.py: chat area ratio settings
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-13 22:53:56 +08:00
..
2026-04-13 14:15:38 +08:00
2026-04-13 22:53:56 +08:00
2026-04-13 22:53:56 +08:00
2026-04-13 22:53:56 +08:00
2026-04-13 22:53:56 +08:00
2026-04-13 22:53:56 +08:00
2026-04-13 14:15:38 +08:00