from __future__ import annotations from app.core.deep_agent import format_folder_manifest, MANIFEST_TOKEN_BUDGET def test_format_folder_manifest_basic(): manifest = { "folderPath": "D:\\Acme", "lastScannedAt": "2h ago", "files": [ {"relPath": "briefs/kickoff.md", "kind": "text", "summary": "Kickoff notes; scope and deadlines."}, {"relPath": "logos/logo-v3.png", "kind": "image", "summary": "Final logo on white."}, ], } out = format_folder_manifest(manifest) assert "" in out assert "/briefs/kickoff.md" in out or "briefs/kickoff.md" in out assert "[text]" in out assert "[image]" in out def test_format_folder_manifest_truncates_past_budget(): files = [ {"relPath": f"f{i}.md", "kind": "text", "summary": "x" * 100, "mtimeMs": i} for i in range(2000) ] out = format_folder_manifest({"folderPath": "p", "lastScannedAt": "now", "files": files}) assert "more files omitted" in out # Rough token check assert len(out) // 4 < MANIFEST_TOKEN_BUDGET + 200 def test_format_folder_manifest_null_returns_empty(): assert format_folder_manifest(None) == "" assert format_folder_manifest({"files": []}) == ""