from pathlib import Path ROOT=Path(__file__).resolve().parents[1] def test_version(): assert (ROOT/'VERSION').read_text(encoding='utf-8').strip()=='4.6.22' def test_frontend_dedupe_and_merge(): js=(ROOT/"static/js/app.js").read_text(encoding="utf-8") assert "dedupeConversationMessages" in js assert "mergeSessionCopies" in js assert "const repaired=migrateConversationSummaries()" in js def test_summary_recent_topic_priority(): js=(ROOT/"static/js/app.js").read_text(encoding="utf-8") assert "const recent=msgs.slice(-8)" in js assert "latestUser" in js assert "2002年" not in js or "dateLabel" in js assert js.index('if((source||variable||region)') < js.index('if(/多任务|并行|子任务') def test_server_dedupe(): py=(ROOT/"services/user_state.py").read_text(encoding="utf-8") assert "def _dedupe_messages" in py assert "messages=self._dedupe_messages(messages)" in py