-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathcoverage.json
More file actions
1 lines (1 loc) · 384 KB
/
coverage.json
File metadata and controls
1 lines (1 loc) · 384 KB
1
{"meta": {"format": 3, "version": "7.11.0", "timestamp": "2025-11-25T10:35:19.583355", "branch_coverage": false, "show_contexts": false}, "files": {"codeframe/__init__.py": {"executed_lines": [1, 8, 9, 11, 12, 13, 15], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 8, 9, 11, 12, 13, 15], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 8, 9, 11, 12, 13, 15], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/__init__.py": {"executed_lines": [1, 3, 4, 5, 6, 8], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 5, 6, 8], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/agent_pool_manager.py": {"executed_lines": [1, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 21, 22, 34, 52, 53, 54, 55, 56, 59, 62, 65, 67, 71, 85, 86, 87, 89, 90, 96, 97, 98, 99, 102, 103, 104, 105, 112, 113, 119, 120, 121, 127, 128, 129, 130, 136, 138, 139, 141, 144, 153, 156, 158, 160, 172, 173, 174, 176, 179, 180, 181, 182, 183, 186, 187, 189, 200, 201, 202, 204, 205, 207, 209, 219, 220, 221, 223, 224, 227, 229, 233, 244, 245, 248, 249, 251, 253, 263, 264, 265, 267, 269, 274, 278, 285, 286, 288, 289, 297, 299, 312, 313, 316, 318, 330, 331, 333, 334, 336, 337, 338, 346, 348, 350, 352, 353, 354, 355], "summary": {"covered_lines": 117, "num_statements": 121, "percent_covered": 96.69421487603306, "percent_covered_display": "96.69", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [246, 314, 343, 344], "excluded_lines": [], "functions": {"AgentPoolManager.__init__": {"executed_lines": [52, 53, 54, 55, 56, 59, 62, 65, 67], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.create_agent": {"executed_lines": [85, 86, 87, 89, 90, 96, 97, 98, 99, 102, 103, 104, 105, 112, 113, 119, 120, 121, 127, 128, 129, 130, 136, 138, 139, 141, 144, 153, 156, 158], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.get_or_create_agent": {"executed_lines": [172, 173, 174, 176, 179, 180, 181, 182, 183, 186, 187], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.mark_agent_busy": {"executed_lines": [200, 201, 202, 204, 205, 207], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.mark_agent_idle": {"executed_lines": [219, 220, 221, 223, 224, 227, 229], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.mark_agent_blocked": {"executed_lines": [244, 245, 248, 249, 251], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [246], "excluded_lines": []}, "AgentPoolManager.retire_agent": {"executed_lines": [263, 264, 265, 267, 269, 274], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.get_agent_status": {"executed_lines": [285, 286, 288, 289, 297], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPoolManager.get_agent_instance": {"executed_lines": [312, 313, 316], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [314], "excluded_lines": []}, "AgentPoolManager._broadcast_async": {"executed_lines": [330, 331, 333, 334, 336, 337, 338, 346, 348], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [343, 344], "excluded_lines": []}, "AgentPoolManager.clear": {"executed_lines": [352, 353, 354, 355], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 21, 22, 34, 71, 160, 189, 209, 233, 253, 278, 299, 318, 350], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AgentPoolManager": {"executed_lines": [52, 53, 54, 55, 56, 59, 62, 65, 67, 85, 86, 87, 89, 90, 96, 97, 98, 99, 102, 103, 104, 105, 112, 113, 119, 120, 121, 127, 128, 129, 130, 136, 138, 139, 141, 144, 153, 156, 158, 172, 173, 174, 176, 179, 180, 181, 182, 183, 186, 187, 200, 201, 202, 204, 205, 207, 219, 220, 221, 223, 224, 227, 229, 244, 245, 248, 249, 251, 263, 264, 265, 267, 269, 274, 285, 286, 288, 289, 297, 312, 313, 316, 330, 331, 333, 334, 336, 337, 338, 346, 348, 352, 353, 354, 355], "summary": {"covered_lines": 95, "num_statements": 99, "percent_covered": 95.95959595959596, "percent_covered_display": "95.96", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [246, 314, 343, 344], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 21, 22, 34, 71, 160, 189, 209, 233, 253, 278, 299, 318, 350], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/backend_worker_agent.py": {"executed_lines": [1, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 31, 34, 35, 55, 80, 81, 82, 83, 84, 85, 86, 89, 92, 98, 132, 133, 143, 144, 145, 146, 150, 152, 153, 155, 175, 178, 181, 184, 185, 186, 188, 193, 200, 223, 225, 226, 227, 228, 231, 260, 268, 269, 270, 271, 272, 274, 282, 283, 284, 285, 288, 290, 291, 294, 296, 298, 306, 307, 309, 313, 315, 332, 334, 335, 336, 337, 340, 341, 344, 345, 346, 347, 348, 351, 352, 353, 356, 359, 360, 362, 363, 364, 366, 367, 369, 371, 372, 374, 390, 392, 395, 396, 401, 403, 404, 406, 407, 409, 423, 427, 430, 432, 436, 437, 438, 441, 443, 446, 449, 450, 460, 496, 497, 501, 519, 521, 523, 525, 527, 542, 543, 546, 549, 550, 553, 554, 555, 558, 561, 572, 579, 616, 639, 640, 643, 644, 646, 650, 651, 657, 661, 684, 686, 687, 689, 692, 697, 699, 713, 736, 737, 739, 740, 743, 759, 764, 772, 775, 776, 777, 778, 784, 787, 788, 790, 791, 794, 820, 822, 828, 848, 854, 855, 860, 868, 870, 895, 896, 897, 899, 901, 902, 905, 908, 911, 914, 917, 920, 921, 923, 924, 930, 932, 934, 940, 948, 949, 952, 968, 969, 970, 977, 978, 979, 980, 982, 984, 985, 992, 994, 995, 997, 998, 1005, 1026, 1029, 1033, 1034, 1035, 1038, 1041, 1044, 1052, 1055, 1072, 1073, 1074, 1075, 1076, 1077, 1080, 1081, 1082, 1084, 1103, 1111, 1113, 1140, 1142, 1143, 1145, 1147, 1149, 1151, 1155, 1156, 1157, 1160, 1161, 1162, 1164, 1176, 1179, 1180, 1183, 1185, 1243, 1244, 1247, 1251, 1254, 1258, 1261, 1268], "summary": {"covered_lines": 261, "num_statements": 333, "percent_covered": 78.37837837837837, "percent_covered_display": "78.38", "missing_lines": 72, "excluded_lines": 24}, "missing_lines": [90, 275, 276, 277, 280, 424, 425, 433, 434, 462, 463, 465, 473, 476, 477, 478, 480, 490, 491, 493, 498, 502, 503, 505, 516, 517, 520, 524, 556, 580, 581, 605, 613, 614, 647, 705, 706, 707, 744, 745, 747, 755, 756, 779, 780, 781, 829, 830, 832, 835, 844, 845, 953, 954, 956, 964, 965, 1027, 1030, 1056, 1057, 1059, 1068, 1069, 1086, 1093, 1101, 1107, 1109, 1152, 1173, 1174], "excluded_lines": [561, 572, 587, 600, 601, 603, 716, 786, 790, 791, 794, 795, 796, 801, 809, 817, 818, 820, 923, 924, 930, 932, 934, 940], "functions": {"BackendWorkerAgent.__init__": {"executed_lines": [80, 81, 82, 83, 84, 85, 86, 89, 92], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [90], "excluded_lines": []}, "BackendWorkerAgent.fetch_next_task": {"executed_lines": [132, 133, 143, 144, 145, 146, 150, 152, 153], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BackendWorkerAgent.build_context": {"executed_lines": [175, 178, 181, 184, 185, 186, 188, 193], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BackendWorkerAgent.generate_code": {"executed_lines": [223, 225, 226, 227, 228, 231, 260, 268, 269, 270, 271, 272, 274, 282, 283, 284, 285, 288, 290, 291, 294, 296, 298, 306, 307, 309, 313], "summary": {"covered_lines": 27, "num_statements": 31, "percent_covered": 87.09677419354838, "percent_covered_display": "87.10", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [275, 276, 277, 280], "excluded_lines": []}, "BackendWorkerAgent.apply_file_changes": {"executed_lines": [332, 334, 335, 336, 337, 340, 341, 344, 345, 346, 347, 348, 351, 352, 353, 356, 359, 360, 362, 363, 364, 366, 367, 369, 371, 372], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BackendWorkerAgent.update_task_status": {"executed_lines": [390, 392, 395, 396, 401, 403, 404, 406, 407], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BackendWorkerAgent._run_and_check_linting": {"executed_lines": [423, 427, 430, 432, 436, 437, 438, 441, 443, 446, 449, 450, 460, 496, 497, 501, 519, 521, 523, 525], "summary": {"covered_lines": 20, "num_statements": 43, "percent_covered": 46.51162790697674, "percent_covered_display": "46.51", "missing_lines": 23, "excluded_lines": 0}, "missing_lines": [424, 425, 433, 434, 462, 463, 465, 473, 476, 477, 478, 480, 490, 491, 493, 498, 502, 503, 505, 516, 517, 520, 524], "excluded_lines": []}, "BackendWorkerAgent._run_and_record_tests": {"executed_lines": [542, 543, 546, 549, 550, 553, 554, 555, 558, 561, 572, 579], "summary": {"covered_lines": 10, "num_statements": 16, "percent_covered": 62.5, "percent_covered_display": "62.50", "missing_lines": 6, "excluded_lines": 6}, "missing_lines": [556, 580, 581, 605, 613, 614], "excluded_lines": [561, 572, 587, 600, 601, 603]}, "BackendWorkerAgent._attempt_self_correction": {"executed_lines": [639, 640, 643, 644, 646, 650, 651, 657, 661, 684, 686, 687, 689, 692, 697, 699], "summary": {"covered_lines": 16, "num_statements": 20, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [647, 705, 706, 707], "excluded_lines": []}, "BackendWorkerAgent._self_correction_loop": {"executed_lines": [736, 737, 739, 740, 743, 759, 764, 772, 775, 776, 777, 778, 784, 787, 788, 790, 791, 794, 820, 822, 828, 848, 854, 855, 860, 868], "summary": {"covered_lines": 22, "num_statements": 36, "percent_covered": 61.111111111111114, "percent_covered_display": "61.11", "missing_lines": 14, "excluded_lines": 12}, "missing_lines": [744, 745, 747, 755, 756, 779, 780, 781, 829, 830, 832, 835, 844, 845], "excluded_lines": [716, 786, 790, 791, 794, 795, 796, 801, 809, 817, 818, 820]}, "BackendWorkerAgent.execute_task": {"executed_lines": [895, 896, 897, 899, 901, 902, 905, 908, 911, 914, 917, 920, 921, 923, 924, 930, 932, 934, 940, 948, 949, 952, 968, 969, 970, 977, 978, 979, 980, 982, 984, 985, 992, 994, 995, 997, 998], "summary": {"covered_lines": 31, "num_statements": 36, "percent_covered": 86.11111111111111, "percent_covered_display": "86.11", "missing_lines": 5, "excluded_lines": 6}, "missing_lines": [953, 954, 956, 964, 965], "excluded_lines": [923, 924, 930, 932, 934, 940]}, "BackendWorkerAgent.create_blocker": {"executed_lines": [1026, 1029, 1033, 1034, 1035, 1038, 1041, 1044, 1052, 1055, 1072, 1073, 1074, 1075, 1076, 1077, 1080, 1081, 1082, 1084, 1103, 1111], "summary": {"covered_lines": 22, "num_statements": 34, "percent_covered": 64.70588235294117, "percent_covered_display": "64.71", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [1027, 1030, 1056, 1057, 1059, 1068, 1069, 1086, 1093, 1101, 1107, 1109], "excluded_lines": []}, "BackendWorkerAgent.wait_for_blocker_resolution": {"executed_lines": [1140, 1142, 1143, 1145, 1147, 1149, 1151, 1155, 1156, 1157, 1160, 1161, 1162, 1164, 1176, 1179, 1180, 1183], "summary": {"covered_lines": 18, "num_statements": 21, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [1152, 1173, 1174], "excluded_lines": []}, "BackendWorkerAgent.create_blocker_and_wait": {"executed_lines": [1243, 1244, 1247, 1251, 1254, 1258, 1261, 1268], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 31, 34, 35, 55, 98, 155, 200, 315, 374, 409, 527, 616, 713, 870, 1005, 1113, 1185], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"BackendWorkerAgent": {"executed_lines": [80, 81, 82, 83, 84, 85, 86, 89, 92, 132, 133, 143, 144, 145, 146, 150, 152, 153, 175, 178, 181, 184, 185, 186, 188, 193, 223, 225, 226, 227, 228, 231, 260, 268, 269, 270, 271, 272, 274, 282, 283, 284, 285, 288, 290, 291, 294, 296, 298, 306, 307, 309, 313, 332, 334, 335, 336, 337, 340, 341, 344, 345, 346, 347, 348, 351, 352, 353, 356, 359, 360, 362, 363, 364, 366, 367, 369, 371, 372, 390, 392, 395, 396, 401, 403, 404, 406, 407, 423, 427, 430, 432, 436, 437, 438, 441, 443, 446, 449, 450, 460, 496, 497, 501, 519, 521, 523, 525, 542, 543, 546, 549, 550, 553, 554, 555, 558, 561, 572, 579, 639, 640, 643, 644, 646, 650, 651, 657, 661, 684, 686, 687, 689, 692, 697, 699, 736, 737, 739, 740, 743, 759, 764, 772, 775, 776, 777, 778, 784, 787, 788, 790, 791, 794, 820, 822, 828, 848, 854, 855, 860, 868, 895, 896, 897, 899, 901, 902, 905, 908, 911, 914, 917, 920, 921, 923, 924, 930, 932, 934, 940, 948, 949, 952, 968, 969, 970, 977, 978, 979, 980, 982, 984, 985, 992, 994, 995, 997, 998, 1026, 1029, 1033, 1034, 1035, 1038, 1041, 1044, 1052, 1055, 1072, 1073, 1074, 1075, 1076, 1077, 1080, 1081, 1082, 1084, 1103, 1111, 1140, 1142, 1143, 1145, 1147, 1149, 1151, 1155, 1156, 1157, 1160, 1161, 1162, 1164, 1176, 1179, 1180, 1183, 1243, 1244, 1247, 1251, 1254, 1258, 1261, 1268], "summary": {"covered_lines": 235, "num_statements": 307, "percent_covered": 76.54723127035831, "percent_covered_display": "76.55", "missing_lines": 72, "excluded_lines": 24}, "missing_lines": [90, 275, 276, 277, 280, 424, 425, 433, 434, 462, 463, 465, 473, 476, 477, 478, 480, 490, 491, 493, 498, 502, 503, 505, 516, 517, 520, 524, 556, 580, 581, 605, 613, 614, 647, 705, 706, 707, 744, 745, 747, 755, 756, 779, 780, 781, 829, 830, 832, 835, 844, 845, 953, 954, 956, 964, 965, 1027, 1030, 1056, 1057, 1059, 1068, 1069, 1086, 1093, 1101, 1107, 1109, 1152, 1173, 1174], "excluded_lines": [561, 572, 587, 600, 601, 603, 716, 786, 790, 791, 794, 795, 796, 801, 809, 817, 818, 820, 923, 924, 930, 932, 934, 940]}, "": {"executed_lines": [1, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 31, 34, 35, 55, 98, 155, 200, 315, 374, 409, 527, 616, 713, 870, 1005, 1113, 1185], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/definition_loader.py": {"executed_lines": [1, 94, 95, 96, 97, 99, 100, 103, 104, 105, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 137, 138, 140, 141, 143, 144, 147, 154, 155, 158, 162, 166, 170, 171, 178, 180, 182, 200, 201, 203, 204, 206, 209, 210, 211, 213, 218, 219, 220, 221, 222, 224, 228, 230, 241, 242, 244, 245, 248, 249, 250, 251, 252, 253, 254, 260, 273, 276, 278, 291, 292, 297, 299, 317, 320, 329, 331, 333, 340, 342, 352, 356, 366, 367], "summary": {"covered_lines": 81, "num_statements": 89, "percent_covered": 91.01123595505618, "percent_covered_display": "91.01", "missing_lines": 8, "excluded_lines": 1}, "missing_lines": [148, 159, 163, 167, 214, 215, 225, 226], "excluded_lines": [302], "functions": {"AgentDefinition.validate": {"executed_lines": [137, 138, 140, 141, 143, 144, 147, 154, 155, 158, 162, 166], "summary": {"covered_lines": 12, "num_statements": 16, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [148, 159, 163, 167], "excluded_lines": []}, "AgentDefinitionLoader.__init__": {"executed_lines": [180], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentDefinitionLoader.load_definitions": {"executed_lines": [200, 201, 203, 204, 206, 209, 210, 211, 213, 218, 219, 220, 221, 222, 224, 228], "summary": {"covered_lines": 16, "num_statements": 20, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [214, 215, 225, 226], "excluded_lines": []}, "AgentDefinitionLoader._load_definition_file": {"executed_lines": [241, 242, 244, 245, 248, 249, 250, 251, 252, 253, 254, 260, 273, 276], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentDefinitionLoader.get_definition": {"executed_lines": [291, 292, 297], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentDefinitionLoader.create_agent": {"executed_lines": [317, 320, 329, 331], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [302]}, "AgentDefinitionLoader.list_available_types": {"executed_lines": [340], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentDefinitionLoader.get_definitions_by_type": {"executed_lines": [352], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentDefinitionLoader.reload_definitions": {"executed_lines": [366, 367], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 94, 95, 96, 97, 99, 100, 103, 104, 105, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 170, 171, 178, 182, 230, 278, 299, 333, 342, 356], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AgentDefinition": {"executed_lines": [137, 138, 140, 141, 143, 144, 147, 154, 155, 158, 162, 166], "summary": {"covered_lines": 12, "num_statements": 16, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [148, 159, 163, 167], "excluded_lines": []}, "AgentDefinitionLoader": {"executed_lines": [180, 200, 201, 203, 204, 206, 209, 210, 211, 213, 218, 219, 220, 221, 222, 224, 228, 241, 242, 244, 245, 248, 249, 250, 251, 252, 253, 254, 260, 273, 276, 291, 292, 297, 317, 320, 329, 331, 340, 352, 366, 367], "summary": {"covered_lines": 42, "num_statements": 46, "percent_covered": 91.30434782608695, "percent_covered_display": "91.30", "missing_lines": 4, "excluded_lines": 1}, "missing_lines": [214, 215, 225, 226], "excluded_lines": [302]}, "": {"executed_lines": [1, 94, 95, 96, 97, 99, 100, 103, 104, 105, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 170, 171, 178, 182, 230, 278, 299, 333, 342, 356], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/dependency_resolver.py": {"executed_lines": [1, 8, 9, 10, 12, 14, 17, 18, 30, 33, 36, 39, 42, 44, 55, 56, 57, 58, 61, 62, 63, 64, 67, 68, 71, 73, 75, 77, 79, 80, 88, 89, 90, 91, 94, 96, 97, 98, 102, 103, 108, 109, 112, 113, 114, 116, 121, 131, 133, 135, 136, 139, 141, 143, 144, 146, 148, 150, 161, 164, 166, 167, 169, 170, 171, 173, 177, 179, 187, 188, 190, 192, 193, 196, 197, 198, 199, 200, 202, 204, 205, 208, 209, 210, 211, 213, 215, 229, 230, 233, 234, 237, 240, 241, 243, 244, 247, 249, 251, 259, 264, 266, 268, 270, 271, 274, 275, 276, 277, 280, 281, 287, 297, 301, 302, 303, 305, 306, 307, 308, 310, 312, 319, 321, 322, 323, 325, 326, 328, 329, 330, 332, 334, 341, 342, 344, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 363, 364, 365, 366, 367, 371, 373, 374, 375, 376], "summary": {"covered_lines": 155, "num_statements": 164, "percent_covered": 94.51219512195122, "percent_covered_display": "94.51", "missing_lines": 9, "excluded_lines": 2}, "missing_lines": [81, 82, 85, 284, 285, 298, 360, 361, 369], "excluded_lines": [60, 66], "functions": {"DependencyResolver.__init__": {"executed_lines": [33, 36, 39, 42], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.build_dependency_graph": {"executed_lines": [55, 56, 57, 58, 61, 62, 63, 64, 67, 68, 71, 73, 75, 77, 79, 80, 88, 89, 90, 91, 94, 96, 97, 98, 102, 103, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 32, "num_statements": 35, "percent_covered": 91.42857142857143, "percent_covered_display": "91.43", "missing_lines": 3, "excluded_lines": 2}, "missing_lines": [81, 82, 85], "excluded_lines": [60, 66]}, "DependencyResolver.get_ready_tasks": {"executed_lines": [131, 133, 135, 136, 139, 141, 143, 144, 146, 148], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.unblock_dependent_tasks": {"executed_lines": [161, 164, 166, 167, 169, 170, 171, 173, 177], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.detect_cycles": {"executed_lines": [187, 188, 190, 208, 209, 210, 211, 213], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.detect_cycles.has_cycle": {"executed_lines": [192, 193, 196, 197, 198, 199, 200, 202, 204, 205], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.validate_dependency": {"executed_lines": [229, 230, 233, 234, 237, 240, 241, 243, 244, 247, 249], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver.topological_sort": {"executed_lines": [259, 264, 266, 268, 270, 271, 274, 275, 276, 277, 280, 281], "summary": {"covered_lines": 12, "num_statements": 14, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [284, 285], "excluded_lines": []}, "DependencyResolver.get_dependency_depth": {"executed_lines": [297, 301, 302, 303, 305, 306, 307, 308, 310], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [298], "excluded_lines": []}, "DependencyResolver.get_blocked_tasks": {"executed_lines": [319, 321, 322, 323, 325, 326, 328, 329, 330, 332], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DependencyResolver._find_cycle_details": {"executed_lines": [341, 342, 344, 363, 364, 365, 366, 367], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 88.88888888888889, "percent_covered_display": "88.89", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [369], "excluded_lines": []}, "DependencyResolver._find_cycle_details.find_cycle_from": {"executed_lines": [346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358], "summary": {"covered_lines": 11, "num_statements": 13, "percent_covered": 84.61538461538461, "percent_covered_display": "84.62", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [360, 361], "excluded_lines": []}, "DependencyResolver.clear": {"executed_lines": [373, 374, 375, 376], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 12, 14, 17, 18, 30, 44, 121, 150, 179, 215, 251, 287, 312, 334, 371], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"DependencyResolver": {"executed_lines": [33, 36, 39, 42, 55, 56, 57, 58, 61, 62, 63, 64, 67, 68, 71, 73, 75, 77, 79, 80, 88, 89, 90, 91, 94, 96, 97, 98, 102, 103, 108, 109, 112, 113, 114, 116, 131, 133, 135, 136, 139, 141, 143, 144, 146, 148, 161, 164, 166, 167, 169, 170, 171, 173, 177, 187, 188, 190, 192, 193, 196, 197, 198, 199, 200, 202, 204, 205, 208, 209, 210, 211, 213, 229, 230, 233, 234, 237, 240, 241, 243, 244, 247, 249, 259, 264, 266, 268, 270, 271, 274, 275, 276, 277, 280, 281, 297, 301, 302, 303, 305, 306, 307, 308, 310, 319, 321, 322, 323, 325, 326, 328, 329, 330, 332, 341, 342, 344, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 363, 364, 365, 366, 367, 373, 374, 375, 376], "summary": {"covered_lines": 138, "num_statements": 147, "percent_covered": 93.87755102040816, "percent_covered_display": "93.88", "missing_lines": 9, "excluded_lines": 2}, "missing_lines": [81, 82, 85, 284, 285, 298, 360, 361, 369], "excluded_lines": [60, 66]}, "": {"executed_lines": [1, 8, 9, 10, 12, 14, 17, 18, 30, 44, 121, 150, 179, 215, 251, 287, 312, 334, 371], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/factory.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 13, 14, 28, 36, 39, 41, 46, 47, 48, 49, 58, 84, 85, 86, 87, 88, 93, 96, 106, 107, 108, 109, 111, 113, 115, 126, 128, 145, 146, 147, 148, 149, 150, 154, 171, 173, 179, 180, 181, 183, 197, 198], "summary": {"covered_lines": 47, "num_statements": 53, "percent_covered": 88.67924528301887, "percent_covered_display": "88.68", "missing_lines": 6, "excluded_lines": 1}, "missing_lines": [43, 50, 51, 54, 55, 56], "excluded_lines": [61], "functions": {"AgentFactory.__init__": {"executed_lines": [36, 39, 41, 46, 47, 48, 49], "summary": {"covered_lines": 7, "num_statements": 13, "percent_covered": 53.84615384615385, "percent_covered_display": "53.85", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [43, 50, 51, 54, 55, 56], "excluded_lines": []}, "AgentFactory.create_agent": {"executed_lines": [84, 85, 86, 87, 88, 93, 96, 106, 107, 108, 109, 111, 113], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [61]}, "AgentFactory.list_available_agents": {"executed_lines": [126], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentFactory.get_agent_capabilities": {"executed_lines": [145, 146, 147, 148, 149, 150], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentFactory.get_agent_definition": {"executed_lines": [171], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentFactory.reload_definitions": {"executed_lines": [179, 180, 181], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentFactory.get_agents_by_type": {"executed_lines": [197, 198], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 13, 14, 28, 58, 115, 128, 154, 173, 183], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AgentFactory": {"executed_lines": [36, 39, 41, 46, 47, 48, 49, 84, 85, 86, 87, 88, 93, 96, 106, 107, 108, 109, 111, 113, 126, 145, 146, 147, 148, 149, 150, 171, 179, 180, 181, 197, 198], "summary": {"covered_lines": 33, "num_statements": 39, "percent_covered": 84.61538461538461, "percent_covered_display": "84.62", "missing_lines": 6, "excluded_lines": 1}, "missing_lines": [43, 50, 51, 54, 55, 56], "excluded_lines": [61]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 13, 14, 28, 58, 115, 128, 154, 173, 183], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/frontend_worker_agent.py": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 34, 56, 65, 66, 67, 68, 69, 70, 72, 74, 94, 105, 107, 109, 110, 111, 113, 124, 127, 130, 133, 134, 136, 139, 144, 147, 150, 151, 152, 154, 165, 168, 169, 171, 174, 182, 187, 188, 189, 194, 201, 202, 205, 219, 221, 232, 233, 234, 235, 236, 237, 241, 242, 245, 246, 247, 248, 249, 251, 252, 254, 259, 260, 262, 269, 279, 281, 283, 297, 298, 305, 308, 313, 315, 316, 317, 319, 329, 330, 332, 351, 363, 365, 380, 383, 386, 387, 393, 396, 397, 398, 400, 402, 405, 406, 407, 409, 410, 411, 412, 414, 416, 418, 427, 429, 431, 436, 437, 438, 443, 460, 465, 471, 475, 476, 477, 478, 481, 483, 488, 491, 492, 493, 503, 540, 541, 545, 546, 547, 560, 561, 571, 594, 599, 604, 607, 611, 612, 613, 616, 627, 635, 638, 655, 656, 657, 658, 659, 660, 663, 664, 665, 667, 686, 694, 696, 725, 730, 735, 737, 738, 740, 742, 744, 746, 750, 751, 752, 755, 774, 777, 778, 783, 841, 842, 845, 849, 852, 856, 859, 866], "summary": {"covered_lines": 191, "num_statements": 252, "percent_covered": 75.7936507936508, "percent_covered_display": "75.79", "missing_lines": 61, "excluded_lines": 1}, "missing_lines": [121, 122, 162, 163, 190, 192, 206, 207, 209, 216, 217, 309, 310, 311, 461, 462, 472, 473, 505, 506, 508, 509, 517, 520, 521, 522, 524, 534, 535, 537, 542, 549, 563, 564, 565, 567, 568, 569, 595, 600, 605, 608, 639, 640, 642, 651, 652, 669, 676, 684, 690, 692, 726, 731, 747, 756, 757, 759, 771, 772, 781], "excluded_lines": [237], "functions": {"FrontendWorkerAgent.__init__": {"executed_lines": [56, 65, 66, 67, 68, 69, 70], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent._build_system_prompt": {"executed_lines": [74], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent.execute_task": {"executed_lines": [105, 107, 109, 110, 111, 113, 124, 127, 130, 133, 134, 136, 139, 144, 147, 150, 151, 152, 154, 165, 168, 169, 171, 174, 182, 187, 188, 189, 194, 201, 202, 205, 219], "summary": {"covered_lines": 33, "num_statements": 44, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [121, 122, 162, 163, 190, 192, 206, 207, 209, 216, 217], "excluded_lines": []}, "FrontendWorkerAgent._parse_component_spec": {"executed_lines": [232, 233, 234, 235, 236, 237, 241, 242, 245, 246, 247, 248, 249, 251, 252, 254, 259, 260, 262], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [237]}, "FrontendWorkerAgent._generate_react_component": {"executed_lines": [279, 281, 283, 297, 298, 305, 308, 313, 315, 316, 317], "summary": {"covered_lines": 11, "num_statements": 14, "percent_covered": 78.57142857142857, "percent_covered_display": "78.57", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [309, 310, 311], "excluded_lines": []}, "FrontendWorkerAgent._generate_basic_component_template": {"executed_lines": [329, 330, 332], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent._generate_typescript_types": {"executed_lines": [363], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent._create_component_files": {"executed_lines": [380, 383, 386, 387, 393, 396, 397, 398, 400, 402, 405, 406, 407, 409, 410, 411, 412, 414, 416], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent._update_imports_exports": {"executed_lines": [427, 429, 431, 436, 437, 438], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FrontendWorkerAgent._run_and_check_linting": {"executed_lines": [460, 465, 471, 475, 476, 477, 478, 481, 483, 488, 491, 492, 493, 503, 540, 541, 545, 546, 547, 560, 561], "summary": {"covered_lines": 21, "num_statements": 45, "percent_covered": 46.666666666666664, "percent_covered_display": "46.67", "missing_lines": 24, "excluded_lines": 0}, "missing_lines": [461, 462, 472, 473, 505, 506, 508, 509, 517, 520, 521, 522, 524, 534, 535, 537, 542, 549, 563, 564, 565, 567, 568, 569], "excluded_lines": []}, "FrontendWorkerAgent.create_blocker": {"executed_lines": [594, 599, 604, 607, 611, 612, 613, 616, 627, 635, 638, 655, 656, 657, 658, 659, 660, 663, 664, 665, 667, 686, 694], "summary": {"covered_lines": 23, "num_statements": 37, "percent_covered": 62.16216216216216, "percent_covered_display": "62.16", "missing_lines": 14, "excluded_lines": 0}, "missing_lines": [595, 600, 605, 608, 639, 640, 642, 651, 652, 669, 676, 684, 690, 692], "excluded_lines": []}, "FrontendWorkerAgent.wait_for_blocker_resolution": {"executed_lines": [725, 730, 735, 737, 738, 740, 742, 744, 746, 750, 751, 752, 755, 774, 777, 778], "summary": {"covered_lines": 16, "num_statements": 25, "percent_covered": 64.0, "percent_covered_display": "64.00", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [726, 731, 747, 756, 757, 759, 771, 772, 781], "excluded_lines": []}, "FrontendWorkerAgent.create_blocker_and_wait": {"executed_lines": [841, 842, 845, 849, 852, 856, 859, 866], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 34, 72, 94, 221, 269, 319, 351, 365, 418, 443, 571, 696, 783], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"FrontendWorkerAgent": {"executed_lines": [56, 65, 66, 67, 68, 69, 70, 74, 105, 107, 109, 110, 111, 113, 124, 127, 130, 133, 134, 136, 139, 144, 147, 150, 151, 152, 154, 165, 168, 169, 171, 174, 182, 187, 188, 189, 194, 201, 202, 205, 219, 232, 233, 234, 235, 236, 237, 241, 242, 245, 246, 247, 248, 249, 251, 252, 254, 259, 260, 262, 279, 281, 283, 297, 298, 305, 308, 313, 315, 316, 317, 329, 330, 332, 363, 380, 383, 386, 387, 393, 396, 397, 398, 400, 402, 405, 406, 407, 409, 410, 411, 412, 414, 416, 427, 429, 431, 436, 437, 438, 460, 465, 471, 475, 476, 477, 478, 481, 483, 488, 491, 492, 493, 503, 540, 541, 545, 546, 547, 560, 561, 594, 599, 604, 607, 611, 612, 613, 616, 627, 635, 638, 655, 656, 657, 658, 659, 660, 663, 664, 665, 667, 686, 694, 725, 730, 735, 737, 738, 740, 742, 744, 746, 750, 751, 752, 755, 774, 777, 778, 841, 842, 845, 849, 852, 856, 859, 866], "summary": {"covered_lines": 167, "num_statements": 228, "percent_covered": 73.24561403508773, "percent_covered_display": "73.25", "missing_lines": 61, "excluded_lines": 1}, "missing_lines": [121, 122, 162, 163, 190, 192, 206, 207, 209, 216, 217, 309, 310, 311, 461, 462, 472, 473, 505, 506, 508, 509, 517, 520, 521, 522, 524, 534, 535, 537, 542, 549, 563, 564, 565, 567, 568, 569, 595, 600, 605, 608, 639, 640, 642, 651, 652, 669, 676, 684, 690, 692, 726, 731, 747, 756, 757, 759, 771, 772, 781], "excluded_lines": [237]}, "": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 34, 72, 94, 221, 269, 319, 351, 365, 418, 443, 571, 696, 783], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/lead_agent.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 24, 27, 28, 37, 59, 60, 65, 66, 67, 70, 71, 74, 77, 84, 85, 88, 89, 90, 92, 93, 98, 99, 100, 101, 102, 103, 104, 113, 115, 116, 117, 118, 119, 126, 129, 131, 133, 140, 143, 144, 145, 152, 153, 155, 169, 170, 172, 174, 177, 185, 192, 195, 198, 201, 209, 210, 215, 217, 219, 223, 224, 225, 227, 229, 231, 234, 235, 236, 239, 240, 241, 242, 243, 244, 247, 248, 249, 250, 251, 253, 255, 260, 261, 263, 264, 265, 267, 269, 271, 279, 280, 287, 292, 302, 303, 306, 308, 309, 310, 312, 313, 319, 331, 336, 337, 338, 341, 348, 351, 352, 353, 354, 355, 358, 360, 361, 362, 363, 370, 387, 394, 396, 397, 401, 402, 406, 407, 408, 411, 412, 413, 416, 417, 418, 420, 421, 422, 424, 426, 439, 451, 452, 458, 461, 463, 465, 472, 473, 476, 477, 483, 491, 493, 494, 496, 497, 498, 500, 502, 547, 555, 557, 559, 561, 562, 565, 566, 568, 574, 579, 584, 654, 676, 811, 853, 890, 910, 916, 917, 918, 921, 922, 923, 929, 935, 937, 943, 965, 971, 972, 973, 976, 977, 982, 983, 984, 987, 990, 993, 994, 997, 999, 1000, 1004, 1009, 1017, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1061, 1065, 1068, 1070, 1071, 1072, 1075, 1076, 1077, 1078, 1082, 1083, 1084, 1085, 1100, 1101, 1103, 1104, 1107, 1108, 1109, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1120, 1121, 1122, 1124, 1125, 1126, 1127, 1130, 1138, 1139, 1140, 1143, 1146, 1147, 1150, 1151, 1154, 1157, 1163, 1164, 1165, 1166, 1167, 1172, 1173, 1176, 1177, 1178, 1181, 1182, 1183, 1184, 1187, 1188, 1191, 1194, 1195, 1196, 1201, 1202, 1204, 1209, 1211, 1214, 1215, 1216, 1217, 1219, 1222, 1223, 1226, 1227, 1228, 1232, 1233, 1235, 1238, 1239, 1259, 1260, 1261, 1262, 1263, 1264, 1274, 1275, 1277, 1286, 1295, 1300, 1302, 1320, 1340, 1342, 1343, 1345, 1348, 1351, 1354, 1357, 1360, 1363, 1367, 1368, 1370, 1371, 1374, 1376, 1383, 1395, 1397, 1398, 1403, 1404, 1407, 1409, 1411, 1412, 1418, 1419, 1420, 1424, 1426, 1446, 1447, 1451, 1453, 1454, 1455, 1458, 1461, 1462, 1465, 1466, 1468, 1470, 1471, 1473, 1481, 1482, 1490, 1492, 1493, 1494, 1498, 1501, 1502, 1510, 1512, 1520, 1521, 1522, 1523, 1525, 1526, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1537, 1540, 1541, 1542, 1545, 1552, 1553, 1559, 1565, 1566, 1567, 1570, 1571, 1572, 1574, 1575, 1578, 1580, 1586, 1587, 1589, 1598, 1600, 1601, 1602, 1603, 1605, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1618, 1619, 1621, 1627, 1628, 1629, 1630, 1631, 1633, 1639, 1640, 1641, 1642, 1643, 1650, 1652, 1658, 1659, 1660, 1662, 1663, 1665, 1667, 1669, 1673, 1675, 1676, 1677, 1763, 1765, 1769, 1771, 1781, 1782], "summary": {"covered_lines": 468, "num_statements": 719, "percent_covered": 65.0904033379694, "percent_covered_display": "65.09", "missing_lines": 251, "excluded_lines": 5}, "missing_lines": [107, 108, 120, 121, 220, 221, 289, 290, 316, 317, 332, 333, 366, 367, 368, 404, 437, 570, 571, 582, 607, 608, 610, 612, 614, 615, 620, 623, 624, 626, 627, 628, 631, 632, 634, 637, 638, 639, 641, 643, 644, 646, 647, 648, 650, 651, 652, 664, 665, 667, 668, 671, 673, 674, 703, 705, 706, 707, 709, 710, 712, 713, 720, 721, 722, 731, 733, 734, 737, 740, 741, 742, 744, 745, 747, 749, 752, 753, 754, 768, 769, 772, 773, 774, 776, 781, 782, 786, 789, 796, 801, 803, 804, 805, 807, 808, 809, 821, 823, 824, 826, 829, 830, 833, 834, 836, 842, 847, 849, 850, 851, 867, 868, 870, 871, 872, 873, 874, 876, 878, 880, 882, 883, 884, 886, 887, 888, 911, 966, 1056, 1057, 1058, 1059, 1079, 1131, 1132, 1133, 1134, 1135, 1168, 1169, 1242, 1243, 1244, 1245, 1247, 1248, 1250, 1253, 1254, 1267, 1269, 1270, 1271, 1304, 1305, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1318, 1384, 1389, 1391, 1392, 1421, 1448, 1474, 1475, 1478, 1483, 1484, 1487, 1503, 1507, 1546, 1547, 1550, 1576, 1606, 1617, 1670, 1671, 1680, 1681, 1682, 1683, 1686, 1687, 1692, 1693, 1694, 1697, 1698, 1701, 1702, 1703, 1704, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1717, 1718, 1719, 1720, 1722, 1723, 1724, 1725, 1728, 1729, 1730, 1731, 1732, 1733, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1745, 1746, 1747, 1749, 1750, 1752, 1753, 1756, 1757, 1758, 1759, 1760, 1761, 1766, 1767, 1783, 1784], "excluded_lines": [20, 21, 577, 1402, 1422], "functions": {"LeadAgent.__init__": {"executed_lines": [59, 60, 65, 66, 67, 70, 71, 74, 77, 84, 85, 88, 89, 90, 92, 93, 98, 99, 100, 101, 102, 103, 104, 113, 115, 116, 117, 118, 119, 126, 129, 131], "summary": {"covered_lines": 32, "num_statements": 36, "percent_covered": 88.88888888888889, "percent_covered_display": "88.89", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [107, 108, 120, 121], "excluded_lines": []}, "LeadAgent.get_conversation_history": {"executed_lines": [140, 143, 144, 145, 152, 153], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent.chat": {"executed_lines": [169, 170, 172, 174, 177, 185, 192, 195, 198, 201, 209, 210, 215, 217, 219, 223, 224, 225], "summary": {"covered_lines": 18, "num_statements": 20, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [220, 221], "excluded_lines": []}, "LeadAgent._load_discovery_state": {"executed_lines": [229, 231, 234, 235, 236, 239, 240, 241, 242, 243, 244, 247, 248, 249, 250, 251, 253, 255, 260, 261, 263, 264, 265], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._save_discovery_state": {"executed_lines": [269, 271, 279, 280, 287], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [289, 290], "excluded_lines": []}, "LeadAgent.start_discovery": {"executed_lines": [302, 303, 306, 308, 309, 310, 312, 313], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [316, 317], "excluded_lines": []}, "LeadAgent.process_discovery_answer": {"executed_lines": [331, 336, 337, 338, 341, 348, 351, 352, 353, 354, 355, 358, 360, 361, 362, 363], "summary": {"covered_lines": 16, "num_statements": 21, "percent_covered": 76.19047619047619, "percent_covered_display": "76.19", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [332, 333, 366, 367, 368], "excluded_lines": []}, "LeadAgent.get_discovery_status": {"executed_lines": [387, 394, 396, 397, 401, 402, 406, 407, 408, 411, 412, 413, 416, 417, 418, 420, 421, 422, 424], "summary": {"covered_lines": 19, "num_statements": 20, "percent_covered": 95.0, "percent_covered_display": "95.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [404], "excluded_lines": []}, "LeadAgent.process_discovery_response": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [437], "excluded_lines": []}, "LeadAgent.generate_prd": {"executed_lines": [451, 452, 458, 461, 463, 465, 472, 473, 476, 477, 483, 491, 493, 494, 496, 497, 498], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._build_prd_prompt": {"executed_lines": [502, 547], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._save_prd_to_file": {"executed_lines": [557, 559, 561, 562, 565, 566, 568], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 77.77777777777777, "percent_covered_display": "77.78", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [570, 571], "excluded_lines": []}, "LeadAgent.assign_task": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [577]}, "LeadAgent.detect_bottlenecks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [582], "excluded_lines": []}, "LeadAgent.generate_issues": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 27, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 27, "excluded_lines": 0}, "missing_lines": [607, 608, 610, 612, 614, 615, 620, 623, 624, 626, 627, 628, 631, 632, 634, 637, 638, 639, 641, 643, 644, 646, 647, 648, 650, 651, 652], "excluded_lines": []}, "LeadAgent._load_prd_from_database": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [664, 665, 667, 668, 671, 673, 674], "excluded_lines": []}, "LeadAgent.decompose_prd": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 43, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 43, "excluded_lines": 0}, "missing_lines": [703, 705, 706, 707, 709, 710, 712, 713, 720, 721, 722, 731, 733, 734, 737, 740, 741, 742, 744, 745, 747, 749, 752, 753, 754, 768, 769, 772, 773, 774, 776, 781, 782, 786, 789, 796, 801, 803, 804, 805, 807, 808, 809], "excluded_lines": []}, "LeadAgent.build_codebase_index": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 14, "excluded_lines": 0}, "missing_lines": [821, 823, 824, 826, 829, 830, 833, 834, 836, 842, 847, 849, 850, 851], "excluded_lines": []}, "LeadAgent.query_codebase": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 16, "excluded_lines": 0}, "missing_lines": [867, 868, 870, 871, 872, 873, 874, 876, 878, 880, 882, 883, 884, 886, 887, 888], "excluded_lines": []}, "LeadAgent.start_issue_work": {"executed_lines": [910, 916, 917, 918, 921, 922, 923, 929, 935, 937], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [911], "excluded_lines": []}, "LeadAgent.complete_issue": {"executed_lines": [965, 971, 972, 973, 976, 977, 982, 983, 984, 987, 990, 993, 994, 997, 999, 1000, 1004, 1009], "summary": {"covered_lines": 18, "num_statements": 19, "percent_covered": 94.73684210526316, "percent_covered_display": "94.74", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [966], "excluded_lines": []}, "LeadAgent.start_multi_agent_execution": {"executed_lines": [1049, 1050, 1051, 1052, 1053, 1054, 1055], "summary": {"covered_lines": 7, "num_statements": 11, "percent_covered": 63.63636363636363, "percent_covered_display": "63.64", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [1056, 1057, 1058, 1059], "excluded_lines": []}, "LeadAgent._execute_coordination_loop": {"executed_lines": [1065, 1068, 1070, 1071, 1072, 1075, 1076, 1077, 1078, 1082, 1083, 1084, 1085, 1100, 1101, 1103, 1104, 1107, 1108, 1109, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1120, 1121, 1122, 1124, 1125, 1126, 1127, 1130, 1138, 1139, 1140, 1143, 1146, 1147, 1150, 1151, 1154, 1157, 1163, 1164, 1165, 1166, 1167, 1172, 1173, 1176, 1177, 1178, 1181, 1182, 1183, 1184, 1187, 1188, 1191, 1194, 1195, 1196, 1201, 1202, 1204, 1209, 1211, 1214, 1215, 1216, 1217, 1219, 1222, 1223, 1226, 1227, 1228, 1232, 1233, 1235, 1238, 1239, 1259, 1260, 1261, 1262, 1263, 1264, 1274, 1275, 1277, 1286, 1295, 1300], "summary": {"covered_lines": 97, "num_statements": 118, "percent_covered": 82.20338983050847, "percent_covered_display": "82.20", "missing_lines": 21, "excluded_lines": 0}, "missing_lines": [1079, 1131, 1132, 1133, 1134, 1135, 1168, 1169, 1242, 1243, 1244, 1245, 1247, 1248, 1250, 1253, 1254, 1267, 1269, 1270, 1271], "excluded_lines": []}, "LeadAgent._emergency_shutdown": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [1304, 1305, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1318], "excluded_lines": []}, "LeadAgent._assign_and_execute_task": {"executed_lines": [1340, 1342, 1343, 1345, 1348, 1351, 1354, 1357, 1360, 1363, 1367, 1368, 1370, 1371, 1374, 1376, 1383, 1395, 1397, 1398, 1403, 1404, 1407, 1409, 1411, 1412, 1418, 1419, 1420, 1424], "summary": {"covered_lines": 30, "num_statements": 35, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 5, "excluded_lines": 2}, "missing_lines": [1384, 1389, 1391, 1392, 1421], "excluded_lines": [1402, 1422]}, "LeadAgent.can_assign_task": {"executed_lines": [1446, 1447, 1451, 1453, 1454, 1455, 1458, 1461, 1462, 1465, 1466, 1468, 1470, 1471, 1473, 1481, 1482, 1490, 1492, 1493, 1494, 1498, 1501, 1502, 1510], "summary": {"covered_lines": 25, "num_statements": 34, "percent_covered": 73.52941176470588, "percent_covered_display": "73.53", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [1448, 1474, 1475, 1478, 1483, 1484, 1487, 1503, 1507], "excluded_lines": []}, "LeadAgent._all_tasks_complete": {"executed_lines": [1520, 1521, 1522, 1523, 1525, 1526, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1537, 1540, 1541, 1542, 1545, 1552, 1553], "summary": {"covered_lines": 21, "num_statements": 24, "percent_covered": 87.5, "percent_covered_display": "87.50", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [1546, 1547, 1550], "excluded_lines": []}, "LeadAgent._get_session_summary": {"executed_lines": [1565, 1566, 1567, 1570, 1571, 1572, 1574, 1575, 1578], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1576], "excluded_lines": []}, "LeadAgent._get_completed_task_ids": {"executed_lines": [1586, 1587], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._format_time_ago": {"executed_lines": [1598, 1600, 1601, 1602, 1603, 1605, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1618, 1619], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 89.47368421052632, "percent_covered_display": "89.47", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1606, 1617], "excluded_lines": []}, "LeadAgent._get_pending_actions": {"executed_lines": [1627, 1628, 1629, 1630, 1631], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._get_blocker_summaries": {"executed_lines": [1639, 1640, 1641, 1642, 1643, 1650], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent._get_progress_percentage": {"executed_lines": [1658, 1659, 1660, 1662, 1663, 1665], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LeadAgent.on_session_start": {"executed_lines": [1669, 1673, 1675, 1676, 1677], "summary": {"covered_lines": 5, "num_statements": 65, "percent_covered": 7.6923076923076925, "percent_covered_display": "7.69", "missing_lines": 60, "excluded_lines": 0}, "missing_lines": [1670, 1671, 1680, 1681, 1682, 1683, 1686, 1687, 1692, 1693, 1694, 1697, 1698, 1701, 1702, 1703, 1704, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1717, 1718, 1719, 1720, 1722, 1723, 1724, 1725, 1728, 1729, 1730, 1731, 1732, 1733, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1745, 1746, 1747, 1749, 1750, 1752, 1753, 1756, 1757, 1758, 1759, 1760, 1761], "excluded_lines": []}, "LeadAgent.on_session_end": {"executed_lines": [1765, 1769, 1771, 1781, 1782], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 55.55555555555556, "percent_covered_display": "55.56", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [1766, 1767, 1783, 1784], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 24, 27, 28, 37, 133, 155, 227, 267, 292, 319, 370, 426, 439, 500, 555, 574, 579, 584, 654, 676, 811, 853, 890, 943, 1017, 1061, 1302, 1320, 1426, 1512, 1559, 1580, 1589, 1621, 1633, 1652, 1667, 1763], "summary": {"covered_lines": 52, "num_statements": 52, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [20, 21]}}, "classes": {"LeadAgent": {"executed_lines": [59, 60, 65, 66, 67, 70, 71, 74, 77, 84, 85, 88, 89, 90, 92, 93, 98, 99, 100, 101, 102, 103, 104, 113, 115, 116, 117, 118, 119, 126, 129, 131, 140, 143, 144, 145, 152, 153, 169, 170, 172, 174, 177, 185, 192, 195, 198, 201, 209, 210, 215, 217, 219, 223, 224, 225, 229, 231, 234, 235, 236, 239, 240, 241, 242, 243, 244, 247, 248, 249, 250, 251, 253, 255, 260, 261, 263, 264, 265, 269, 271, 279, 280, 287, 302, 303, 306, 308, 309, 310, 312, 313, 331, 336, 337, 338, 341, 348, 351, 352, 353, 354, 355, 358, 360, 361, 362, 363, 387, 394, 396, 397, 401, 402, 406, 407, 408, 411, 412, 413, 416, 417, 418, 420, 421, 422, 424, 451, 452, 458, 461, 463, 465, 472, 473, 476, 477, 483, 491, 493, 494, 496, 497, 498, 502, 547, 557, 559, 561, 562, 565, 566, 568, 910, 916, 917, 918, 921, 922, 923, 929, 935, 937, 965, 971, 972, 973, 976, 977, 982, 983, 984, 987, 990, 993, 994, 997, 999, 1000, 1004, 1009, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1065, 1068, 1070, 1071, 1072, 1075, 1076, 1077, 1078, 1082, 1083, 1084, 1085, 1100, 1101, 1103, 1104, 1107, 1108, 1109, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1120, 1121, 1122, 1124, 1125, 1126, 1127, 1130, 1138, 1139, 1140, 1143, 1146, 1147, 1150, 1151, 1154, 1157, 1163, 1164, 1165, 1166, 1167, 1172, 1173, 1176, 1177, 1178, 1181, 1182, 1183, 1184, 1187, 1188, 1191, 1194, 1195, 1196, 1201, 1202, 1204, 1209, 1211, 1214, 1215, 1216, 1217, 1219, 1222, 1223, 1226, 1227, 1228, 1232, 1233, 1235, 1238, 1239, 1259, 1260, 1261, 1262, 1263, 1264, 1274, 1275, 1277, 1286, 1295, 1300, 1340, 1342, 1343, 1345, 1348, 1351, 1354, 1357, 1360, 1363, 1367, 1368, 1370, 1371, 1374, 1376, 1383, 1395, 1397, 1398, 1403, 1404, 1407, 1409, 1411, 1412, 1418, 1419, 1420, 1424, 1446, 1447, 1451, 1453, 1454, 1455, 1458, 1461, 1462, 1465, 1466, 1468, 1470, 1471, 1473, 1481, 1482, 1490, 1492, 1493, 1494, 1498, 1501, 1502, 1510, 1520, 1521, 1522, 1523, 1525, 1526, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1537, 1540, 1541, 1542, 1545, 1552, 1553, 1565, 1566, 1567, 1570, 1571, 1572, 1574, 1575, 1578, 1586, 1587, 1598, 1600, 1601, 1602, 1603, 1605, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1618, 1619, 1627, 1628, 1629, 1630, 1631, 1639, 1640, 1641, 1642, 1643, 1650, 1658, 1659, 1660, 1662, 1663, 1665, 1669, 1673, 1675, 1676, 1677, 1765, 1769, 1771, 1781, 1782], "summary": {"covered_lines": 416, "num_statements": 667, "percent_covered": 62.3688155922039, "percent_covered_display": "62.37", "missing_lines": 251, "excluded_lines": 3}, "missing_lines": [107, 108, 120, 121, 220, 221, 289, 290, 316, 317, 332, 333, 366, 367, 368, 404, 437, 570, 571, 582, 607, 608, 610, 612, 614, 615, 620, 623, 624, 626, 627, 628, 631, 632, 634, 637, 638, 639, 641, 643, 644, 646, 647, 648, 650, 651, 652, 664, 665, 667, 668, 671, 673, 674, 703, 705, 706, 707, 709, 710, 712, 713, 720, 721, 722, 731, 733, 734, 737, 740, 741, 742, 744, 745, 747, 749, 752, 753, 754, 768, 769, 772, 773, 774, 776, 781, 782, 786, 789, 796, 801, 803, 804, 805, 807, 808, 809, 821, 823, 824, 826, 829, 830, 833, 834, 836, 842, 847, 849, 850, 851, 867, 868, 870, 871, 872, 873, 874, 876, 878, 880, 882, 883, 884, 886, 887, 888, 911, 966, 1056, 1057, 1058, 1059, 1079, 1131, 1132, 1133, 1134, 1135, 1168, 1169, 1242, 1243, 1244, 1245, 1247, 1248, 1250, 1253, 1254, 1267, 1269, 1270, 1271, 1304, 1305, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1318, 1384, 1389, 1391, 1392, 1421, 1448, 1474, 1475, 1478, 1483, 1484, 1487, 1503, 1507, 1546, 1547, 1550, 1576, 1606, 1617, 1670, 1671, 1680, 1681, 1682, 1683, 1686, 1687, 1692, 1693, 1694, 1697, 1698, 1701, 1702, 1703, 1704, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1717, 1718, 1719, 1720, 1722, 1723, 1724, 1725, 1728, 1729, 1730, 1731, 1732, 1733, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1745, 1746, 1747, 1749, 1750, 1752, 1753, 1756, 1757, 1758, 1759, 1760, 1761, 1766, 1767, 1783, 1784], "excluded_lines": [577, 1402, 1422]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 24, 27, 28, 37, 133, 155, 227, 267, 292, 319, 370, 426, 439, 500, 555, 574, 579, 584, 654, 676, 811, 853, 890, 943, 1017, 1061, 1302, 1320, 1426, 1512, 1559, 1580, 1589, 1621, 1633, 1652, 1667, 1763], "summary": {"covered_lines": 52, "num_statements": 52, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [20, 21]}}}, "codeframe/agents/review_agent.py": {"executed_lines": [1, 34, 35, 36, 38, 45, 47, 50, 51, 52, 67, 68, 69, 72, 73, 111, 131, 132, 133, 134, 136, 177, 180, 181, 182, 183, 190, 191, 192, 197, 200, 201, 204, 209, 211, 212, 214, 216, 218, 224, 226, 232, 266, 267, 271, 272, 274, 317, 320, 323, 326, 328, 330, 377, 380, 393, 394, 395, 408, 411, 420, 422, 438, 452, 454, 496, 499, 500, 502, 504, 505, 506, 520, 522, 524, 575, 578, 579, 581, 582, 598, 600, 619, 620, 621, 622, 625, 651, 652, 653, 654, 655, 656, 659, 692, 697, 701, 706, 709, 710, 711, 715, 716, 717, 719, 721, 724, 732, 734, 756, 757, 759, 760, 762, 763, 765, 766, 767, 768, 770, 772, 807, 808], "summary": {"covered_lines": 118, "num_statements": 143, "percent_covered": 82.51748251748252, "percent_covered_display": "82.52", "missing_lines": 25, "excluded_lines": 6}, "missing_lines": [423, 435, 439, 583, 596, 623, 657, 698, 810, 811, 814, 822, 824, 825, 826, 829, 830, 831, 833, 834, 835, 841, 848, 857, 858], "excluded_lines": [52, 67, 137, 336, 411, 778], "functions": {"ReviewAgent.__init__": {"executed_lines": [131, 132, 133, 134], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent.execute_task": {"executed_lines": [177, 180, 181, 182, 183, 190, 191, 192, 197, 200, 201, 204, 209, 211, 212, 214, 216, 218, 224, 226], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [137]}, "ReviewAgent._get_changed_files": {"executed_lines": [266, 267, 271, 272], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent._review_file": {"executed_lines": [317, 320, 323, 326, 328], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent._check_security_issues": {"executed_lines": [377, 380, 393, 394, 395, 408, 411, 420, 422, 438, 452], "summary": {"covered_lines": 10, "num_statements": 13, "percent_covered": 76.92307692307692, "percent_covered_display": "76.92", "missing_lines": 3, "excluded_lines": 2}, "missing_lines": [423, 435, 439], "excluded_lines": [336, 411]}, "ReviewAgent._check_performance_issues": {"executed_lines": [496, 499, 500, 502, 504, 505, 506, 520, 522], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent._check_quality_issues": {"executed_lines": [575, 578, 579, 581, 582, 598], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [583, 596], "excluded_lines": []}, "ReviewAgent._find_line_number": {"executed_lines": [619, 620, 621, 622], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [623], "excluded_lines": []}, "ReviewAgent._extract_snippet": {"executed_lines": [651, 652, 653, 654, 655, 656], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [657], "excluded_lines": []}, "ReviewAgent._create_blocker": {"executed_lines": [692, 697, 701, 706, 709, 710, 711, 715, 716, 717, 719, 721, 724, 732], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [698], "excluded_lines": []}, "ReviewAgent._generate_summary": {"executed_lines": [756, 757, 759, 760, 762, 763, 765, 766, 767, 768, 770], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent._broadcast_review_completed": {"executed_lines": [807, 808], "summary": {"covered_lines": 2, "num_statements": 19, "percent_covered": 10.526315789473685, "percent_covered_display": "10.53", "missing_lines": 17, "excluded_lines": 1}, "missing_lines": [810, 811, 814, 822, 824, 825, 826, 829, 830, 831, 833, 834, 835, 841, 848, 857, 858], "excluded_lines": [778]}, "": {"executed_lines": [1, 34, 35, 36, 38, 45, 47, 50, 51, 52, 67, 68, 69, 72, 73, 111, 136, 232, 274, 330, 454, 524, 600, 625, 659, 734, 772], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [52, 67]}}, "classes": {"ReviewResult": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewAgent": {"executed_lines": [131, 132, 133, 134, 177, 180, 181, 182, 183, 190, 191, 192, 197, 200, 201, 204, 209, 211, 212, 214, 216, 218, 224, 226, 266, 267, 271, 272, 317, 320, 323, 326, 328, 377, 380, 393, 394, 395, 408, 411, 420, 422, 438, 452, 496, 499, 500, 502, 504, 505, 506, 520, 522, 575, 578, 579, 581, 582, 598, 619, 620, 621, 622, 651, 652, 653, 654, 655, 656, 692, 697, 701, 706, 709, 710, 711, 715, 716, 717, 719, 721, 724, 732, 756, 757, 759, 760, 762, 763, 765, 766, 767, 768, 770, 807, 808], "summary": {"covered_lines": 95, "num_statements": 120, "percent_covered": 79.16666666666667, "percent_covered_display": "79.17", "missing_lines": 25, "excluded_lines": 4}, "missing_lines": [423, 435, 439, 583, 596, 623, 657, 698, 810, 811, 814, 822, 824, 825, 826, 829, 830, 831, 833, 834, 835, 841, 848, 857, 858], "excluded_lines": [137, 336, 411, 778]}, "": {"executed_lines": [1, 34, 35, 36, 38, 45, 47, 50, 51, 52, 67, 68, 69, 72, 73, 111, 136, 232, 274, 330, 454, 524, 600, 625, 659, 734, 772], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [52, 67]}}}, "codeframe/agents/review_worker_agent.py": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 40, 41, 42, 45, 46, 47, 48, 51, 53, 62, 72, 73, 74, 76, 82, 83, 84, 86, 98, 99, 101, 104, 105, 106, 119, 122, 123, 124, 127, 130, 131, 132, 133, 134, 135, 136, 141, 142, 143, 144, 145, 146, 147, 152, 153, 154, 155, 157, 159, 163, 164, 169, 172, 175, 180, 183, 186, 199, 200, 202, 204, 206, 224, 231, 233, 244, 245, 246, 249, 250, 251, 252, 258, 271, 274, 275, 276, 278, 281, 284, 289, 290, 291, 292, 294, 295, 296, 297, 298, 299, 300, 302, 303, 306, 308, 309, 311, 313, 320, 322, 323, 330], "summary": {"covered_lines": 113, "num_statements": 126, "percent_covered": 89.68253968253968, "percent_covered_display": "89.68", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [137, 138, 148, 149, 165, 166, 253, 254, 256, 282, 307, 331, 332], "excluded_lines": [], "functions": {"ReviewWorkerAgent.__init__": {"executed_lines": [62, 72, 73, 74], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewWorkerAgent._initialize_analyzers": {"executed_lines": [82, 83, 84], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewWorkerAgent.execute_task": {"executed_lines": [98, 99, 101, 104, 105, 106, 119, 122, 123, 124, 127, 130, 131, 132, 133, 134, 135, 136, 141, 142, 143, 144, 145, 146, 147, 152, 153, 154, 155, 157, 159, 163, 164, 169, 172, 175, 180, 183, 186, 199, 200, 202, 204], "summary": {"covered_lines": 43, "num_statements": 49, "percent_covered": 87.75510204081633, "percent_covered_display": "87.76", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [137, 138, 148, 149, 165, 166], "excluded_lines": []}, "ReviewWorkerAgent._calculate_overall_score": {"executed_lines": [224, 231], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewWorkerAgent._determine_status": {"executed_lines": [244, 245, 246, 249, 250, 251, 252], "summary": {"covered_lines": 7, "num_statements": 10, "percent_covered": 70.0, "percent_covered_display": "70.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [253, 254, 256], "excluded_lines": []}, "ReviewWorkerAgent._generate_summary": {"executed_lines": [271, 274, 275, 276, 278, 281, 284, 289, 290, 291, 292, 294, 295, 296, 297, 298, 299, 300, 302, 303, 306, 308, 309, 311], "summary": {"covered_lines": 24, "num_statements": 26, "percent_covered": 92.3076923076923, "percent_covered_display": "92.31", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [282, 307], "excluded_lines": []}, "ReviewWorkerAgent._create_review_blocker": {"executed_lines": [320, 322, 323, 330], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [331, 332], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 40, 41, 42, 45, 46, 47, 48, 51, 53, 76, 86, 206, 233, 258, 313], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"ReviewWorkerAgent": {"executed_lines": [62, 72, 73, 74, 82, 83, 84, 98, 99, 101, 104, 105, 106, 119, 122, 123, 124, 127, 130, 131, 132, 133, 134, 135, 136, 141, 142, 143, 144, 145, 146, 147, 152, 153, 154, 155, 157, 159, 163, 164, 169, 172, 175, 180, 183, 186, 199, 200, 202, 204, 224, 231, 244, 245, 246, 249, 250, 251, 252, 271, 274, 275, 276, 278, 281, 284, 289, 290, 291, 292, 294, 295, 296, 297, 298, 299, 300, 302, 303, 306, 308, 309, 311, 320, 322, 323, 330], "summary": {"covered_lines": 87, "num_statements": 100, "percent_covered": 87.0, "percent_covered_display": "87.00", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [137, 138, 148, 149, 165, 166, 253, 254, 256, 282, 307, 331, 332], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 40, 41, 42, 45, 46, 47, 48, 51, 53, 76, 86, 206, 233, 258, 313], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/simple_assignment.py": {"executed_lines": [1, 14, 15, 17, 20, 21, 38, 117, 119, 121, 141, 142, 143, 146, 147, 148, 149, 152, 155, 156, 159, 160, 164, 166, 169, 171, 185, 186, 187, 190, 191, 193, 196, 199, 213, 214], "summary": {"covered_lines": 34, "num_statements": 35, "percent_covered": 97.14285714285714, "percent_covered_display": "97.14", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [194], "excluded_lines": [], "functions": {"SimpleAgentAssigner.__init__": {"executed_lines": [119], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SimpleAgentAssigner.assign_agent_type": {"executed_lines": [141, 142, 143, 146, 147, 148, 149, 152, 155, 156, 159, 160, 164, 166, 169], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SimpleAgentAssigner.get_assignment_explanation": {"executed_lines": [185, 186, 187, 190, 191, 193, 196], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 87.5, "percent_covered_display": "87.50", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [194], "excluded_lines": []}, "assign_task_to_agent": {"executed_lines": [213, 214], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 14, 15, 17, 20, 21, 38, 117, 121, 171, 199], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SimpleAgentAssigner": {"executed_lines": [119, 141, 142, 143, 146, 147, 148, 149, 152, 155, 156, 159, 160, 164, 166, 169, 185, 186, 187, 190, 191, 193, 196], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 95.83333333333333, "percent_covered_display": "95.83", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [194], "excluded_lines": []}, "": {"executed_lines": [1, 14, 15, 17, 20, 21, 38, 117, 121, 171, 199, 213, 214], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/agents/worker_agent.py": {"executed_lines": [1, 3, 4, 7, 8, 12, 22, 23, 24, 25, 26, 27, 28, 29, 31, 64, 69, 102, 131, 144, 147, 150, 151, 154, 161, 163, 177, 180, 188, 189, 194, 195, 197, 199, 211, 215, 218, 219, 221, 223, 266, 382], "summary": {"covered_lines": 40, "num_statements": 112, "percent_covered": 35.714285714285715, "percent_covered_display": "35.71", "missing_lines": 72, "excluded_lines": 11}, "missing_lines": [59, 62, 88, 89, 91, 92, 94, 97, 98, 100, 119, 120, 122, 123, 125, 128, 129, 145, 148, 178, 181, 212, 248, 249, 251, 252, 254, 257, 258, 260, 303, 304, 305, 306, 308, 310, 311, 313, 314, 317, 318, 319, 320, 321, 322, 323, 325, 328, 334, 360, 365, 366, 370, 371, 373, 399, 401, 402, 405, 410, 411, 417, 419, 421, 423, 424, 425, 427, 429, 431, 434, 442], "excluded_lines": [67, 224, 267, 336, 337, 338, 339, 340, 348, 350, 352], "functions": {"WorkerAgent.__init__": {"executed_lines": [22, 23, 24, 25, 26, 27, 28, 29], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WorkerAgent.execute_task": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [59, 62], "excluded_lines": []}, "WorkerAgent.assess_maturity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [67]}, "WorkerAgent.flash_save": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [88, 89, 91, 92, 94, 97, 98, 100], "excluded_lines": []}, "WorkerAgent.should_flash_save": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [119, 120, 122, 123, 125, 128, 129], "excluded_lines": []}, "WorkerAgent.save_context_item": {"executed_lines": [144, 147, 150, 151, 154, 161], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [145, 148], "excluded_lines": []}, "WorkerAgent.load_context": {"executed_lines": [177, 180, 188, 189, 194, 195, 197], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 77.77777777777777, "percent_covered_display": "77.78", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [178, 181], "excluded_lines": []}, "WorkerAgent.get_context_item": {"executed_lines": [211, 215, 218, 219, 221], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [212], "excluded_lines": []}, "WorkerAgent.update_tiers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 1}, "missing_lines": [248, 249, 251, 252, 254, 257, 258, 260], "excluded_lines": [224]}, "WorkerAgent.complete_task": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 25, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 25, "excluded_lines": 9}, "missing_lines": [303, 304, 305, 306, 308, 310, 311, 313, 314, 317, 318, 319, 320, 321, 322, 323, 325, 328, 334, 360, 365, 366, 370, 371, 373], "excluded_lines": [267, 336, 337, 338, 339, 340, 348, 350, 352]}, "WorkerAgent._create_quality_blocker": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 17, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 17, "excluded_lines": 0}, "missing_lines": [399, 401, 402, 405, 410, 411, 417, 419, 421, 423, 424, 425, 427, 429, 431, 434, 442], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 7, 8, 12, 31, 64, 69, 102, 131, 163, 199, 223, 266, 382], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"WorkerAgent": {"executed_lines": [22, 23, 24, 25, 26, 27, 28, 29, 144, 147, 150, 151, 154, 161, 177, 180, 188, 189, 194, 195, 197, 211, 215, 218, 219, 221], "summary": {"covered_lines": 26, "num_statements": 98, "percent_covered": 26.53061224489796, "percent_covered_display": "26.53", "missing_lines": 72, "excluded_lines": 11}, "missing_lines": [59, 62, 88, 89, 91, 92, 94, 97, 98, 100, 119, 120, 122, 123, 125, 128, 129, 145, 148, 178, 181, 212, 248, 249, 251, 252, 254, 257, 258, 260, 303, 304, 305, 306, 308, 310, 311, 313, 314, 317, 318, 319, 320, 321, 322, 323, 325, 328, 334, 360, 365, 366, 370, 371, 373, 399, 401, 402, 405, 410, 411, 417, 419, 421, 423, 424, 425, 427, 429, 431, 434, 442], "excluded_lines": [67, 224, 267, 336, 337, 338, 339, 340, 348, 350, 352]}, "": {"executed_lines": [1, 3, 4, 7, 8, 12, 31, 64, 69, 102, 131, 163, 199, 223, 266, 382], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/cli.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 16, 21, 24, 25, 42, 43, 47, 48, 49, 50, 51, 56, 57, 70, 71, 84, 85, 104, 105, 120, 121, 154, 155, 163, 164, 172, 173, 195, 196, 197, 198, 201, 202, 203, 204, 207, 216, 217, 220, 221, 222, 225, 227, 236, 237, 241, 242, 243, 244, 245, 248, 250, 253, 254, 255, 258, 259, 263, 264, 266, 269, 272, 274, 275, 276, 277, 280, 281, 288], "summary": {"covered_lines": 78, "num_statements": 155, "percent_covered": 50.32258064516129, "percent_covered_display": "50.32", "missing_lines": 77, "excluded_lines": 2}, "missing_lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 52, 53, 61, 62, 63, 64, 65, 66, 67, 75, 76, 77, 78, 79, 80, 81, 89, 90, 91, 92, 94, 95, 96, 97, 99, 100, 101, 110, 111, 112, 113, 114, 115, 116, 117, 127, 128, 129, 131, 132, 133, 134, 135, 136, 138, 139, 140, 141, 142, 143, 146, 147, 149, 150, 151, 160, 169, 229, 230, 231, 232, 233, 234, 246, 247, 283, 285], "excluded_lines": [288, 289], "functions": {"init": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 10, "excluded_lines": 0}, "missing_lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39], "excluded_lines": []}, "start": {"executed_lines": [47, 48, 49, 50, 51], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [52, 53], "excluded_lines": []}, "pause": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [61, 62, 63, 64, 65, 66, 67], "excluded_lines": []}, "resume": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [75, 76, 77, 78, 79, 80, 81], "excluded_lines": []}, "status": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [89, 90, 91, 92, 94, 95, 96, 97, 99, 100, 101], "excluded_lines": []}, "chat": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [110, 111, 112, 113, 114, 115, 116, 117], "excluded_lines": []}, "config": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 20, "excluded_lines": 0}, "missing_lines": [127, 128, 129, 131, 132, 133, 134, 135, 136, 138, 139, 140, 141, 142, 143, 146, 147, 149, 150, 151], "excluded_lines": []}, "checkpoint": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [160], "excluded_lines": []}, "agents": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [169], "excluded_lines": []}, "serve": {"executed_lines": [195, 196, 197, 198, 201, 202, 203, 204, 207, 216, 217, 220, 221, 222, 225, 227, 236, 237, 241, 242, 243, 244, 245, 248, 250, 253, 254, 255], "summary": {"covered_lines": 28, "num_statements": 30, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [246, 247], "excluded_lines": []}, "serve.open_in_browser": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [229, 230, 231, 232, 233, 234], "excluded_lines": []}, "clear_session": {"executed_lines": [263, 264, 266, 269, 272, 274, 275, 276, 277], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "version": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [283, 285], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 16, 21, 24, 25, 42, 43, 56, 57, 70, 71, 84, 85, 104, 105, 120, 121, 154, 155, 163, 164, 172, 173, 258, 259, 280, 281, 288], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [288, 289]}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 16, 21, 24, 25, 42, 43, 47, 48, 49, 50, 51, 56, 57, 70, 71, 84, 85, 104, 105, 120, 121, 154, 155, 163, 164, 172, 173, 195, 196, 197, 198, 201, 202, 203, 204, 207, 216, 217, 220, 221, 222, 225, 227, 236, 237, 241, 242, 243, 244, 245, 248, 250, 253, 254, 255, 258, 259, 263, 264, 266, 269, 272, 274, 275, 276, 277, 280, 281, 288], "summary": {"covered_lines": 78, "num_statements": 155, "percent_covered": 50.32258064516129, "percent_covered_display": "50.32", "missing_lines": 77, "excluded_lines": 2}, "missing_lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 52, 53, 61, 62, 63, 64, 65, 66, 67, 75, 76, 77, 78, 79, 80, 81, 89, 90, 91, 92, 94, 95, 96, 97, 99, 100, 101, 110, 111, 112, 113, 114, 115, 116, 117, 127, 128, 129, 131, 132, 133, 134, 135, 136, 138, 139, 140, 141, 142, 143, 146, 147, 149, 150, 151, 160, 169, 229, 230, 231, 232, 233, 234, 246, 247, 283, 285], "excluded_lines": [288, 289]}}}, "codeframe/context/__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/core/__init__.py": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/core/config.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 21, 22, 24, 25, 28, 29, 31, 32, 33, 34, 37, 38, 40, 41, 42, 43, 46, 47, 49, 50, 53, 54, 56, 57, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 79, 80, 81, 84, 85, 88, 89, 92, 93, 96, 99, 102, 103, 104, 107, 108, 111, 112, 115, 116, 118, 122, 123, 124, 126, 127, 128, 129, 130, 132, 133, 134, 136, 137, 138, 140, 142, 144, 153, 155, 157, 158, 164, 172, 176, 177, 178, 182, 185, 186, 189, 190, 191, 194, 200, 201, 202, 204, 205, 206, 210, 211, 213, 214, 215, 216, 217, 218, 221, 223, 237, 244, 253, 254, 255, 257, 266, 267, 268, 270, 290], "summary": {"covered_lines": 123, "num_statements": 158, "percent_covered": 77.84810126582279, "percent_covered_display": "77.85", "missing_lines": 35, "excluded_lines": 1}, "missing_lines": [166, 167, 207, 225, 226, 228, 229, 231, 232, 233, 235, 239, 240, 241, 242, 272, 273, 274, 277, 278, 279, 280, 281, 284, 287, 288, 292, 293, 294, 296, 297, 298, 299, 300, 302], "excluded_lines": [174], "functions": {"GlobalConfig.validate_log_level": {"executed_lines": [126, 127, 128, 129, 130], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GlobalConfig.validate_port": {"executed_lines": [136, 137, 138], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GlobalConfig.get_cors_origins_list": {"executed_lines": [142], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GlobalConfig.validate_required_for_sprint": {"executed_lines": [153, 155, 157, 158, 164, 172, 176, 177, 178], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [166, 167], "excluded_lines": [174]}, "GlobalConfig.ensure_directories": {"executed_lines": [185, 186, 189, 190, 191], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "load_environment": {"executed_lines": [200, 201, 202, 204, 205, 206], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [207], "excluded_lines": []}, "Config.__init__": {"executed_lines": [214, 215, 216, 217, 218, 221], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Config.load": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [225, 226, 228, 229, 231, 232, 233, 235], "excluded_lines": []}, "Config.save": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [239, 240, 241, 242], "excluded_lines": []}, "Config.get_global": {"executed_lines": [253, 254, 255], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Config.validate_for_sprint": {"executed_lines": [266, 267, 268], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Config.set": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [272, 273, 274, 277, 278, 279, 280, 281, 284, 287, 288], "excluded_lines": []}, "Config.get": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [292, 293, 294, 296, 297, 298, 299, 300, 302], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 21, 22, 24, 25, 28, 29, 31, 32, 33, 34, 37, 38, 40, 41, 42, 43, 46, 47, 49, 50, 53, 54, 56, 57, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 79, 80, 81, 84, 85, 88, 89, 92, 93, 96, 99, 102, 103, 104, 107, 108, 111, 112, 115, 116, 118, 122, 123, 124, 132, 133, 134, 140, 144, 182, 194, 210, 211, 213, 223, 237, 244, 257, 270, 290], "summary": {"covered_lines": 82, "num_statements": 82, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"ProviderConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentPolicyConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "InterruptionConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "NotificationChannelConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "NotificationsConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextManagementConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ProjectConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GlobalConfig": {"executed_lines": [126, 127, 128, 129, 130, 136, 137, 138, 142, 153, 155, 157, 158, 164, 172, 176, 177, 178, 185, 186, 189, 190, 191], "summary": {"covered_lines": 23, "num_statements": 25, "percent_covered": 92.0, "percent_covered_display": "92.00", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [166, 167], "excluded_lines": [174]}, "Config": {"executed_lines": [214, 215, 216, 217, 218, 221, 253, 254, 255, 266, 267, 268], "summary": {"covered_lines": 12, "num_statements": 44, "percent_covered": 27.272727272727273, "percent_covered_display": "27.27", "missing_lines": 32, "excluded_lines": 0}, "missing_lines": [225, 226, 228, 229, 231, 232, 233, 235, 239, 240, 241, 242, 272, 273, 274, 277, 278, 279, 280, 281, 284, 287, 288, 292, 293, 294, 296, 297, 298, 299, 300, 302], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 21, 22, 24, 25, 28, 29, 31, 32, 33, 34, 37, 38, 40, 41, 42, 43, 46, 47, 49, 50, 53, 54, 56, 57, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 79, 80, 81, 84, 85, 88, 89, 92, 93, 96, 99, 102, 103, 104, 107, 108, 111, 112, 115, 116, 118, 122, 123, 124, 132, 133, 134, 140, 144, 182, 194, 200, 201, 202, 204, 205, 206, 210, 211, 213, 223, 237, 244, 257, 270, 290], "summary": {"covered_lines": 88, "num_statements": 89, "percent_covered": 98.87640449438203, "percent_covered_display": "98.88", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [207], "excluded_lines": []}}}, "codeframe/core/models.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 14, 15, 16, 17, 18, 21, 22, 24, 25, 26, 27, 30, 31, 33, 34, 35, 36, 37, 38, 41, 42, 44, 45, 48, 49, 51, 52, 55, 56, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 81, 82, 84, 85, 86, 87, 88, 91, 92, 94, 95, 96, 97, 98, 101, 102, 104, 105, 106, 107, 110, 111, 112, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 130, 131, 132, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, 163, 164, 165, 166, 167, 168, 169, 170, 173, 174, 175, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 190, 191, 192, 194, 195, 196, 197, 198, 201, 202, 203, 205, 206, 207, 208, 209, 210, 211, 214, 215, 216, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 233, 234, 236, 238, 239, 240, 241, 242, 243, 244, 245, 246, 249, 250, 252, 253, 254, 255, 258, 259, 261, 263, 264, 265, 267, 268, 269, 272, 273, 275, 276, 277, 278, 279, 285, 286, 288, 289, 290, 291, 292, 295, 296, 298, 300, 301, 302, 303, 304, 305, 306, 307, 308, 311, 312, 314, 315, 317, 324, 325, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 340, 341, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 358, 361, 362, 364, 365, 366, 367, 368, 369, 370, 371, 372, 378, 379, 402, 403, 404, 405, 406, 409, 410, 435, 436, 437, 438, 439, 440, 446, 447, 463, 464, 465, 466, 467, 468, 469, 470, 472, 473, 477, 478, 482, 494, 495, 510, 513, 516, 517, 518, 519, 520, 522, 524, 531, 533, 534, 536, 537, 539, 542, 543, 560, 561, 562, 563, 564, 565, 566, 567, 568, 570, 571, 575, 576, 578, 580, 581, 583, 585, 587, 588, 590, 591, 594, 595, 596, 597, 598, 599, 601, 603, 611, 612, 614, 616, 623, 624, 625, 627, 628, 630, 632, 635, 636, 638, 643, 648, 653, 659, 665, 672, 691, 692, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 707, 709, 710, 718, 719, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 733, 735, 736, 740, 741, 770, 771, 773, 774, 775, 776, 779, 780, 782, 783, 784, 785, 786, 788, 789, 791, 793, 794, 796, 799, 800, 802, 803, 804, 805, 806, 807, 808, 809, 812, 813, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 826], "summary": {"covered_lines": 387, "num_statements": 410, "percent_covered": 94.39024390243902, "percent_covered_display": "94.39", "missing_lines": 23, "excluded_lines": 6}, "missing_lines": [319, 320, 321, 475, 480, 484, 573, 629, 631, 713, 714, 715, 738, 753, 759, 760, 762, 763, 767, 828, 829, 830, 831], "excluded_lines": [196, 783, 788, 789, 790, 791], "functions": {"BlockerResolve.validate_answer_not_whitespace": {"executed_lines": [267, 268, 269], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextItemCreateModel.validate_content": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [319, 320, 321], "excluded_lines": []}, "LintResult.has_critical_errors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [475], "excluded_lines": []}, "LintResult.total_issues": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [480], "excluded_lines": []}, "LintResult.to_dict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [484], "excluded_lines": []}, "ReviewFinding.to_markdown": {"executed_lines": [524, 531, 533, 534, 536, 537, 539], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewReport.has_critical_findings": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [573], "excluded_lines": []}, "ReviewReport.critical_count": {"executed_lines": [578], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewReport.high_count": {"executed_lines": [583], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewReport.to_blocker_message": {"executed_lines": [587, 588, 590, 591, 594, 595, 596, 597, 598, 599, 601, 603], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryAnswer.validate_answer": {"executed_lines": [627, 628, 630, 632], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [629, 631], "excluded_lines": []}, "CodeReview.is_blocking": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [713, 714, 715], "excluded_lines": []}, "TokenUsage.total_tokens": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [738], "excluded_lines": []}, "TokenUsage.calculate_cost": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [753, 759, 760, 762, 763, 767], "excluded_lines": []}, "QualityGateResult.passed": {"executed_lines": [791], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [790, 791]}, "QualityGateResult.has_critical_failures": {"executed_lines": [796], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Checkpoint.validate_files_exist": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [828, 829, 830, 831], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 14, 15, 16, 17, 18, 21, 22, 24, 25, 26, 27, 30, 31, 33, 34, 35, 36, 37, 38, 41, 42, 44, 45, 48, 49, 51, 52, 55, 56, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 81, 82, 84, 85, 86, 87, 88, 91, 92, 94, 95, 96, 97, 98, 101, 102, 104, 105, 106, 107, 110, 111, 112, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 130, 131, 132, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, 163, 164, 165, 166, 167, 168, 169, 170, 173, 174, 175, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 190, 191, 192, 194, 195, 196, 197, 198, 201, 202, 203, 205, 206, 207, 208, 209, 210, 211, 214, 215, 216, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 233, 234, 236, 238, 239, 240, 241, 242, 243, 244, 245, 246, 249, 250, 252, 253, 254, 255, 258, 259, 261, 263, 264, 265, 272, 273, 275, 276, 277, 278, 279, 285, 286, 288, 289, 290, 291, 292, 295, 296, 298, 300, 301, 302, 303, 304, 305, 306, 307, 308, 311, 312, 314, 315, 317, 324, 325, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 340, 341, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 358, 361, 362, 364, 365, 366, 367, 368, 369, 370, 371, 372, 378, 379, 402, 403, 404, 405, 406, 409, 410, 435, 436, 437, 438, 439, 440, 446, 447, 463, 464, 465, 466, 467, 468, 469, 470, 472, 473, 477, 478, 482, 494, 495, 510, 513, 516, 517, 518, 519, 520, 522, 542, 543, 560, 561, 562, 563, 564, 565, 566, 567, 568, 570, 571, 575, 576, 580, 581, 585, 611, 612, 614, 616, 623, 624, 625, 635, 636, 638, 643, 648, 653, 659, 665, 672, 691, 692, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 707, 709, 710, 718, 719, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 733, 735, 736, 740, 741, 770, 771, 773, 774, 775, 776, 779, 780, 782, 783, 784, 785, 786, 788, 789, 793, 794, 799, 800, 802, 803, 804, 805, 806, 807, 808, 809, 812, 813, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 826], "summary": {"covered_lines": 358, "num_statements": 358, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [196, 783, 788, 789]}}, "classes": {"TaskStatus": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentMaturity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ProjectStatus": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerSeverity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerStatus": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextTier": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Severity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewCategory": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGateType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CallType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Issue": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Task": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Blocker": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextItem": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AgentMetrics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "StateCheckpoint": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Notification": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerModel": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerCreate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerResolve": {"executed_lines": [267, 268, 269], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "BlockerListResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextItemType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextItemModel": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextItemCreateModel": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [319, 320, 321], "excluded_lines": []}, "ContextItemResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextStats": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FlashSaveRequest": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FlashSaveResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextTierUpdated": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FlashSaveCompleted": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LintResult": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [475, 480, 484], "excluded_lines": []}, "ReviewFinding": {"executed_lines": [524, 531, 533, 534, 536, 537, 539], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewReport": {"executed_lines": [578, 583, 587, 588, 590, 591, 594, 595, 596, 597, 598, 599, 601, 603], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [573], "excluded_lines": []}, "DiscoveryAnswer": {"executed_lines": [627, 628, 630, 632], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [629, 631], "excluded_lines": []}, "DiscoveryAnswerResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodeReview": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [713, 714, 715], "excluded_lines": []}, "TokenUsage": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [738, 753, 759, 760, 762, 763, 767], "excluded_lines": []}, "QualityGateFailure": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGateResult": {"executed_lines": [791, 796], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [790, 791]}, "CheckpointMetadata": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Checkpoint": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [828, 829, 830, 831], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 14, 15, 16, 17, 18, 21, 22, 24, 25, 26, 27, 30, 31, 33, 34, 35, 36, 37, 38, 41, 42, 44, 45, 48, 49, 51, 52, 55, 56, 58, 59, 60, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 78, 81, 82, 84, 85, 86, 87, 88, 91, 92, 94, 95, 96, 97, 98, 101, 102, 104, 105, 106, 107, 110, 111, 112, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 130, 131, 132, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, 163, 164, 165, 166, 167, 168, 169, 170, 173, 174, 175, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 190, 191, 192, 194, 195, 196, 197, 198, 201, 202, 203, 205, 206, 207, 208, 209, 210, 211, 214, 215, 216, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 233, 234, 236, 238, 239, 240, 241, 242, 243, 244, 245, 246, 249, 250, 252, 253, 254, 255, 258, 259, 261, 263, 264, 265, 272, 273, 275, 276, 277, 278, 279, 285, 286, 288, 289, 290, 291, 292, 295, 296, 298, 300, 301, 302, 303, 304, 305, 306, 307, 308, 311, 312, 314, 315, 317, 324, 325, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 340, 341, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 358, 361, 362, 364, 365, 366, 367, 368, 369, 370, 371, 372, 378, 379, 402, 403, 404, 405, 406, 409, 410, 435, 436, 437, 438, 439, 440, 446, 447, 463, 464, 465, 466, 467, 468, 469, 470, 472, 473, 477, 478, 482, 494, 495, 510, 513, 516, 517, 518, 519, 520, 522, 542, 543, 560, 561, 562, 563, 564, 565, 566, 567, 568, 570, 571, 575, 576, 580, 581, 585, 611, 612, 614, 616, 623, 624, 625, 635, 636, 638, 643, 648, 653, 659, 665, 672, 691, 692, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 707, 709, 710, 718, 719, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 733, 735, 736, 740, 741, 770, 771, 773, 774, 775, 776, 779, 780, 782, 783, 784, 785, 786, 788, 789, 793, 794, 799, 800, 802, 803, 804, 805, 806, 807, 808, 809, 812, 813, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 826], "summary": {"covered_lines": 358, "num_statements": 358, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [196, 783, 788, 789]}}}, "codeframe/core/port_utils.py": {"executed_lines": [1, 3, 4, 7, 18, 19, 20, 21, 22, 23, 26, 45, 46, 51, 52, 53, 54, 55, 58, 59, 60, 65, 68, 80, 81, 85, 86, 88], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"is_port_available": {"executed_lines": [18, 19, 20, 21, 22, 23], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "check_port_availability": {"executed_lines": [45, 46, 51, 52, 53, 54, 55, 58, 59, 60, 65], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "validate_port_range": {"executed_lines": [80, 81, 85, 86, 88], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 7, 26, 68], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 7, 18, 19, 20, 21, 22, 23, 26, 45, 46, 51, 52, 53, 54, 55, 58, 59, 60, 65, 68, 80, 81, 85, 86, 88], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/core/project.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 19, 20, 61, 68, 74, 138, 149, 156], "summary": {"covered_lines": 15, "num_statements": 71, "percent_covered": 21.12676056338028, "percent_covered_display": "21.13", "missing_lines": 56, "excluded_lines": 0}, "missing_lines": [14, 15, 16, 17, 31, 32, 34, 35, 36, 39, 40, 41, 44, 47, 50, 53, 54, 57, 59, 64, 65, 66, 71, 72, 85, 87, 88, 91, 92, 96, 97, 98, 100, 103, 110, 111, 112, 113, 116, 117, 118, 119, 121, 122, 123, 126, 131, 132, 133, 134, 136, 141, 152, 154, 166, 167], "excluded_lines": [], "functions": {"Project.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [14, 15, 16, 17], "excluded_lines": []}, "Project.create": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 15, "excluded_lines": 0}, "missing_lines": [31, 32, 34, 35, 36, 39, 40, 41, 44, 47, 50, 53, 54, 57, 59], "excluded_lines": []}, "Project.start": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [64, 65, 66], "excluded_lines": []}, "Project.pause": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [71, 72], "excluded_lines": []}, "Project.resume": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 27, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 27, "excluded_lines": 0}, "missing_lines": [85, 87, 88, 91, 92, 96, 97, 98, 100, 103, 110, 111, 112, 113, 116, 117, 118, 119, 121, 122, 123, 126, 131, 132, 133, 134, 136], "excluded_lines": []}, "Project.get_status": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [141], "excluded_lines": []}, "Project.get_lead_agent": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [152, 154], "excluded_lines": []}, "Project.chat": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [166, 167], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 19, 20, 61, 68, 74, 138, 149, 156], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"Project": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 56, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 56, "excluded_lines": 0}, "missing_lines": [14, 15, 16, 17, 31, 32, 34, 35, 36, 39, 40, 41, 44, 47, 50, 53, 54, 57, 59, 64, 65, 66, 71, 72, 85, 87, 88, 91, 92, 96, 97, 98, 100, 103, 110, 111, 112, 113, 116, 117, 118, 119, 121, 122, 123, 126, 131, 132, 133, 134, 136, 141, 152, 154, 166, 167], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 10, 11, 13, 19, 20, 61, 68, 74, 138, 149, 156], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/core/session_manager.py": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 20, 26, 27, 29, 41, 54, 57, 58, 59, 62, 66, 72, 73, 75, 76, 77, 78, 79, 80, 82, 84, 85, 86, 87, 88], "summary": {"covered_lines": 30, "num_statements": 32, "percent_covered": 93.75, "percent_covered_display": "93.75", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [63, 64], "excluded_lines": [], "functions": {"SessionManager.__init__": {"executed_lines": [26, 27], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SessionManager.save_session": {"executed_lines": [41, 54, 57, 58, 59, 62], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [63, 64], "excluded_lines": []}, "SessionManager.load_session": {"executed_lines": [72, 73, 75, 76, 77, 78, 79, 80], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SessionManager.clear_session": {"executed_lines": [84, 85, 86, 87, 88], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 20, 29, 66, 82], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SessionManager": {"executed_lines": [26, 27, 41, 54, 57, 58, 59, 62, 72, 73, 75, 76, 77, 78, 79, 80, 84, 85, 86, 87, 88], "summary": {"covered_lines": 21, "num_statements": 23, "percent_covered": 91.30434782608695, "percent_covered_display": "91.30", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [63, 64], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 20, 29, 66, 82], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/deployment/__init__.py": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/deployment/deployer.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 12, 13, 15, 22, 23, 24, 26, 43, 46, 47, 48, 58, 59, 67, 68, 71, 72, 74, 79, 80, 81, 93, 126, 150, 151, 152, 157, 165, 167, 168, 170], "summary": {"covered_lines": 36, "num_statements": 48, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [88, 89, 102, 103, 104, 105, 114, 115, 116, 117, 153, 154], "excluded_lines": [], "functions": {"Deployer.__init__": {"executed_lines": [22, 23, 24], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Deployer.trigger_deployment": {"executed_lines": [43, 46, 47, 48, 58, 59, 67, 68, 71, 72, 74, 79, 80, 81, 93], "summary": {"covered_lines": 15, "num_statements": 25, "percent_covered": 60.0, "percent_covered_display": "60.00", "missing_lines": 10, "excluded_lines": 0}, "missing_lines": [88, 89, 102, 103, 104, 105, 114, 115, 116, 117], "excluded_lines": []}, "Deployer._record_deployment": {"executed_lines": [150, 151, 152, 157, 165, 167, 168, 170], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [153, 154], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 12, 13, 15, 26, 126], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"Deployer": {"executed_lines": [22, 23, 24, 43, 46, 47, 48, 58, 59, 67, 68, 71, 72, 74, 79, 80, 81, 93, 150, 151, 152, 157, 165, 167, 168, 170], "summary": {"covered_lines": 26, "num_statements": 38, "percent_covered": 68.42105263157895, "percent_covered_display": "68.42", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [88, 89, 102, 103, 104, 105, 114, 115, 116, 117, 153, 154], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 12, 13, 15, 26, 126], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/discovery/__init__.py": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/discovery/answers.py": {"executed_lines": [1, 7, 8, 11, 12, 21, 23, 25, 35, 39, 41, 53, 55, 56, 59, 61, 62, 64, 66, 67, 68, 71, 74, 75, 76, 77, 78, 79, 80, 83, 89, 90, 91, 92, 93, 94, 95, 99, 104, 105, 106, 107, 108, 109, 110, 113, 114, 115, 116, 117, 118, 119, 121, 123, 135, 137, 138, 141, 157, 158, 159, 160, 161, 163, 164, 165, 168, 170, 171, 172, 173, 174, 175, 176, 177, 178, 181, 186, 187, 190, 191, 192, 193, 195, 197, 198, 199, 201, 203, 215, 217, 218, 221, 228, 229, 230, 231, 232, 233, 234, 235, 240, 246, 247, 248, 249, 250, 253, 259, 260, 261, 262, 263, 265, 266, 269, 270, 271, 273, 275, 284, 285, 286, 289, 296, 298, 306, 316, 317, 320, 323, 325], "summary": {"covered_lines": 129, "num_statements": 131, "percent_covered": 98.47328244274809, "percent_covered_display": "98.47", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [196, 237], "excluded_lines": [99], "functions": {"AnswerCapture.__init__": {"executed_lines": [23], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AnswerCapture.capture_answer": {"executed_lines": [35, 39], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AnswerCapture.extract_features": {"executed_lines": [53, 55, 56, 59, 61, 62, 64, 66, 67, 68, 71, 74, 75, 76, 77, 78, 79, 80, 83, 89, 90, 91, 92, 93, 94, 95, 99, 104, 105, 106, 107, 108, 109, 110, 113, 114, 115, 116, 117, 118, 119, 121], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [99]}, "AnswerCapture.extract_users": {"executed_lines": [135, 137, 138, 141, 157, 158, 159, 160, 161, 163, 164, 165, 168, 170, 171, 172, 173, 174, 175, 176, 177, 178, 181, 186, 187, 190, 191, 192, 193, 195, 197, 198, 199, 201], "summary": {"covered_lines": 34, "num_statements": 35, "percent_covered": 97.14285714285714, "percent_covered_display": "97.14", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [196], "excluded_lines": []}, "AnswerCapture.extract_constraints": {"executed_lines": [215, 217, 218, 221, 228, 229, 230, 231, 232, 233, 234, 235, 240, 246, 247, 248, 249, 250, 253, 259, 260, 261, 262, 263, 265, 266, 269, 270, 271, 273], "summary": {"covered_lines": 30, "num_statements": 31, "percent_covered": 96.7741935483871, "percent_covered_display": "96.77", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [237], "excluded_lines": []}, "AnswerCapture.get_structured_data": {"executed_lines": [284, 285, 286, 289, 296, 298], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AnswerCapture._clean_feature_text": {"executed_lines": [316, 317, 320, 323, 325], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 11, 12, 21, 25, 41, 123, 203, 275, 306], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AnswerCapture": {"executed_lines": [23, 35, 39, 53, 55, 56, 59, 61, 62, 64, 66, 67, 68, 71, 74, 75, 76, 77, 78, 79, 80, 83, 89, 90, 91, 92, 93, 94, 95, 99, 104, 105, 106, 107, 108, 109, 110, 113, 114, 115, 116, 117, 118, 119, 121, 135, 137, 138, 141, 157, 158, 159, 160, 161, 163, 164, 165, 168, 170, 171, 172, 173, 174, 175, 176, 177, 178, 181, 186, 187, 190, 191, 192, 193, 195, 197, 198, 199, 201, 215, 217, 218, 221, 228, 229, 230, 231, 232, 233, 234, 235, 240, 246, 247, 248, 249, 250, 253, 259, 260, 261, 262, 263, 265, 266, 269, 270, 271, 273, 284, 285, 286, 289, 296, 298, 316, 317, 320, 323, 325], "summary": {"covered_lines": 119, "num_statements": 121, "percent_covered": 98.34710743801652, "percent_covered_display": "98.35", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [196, 237], "excluded_lines": [99]}, "": {"executed_lines": [1, 7, 8, 11, 12, 21, 25, 41, 123, 203, 275, 306], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/discovery/questions.py": {"executed_lines": [1, 7, 8, 10, 13, 16, 19, 22, 23, 33, 35, 36, 37, 38, 40, 54, 61, 79, 80, 82, 85, 100, 112, 130, 148, 166, 167, 169, 170, 171, 173, 192, 195, 196, 197, 198, 201, 202, 203, 204, 206, 207, 209, 218, 219, 221, 243, 244, 245, 247, 248, 251, 252, 253, 254, 257, 258, 259, 261, 262], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"DiscoveryQuestionFramework.__init__": {"executed_lines": [35, 36, 37, 38], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryQuestionFramework._create_question": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryQuestionFramework.generate_questions": {"executed_lines": [79, 80, 82, 85, 100, 112, 130, 148, 166, 167, 169, 170, 171], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryQuestionFramework.get_next_question": {"executed_lines": [192, 195, 196, 197, 198, 201, 202, 203, 204, 206, 207], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryQuestionFramework._is_answer_valid": {"executed_lines": [218, 219], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DiscoveryQuestionFramework.is_discovery_complete": {"executed_lines": [243, 244, 245, 247, 248, 251, 252, 253, 254, 257, 258, 259, 261, 262], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 13, 16, 19, 22, 23, 33, 40, 61, 173, 209, 221], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"DiscoveryQuestionFramework": {"executed_lines": [35, 36, 37, 38, 54, 79, 80, 82, 85, 100, 112, 130, 148, 166, 167, 169, 170, 171, 192, 195, 196, 197, 198, 201, 202, 203, 204, 206, 207, 218, 219, 243, 244, 245, 247, 248, 251, 252, 253, 254, 257, 258, 259, 261, 262], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 13, 16, 19, 22, 23, 33, 40, 61, 173, 209, 221], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/enforcement/__init__.py": {"executed_lines": [1, 22, 70, 71, 72, 73, 74, 76, 89], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 22, 70, 71, 72, 73, 74, 76, 89], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 22, 70, 71, 72, 73, 74, 76, 89], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/enforcement/adaptive_test_runner.py": {"executed_lines": [1, 11, 12, 13, 14, 15, 16, 18, 20, 24, 62, 63, 64, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 93, 94, 95, 96, 98, 118, 119, 122, 123, 131, 135, 138, 146, 147, 148, 157, 168, 169, 172, 179, 182, 192, 198, 210, 223, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 247, 249, 251, 253, 256, 258, 260, 261, 262, 264, 265, 266, 267, 270, 271, 272, 275, 276, 278, 280, 282, 284, 287, 288, 289, 291, 292, 293, 294, 295, 296, 299, 300, 301, 303, 304, 306, 308, 310, 312, 315, 316, 318, 319, 320, 323, 324, 327, 328, 330, 332, 334, 336, 339, 344, 345, 346, 347, 348, 350, 351, 353, 355, 357, 359, 362, 367, 368, 369, 370, 371, 373, 374, 375, 376, 378, 379, 381, 383, 408], "summary": {"covered_lines": 108, "num_statements": 127, "percent_covered": 85.03937007874016, "percent_covered_display": "85.04", "missing_lines": 19, "excluded_lines": 44}, "missing_lines": [124, 125, 129, 132, 133, 139, 143, 151, 155, 245, 325, 385, 391, 393, 403, 406, 410, 411, 412], "excluded_lines": [68, 70, 73, 80, 198, 211, 223, 253, 255, 256, 260, 264, 267, 274, 276, 284, 286, 288, 293, 294, 304, 312, 315, 318, 320, 328, 336, 338, 339, 345, 348, 351, 359, 376, 379, 387, 395, 396, 397, 398, 399, 400, 401, 404], "functions": {"AdaptiveTestRunner.__init__": {"executed_lines": [94, 95, 96], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AdaptiveTestRunner._parse_command_safely": {"executed_lines": [118, 119, 122, 123, 131, 135, 138, 146, 147, 148], "summary": {"covered_lines": 10, "num_statements": 19, "percent_covered": 52.63157894736842, "percent_covered_display": "52.63", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [124, 125, 129, 132, 133, 139, 143, 151, 155], "excluded_lines": []}, "AdaptiveTestRunner.run_tests": {"executed_lines": [168, 169, 172, 179, 182, 192, 198], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [198]}, "AdaptiveTestRunner._parse_output": {"executed_lines": [223, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 247], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 91.66666666666667, "percent_covered_display": "91.67", "missing_lines": 1, "excluded_lines": 2}, "missing_lines": [245], "excluded_lines": [211, 223]}, "AdaptiveTestRunner._parse_pytest": {"executed_lines": [251, 253, 256, 258, 260, 261, 262, 264, 265, 266, 267, 270, 271, 272, 275, 276, 278], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 8}, "missing_lines": [], "excluded_lines": [253, 255, 256, 260, 264, 267, 274, 276]}, "AdaptiveTestRunner._parse_jest": {"executed_lines": [282, 284, 287, 288, 289, 291, 292, 293, 294, 295, 296, 299, 300, 301, 303, 304, 306], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 6}, "missing_lines": [], "excluded_lines": [284, 286, 288, 293, 294, 304]}, "AdaptiveTestRunner._parse_go_test": {"executed_lines": [310, 312, 315, 316, 318, 319, 320, 323, 324, 327, 328, 330], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 87.5, "percent_covered_display": "87.50", "missing_lines": 1, "excluded_lines": 5}, "missing_lines": [325], "excluded_lines": [312, 315, 318, 320, 328]}, "AdaptiveTestRunner._parse_cargo_test": {"executed_lines": [334, 336, 339, 344, 345, 346, 347, 348, 350, 351, 353], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 6}, "missing_lines": [], "excluded_lines": [336, 338, 339, 345, 348, 351]}, "AdaptiveTestRunner._parse_java_test": {"executed_lines": [357, 359, 362, 367, 368, 369, 370, 371, 373, 374, 375, 376, 378, 379, 381], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 3}, "missing_lines": [], "excluded_lines": [359, 376, 379]}, "AdaptiveTestRunner._parse_generic": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 5, "excluded_lines": 9}, "missing_lines": [385, 391, 393, 403, 406], "excluded_lines": [387, 395, 396, 397, 398, 399, 400, 401, 404]}, "AdaptiveTestRunner.get_language_info": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [410, 411, 412], "excluded_lines": []}, "": {"executed_lines": [1, 11, 12, 13, 14, 15, 16, 18, 20, 24, 62, 63, 64, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 93, 98, 157, 210, 249, 280, 308, 332, 355, 383, 408], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [68, 70, 73, 80]}}, "classes": {"TestResult": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AdaptiveTestRunner": {"executed_lines": [94, 95, 96, 118, 119, 122, 123, 131, 135, 138, 146, 147, 148, 168, 169, 172, 179, 182, 192, 198, 223, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 247, 251, 253, 256, 258, 260, 261, 262, 264, 265, 266, 267, 270, 271, 272, 275, 276, 278, 282, 284, 287, 288, 289, 291, 292, 293, 294, 295, 296, 299, 300, 301, 303, 304, 306, 310, 312, 315, 316, 318, 319, 320, 323, 324, 327, 328, 330, 334, 336, 339, 344, 345, 346, 347, 348, 350, 351, 353, 357, 359, 362, 367, 368, 369, 370, 371, 373, 374, 375, 376, 378, 379, 381], "summary": {"covered_lines": 78, "num_statements": 97, "percent_covered": 80.41237113402062, "percent_covered_display": "80.41", "missing_lines": 19, "excluded_lines": 40}, "missing_lines": [124, 125, 129, 132, 133, 139, 143, 151, 155, 245, 325, 385, 391, 393, 403, 406, 410, 411, 412], "excluded_lines": [198, 211, 223, 253, 255, 256, 260, 264, 267, 274, 276, 284, 286, 288, 293, 294, 304, 312, 315, 318, 320, 328, 336, 338, 339, 345, 348, 351, 359, 376, 379, 387, 395, 396, 397, 398, 399, 400, 401, 404]}, "": {"executed_lines": [1, 11, 12, 13, 14, 15, 16, 18, 20, 24, 62, 63, 64, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 93, 98, 157, 210, 249, 280, 308, 332, 355, 383, 408], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [68, 70, 73, 80]}}}, "codeframe/enforcement/evidence_verifier.py": {"executed_lines": [1, 16, 17, 18, 20, 21, 22, 25, 26, 27, 34, 35, 38, 39, 42, 45, 46, 47, 48, 49, 52, 53, 56, 57, 83, 99, 100, 101, 102, 104, 128, 140, 154, 156, 166, 169, 170, 173, 174, 180, 181, 182, 184, 185, 190, 191, 194, 198, 204, 205, 207, 209, 219, 239, 240, 250, 259, 267, 275, 285, 287, 289], "summary": {"covered_lines": 45, "num_statements": 70, "percent_covered": 64.28571428571429, "percent_covered_display": "64.29", "missing_lines": 25, "excluded_lines": 37}, "missing_lines": [183, 195, 199, 260, 261, 262, 263, 264, 265, 276, 282, 283, 304, 310, 311, 313, 323, 324, 325, 326, 327, 332, 333, 334, 338], "excluded_lines": [1, 39, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 128, 140, 168, 173, 174, 190, 191, 219, 250, 294, 307, 315, 316, 317, 318], "functions": {"EvidenceVerifier.__init__": {"executed_lines": [99, 100, 101, 102], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 13}, "missing_lines": [], "excluded_lines": [90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102]}, "EvidenceVerifier.collect_evidence": {"executed_lines": [128, 140, 154], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [128, 140]}, "EvidenceVerifier.verify": {"executed_lines": [166, 169, 170, 173, 174, 180, 181, 182, 184, 185, 190, 191, 194, 198, 204, 205, 207], "summary": {"covered_lines": 13, "num_statements": 16, "percent_covered": 81.25, "percent_covered_display": "81.25", "missing_lines": 3, "excluded_lines": 5}, "missing_lines": [183, 195, 199], "excluded_lines": [168, 173, 174, 190, 191]}, "EvidenceVerifier.generate_report": {"executed_lines": [219, 239, 240, 250, 259, 267, 275, 285, 287], "summary": {"covered_lines": 7, "num_statements": 16, "percent_covered": 43.75, "percent_covered_display": "43.75", "missing_lines": 9, "excluded_lines": 2}, "missing_lines": [260, 261, 262, 263, 264, 265, 276, 282, 283], "excluded_lines": [219, 250]}, "EvidenceVerifier.validate_claim": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 13, "excluded_lines": 6}, "missing_lines": [304, 310, 311, 313, 323, 324, 325, 326, 327, 332, 333, 334, 338], "excluded_lines": [294, 307, 315, 316, 317, 318]}, "": {"executed_lines": [1, 16, 17, 18, 20, 21, 22, 25, 26, 27, 34, 35, 38, 39, 42, 45, 46, 47, 48, 49, 52, 53, 56, 57, 83, 104, 156, 209, 289], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 9}, "missing_lines": [], "excluded_lines": [1, 39, 83, 84, 85, 86, 87, 88, 89]}}, "classes": {"Evidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "EvidenceVerifier": {"executed_lines": [99, 100, 101, 102, 128, 140, 154, 166, 169, 170, 173, 174, 180, 181, 182, 184, 185, 190, 191, 194, 198, 204, 205, 207, 219, 239, 240, 250, 259, 267, 275, 285, 287], "summary": {"covered_lines": 21, "num_statements": 46, "percent_covered": 45.65217391304348, "percent_covered_display": "45.65", "missing_lines": 25, "excluded_lines": 28}, "missing_lines": [183, 195, 199, 260, 261, 262, 263, 264, 265, 276, 282, 283, 304, 310, 311, 313, 323, 324, 325, 326, 327, 332, 333, 334, 338], "excluded_lines": [90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 128, 140, 168, 173, 174, 190, 191, 219, 250, 294, 307, 315, 316, 317, 318]}, "": {"executed_lines": [1, 16, 17, 18, 20, 21, 22, 25, 26, 27, 34, 35, 38, 39, 42, 45, 46, 47, 48, 49, 52, 53, 56, 57, 83, 104, 156, 209, 289], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 9}, "missing_lines": [], "excluded_lines": [1, 39, 83, 84, 85, 86, 87, 88, 89]}}}, "codeframe/enforcement/language_detector.py": {"executed_lines": [1, 18, 19, 20, 21, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 37, 38, 48, 49, 51, 60, 71, 72, 73, 74, 77, 87, 89, 97, 99, 101, 107, 123, 125, 127, 129, 130, 132, 133, 134, 136, 137, 138, 141, 142, 143, 144, 145, 146, 147, 148, 158, 178, 180, 181, 183, 184, 187, 189, 190, 191, 196, 214, 216, 218, 219, 229, 231, 233, 235, 236, 246, 248, 250, 251, 253, 254, 264, 265, 275, 277, 279, 281, 282, 292, 294, 296, 298, 299, 309, 311, 324, 326, 327, 328, 330, 331, 334, 337, 339, 341, 343, 345, 346, 348, 349, 350], "summary": {"covered_lines": 104, "num_statements": 116, "percent_covered": 89.65517241379311, "percent_covered_display": "89.66", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [149, 150, 151, 152, 154, 155, 156, 175, 176, 198, 351, 352], "excluded_lines": [], "functions": {"LanguageDetector.__init__": {"executed_lines": [49], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector.detect": {"executed_lines": [60, 71, 72, 73, 74, 77], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_python": {"executed_lines": [89, 97, 99, 101, 107, 123], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_javascript": {"executed_lines": [127, 129, 130, 132, 133, 134, 136, 137, 138, 141, 142, 143, 144, 145, 146, 147, 148, 158], "summary": {"covered_lines": 18, "num_statements": 27, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [149, 150, 151, 152, 154, 155, 156, 175, 176], "excluded_lines": []}, "LanguageDetector._detect_typescript": {"executed_lines": [180, 181, 183, 184, 187, 189, 190, 191, 196], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [198], "excluded_lines": []}, "LanguageDetector._detect_go": {"executed_lines": [216, 218, 219, 229], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_rust": {"executed_lines": [233, 235, 236, 246], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_java": {"executed_lines": [250, 251, 253, 254, 264, 265, 275], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_ruby": {"executed_lines": [279, 281, 282, 292], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._detect_csharp": {"executed_lines": [296, 298, 299, 309], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._calculate_confidence": {"executed_lines": [324, 326, 327, 328, 330, 331, 334, 337, 339], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector._file_contains": {"executed_lines": [343, 345, 346, 348, 349, 350], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [351, 352], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 21, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 37, 38, 48, 51, 87, 125, 178, 214, 231, 248, 277, 294, 311, 341], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"LanguageInfo": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LanguageDetector": {"executed_lines": [49, 60, 71, 72, 73, 74, 77, 89, 97, 99, 101, 107, 123, 127, 129, 130, 132, 133, 134, 136, 137, 138, 141, 142, 143, 144, 145, 146, 147, 148, 158, 180, 181, 183, 184, 187, 189, 190, 191, 196, 216, 218, 219, 229, 233, 235, 236, 246, 250, 251, 253, 254, 264, 265, 275, 279, 281, 282, 292, 296, 298, 299, 309, 324, 326, 327, 328, 330, 331, 334, 337, 339, 343, 345, 346, 348, 349, 350], "summary": {"covered_lines": 78, "num_statements": 90, "percent_covered": 86.66666666666667, "percent_covered_display": "86.67", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [149, 150, 151, 152, 154, 155, 156, 175, 176, 198, 351, 352], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 21, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 37, 38, 48, 51, 87, 125, 178, 214, 231, 248, 277, 294, 311, 341], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/enforcement/quality_tracker.py": {"executed_lines": [1, 16, 17, 18, 19, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 66, 67, 68, 70, 77, 78, 79, 81, 88, 89, 91, 92, 93, 97, 105, 107, 108, 110, 123, 125, 132, 135, 136, 141, 142, 144, 145, 147, 148, 149, 150, 155, 156, 162, 179, 186, 188, 194, 195, 196, 198, 207, 209, 211, 225, 226, 230, 232, 242, 249, 251, 259, 269, 270, 285], "summary": {"covered_lines": 58, "num_statements": 78, "percent_covered": 74.35897435897436, "percent_covered_display": "74.36", "missing_lines": 20, "excluded_lines": 18}, "missing_lines": [94, 95, 126, 138, 172, 189, 272, 278, 279, 280, 281, 283, 307, 310, 311, 314, 315, 316, 317, 319], "excluded_lines": [1, 28, 31, 38, 142, 145, 147, 148, 149, 150, 155, 156, 162, 212, 226, 243, 251, 273], "functions": {"QualityTracker.__init__": {"executed_lines": [67, 68], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityTracker.record": {"executed_lines": [77, 78, 79], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityTracker.load_history": {"executed_lines": [88, 89, 91, 92, 93], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [94, 95], "excluded_lines": []}, "QualityTracker.save_history": {"executed_lines": [105, 107, 108], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityTracker.check_degradation": {"executed_lines": [123, 125, 132, 135, 136, 141, 142, 144, 145, 147, 148, 149, 150, 155, 156, 162], "summary": {"covered_lines": 7, "num_statements": 10, "percent_covered": 70.0, "percent_covered_display": "70.00", "missing_lines": 3, "excluded_lines": 9}, "missing_lines": [126, 138, 172], "excluded_lines": [142, 145, 147, 148, 149, 150, 155, 156, 162]}, "QualityTracker.get_stats": {"executed_lines": [186, 188, 194, 195, 196, 198], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [189], "excluded_lines": []}, "QualityTracker.reset": {"executed_lines": [209], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityTracker._find_peak": {"executed_lines": [225, 230], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [212]}, "QualityTracker._find_peak.score": {"executed_lines": [226], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [226]}, "QualityTracker._calculate_moving_average": {"executed_lines": [242, 249, 251], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [243, 251]}, "QualityTracker._calculate_trend": {"executed_lines": [269, 270], "summary": {"covered_lines": 2, "num_statements": 8, "percent_covered": 25.0, "percent_covered_display": "25.00", "missing_lines": 6, "excluded_lines": 1}, "missing_lines": [272, 278, 279, 280, 281, 283], "excluded_lines": [273]}, "QualityTracker.should_reset_context": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [307, 310, 311, 314, 315, 316, 317, 319], "excluded_lines": []}, "": {"executed_lines": [1, 16, 17, 18, 19, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 66, 70, 81, 97, 110, 179, 207, 211, 232, 259, 285], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [1, 28, 31, 38]}}, "classes": {"QualityMetrics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityTracker": {"executed_lines": [67, 68, 77, 78, 79, 88, 89, 91, 92, 93, 105, 107, 108, 123, 125, 132, 135, 136, 141, 142, 144, 145, 147, 148, 149, 150, 155, 156, 162, 186, 188, 194, 195, 196, 198, 209, 225, 226, 230, 242, 249, 251, 269, 270], "summary": {"covered_lines": 33, "num_statements": 53, "percent_covered": 62.264150943396224, "percent_covered_display": "62.26", "missing_lines": 20, "excluded_lines": 14}, "missing_lines": [94, 95, 126, 138, 172, 189, 272, 278, 279, 280, 281, 283, 307, 310, 311, 314, 315, 316, 317, 319], "excluded_lines": [142, 145, 147, 148, 149, 150, 155, 156, 162, 212, 226, 243, 251, 273]}, "": {"executed_lines": [1, 16, 17, 18, 19, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 66, 70, 81, 97, 110, 179, 207, 211, 232, 259, 285], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [1, 28, 31, 38]}}}, "codeframe/enforcement/skip_pattern_detector.py": {"executed_lines": [1, 17, 18, 19, 20, 21, 23, 26, 27, 28, 30, 31, 32, 33, 34, 35, 38, 39, 50, 51, 52, 53, 55, 63, 64, 66, 69, 72, 73, 74, 76, 78, 80, 83, 85, 87, 90, 91, 92, 93, 96, 97, 98, 99, 101, 104, 106, 108, 118, 121, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 140, 142, 144, 146, 147, 148, 150, 153, 154, 155, 156, 157, 158, 172, 174, 177, 178, 179, 182, 183, 189, 190, 191, 192, 198, 199, 200, 204, 206, 208, 209, 210, 211, 214, 216, 217, 219, 220, 221, 223, 224, 226, 228, 230, 231, 232, 233, 234, 236, 238, 240, 241, 242, 244, 253, 254, 255, 256, 270, 272, 274, 276, 277, 278, 280, 286, 287, 288, 289, 303, 305, 307, 309, 310, 311, 313, 315, 316, 317, 331, 333, 335, 337, 338, 339, 341, 343, 344, 345, 346, 360, 362, 364, 366, 367, 368, 370, 372, 373, 374, 375, 389, 391, 393, 395, 396, 397, 400, 402, 403, 404, 405, 419, 421, 423, 425, 428, 429, 430, 432, 433, 449, 451, 454, 455, 456, 457], "summary": {"covered_lines": 188, "num_statements": 206, "percent_covered": 91.2621359223301, "percent_covered_display": "91.26", "missing_lines": 18, "excluded_lines": 8}, "missing_lines": [81, 119, 169, 184, 185, 186, 202, 212, 267, 300, 328, 357, 386, 416, 426, 434, 435, 446], "excluded_lines": [170, 268, 301, 329, 358, 387, 417, 447], "functions": {"SkipPatternDetector.__init__": {"executed_lines": [51, 52, 53], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SkipPatternDetector.detect_all": {"executed_lines": [63, 64, 66, 69, 72, 73, 74, 76], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SkipPatternDetector._find_test_files": {"executed_lines": [80, 83, 85, 87, 90, 91, 92, 93, 96, 97, 98, 99, 101, 104, 106], "summary": {"covered_lines": 15, "num_statements": 16, "percent_covered": 93.75, "percent_covered_display": "93.75", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [81], "excluded_lines": []}, "SkipPatternDetector._check_file": {"executed_lines": [118, 121, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 140], "summary": {"covered_lines": 17, "num_statements": 18, "percent_covered": 94.44444444444444, "percent_covered_display": "94.44", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [119], "excluded_lines": []}, "SkipPatternDetector._check_python_file": {"executed_lines": [144, 146, 147, 148, 150, 153, 154, 155, 156, 157, 158, 172], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 92.3076923076923, "percent_covered_display": "92.31", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [169], "excluded_lines": [170]}, "SkipPatternDetector._check_python_decorator": {"executed_lines": [177, 178, 179, 182, 183, 189, 190, 191, 192, 198, 199, 200], "summary": {"covered_lines": 12, "num_statements": 16, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [184, 185, 186, 202], "excluded_lines": []}, "SkipPatternDetector._is_skip_attribute": {"executed_lines": [206, 208, 209, 210, 211], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [212], "excluded_lines": []}, "SkipPatternDetector._get_full_name": {"executed_lines": [216, 217, 219, 220, 221, 223, 224, 226], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SkipPatternDetector._extract_reason_python": {"executed_lines": [230, 231, 232, 233, 234], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SkipPatternDetector._check_javascript_file": {"executed_lines": [238, 240, 241, 242, 244, 253, 254, 255, 256, 270], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [267], "excluded_lines": [268]}, "SkipPatternDetector._check_go_file": {"executed_lines": [274, 276, 277, 278, 280, 286, 287, 288, 289, 303], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [300], "excluded_lines": [301]}, "SkipPatternDetector._check_rust_file": {"executed_lines": [307, 309, 310, 311, 313, 315, 316, 317, 331], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [328], "excluded_lines": [329]}, "SkipPatternDetector._check_java_file": {"executed_lines": [335, 337, 338, 339, 341, 343, 344, 345, 346, 360], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [357], "excluded_lines": [358]}, "SkipPatternDetector._check_ruby_file": {"executed_lines": [364, 366, 367, 368, 370, 372, 373, 374, 375, 389], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [386], "excluded_lines": [387]}, "SkipPatternDetector._check_csharp_file": {"executed_lines": [393, 395, 396, 397, 400, 402, 403, 404, 405, 419], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [416], "excluded_lines": [417]}, "SkipPatternDetector._check_generic_file": {"executed_lines": [423, 425, 428, 429, 430, 432, 433, 449], "summary": {"covered_lines": 8, "num_statements": 12, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 4, "excluded_lines": 1}, "missing_lines": [426, 434, 435, 446], "excluded_lines": [447]}, "SkipPatternDetector._extract_reason_from_line": {"executed_lines": [454, 455, 456, 457], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 17, 18, 19, 20, 21, 23, 26, 27, 28, 30, 31, 32, 33, 34, 35, 38, 39, 50, 55, 78, 108, 142, 174, 204, 214, 228, 236, 272, 305, 333, 362, 391, 421, 451], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SkipViolation": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SkipPatternDetector": {"executed_lines": [51, 52, 53, 63, 64, 66, 69, 72, 73, 74, 76, 80, 83, 85, 87, 90, 91, 92, 93, 96, 97, 98, 99, 101, 104, 106, 118, 121, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 140, 144, 146, 147, 148, 150, 153, 154, 155, 156, 157, 158, 172, 177, 178, 179, 182, 183, 189, 190, 191, 192, 198, 199, 200, 206, 208, 209, 210, 211, 216, 217, 219, 220, 221, 223, 224, 226, 230, 231, 232, 233, 234, 238, 240, 241, 242, 244, 253, 254, 255, 256, 270, 274, 276, 277, 278, 280, 286, 287, 288, 289, 303, 307, 309, 310, 311, 313, 315, 316, 317, 331, 335, 337, 338, 339, 341, 343, 344, 345, 346, 360, 364, 366, 367, 368, 370, 372, 373, 374, 375, 389, 393, 395, 396, 397, 400, 402, 403, 404, 405, 419, 423, 425, 428, 429, 430, 432, 433, 449, 454, 455, 456, 457], "summary": {"covered_lines": 156, "num_statements": 174, "percent_covered": 89.65517241379311, "percent_covered_display": "89.66", "missing_lines": 18, "excluded_lines": 8}, "missing_lines": [81, 119, 169, 184, 185, 186, 202, 212, 267, 300, 328, 357, 386, 416, 426, 434, 435, 446], "excluded_lines": [170, 268, 301, 329, 358, 387, 417, 447]}, "": {"executed_lines": [1, 17, 18, 19, 20, 21, 23, 26, 27, 28, 30, 31, 32, 33, 34, 35, 38, 39, 50, 55, 78, 108, 142, 174, 204, 214, 228, 236, 272, 305, 333, 362, 391, 421, 451], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/git/__init__.py": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/git/workflow_manager.py": {"executed_lines": [1, 9, 10, 11, 12, 13, 15, 17, 20, 21, 23, 34, 35, 38, 40, 42, 60, 61, 62, 63, 66, 67, 70, 73, 75, 76, 77, 78, 81, 82, 85, 87, 90, 93, 94, 96, 97, 98, 99, 100, 101, 103, 104, 105, 112, 114, 124, 127, 128, 129, 130, 132, 134, 148, 149, 151, 152, 153, 154, 155, 156, 158, 159, 161, 164, 165, 168, 169, 172, 175, 176, 181, 184, 186, 189, 191, 194, 196, 211, 220, 223, 224, 227, 229, 233, 235, 241, 242, 243, 245, 246, 248, 257, 258, 260, 271, 274, 275, 276, 277, 278, 279, 280, 281, 282, 286, 288, 299, 302, 303, 306, 309, 310, 313, 314, 315, 316, 318, 320, 339, 340, 343, 344, 345, 346, 351, 353, 354, 357, 359, 360, 366, 369, 372, 373, 375, 378, 380, 381, 389, 390, 397, 399, 404], "summary": {"covered_lines": 142, "num_statements": 156, "percent_covered": 91.02564102564102, "percent_covered_display": "91.03", "missing_lines": 14, "excluded_lines": 1}, "missing_lines": [108, 109, 170, 177, 179, 202, 203, 205, 206, 207, 209, 283, 400, 401], "excluded_lines": [208], "functions": {"GitWorkflowManager.__init__": {"executed_lines": [34, 35, 38, 40], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager.create_feature_branch": {"executed_lines": [60, 61, 62, 63, 66, 67, 70, 73, 75, 76, 77, 78, 81, 82, 85, 87, 90, 93, 94, 96, 97, 98, 99, 100, 101, 103, 104, 105, 112], "summary": {"covered_lines": 29, "num_statements": 31, "percent_covered": 93.54838709677419, "percent_covered_display": "93.55", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [108, 109], "excluded_lines": []}, "GitWorkflowManager._sanitize_branch_name": {"executed_lines": [124, 127, 128, 129, 130, 132], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager.merge_to_main": {"executed_lines": [148, 149, 151, 152, 153, 154, 155, 156, 158, 159, 161, 164, 165, 168, 169, 172, 175, 176, 181, 184, 186, 189, 191, 194, 196], "summary": {"covered_lines": 25, "num_statements": 34, "percent_covered": 73.52941176470588, "percent_covered_display": "73.53", "missing_lines": 9, "excluded_lines": 1}, "missing_lines": [170, 177, 179, 202, 203, 205, 206, 207, 209], "excluded_lines": [208]}, "GitWorkflowManager.is_issue_complete": {"executed_lines": [220, 223, 224, 227, 229, 233], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager.get_current_branch": {"executed_lines": [241, 242, 243, 245, 246], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager.checkout_branch": {"executed_lines": [257, 258], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager._infer_commit_type": {"executed_lines": [271, 274, 275, 276, 277, 278, 279, 280, 281, 282, 286], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 91.66666666666667, "percent_covered_display": "91.67", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [283], "excluded_lines": []}, "GitWorkflowManager._generate_commit_message": {"executed_lines": [299, 302, 303, 306, 309, 310, 313, 314, 315, 316, 318], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "GitWorkflowManager.commit_task_changes": {"executed_lines": [339, 340, 343, 344, 345, 346, 351, 353, 354, 357, 359, 360, 366, 369, 372, 373, 375, 378, 380, 381, 389, 390, 397, 399, 404], "summary": {"covered_lines": 25, "num_statements": 27, "percent_covered": 92.5925925925926, "percent_covered_display": "92.59", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [400, 401], "excluded_lines": []}, "": {"executed_lines": [1, 9, 10, 11, 12, 13, 15, 17, 20, 21, 23, 42, 114, 134, 211, 235, 248, 260, 288, 320], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"GitWorkflowManager": {"executed_lines": [34, 35, 38, 40, 60, 61, 62, 63, 66, 67, 70, 73, 75, 76, 77, 78, 81, 82, 85, 87, 90, 93, 94, 96, 97, 98, 99, 100, 101, 103, 104, 105, 112, 124, 127, 128, 129, 130, 132, 148, 149, 151, 152, 153, 154, 155, 156, 158, 159, 161, 164, 165, 168, 169, 172, 175, 176, 181, 184, 186, 189, 191, 194, 196, 220, 223, 224, 227, 229, 233, 241, 242, 243, 245, 246, 257, 258, 271, 274, 275, 276, 277, 278, 279, 280, 281, 282, 286, 299, 302, 303, 306, 309, 310, 313, 314, 315, 316, 318, 339, 340, 343, 344, 345, 346, 351, 353, 354, 357, 359, 360, 366, 369, 372, 373, 375, 378, 380, 381, 389, 390, 397, 399, 404], "summary": {"covered_lines": 124, "num_statements": 138, "percent_covered": 89.85507246376811, "percent_covered_display": "89.86", "missing_lines": 14, "excluded_lines": 1}, "missing_lines": [108, 109, 170, 177, 179, 202, 203, 205, 206, 207, 209, 283, 400, 401], "excluded_lines": [208]}, "": {"executed_lines": [1, 9, 10, 11, 12, 13, 15, 17, 20, 21, 23, 42, 114, 134, 211, 235, 248, 260, 288, 320], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/__init__.py": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/codebase_index.py": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 16, 17, 19, 25, 26, 27, 28, 30, 37, 38, 40, 42, 43, 44, 45, 47, 53, 55, 56, 57, 58, 59, 60, 62, 78, 80, 81, 83, 84, 86, 88, 98, 99, 101, 102, 103, 104, 106, 108, 117, 118, 119, 123, 129, 131], "summary": {"covered_lines": 50, "num_statements": 52, "percent_covered": 96.15384615384616, "percent_covered_display": "96.15", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [120, 121], "excluded_lines": [], "functions": {"CodebaseIndex.__init__": {"executed_lines": [25, 26, 27, 28], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodebaseIndex.build": {"executed_lines": [37, 38, 40, 42, 43, 44, 45], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodebaseIndex._parse_file": {"executed_lines": [53, 55, 56, 57, 58, 59, 60], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodebaseIndex.find_symbols": {"executed_lines": [78, 80, 81, 83, 84, 86], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodebaseIndex.get_file_symbols": {"executed_lines": [98, 99, 101, 102, 103, 104, 106], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CodebaseIndex.search_pattern": {"executed_lines": [117, 118, 119], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 60.0, "percent_covered_display": "60.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [120, 121], "excluded_lines": []}, "CodebaseIndex.to_dict": {"executed_lines": [129, 131], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 16, 17, 19, 30, 47, 62, 88, 108, 123], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"CodebaseIndex": {"executed_lines": [25, 26, 27, 28, 37, 38, 40, 42, 43, 44, 45, 53, 55, 56, 57, 58, 59, 60, 78, 80, 81, 83, 84, 86, 98, 99, 101, 102, 103, 104, 106, 117, 118, 119, 129, 131], "summary": {"covered_lines": 36, "num_statements": 38, "percent_covered": 94.73684210526316, "percent_covered_display": "94.74", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [120, 121], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 13, 16, 17, 19, 30, 47, 62, 88, 108, 123], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/models.py": {"executed_lines": [1, 7, 8, 9, 12, 13, 15, 16, 17, 18, 19, 20, 23, 24, 25, 37, 38, 39, 40, 41, 42, 43, 45, 51], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"Symbol.to_dict": {"executed_lines": [51], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 12, 13, 15, 16, 17, 18, 19, 20, 23, 24, 25, 37, 38, 39, 40, 41, 42, 43, 45], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SymbolType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Symbol": {"executed_lines": [51], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 12, 13, 15, 16, 17, 18, 19, 20, 23, 24, 25, 37, 38, 39, 40, 41, 42, 43, 45], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/parsers/__init__.py": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/parsers/python_parser.py": {"executed_lines": [1, 7, 8, 10, 11, 13, 16, 17, 19, 21, 22, 24, 33, 34, 39, 40, 42, 43, 48, 51, 52, 54, 56, 70, 73, 74, 76, 77, 78, 83, 91, 94, 95, 96, 101, 106, 107, 109, 111, 122, 125, 126, 127, 128, 129, 133, 140, 142, 144, 145, 146, 147, 148, 150, 151, 152, 153, 157, 164, 167, 168, 171, 173, 187, 189, 191, 192, 193, 194, 198, 206, 208, 233], "summary": {"covered_lines": 71, "num_statements": 87, "percent_covered": 81.60919540229885, "percent_covered_display": "81.61", "missing_lines": 16, "excluded_lines": 0}, "missing_lines": [35, 37, 44, 46, 169, 210, 211, 212, 213, 214, 216, 217, 218, 219, 223, 231], "excluded_lines": [], "functions": {"PythonParser.__init__": {"executed_lines": [21, 22], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "PythonParser.parse_file": {"executed_lines": [33, 34, 39, 40, 42, 43, 48, 51, 52, 54], "summary": {"covered_lines": 10, "num_statements": 14, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [35, 37, 44, 46], "excluded_lines": []}, "PythonParser._extract_classes": {"executed_lines": [70, 73, 74, 76, 77, 78, 83, 91, 94, 95, 96, 101, 106, 107, 109], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "PythonParser._extract_functions": {"executed_lines": [122, 125, 126, 127, 128, 129, 133, 140, 142, 144, 145, 146, 147, 148, 150, 151, 152, 153, 157, 164, 167, 168, 171], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 95.83333333333333, "percent_covered_display": "95.83", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [169], "excluded_lines": []}, "PythonParser._extract_methods": {"executed_lines": [187, 189, 191, 192, 193, 194, 198, 206, 208, 233], "summary": {"covered_lines": 10, "num_statements": 21, "percent_covered": 47.61904761904762, "percent_covered_display": "47.62", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [210, 211, 212, 213, 214, 216, 217, 218, 219, 223, 231], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 11, 13, 16, 17, 19, 24, 56, 111, 173], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"PythonParser": {"executed_lines": [21, 22, 33, 34, 39, 40, 42, 43, 48, 51, 52, 54, 70, 73, 74, 76, 77, 78, 83, 91, 94, 95, 96, 101, 106, 107, 109, 122, 125, 126, 127, 128, 129, 133, 140, 142, 144, 145, 146, 147, 148, 150, 151, 152, 153, 157, 164, 167, 168, 171, 187, 189, 191, 192, 193, 194, 198, 206, 208, 233], "summary": {"covered_lines": 60, "num_statements": 76, "percent_covered": 78.94736842105263, "percent_covered_display": "78.95", "missing_lines": 16, "excluded_lines": 0}, "missing_lines": [35, 37, 44, 46, 169, 210, 211, 212, 213, 214, 216, 217, 218, 219, 223, 231], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 11, 13, 16, 17, 19, 24, 56, 111, 173], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/indexing/parsers/typescript_parser.py": {"executed_lines": [1, 7, 8, 10, 11, 12, 14, 17, 18, 20, 23, 24, 27, 28, 31, 32, 34, 43, 44, 48, 49, 52, 53, 54, 55, 56, 59, 60, 61, 67, 68, 72, 75, 78, 81, 82, 86, 88, 92, 94, 95, 96, 97, 98, 102, 109, 111, 113, 114, 130, 132, 136, 138, 139, 140, 141, 142, 146, 153, 155, 157, 158, 174, 176, 180, 182, 183, 185, 186, 188, 189, 190, 191, 192, 193, 197, 198, 199, 200, 204, 211, 214, 215, 216, 222, 224, 228, 230, 231, 233, 234, 236, 237, 238, 239, 243, 251, 253, 255, 259, 261, 262, 264, 265, 267, 268, 269, 270, 271, 272, 275, 277, 278, 279, 280, 282, 283, 284, 288, 295, 297, 298, 299, 300, 304, 311, 313], "summary": {"covered_lines": 125, "num_statements": 145, "percent_covered": 86.20689655172414, "percent_covered_display": "86.21", "missing_lines": 20, "excluded_lines": 0}, "missing_lines": [45, 46, 57, 58, 64, 65, 69, 70, 115, 116, 117, 121, 128, 159, 160, 161, 165, 172, 195, 273], "excluded_lines": [], "functions": {"TypeScriptParser.__init__": {"executed_lines": [23, 24, 27, 28, 31, 32], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TypeScriptParser.parse_file": {"executed_lines": [43, 44, 48, 49, 52, 53, 54, 55, 56, 59, 60, 61, 67, 68, 72, 75, 78, 81, 82, 86], "summary": {"covered_lines": 20, "num_statements": 28, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [45, 46, 57, 58, 64, 65, 69, 70], "excluded_lines": []}, "TypeScriptParser._extract_interfaces": {"executed_lines": [92, 94, 95, 96, 97, 98, 102, 109, 111, 113, 114, 130], "summary": {"covered_lines": 12, "num_statements": 17, "percent_covered": 70.58823529411765, "percent_covered_display": "70.59", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [115, 116, 117, 121, 128], "excluded_lines": []}, "TypeScriptParser._extract_type_aliases": {"executed_lines": [136, 138, 139, 140, 141, 142, 146, 153, 155, 157, 158, 174], "summary": {"covered_lines": 12, "num_statements": 17, "percent_covered": 70.58823529411765, "percent_covered_display": "70.59", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [159, 160, 161, 165, 172], "excluded_lines": []}, "TypeScriptParser._extract_classes": {"executed_lines": [180, 182, 183, 185, 186, 188, 189, 190, 191, 192, 193, 197, 198, 199, 200, 204, 211, 214, 215, 216, 222], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 95.45454545454545, "percent_covered_display": "95.45", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [195], "excluded_lines": []}, "TypeScriptParser._extract_methods": {"executed_lines": [228, 230, 231, 233, 234, 236, 237, 238, 239, 243, 251, 253], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TypeScriptParser._extract_functions": {"executed_lines": [259, 261, 262, 264, 265, 267, 268, 269, 270, 271, 272, 275, 277, 278, 279, 280, 282, 283, 284, 288, 295, 297, 298, 299, 300, 304, 311, 313], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 96.55172413793103, "percent_covered_display": "96.55", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [273], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 11, 12, 14, 17, 18, 20, 34, 88, 132, 176, 224, 255], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"TypeScriptParser": {"executed_lines": [23, 24, 27, 28, 31, 32, 43, 44, 48, 49, 52, 53, 54, 55, 56, 59, 60, 61, 67, 68, 72, 75, 78, 81, 82, 86, 92, 94, 95, 96, 97, 98, 102, 109, 111, 113, 114, 130, 136, 138, 139, 140, 141, 142, 146, 153, 155, 157, 158, 174, 180, 182, 183, 185, 186, 188, 189, 190, 191, 192, 193, 197, 198, 199, 200, 204, 211, 214, 215, 216, 222, 228, 230, 231, 233, 234, 236, 237, 238, 239, 243, 251, 253, 259, 261, 262, 264, 265, 267, 268, 269, 270, 271, 272, 275, 277, 278, 279, 280, 282, 283, 284, 288, 295, 297, 298, 299, 300, 304, 311, 313], "summary": {"covered_lines": 111, "num_statements": 131, "percent_covered": 84.73282442748092, "percent_covered_display": "84.73", "missing_lines": 20, "excluded_lines": 0}, "missing_lines": [45, 46, 57, 58, 64, 65, 69, 70, 115, 116, 117, 121, 128, 159, 160, 161, 165, 172, 195, 273], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 10, 11, 12, 14, 17, 18, 20, 34, 88, 132, 176, 224, 255], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/__init__.py": {"executed_lines": [0], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/checkpoint_manager.py": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 38, 51, 52, 53, 54, 57, 59, 86, 89, 90, 93, 96, 108, 109, 112, 113, 116, 117, 125, 128, 141, 142, 144, 150, 151, 152, 154, 186, 187, 188, 190, 193, 194, 201, 202, 203, 209, 212, 213, 216, 217, 221, 222, 224, 226, 237, 249, 251, 259, 260, 268, 276, 277, 282, 294, 295, 298, 301, 303, 305, 317, 318, 321, 322, 334, 335, 336, 350, 358, 359, 361, 363, 369, 372, 376, 377, 380, 384, 386, 393, 396, 405, 406, 409, 416, 419, 423, 426, 427, 434, 435, 439, 450, 459, 460, 462, 463, 465, 466, 467, 468, 470, 472, 481, 482, 489, 495, 504, 507, 517, 527, 528, 532, 535, 538, 539, 541, 554, 555, 559, 560, 563, 564, 570, 571, 572, 573, 574, 577, 599, 611, 613], "summary": {"covered_lines": 143, "num_statements": 161, "percent_covered": 88.81987577639751, "percent_covered_display": "88.82", "missing_lines": 18, "excluded_lines": 0}, "missing_lines": [233, 234, 235, 279, 280, 436, 437, 491, 492, 493, 514, 515, 529, 556, 575, 600, 605, 606], "excluded_lines": [], "functions": {"CheckpointManager.__init__": {"executed_lines": [51, 52, 53, 54, 57], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager.create_checkpoint": {"executed_lines": [86, 89, 90, 93, 96, 108, 109, 112, 113, 116, 117, 125, 128, 141, 142], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager.list_checkpoints": {"executed_lines": [150, 151, 152], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager.restore_checkpoint": {"executed_lines": [186, 187, 188, 190, 193, 194, 201, 202, 203, 209, 212, 213, 216, 217, 221, 222, 224, 226], "summary": {"covered_lines": 18, "num_statements": 21, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [233, 234, 235], "excluded_lines": []}, "CheckpointManager._create_git_commit": {"executed_lines": [249, 251, 259, 260, 268, 276, 277], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 77.77777777777777, "percent_covered_display": "77.78", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [279, 280], "excluded_lines": []}, "CheckpointManager._snapshot_database": {"executed_lines": [294, 295, 298, 301, 303], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager._snapshot_context": {"executed_lines": [317, 318, 321, 322, 334, 335, 336, 350, 358, 359, 361], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager._generate_metadata": {"executed_lines": [369, 372, 376, 377, 380, 384, 386, 393, 396, 405, 406, 409, 416, 419, 423, 426, 427, 434, 435, 439], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [436, 437], "excluded_lines": []}, "CheckpointManager._validate_checkpoint": {"executed_lines": [459, 460, 462, 463, 465, 466, 467, 468, 470], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointManager._show_diff": {"executed_lines": [481, 482, 489], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [491, 492, 493], "excluded_lines": []}, "CheckpointManager._restore_git_commit": {"executed_lines": [504, 507], "summary": {"covered_lines": 2, "num_statements": 4, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [514, 515], "excluded_lines": []}, "CheckpointManager._restore_database": {"executed_lines": [527, 528, 532, 535, 538, 539], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [529], "excluded_lines": []}, "CheckpointManager._restore_context": {"executed_lines": [554, 555, 559, 560, 563, 564, 570, 571, 572, 573, 574, 577, 599, 611, 613], "summary": {"covered_lines": 15, "num_statements": 20, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [556, 575, 600, 605, 606], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 38, 59, 144, 154, 237, 282, 305, 363, 450, 472, 495, 517, 541], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"CheckpointManager": {"executed_lines": [51, 52, 53, 54, 57, 86, 89, 90, 93, 96, 108, 109, 112, 113, 116, 117, 125, 128, 141, 142, 150, 151, 152, 186, 187, 188, 190, 193, 194, 201, 202, 203, 209, 212, 213, 216, 217, 221, 222, 224, 226, 249, 251, 259, 260, 268, 276, 277, 294, 295, 298, 301, 303, 317, 318, 321, 322, 334, 335, 336, 350, 358, 359, 361, 369, 372, 376, 377, 380, 384, 386, 393, 396, 405, 406, 409, 416, 419, 423, 426, 427, 434, 435, 439, 459, 460, 462, 463, 465, 466, 467, 468, 470, 481, 482, 489, 504, 507, 527, 528, 532, 535, 538, 539, 554, 555, 559, 560, 563, 564, 570, 571, 572, 573, 574, 577, 599, 611, 613], "summary": {"covered_lines": 119, "num_statements": 137, "percent_covered": 86.86131386861314, "percent_covered_display": "86.86", "missing_lines": 18, "excluded_lines": 0}, "missing_lines": [233, 234, 235, 279, 280, 436, 437, 491, 492, 493, 514, 515, 529, 556, 575, 600, 605, 606], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 22, 23, 38, 59, 144, 154, 237, 282, 305, 363, 450, 472, 495, 517, 541], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/context_manager.py": {"executed_lines": [1, 13, 14, 15, 16, 17, 18, 21, 22, 25, 27, 29, 35, 36, 38, 63, 67, 68, 70, 72, 74, 83, 84, 88, 90, 92, 118, 122, 123, 148, 168, 169, 172, 176, 180, 183, 185, 214, 219, 222, 243, 244, 245, 247, 248, 249, 252, 262, 265, 268, 271, 272, 277], "summary": {"covered_lines": 51, "num_statements": 60, "percent_covered": 85.0, "percent_covered_display": "85.00", "missing_lines": 9, "excluded_lines": 2}, "missing_lines": [125, 127, 129, 137, 140, 144, 146, 177, 274], "excluded_lines": [39, 93], "functions": {"ContextManager.__init__": {"executed_lines": [35, 36], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ContextManager.recalculate_scores_for_agent": {"executed_lines": [63, 67, 68, 70, 72, 74, 83, 84, 88, 90], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [39]}, "ContextManager.update_tiers_for_agent": {"executed_lines": [118, 122, 123], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 30.0, "percent_covered_display": "30.00", "missing_lines": 7, "excluded_lines": 1}, "missing_lines": [125, 127, 129, 137, 140, 144, 146], "excluded_lines": [93]}, "ContextManager.should_flash_save": {"executed_lines": [168, 169, 172, 176, 180, 183], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "85.71", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [177], "excluded_lines": []}, "ContextManager.flash_save": {"executed_lines": [214, 219, 222, 243, 244, 245, 247, 248, 249, 252, 262, 265, 268, 271, 272, 277], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 94.11764705882354, "percent_covered_display": "94.12", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [274], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 15, 16, 17, 18, 21, 22, 25, 27, 29, 38, 92, 148, 185], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"ContextManager": {"executed_lines": [35, 36, 63, 67, 68, 70, 72, 74, 83, 84, 88, 90, 118, 122, 123, 168, 169, 172, 176, 180, 183, 214, 219, 222, 243, 244, 245, 247, 248, 249, 252, 262, 265, 268, 271, 272, 277], "summary": {"covered_lines": 37, "num_statements": 46, "percent_covered": 80.43478260869566, "percent_covered_display": "80.43", "missing_lines": 9, "excluded_lines": 2}, "missing_lines": [125, 127, 129, 137, 140, 144, 146, 177, 274], "excluded_lines": [39, 93]}, "": {"executed_lines": [1, 13, 14, 15, 16, 17, 18, 21, 22, 25, 27, 29, 38, 92, 148, 185], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/importance_scorer.py": {"executed_lines": [1, 14, 15, 16, 21, 31, 34, 35, 36, 39, 55, 58, 62, 64, 67, 85, 89, 92, 95, 136, 139, 142, 145, 148, 151, 178, 179, 182, 183, 186], "summary": {"covered_lines": 29, "num_statements": 31, "percent_covered": 93.54838709677419, "percent_covered_display": "93.55", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [59, 86], "excluded_lines": [], "functions": {"calculate_age_decay": {"executed_lines": [55, 58, 62, 64], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [59], "excluded_lines": []}, "calculate_access_boost": {"executed_lines": [85, 89, 92], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [86], "excluded_lines": []}, "calculate_importance_score": {"executed_lines": [136, 139, 142, 145, 148], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "assign_tier": {"executed_lines": [178, 179, 182, 183, 186], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 14, 15, 16, 21, 31, 34, 35, 36, 39, 67, 95, 151], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 14, 15, 16, 21, 31, 34, 35, 36, 39, 55, 58, 62, 64, 67, 85, 89, 92, 95, 136, 139, 142, 145, 148, 151, 178, 179, 182, 183, 186], "summary": {"covered_lines": 29, "num_statements": 31, "percent_covered": 93.54838709677419, "percent_covered_display": "93.55", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [59, 86], "excluded_lines": []}}}, "codeframe/lib/lint_utils.py": {"executed_lines": [1, 7, 8, 9, 11, 13, 16, 40, 42, 43, 44, 49, 50, 53, 57, 59, 60, 61, 62, 64, 65, 74, 75, 78, 88, 89, 90, 91, 101, 111, 112, 121, 130, 133, 143, 144, 145, 146, 147], "summary": {"covered_lines": 38, "num_statements": 56, "percent_covered": 67.85714285714286, "percent_covered_display": "67.86", "missing_lines": 18, "excluded_lines": 0}, "missing_lines": [54, 67, 69, 70, 71, 72, 94, 95, 96, 98, 115, 116, 118, 150, 151, 152, 153, 155], "excluded_lines": [], "functions": {"format_lint_blocker": {"executed_lines": [40, 42, 43, 44, 49, 50, 53, 57, 59, 60, 61, 62, 64, 65, 74, 75], "summary": {"covered_lines": 16, "num_statements": 22, "percent_covered": 72.72727272727273, "percent_covered_display": "72.73", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [54, 67, 69, 70, 71, 72], "excluded_lines": []}, "_is_critical_issue": {"executed_lines": [88, 89, 90, 91], "summary": {"covered_lines": 4, "num_statements": 8, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [94, 95, 96, 98], "excluded_lines": []}, "_extract_error_code": {"executed_lines": [111, 112], "summary": {"covered_lines": 2, "num_statements": 5, "percent_covered": 40.0, "percent_covered_display": "40.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [115, 116, 118], "excluded_lines": []}, "_extract_error_message": {"executed_lines": [130], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_extract_error_location": {"executed_lines": [143, 144, 145, 146, 147], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [150, 151, 152, 153, 155], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 13, 16, 78, 101, 121, 133], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 7, 8, 9, 11, 13, 16, 40, 42, 43, 44, 49, 50, 53, 57, 59, 60, 61, 62, 64, 65, 74, 75, 78, 88, 89, 90, 91, 101, 111, 112, 121, 130, 133, 143, 144, 145, 146, 147], "summary": {"covered_lines": 38, "num_statements": 56, "percent_covered": 67.85714285714286, "percent_covered_display": "67.86", "missing_lines": 18, "excluded_lines": 0}, "missing_lines": [54, 67, 69, 70, 71, 72, 94, 95, 96, 98, 115, 116, 118, 150, 151, 152, 153, 155], "excluded_lines": []}}}, "codeframe/lib/metrics_tracker.py": {"executed_lines": [1, 37, 38, 39, 40, 41, 43, 47, 54, 55, 75, 81, 83, 84, 114, 115, 120, 123, 124, 125, 128, 130, 172, 176, 177, 183, 197, 199, 204, 206, 239, 242, 251, 252, 255, 256, 258, 259, 260, 261, 262, 265, 266, 269, 270, 276, 277, 278, 281, 282, 288, 289, 290, 293, 294, 298, 303, 305, 333, 336, 345, 346, 349, 350, 352, 353, 354, 355, 356, 359, 360, 363, 364, 369, 370, 373, 374, 378, 381, 382, 386, 391, 393, 433, 440, 452, 453, 456, 457, 458, 461, 466], "summary": {"covered_lines": 90, "num_statements": 94, "percent_covered": 95.74468085106383, "percent_covered_display": "95.74", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [173, 178, 179, 180], "excluded_lines": [], "functions": {"MetricsTracker.__init__": {"executed_lines": [81], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MetricsTracker.calculate_cost": {"executed_lines": [114, 115, 120, 123, 124, 125, 128], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MetricsTracker.record_token_usage": {"executed_lines": [172, 176, 177, 183, 197, 199, 204], "summary": {"covered_lines": 7, "num_statements": 11, "percent_covered": 63.63636363636363, "percent_covered_display": "63.64", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [173, 178, 179, 180], "excluded_lines": []}, "MetricsTracker.get_project_costs": {"executed_lines": [239, 242, 251, 252, 255, 256, 258, 259, 260, 261, 262, 265, 266, 269, 270, 276, 277, 278, 281, 282, 288, 289, 290, 293, 294, 298, 303], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MetricsTracker.get_agent_costs": {"executed_lines": [333, 336, 345, 346, 349, 350, 352, 353, 354, 355, 356, 359, 360, 363, 364, 369, 370, 373, 374, 378, 381, 382, 386, 391], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MetricsTracker.get_token_usage_stats": {"executed_lines": [433, 440, 452, 453, 456, 457, 458, 461, 466], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 37, 38, 39, 40, 41, 43, 47, 54, 55, 75, 83, 84, 130, 206, 305, 393], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"MetricsTracker": {"executed_lines": [81, 114, 115, 120, 123, 124, 125, 128, 172, 176, 177, 183, 197, 199, 204, 239, 242, 251, 252, 255, 256, 258, 259, 260, 261, 262, 265, 266, 269, 270, 276, 277, 278, 281, 282, 288, 289, 290, 293, 294, 298, 303, 333, 336, 345, 346, 349, 350, 352, 353, 354, 355, 356, 359, 360, 363, 364, 369, 370, 373, 374, 378, 381, 382, 386, 391, 433, 440, 452, 453, 456, 457, 458, 461, 466], "summary": {"covered_lines": 75, "num_statements": 79, "percent_covered": 94.9367088607595, "percent_covered_display": "94.94", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [173, 178, 179, 180], "excluded_lines": []}, "": {"executed_lines": [1, 37, 38, 39, 40, 41, 43, 47, 54, 55, 75, 83, 84, 130, 206, 305, 393], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/quality/__init__.py": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/quality/complexity_analyzer.py": {"executed_lines": [1, 7, 8, 9, 11, 12, 14, 16, 19, 20, 33, 34, 35, 36, 39, 42, 43, 45, 51, 53, 65, 67, 68, 71, 72, 75, 76, 81, 82, 84, 87, 88, 89, 94, 95, 96, 101, 102, 103, 107, 109, 119, 121, 123, 125, 127, 130, 131, 132, 133, 134, 135, 136, 137, 147, 148, 149, 152, 154, 166, 168, 170, 172, 182, 184, 185, 187, 189, 190, 192, 193, 195, 196, 199, 201, 213, 214, 216, 218, 228, 230, 232, 234, 238, 239, 240, 241, 244, 246, 258, 260, 262, 264, 273, 275, 276, 277, 278, 279, 280, 282, 284, 293, 296, 299, 300, 301, 303, 304, 305, 306, 311, 314, 316], "summary": {"covered_lines": 112, "num_statements": 135, "percent_covered": 82.96296296296296, "percent_covered_display": "82.96", "missing_lines": 23, "excluded_lines": 0}, "missing_lines": [77, 78, 79, 90, 91, 97, 98, 104, 105, 140, 141, 142, 144, 145, 150, 197, 235, 236, 237, 294, 302, 307, 308], "excluded_lines": [], "functions": {"ComplexityAnalyzer.__init__": {"executed_lines": [51], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ComplexityAnalyzer.analyze_file": {"executed_lines": [65, 67, 68, 71, 72, 75, 76, 81, 82, 84, 87, 88, 89, 94, 95, 96, 101, 102, 103, 107], "summary": {"covered_lines": 20, "num_statements": 29, "percent_covered": 68.96551724137932, "percent_covered_display": "68.97", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [77, 78, 79, 90, 91, 97, 98, 104, 105], "excluded_lines": []}, "ComplexityAnalyzer._analyze_cyclomatic_complexity": {"executed_lines": [119, 121, 123, 125, 127, 130, 131, 132, 133, 134, 135, 136, 137, 147, 148, 149, 152, 154, 166, 168, 170], "summary": {"covered_lines": 21, "num_statements": 27, "percent_covered": 77.77777777777777, "percent_covered_display": "77.78", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [140, 141, 142, 144, 145, 150], "excluded_lines": []}, "ComplexityAnalyzer._analyze_function_length": {"executed_lines": [182, 184, 185, 187, 189, 190, 192, 193, 195, 196, 199, 201, 213, 214, 216], "summary": {"covered_lines": 15, "num_statements": 16, "percent_covered": 93.75, "percent_covered_display": "93.75", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [197], "excluded_lines": []}, "ComplexityAnalyzer._analyze_maintainability_index": {"executed_lines": [228, 230, 232, 234, 238, 239, 240, 241, 244, 246, 258, 260, 262], "summary": {"covered_lines": 13, "num_statements": 16, "percent_covered": 81.25, "percent_covered_display": "81.25", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [235, 236, 237], "excluded_lines": []}, "ComplexityAnalyzer.analyze_files": {"executed_lines": [273, 275, 276, 277, 278, 279, 280, 282], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ComplexityAnalyzer.calculate_score": {"executed_lines": [293, 296, 299, 300, 301, 303, 304, 305, 306, 311, 314, 316], "summary": {"covered_lines": 12, "num_statements": 16, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [294, 302, 307, 308], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 14, 16, 19, 20, 33, 34, 35, 36, 39, 42, 43, 45, 53, 109, 172, 218, 264, 284], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"ComplexityAnalyzer": {"executed_lines": [51, 65, 67, 68, 71, 72, 75, 76, 81, 82, 84, 87, 88, 89, 94, 95, 96, 101, 102, 103, 107, 119, 121, 123, 125, 127, 130, 131, 132, 133, 134, 135, 136, 137, 147, 148, 149, 152, 154, 166, 168, 170, 182, 184, 185, 187, 189, 190, 192, 193, 195, 196, 199, 201, 213, 214, 216, 228, 230, 232, 234, 238, 239, 240, 241, 244, 246, 258, 260, 262, 273, 275, 276, 277, 278, 279, 280, 282, 293, 296, 299, 300, 301, 303, 304, 305, 306, 311, 314, 316], "summary": {"covered_lines": 90, "num_statements": 113, "percent_covered": 79.64601769911505, "percent_covered_display": "79.65", "missing_lines": 23, "excluded_lines": 0}, "missing_lines": [77, 78, 79, 90, 91, 97, 98, 104, 105, 140, 141, 142, 144, 145, 150, 197, 235, 236, 237, 294, 302, 307, 308], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 11, 12, 14, 16, 19, 20, 33, 34, 35, 36, 39, 42, 43, 45, 53, 109, 172, 218, 264, 284], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/quality/owasp_patterns.py": {"executed_lines": [1, 6, 7, 8, 9, 11, 13, 16, 17, 24, 30, 33, 35, 38, 41, 42, 43, 46, 50, 52, 64, 66, 67, 70, 71, 74, 75, 80, 81, 83, 86, 87, 88, 91, 92, 94, 96, 106, 107, 109, 111, 113, 117, 129, 131, 141, 142, 144, 146, 147, 159, 161, 171, 172, 174, 176, 177, 189, 191, 201, 202, 204, 206, 207, 210, 211, 213, 219, 222, 234, 236, 246, 247, 249, 251, 252, 264, 266, 275, 277, 278, 279, 280, 281, 282, 284], "summary": {"covered_lines": 73, "num_statements": 78, "percent_covered": 93.58974358974359, "percent_covered_display": "93.59", "missing_lines": 5, "excluded_lines": 34}, "missing_lines": [76, 77, 78, 216, 220], "excluded_lines": [46, 50, 92, 209, 210, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264], "functions": {"OWASPPatterns.__init__": {"executed_lines": [30, 33], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "OWASPPatterns._compile_patterns": {"executed_lines": [38, 41, 42, 43, 46, 50], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [46, 50]}, "OWASPPatterns.check_file": {"executed_lines": [64, 66, 67, 70, 71, 74, 75, 80, 81, 83, 86, 87, 88, 91, 92, 94], "summary": {"covered_lines": 15, "num_statements": 18, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 3, "excluded_lines": 1}, "missing_lines": [76, 77, 78], "excluded_lines": [92]}, "OWASPPatterns._check_sql_injection": {"executed_lines": [106, 107, 109, 111, 113, 117, 129], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "OWASPPatterns._check_nosql_injection": {"executed_lines": [141, 142, 144, 146, 147, 159], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "OWASPPatterns._check_command_injection": {"executed_lines": [171, 172, 174, 176, 177, 189], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "OWASPPatterns._check_hardcoded_credentials": {"executed_lines": [201, 202, 204, 206, 207, 210, 211, 213, 219, 222, 234], "summary": {"covered_lines": 10, "num_statements": 12, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 2, "excluded_lines": 2}, "missing_lines": [216, 220], "excluded_lines": [209, 210]}, "OWASPPatterns._check_weak_password_validation": {"executed_lines": [246, 247, 249, 251, 252, 264], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 28}, "missing_lines": [], "excluded_lines": [237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264]}, "OWASPPatterns.check_files": {"executed_lines": [275, 277, 278, 279, 280, 281, 282, 284], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 6, 7, 8, 9, 11, 13, 16, 17, 24, 35, 52, 96, 131, 161, 191, 236, 266], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [236]}}, "classes": {"OWASPPatterns": {"executed_lines": [30, 33, 38, 41, 42, 43, 46, 50, 64, 66, 67, 70, 71, 74, 75, 80, 81, 83, 86, 87, 88, 91, 92, 94, 106, 107, 109, 111, 113, 117, 129, 141, 142, 144, 146, 147, 159, 171, 172, 174, 176, 177, 189, 201, 202, 204, 206, 207, 210, 211, 213, 219, 222, 234, 246, 247, 249, 251, 252, 264, 275, 277, 278, 279, 280, 281, 282, 284], "summary": {"covered_lines": 58, "num_statements": 63, "percent_covered": 92.06349206349206, "percent_covered_display": "92.06", "missing_lines": 5, "excluded_lines": 33}, "missing_lines": [76, 77, 78, 216, 220], "excluded_lines": [46, 50, 92, 209, 210, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264]}, "": {"executed_lines": [1, 6, 7, 8, 9, 11, 13, 16, 17, 24, 35, 52, 96, 131, 161, 191, 236, 266], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [236]}}}, "codeframe/lib/quality/security_scanner.py": {"executed_lines": [1, 6, 7, 8, 9, 10, 12, 14, 17, 18, 26, 32, 34, 46, 48, 49, 52, 53, 56, 57, 62, 63, 65, 67, 69, 77, 78, 79, 90, 92, 102, 104, 106, 108, 109, 112, 113, 114, 115, 118, 121, 122, 123, 125, 137, 139, 148, 153, 155, 167, 179, 181, 182, 185, 187, 189, 190, 191, 192, 193, 196, 198, 207, 209, 210, 211, 212, 213, 214, 216, 218, 227, 230, 233, 234, 235, 236, 237, 238, 239, 240, 245, 248, 250], "summary": {"covered_lines": 80, "num_statements": 96, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 16, "excluded_lines": 3}, "missing_lines": [58, 59, 60, 81, 82, 83, 84, 85, 86, 87, 88, 186, 194, 228, 241, 242], "excluded_lines": [167, 187, 188], "functions": {"SecurityScanner.__init__": {"executed_lines": [32], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SecurityScanner.analyze_file": {"executed_lines": [46, 48, 49, 52, 53, 56, 57, 62, 63, 65, 67, 69, 77, 78, 79, 90], "summary": {"covered_lines": 16, "num_statements": 27, "percent_covered": 59.25925925925926, "percent_covered_display": "59.26", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [58, 59, 60, 81, 82, 83, 84, 85, 86, 87, 88], "excluded_lines": []}, "SecurityScanner._parse_bandit_output": {"executed_lines": [102, 104, 106, 108, 109, 112, 113, 114, 115, 118, 121, 122, 123, 125, 137], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SecurityScanner._map_severity": {"executed_lines": [148, 153], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SecurityScanner._generate_suggestion": {"executed_lines": [167, 179, 181, 182, 185, 187, 189, 190, 191, 192, 193, 196], "summary": {"covered_lines": 10, "num_statements": 12, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 2, "excluded_lines": 3}, "missing_lines": [186, 194], "excluded_lines": [167, 187, 188]}, "SecurityScanner.analyze_files": {"executed_lines": [207, 209, 210, 211, 212, 213, 214, 216], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "SecurityScanner.calculate_score": {"executed_lines": [227, 230, 233, 234, 235, 236, 237, 238, 239, 240, 245, 248, 250], "summary": {"covered_lines": 13, "num_statements": 16, "percent_covered": 81.25, "percent_covered_display": "81.25", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [228, 241, 242], "excluded_lines": []}, "": {"executed_lines": [1, 6, 7, 8, 9, 10, 12, 14, 17, 18, 26, 34, 92, 139, 155, 198, 218], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SecurityScanner": {"executed_lines": [32, 46, 48, 49, 52, 53, 56, 57, 62, 63, 65, 67, 69, 77, 78, 79, 90, 102, 104, 106, 108, 109, 112, 113, 114, 115, 118, 121, 122, 123, 125, 137, 148, 153, 167, 179, 181, 182, 185, 187, 189, 190, 191, 192, 193, 196, 207, 209, 210, 211, 212, 213, 214, 216, 227, 230, 233, 234, 235, 236, 237, 238, 239, 240, 245, 248, 250], "summary": {"covered_lines": 65, "num_statements": 81, "percent_covered": 80.24691358024691, "percent_covered_display": "80.25", "missing_lines": 16, "excluded_lines": 3}, "missing_lines": [58, 59, 60, 81, 82, 83, 84, 85, 86, 87, 88, 186, 194, 228, 241, 242], "excluded_lines": [167, 187, 188]}, "": {"executed_lines": [1, 6, 7, 8, 9, 10, 12, 14, 17, 18, 26, 34, 92, 139, 155, 198, 218], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/lib/quality_gates.py": {"executed_lines": [1, 34, 35, 36, 37, 38, 39, 41, 49, 51, 55, 69, 70, 89, 101, 102, 103, 105, 129, 130, 133, 134, 137, 138, 139, 140, 150, 151, 152, 153, 162, 164, 165, 173, 180, 181, 183, 185, 207, 208, 211, 212, 215, 216, 217, 218, 228, 229, 230, 231, 240, 242, 243, 251, 258, 259, 261, 263, 283, 284, 287, 289, 290, 299, 301, 302, 310, 317, 318, 320, 322, 347, 348, 351, 354, 361, 364, 370, 372, 373, 385, 387, 388, 396, 403, 404, 408, 410, 433, 434, 437, 438, 441, 442, 443, 444, 454, 455, 456, 457, 466, 468, 469, 477, 484, 485, 487, 489, 519, 520, 522, 525, 526, 528, 529, 533, 536, 537, 540, 541, 544, 545, 548, 549, 552, 553, 555, 558, 560, 567, 572, 578, 580, 581, 582, 584, 586, 587, 588, 590, 592, 593, 594, 596, 607, 608, 610, 611, 612, 613, 614, 615, 617, 623, 629, 630, 639, 640, 642, 647, 648, 653, 654, 660, 662, 663, 671, 672, 674, 679, 680, 685, 686, 692, 694, 695, 703, 704, 706, 711, 712, 717, 718, 724, 726, 727, 735, 736, 738, 743, 744, 749, 750, 756, 759, 760, 768, 769, 771, 776, 777, 782, 783, 789, 791, 792, 800, 801, 803, 808, 809, 814, 815, 821, 823, 824, 832, 833, 835, 840, 841, 846, 847, 857, 860, 861, 862, 863, 865, 867, 868, 869, 870, 872, 875, 876, 877, 878, 880, 882, 883, 884, 885, 887, 892, 893, 894, 895, 897, 899, 900, 901, 902, 903, 905, 907, 908, 909, 910, 916, 925, 926, 929, 934, 935, 941, 943, 945, 947, 948, 949, 951, 953, 955, 958, 966], "summary": {"covered_lines": 256, "num_statements": 256, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 26}, "missing_lines": [], "excluded_lines": [1, 55, 106, 164, 180, 181, 186, 242, 258, 259, 264, 301, 317, 318, 323, 387, 403, 404, 411, 468, 484, 485, 490, 558, 859, 860], "functions": {"QualityGates.__init__": {"executed_lines": [101, 102, 103], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates.run_tests_gate": {"executed_lines": [129, 130, 133, 134, 137, 138, 139, 140, 150, 151, 152, 153, 162, 164, 165, 173, 180, 181, 183], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [106, 164, 180, 181]}, "QualityGates.run_type_check_gate": {"executed_lines": [207, 208, 211, 212, 215, 216, 217, 218, 228, 229, 230, 231, 240, 242, 243, 251, 258, 259, 261], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [186, 242, 258, 259]}, "QualityGates.run_coverage_gate": {"executed_lines": [283, 284, 287, 289, 290, 299, 301, 302, 310, 317, 318, 320], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [264, 301, 317, 318]}, "QualityGates.run_review_gate": {"executed_lines": [347, 348, 351, 354, 361, 364, 370, 372, 373, 385, 387, 388, 396, 403, 404, 408], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [323, 387, 403, 404]}, "QualityGates.run_linting_gate": {"executed_lines": [433, 434, 437, 438, 441, 442, 443, 444, 454, 455, 456, 457, 466, 468, 469, 477, 484, 485, 487], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 4}, "missing_lines": [], "excluded_lines": [411, 468, 484, 485]}, "QualityGates.run_all_gates": {"executed_lines": [519, 520, 522, 525, 526, 528, 529, 533, 536, 537, 540, 541, 544, 545, 548, 549, 552, 553, 555, 558, 560, 567, 572], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [490, 558]}, "QualityGates._task_has_python_files": {"executed_lines": [580, 581, 582], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._task_has_javascript_files": {"executed_lines": [586, 587, 588], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._task_has_typescript_files": {"executed_lines": [592, 593, 594], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._contains_risky_changes": {"executed_lines": [607, 608, 610, 611, 612, 613, 614, 615, 617], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_pytest": {"executed_lines": [629, 630, 639, 640, 642, 647, 648, 653, 654], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_jest": {"executed_lines": [662, 663, 671, 672, 674, 679, 680, 685, 686], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_mypy": {"executed_lines": [694, 695, 703, 704, 706, 711, 712, 717, 718], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_tsc": {"executed_lines": [726, 727, 735, 736, 738, 743, 744, 749, 750], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_coverage": {"executed_lines": [759, 760, 768, 769, 771, 776, 777, 782, 783], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_ruff": {"executed_lines": [791, 792, 800, 801, 803, 808, 809, 814, 815], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._run_eslint": {"executed_lines": [823, 824, 832, 833, 835, 840, 841, 846, 847], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_pytest_summary": {"executed_lines": [860, 861, 862, 863], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [859, 860]}, "QualityGates._extract_jest_summary": {"executed_lines": [867, 868, 869, 870], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_mypy_summary": {"executed_lines": [875, 876, 877, 878], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_tsc_summary": {"executed_lines": [882, 883, 884, 885], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_coverage_percentage": {"executed_lines": [892, 893, 894, 895], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_ruff_summary": {"executed_lines": [899, 900, 901, 902, 903], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._extract_eslint_summary": {"executed_lines": [907, 908, 909, 910], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGates._create_quality_blocker": {"executed_lines": [925, 926, 929, 934, 935, 941, 943, 945, 947, 948, 949, 951, 953, 955, 958, 966], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 34, 35, 36, 37, 38, 39, 41, 49, 51, 55, 69, 70, 89, 105, 185, 263, 322, 410, 489, 578, 584, 590, 596, 623, 660, 692, 724, 756, 789, 821, 857, 865, 872, 880, 887, 897, 905, 916], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [1, 55]}}, "classes": {"QualityGates": {"executed_lines": [101, 102, 103, 129, 130, 133, 134, 137, 138, 139, 140, 150, 151, 152, 153, 162, 164, 165, 173, 180, 181, 183, 207, 208, 211, 212, 215, 216, 217, 218, 228, 229, 230, 231, 240, 242, 243, 251, 258, 259, 261, 283, 284, 287, 289, 290, 299, 301, 302, 310, 317, 318, 320, 347, 348, 351, 354, 361, 364, 370, 372, 373, 385, 387, 388, 396, 403, 404, 408, 433, 434, 437, 438, 441, 442, 443, 444, 454, 455, 456, 457, 466, 468, 469, 477, 484, 485, 487, 519, 520, 522, 525, 526, 528, 529, 533, 536, 537, 540, 541, 544, 545, 548, 549, 552, 553, 555, 558, 560, 567, 572, 580, 581, 582, 586, 587, 588, 592, 593, 594, 607, 608, 610, 611, 612, 613, 614, 615, 617, 629, 630, 639, 640, 642, 647, 648, 653, 654, 662, 663, 671, 672, 674, 679, 680, 685, 686, 694, 695, 703, 704, 706, 711, 712, 717, 718, 726, 727, 735, 736, 738, 743, 744, 749, 750, 759, 760, 768, 769, 771, 776, 777, 782, 783, 791, 792, 800, 801, 803, 808, 809, 814, 815, 823, 824, 832, 833, 835, 840, 841, 846, 847, 860, 861, 862, 863, 867, 868, 869, 870, 875, 876, 877, 878, 882, 883, 884, 885, 892, 893, 894, 895, 899, 900, 901, 902, 903, 907, 908, 909, 910, 925, 926, 929, 934, 935, 941, 943, 945, 947, 948, 949, 951, 953, 955, 958, 966], "summary": {"covered_lines": 220, "num_statements": 220, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 24}, "missing_lines": [], "excluded_lines": [106, 164, 180, 181, 186, 242, 258, 259, 264, 301, 317, 318, 323, 387, 403, 404, 411, 468, 484, 485, 490, 558, 859, 860]}, "": {"executed_lines": [1, 34, 35, 36, 37, 38, 39, 41, 49, 51, 55, 69, 70, 89, 105, 185, 263, 322, 410, 489, 578, 584, 590, 596, 623, 660, 692, 724, 756, 789, 821, 857, 865, 872, 880, 887, 897, 905, 916], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [1, 55]}}}, "codeframe/lib/token_counter.py": {"executed_lines": [1, 13, 14, 16, 19, 20, 44, 56, 57, 59, 60, 61, 63, 65, 74, 76, 95, 96, 99, 100, 101, 102, 105, 108, 109, 111, 113, 136, 137, 140, 142, 166, 167, 170, 171, 173, 175, 181, 183, 189], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"TokenCounter.__init__": {"executed_lines": [56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter._compute_hash": {"executed_lines": [74], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter.count_tokens": {"executed_lines": [95, 96, 99, 100, 101, 102, 105, 108, 109, 111], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter.count_tokens_batch": {"executed_lines": [136, 137, 140], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter.count_context_tokens": {"executed_lines": [166, 167, 170, 171, 173], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter.clear_cache": {"executed_lines": [181], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TokenCounter.get_cache_stats": {"executed_lines": [189], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 16, 19, 20, 44, 65, 76, 113, 142, 175, 183], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"TokenCounter": {"executed_lines": [56, 57, 59, 60, 61, 63, 74, 95, 96, 99, 100, 101, 102, 105, 108, 109, 111, 136, 137, 140, 166, 167, 170, 171, 173, 181, 189], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 16, 19, 20, 44, 65, 76, 113, 142, 175, 183], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/notifications/__init__.py": {"executed_lines": [0], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/notifications/desktop.py": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 22, 23, 25, 26, 27, 28, 30, 31, 32, 33, 36, 37, 49, 50, 52, 55, 56, 58, 67, 69, 81, 83, 84, 87, 88, 89, 90, 91, 92, 100, 109, 110, 111, 112, 117, 119, 125, 126, 127, 131, 140, 141, 142, 143, 144, 145, 148, 150, 156, 157, 178, 179, 181, 190, 191, 192, 193, 194, 199, 201, 207, 211, 212, 216, 222, 223, 224], "summary": {"covered_lines": 72, "num_statements": 85, "percent_covered": 84.70588235294117, "percent_covered_display": "84.71", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [94, 96, 98, 113, 114, 128, 129, 195, 196, 208, 209, 213, 214], "excluded_lines": [], "functions": {"DesktopNotificationService.__init__": {"executed_lines": [55, 56], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DesktopNotificationService.is_available": {"executed_lines": [67], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DesktopNotificationService.send_notification": {"executed_lines": [81, 83, 84, 87, 88, 89, 90, 91, 92], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [94, 96, 98], "excluded_lines": []}, "DesktopNotificationService._send_macos": {"executed_lines": [109, 110, 111, 112, 117], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [113, 114], "excluded_lines": []}, "DesktopNotificationService._send_macos_fallback": {"executed_lines": [125, 126, 127], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 60.0, "percent_covered_display": "60.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [128, 129], "excluded_lines": []}, "DesktopNotificationService._send_linux": {"executed_lines": [140, 141, 142, 143, 144, 145, 148], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DesktopNotificationService._send_linux_fallback": {"executed_lines": [156, 157, 178, 179], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "DesktopNotificationService._send_windows": {"executed_lines": [190, 191, 192, 193, 194, 199], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [195, 196], "excluded_lines": []}, "DesktopNotificationService._send_windows_fallback": {"executed_lines": [207, 211, 212], "summary": {"covered_lines": 3, "num_statements": 7, "percent_covered": 42.857142857142854, "percent_covered_display": "42.86", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [208, 209, 213, 214], "excluded_lines": []}, "DesktopNotificationService._truncate": {"executed_lines": [222, 223, 224], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 22, 23, 25, 26, 27, 28, 30, 31, 32, 33, 36, 37, 49, 50, 52, 58, 69, 100, 119, 131, 150, 181, 201, 216], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"DesktopNotificationService": {"executed_lines": [55, 56, 67, 81, 83, 84, 87, 88, 89, 90, 91, 92, 109, 110, 111, 112, 117, 125, 126, 127, 140, 141, 142, 143, 144, 145, 148, 156, 157, 178, 179, 190, 191, 192, 193, 194, 199, 207, 211, 212, 222, 223, 224], "summary": {"covered_lines": 43, "num_statements": 56, "percent_covered": 76.78571428571429, "percent_covered_display": "76.79", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [94, 96, 98, 113, 114, 128, 129, 195, 196, 208, 209, 213, 214], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 22, 23, 25, 26, 27, 28, 30, 31, 32, 33, 36, 37, 49, 50, 52, 58, 69, 100, 119, 131, 150, 181, 201, 216], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/notifications/router.py": {"executed_lines": [1, 8, 10, 11, 12, 14, 17, 18, 29, 42, 43, 44, 47, 48, 50, 55, 67, 68, 69, 73, 74, 75, 76, 77, 78, 79, 82, 83, 84, 87], "summary": {"covered_lines": 28, "num_statements": 30, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [88, 89], "excluded_lines": [], "functions": {"NotificationRouter.__init__": {"executed_lines": [42, 43, 44, 47, 48, 50], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "NotificationRouter.send": {"executed_lines": [67, 68, 69, 73, 74, 75, 76, 77, 78, 79, 82, 83, 84, 87], "summary": {"covered_lines": 14, "num_statements": 16, "percent_covered": 87.5, "percent_covered_display": "87.50", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [88, 89], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 12, 14, 17, 18, 29, 55], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"NotificationRouter": {"executed_lines": [42, 43, 44, 47, 48, 50, 67, 68, 69, 73, 74, 75, 76, 77, 78, 79, 82, 83, 84, 87], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 90.9090909090909, "percent_covered_display": "90.91", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [88, 89], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 12, 14, 17, 18, 29, 55], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/notifications/webhook.py": {"executed_lines": [1, 7, 8, 9, 10, 12, 14, 16, 19, 20, 26, 39, 40, 41, 43, 49, 51, 73, 75, 85, 111, 112, 113, 116, 117, 118, 121, 130, 132, 133, 138, 140, 144, 146, 153, 157, 158, 161, 163, 186], "summary": {"covered_lines": 38, "num_statements": 42, "percent_covered": 90.47619047619048, "percent_covered_display": "90.48", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [147, 151, 154, 155], "excluded_lines": [], "functions": {"WebhookNotificationService.__init__": {"executed_lines": [39, 40, 41], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WebhookNotificationService.is_enabled": {"executed_lines": [49], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WebhookNotificationService.format_payload": {"executed_lines": [73, 75], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WebhookNotificationService.send_blocker_notification": {"executed_lines": [111, 112, 113, 116, 117, 118, 121, 130, 132, 133, 138, 140, 144, 146, 153, 157, 158, 161], "summary": {"covered_lines": 18, "num_statements": 22, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [147, 151, 154, 155], "excluded_lines": []}, "WebhookNotificationService.send_blocker_notification_background": {"executed_lines": [186], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 12, 14, 16, 19, 20, 26, 43, 51, 85, 163], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"WebhookNotificationService": {"executed_lines": [39, 40, 41, 49, 73, 75, 111, 112, 113, 116, 117, 118, 121, 130, 132, 133, 138, 140, 144, 146, 153, 157, 158, 161, 186], "summary": {"covered_lines": 25, "num_statements": 29, "percent_covered": 86.20689655172414, "percent_covered_display": "86.21", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [147, 151, 154, 155], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 12, 14, 16, 19, 20, 26, 43, 51, 85, 163], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/__init__.py": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/database.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 17, 18, 20, 21, 22, 24, 31, 32, 34, 35, 38, 40, 43, 44, 46, 48, 51, 81, 100, 108, 134, 142, 150, 166, 186, 192, 198, 206, 221, 241, 256, 272, 280, 295, 310, 325, 343, 351, 367, 375, 389, 396, 403, 405, 410, 411, 412, 415, 418, 421, 424, 427, 430, 435, 436, 437, 439, 442, 443, 444, 445, 446, 447, 448, 451, 459, 483, 484, 503, 504, 506, 508, 509, 510, 511, 513, 526, 527, 528, 529, 530, 531, 532, 533, 535, 536, 537, 538, 539, 540, 541, 543, 544, 561, 562, 564, 573, 574, 575, 576, 578, 587, 588, 592, 593, 595, 597, 598, 615, 616, 618, 627, 628, 632, 633, 635, 645, 648, 649, 650, 651, 653, 656, 658, 660, 662, 663, 664, 666, 668, 677, 678, 679, 680, 682, 684, 685, 686, 688, 690, 691, 692, 694, 696, 700, 725, 728, 735, 736, 738, 739, 745, 750, 751, 753, 763, 765, 766, 767, 773, 774, 776, 785, 786, 792, 793, 795, 810, 813, 824, 826, 827, 828, 830, 832, 833, 835, 836, 837, 838, 840, 848, 857, 858, 859, 860, 862, 871, 872, 880, 881, 882, 884, 906, 909, 923, 925, 938, 939, 940, 941, 942, 943, 944, 946, 947, 948, 949, 950, 953, 954, 956, 957, 959, 960, 963, 964, 965, 968, 969, 970, 972, 973, 976, 977, 978, 979, 982, 983, 984, 987, 988, 989, 990, 992, 1003, 1012, 1013, 1014, 1016, 1017, 1018, 1019, 1022, 1023, 1025, 1027, 1029, 1040, 1043, 1053, 1055, 1056, 1059, 1061, 1067, 1077, 1081, 1082, 1083, 1084, 1086, 1087, 1089, 1091, 1093, 1095, 1096, 1097, 1099, 1101, 1107, 1108, 1109, 1111, 1129, 1130, 1137, 1138, 1140, 1149, 1150, 1151, 1152, 1154, 1160, 1161, 1162, 1163, 1165, 1175, 1178, 1179, 1180, 1181, 1183, 1184, 1186, 1188, 1190, 1192, 1193, 1194, 1196, 1198, 1216, 1217, 1224, 1225, 1227, 1236, 1237, 1238, 1239, 1241, 1250, 1251, 1255, 1256, 1258, 1269, 1270, 1278, 1279, 1282, 1284, 1286, 1296, 1299, 1300, 1301, 1302, 1303, 1305, 1307, 1309, 1310, 1311, 1313, 1315, 1347, 1348, 1370, 1371, 1373, 1382, 1383, 1387, 1388, 1390, 1399, 1400, 1404, 1405, 1407, 1416, 1417, 1427, 1428, 1430, 1439, 1442, 1443, 1446, 1450, 1453, 1455, 1461, 1470, 1471, 1482, 1483, 1486, 1495, 1497, 1500, 1508, 1510, 1511, 1514, 1522, 1525, 1527, 1530, 1533, 1535, 1536, 1541, 1546, 1551, 1552, 1554, 1561, 1571, 1573, 1576, 1584, 1587, 1589, 1591, 1593, 1594, 1595, 1600, 1601, 1603, 1604, 1607, 1626, 1628, 1636, 1639, 1640, 1641, 1644, 1645, 1646, 1656, 1674, 1675, 1677, 1680, 1684, 1685, 1687, 1689, 1696, 1709, 1710, 1717, 1718, 1720, 1729, 1730, 1739, 1740, 1742, 1752, 1754, 1755, 1757, 1765, 1766, 1768, 1777, 1778, 1782, 1783, 1785, 1794, 1795, 1796, 1797, 1799, 1808, 1809, 1813, 1814, 1816, 1825, 1826, 1830, 1831, 1833, 1842, 1843, 1847, 1849, 1855, 1858, 1859, 1862, 1863, 1864, 1868, 1870, 1873, 1899, 1900, 1908, 1909, 1911, 1920, 1921, 1929, 1930, 1934, 1960, 1963, 1964, 1979, 1980, 1982, 1992, 1993, 2004, 2005, 2007, 2017, 2018, 2030, 2031, 2032, 2033, 2034, 2036, 2046, 2047, 2048, 2052, 2094, 2115, 2136, 2172, 2198, 2209, 2210, 2226, 2227, 2230, 2231, 2244, 2248, 2267, 2268, 2269, 2272, 2273, 2282, 2285, 2287, 2288, 2308, 2309, 2311, 2320, 2321, 2322, 2323, 2325, 2345, 2347, 2349, 2350, 2356, 2358, 2364, 2366, 2367, 2369, 2378, 2380, 2381, 2389, 2391, 2401, 2407, 2408, 2417, 2419, 2436, 2439, 2447, 2448, 2450, 2452, 2474, 2475, 2491, 2492, 2494, 2504, 2505, 2514, 2515, 2517, 2526, 2527, 2528, 2529, 2533, 2555, 2556, 2563, 2564, 2566, 2575, 2576, 2585, 2587, 2597, 2598, 2614, 2616, 2623, 2624, 2630, 2632, 2641, 2643, 2651, 2652, 2654, 2681, 2691, 2692, 2712, 2713, 2715, 2731, 2733, 2736, 2737, 2739, 2740, 2741, 2743, 2747, 2748, 2749, 2751, 2753, 2764, 2765, 2766, 2768, 2784, 2786, 2808, 2835, 2838, 2848, 2857, 2859, 2864, 2882, 2883, 2891, 2893, 2900, 2903, 2904, 2911, 2917, 2941, 2969, 2996, 2997, 3015, 3016, 3018, 3027, 3029, 3030, 3042, 3043, 3045, 3046, 3048, 3060, 3062, 3064, 3073, 3075, 3076, 3087, 3088, 3089, 3092, 3093, 3095, 3112, 3135, 3136, 3157, 3158, 3160, 3187, 3190, 3191, 3193, 3194, 3195, 3197, 3198, 3199, 3201, 3202, 3203, 3205, 3206, 3207, 3209, 3211, 3212, 3214], "summary": {"covered_lines": 697, "num_statements": 788, "percent_covered": 88.4517766497462, "percent_covered_display": "88.45", "missing_lines": 91, "excluded_lines": 42}, "missing_lines": [453, 454, 455, 456, 457, 646, 654, 926, 966, 971, 1078, 1176, 1297, 1528, 1531, 1537, 1538, 1590, 1592, 1596, 1597, 1647, 1648, 1650, 1651, 1652, 1654, 1961, 2062, 2065, 2074, 2075, 2077, 2078, 2080, 2082, 2083, 2085, 2092, 2103, 2104, 2113, 2124, 2125, 2134, 2143, 2146, 2155, 2156, 2158, 2159, 2160, 2161, 2163, 2170, 2178, 2181, 2189, 2196, 2232, 2235, 2397, 2398, 2399, 2666, 2667, 2677, 2744, 2745, 2802, 2894, 2905, 2906, 2907, 2908, 2909, 2928, 2929, 2939, 2950, 2951, 2961, 2962, 3236, 3239, 3250, 3253, 3267, 3270, 3284, 3286], "excluded_lines": [11, 12, 325, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 2814, 2865], "functions": {"Database.__init__": {"executed_lines": [21, 22], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.initialize": {"executed_lines": [31, 32, 34, 35, 38, 40, 43, 44], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database._create_schema": {"executed_lines": [48, 51, 81, 100, 108, 134, 142, 150, 166, 186, 192, 198, 206, 221, 241, 256, 272, 280, 295, 310, 325, 343, 351, 367, 375, 389, 396, 403], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [325]}, "Database._run_migrations": {"executed_lines": [410, 411, 412, 415, 418, 421, 424, 427, 430, 435, 436, 437, 439, 442, 443, 444, 445, 446, 447, 448, 451], "summary": {"covered_lines": 21, "num_statements": 26, "percent_covered": 80.76923076923077, "percent_covered_display": "80.77", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [453, 454, 455, 456, 457], "excluded_lines": []}, "Database.create_project": {"executed_lines": [483, 484, 503, 504], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_project": {"executed_lines": [508, 509, 510, 511], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_issue": {"executed_lines": [526, 527, 528, 529, 530, 531, 532, 533, 535, 536, 537, 538, 539, 540, 541, 543, 544, 561, 562], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_issue": {"executed_lines": [573, 574, 575, 576], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_project_issues": {"executed_lines": [587, 588, 592, 593], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_task": {"executed_lines": [597, 598, 615, 616], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_project_tasks": {"executed_lines": [627, 628, 632, 633], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_task": {"executed_lines": [645, 648, 649, 650, 651, 653, 656, 658, 660, 662, 663, 664, 666], "summary": {"covered_lines": 13, "num_statements": 15, "percent_covered": 86.66666666666667, "percent_covered_display": "86.67", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [646, 654], "excluded_lines": []}, "Database.get_task": {"executed_lines": [677, 678, 679, 680], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.close": {"executed_lines": [684, 685, 686], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.__enter__": {"executed_lines": [690, 691, 692], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.__exit__": {"executed_lines": [696], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_blocker": {"executed_lines": [725, 728, 735, 736, 738, 739, 745, 750, 751], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.resolve_blocker": {"executed_lines": [763, 765, 766, 767, 773, 774], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_pending_blocker": {"executed_lines": [785, 786, 792, 793], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_blockers": {"executed_lines": [810, 813, 824, 826, 827, 828, 830, 832, 833, 835, 836, 837, 838, 840], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_blocker": {"executed_lines": [857, 858, 859, 860], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.expire_stale_blockers": {"executed_lines": [871, 872, 880, 881, 882], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_blocker_metrics": {"executed_lines": [906, 909, 923, 925, 938, 939, 940, 941, 942, 943, 944, 946, 947, 948, 949, 950, 953, 954, 956, 957, 959, 960, 963, 964, 965, 968, 969, 970, 972, 973, 976, 977, 978, 979, 982, 983, 984, 987, 988, 989, 990, 992], "summary": {"covered_lines": 42, "num_statements": 45, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [926, 966, 971], "excluded_lines": []}, "Database.list_projects": {"executed_lines": [1012, 1013, 1014, 1016, 1017, 1018, 1019, 1022, 1023, 1025, 1027], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database._calculate_project_progress": {"executed_lines": [1040, 1043, 1053, 1055, 1056, 1059, 1061], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_project": {"executed_lines": [1077, 1081, 1082, 1083, 1084, 1086, 1087, 1089, 1091, 1093, 1095, 1096, 1097, 1099], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1078], "excluded_lines": []}, "Database.delete_project": {"executed_lines": [1107, 1108, 1109], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_agent": {"executed_lines": [1129, 1130, 1137, 1138], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_agent": {"executed_lines": [1149, 1150, 1151, 1152], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_agents": {"executed_lines": [1160, 1161, 1162, 1163], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_agent": {"executed_lines": [1175, 1178, 1179, 1180, 1181, 1183, 1184, 1186, 1188, 1190, 1192, 1193, 1194, 1196], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 93.33333333333333, "percent_covered_display": "93.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1176], "excluded_lines": []}, "Database.create_memory": {"executed_lines": [1216, 1217, 1224, 1225], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_memory": {"executed_lines": [1236, 1237, 1238, 1239], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_project_memories": {"executed_lines": [1250, 1251, 1255, 1256], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_conversation": {"executed_lines": [1269, 1270, 1278, 1279], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_issues": {"executed_lines": [1284], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_issue": {"executed_lines": [1296, 1299, 1300, 1301, 1302, 1303, 1305, 1307, 1309, 1310, 1311, 1313], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 92.3076923076923, "percent_covered_display": "92.31", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1297], "excluded_lines": []}, "Database.create_task_with_issue": {"executed_lines": [1347, 1348, 1370, 1371], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_tasks_by_issue": {"executed_lines": [1382, 1383, 1387, 1388], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_tasks_by_parent_issue_number": {"executed_lines": [1399, 1400, 1404, 1405], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_issue_with_task_counts": {"executed_lines": [1416, 1417, 1427, 1428], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_issue_completion_status": {"executed_lines": [1439, 1442, 1443, 1446, 1450, 1453, 1455], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_issues_with_progress": {"executed_lines": [1470, 1471, 1482, 1483], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_prd": {"executed_lines": [1495, 1497, 1500, 1508, 1510, 1511, 1514, 1522, 1525, 1541, 1546, 1551, 1552, 1554], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_prd.ensure_rfc3339": {"executed_lines": [1527, 1530, 1533, 1535, 1536], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 55.55555555555556, "percent_covered_display": "55.56", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [1528, 1531, 1537, 1538], "excluded_lines": []}, "Database.get_issues_with_tasks": {"executed_lines": [1571, 1573, 1576, 1584, 1587, 1600, 1601, 1603, 1604, 1607, 1626, 1628, 1636, 1639, 1640, 1641, 1644, 1645, 1646, 1656, 1674, 1675, 1677, 1680, 1684, 1685, 1687, 1689], "summary": {"covered_lines": 28, "num_statements": 34, "percent_covered": 82.3529411764706, "percent_covered_display": "82.35", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [1647, 1648, 1650, 1651, 1652, 1654], "excluded_lines": []}, "Database.get_issues_with_tasks.ensure_rfc3339": {"executed_lines": [1589, 1591, 1593, 1594, 1595], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 55.55555555555556, "percent_covered_display": "55.56", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [1590, 1592, 1596, 1597], "excluded_lines": []}, "Database.create_git_branch": {"executed_lines": [1709, 1710, 1717, 1718], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_branch_for_issue": {"executed_lines": [1729, 1730, 1739, 1740], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.mark_branch_merged": {"executed_lines": [1752, 1754, 1755, 1757, 1765, 1766], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.mark_branch_abandoned": {"executed_lines": [1777, 1778, 1782, 1783], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.delete_git_branch": {"executed_lines": [1794, 1795, 1796, 1797], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_branches_by_status": {"executed_lines": [1808, 1809, 1813, 1814], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_all_branches_for_issue": {"executed_lines": [1825, 1826, 1830, 1831], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.count_branches_for_issue": {"executed_lines": [1842, 1843, 1847], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_branch_statistics": {"executed_lines": [1855, 1858, 1859, 1862, 1863, 1864, 1868, 1870], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_test_result": {"executed_lines": [1899, 1900, 1908, 1909], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 26}, "missing_lines": [], "excluded_lines": [1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909]}, "Database.get_test_results_by_task": {"executed_lines": [1920, 1921, 1929, 1930], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_correction_attempt": {"executed_lines": [1960, 1963, 1964, 1979, 1980], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 83.33333333333333, "percent_covered_display": "83.33", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1961], "excluded_lines": []}, "Database.get_correction_attempts_by_task": {"executed_lines": [1992, 1993, 2004, 2005], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_latest_correction_attempt": {"executed_lines": [2017, 2018, 2030, 2031, 2032, 2033, 2034], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.count_correction_attempts": {"executed_lines": [2046, 2047, 2048], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.add_task_dependency": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 11, "excluded_lines": 0}, "missing_lines": [2062, 2065, 2074, 2075, 2077, 2078, 2080, 2082, 2083, 2085, 2092], "excluded_lines": []}, "Database.get_task_dependencies": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [2103, 2104, 2113], "excluded_lines": []}, "Database.get_dependent_tasks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [2124, 2125, 2134], "excluded_lines": []}, "Database.remove_task_dependency": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 10, "excluded_lines": 0}, "missing_lines": [2143, 2146, 2155, 2156, 2158, 2159, 2160, 2161, 2163, 2170], "excluded_lines": []}, "Database.clear_all_task_dependencies": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [2178, 2181, 2189, 2196], "excluded_lines": []}, "Database.get_recent_activity": {"executed_lines": [2209, 2210, 2226, 2227, 2230, 2231, 2244], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 77.77777777777777, "percent_covered_display": "77.78", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [2232, 2235], "excluded_lines": []}, "Database.create_context_item": {"executed_lines": [2267, 2268, 2269, 2272, 2273, 2282, 2285, 2287, 2288, 2308, 2309], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_context_item": {"executed_lines": [2320, 2321, 2322, 2323], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_context_items": {"executed_lines": [2345, 2347, 2349, 2350, 2356, 2358, 2364, 2366, 2367], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_context_item_tier": {"executed_lines": [2378, 2380, 2381, 2389], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.delete_context_item": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [2397, 2398, 2399], "excluded_lines": []}, "Database.update_context_item_access": {"executed_lines": [2407, 2408, 2417], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.archive_cold_items": {"executed_lines": [2436, 2439, 2447, 2448, 2450], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_checkpoint": {"executed_lines": [2474, 2475, 2491, 2492], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.list_checkpoints": {"executed_lines": [2504, 2505, 2514, 2515], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_checkpoint": {"executed_lines": [2526, 2527, 2528, 2529], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.create_lint_result": {"executed_lines": [2555, 2556, 2563, 2564], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_lint_results_for_task": {"executed_lines": [2575, 2576, 2585], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_lint_trend": {"executed_lines": [2597, 2598, 2614], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.update_task_commit_sha": {"executed_lines": [2623, 2624, 2630], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_task_by_commit": {"executed_lines": [2641, 2643, 2651, 2652], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_recently_completed_tasks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [2666, 2667, 2677], "excluded_lines": []}, "Database.save_code_review": {"executed_lines": [2691, 2692, 2712, 2713], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_code_reviews": {"executed_lines": [2731, 2733, 2736, 2737, 2739, 2740, 2741, 2743, 2747, 2748, 2749, 2751, 2753, 2764, 2765, 2766, 2768, 2784], "summary": {"covered_lines": 18, "num_statements": 20, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [2744, 2745], "excluded_lines": []}, "Database.get_code_reviews_by_severity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [2802], "excluded_lines": []}, "Database.update_quality_gate_status": {"executed_lines": [2835, 2838, 2848, 2857, 2859], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [2814]}, "Database.get_quality_gate_status": {"executed_lines": [2882, 2883, 2891, 2893, 2900, 2903, 2904, 2911], "summary": {"covered_lines": 8, "num_statements": 14, "percent_covered": 57.142857142857146, "percent_covered_display": "57.14", "missing_lines": 6, "excluded_lines": 1}, "missing_lines": [2894, 2905, 2906, 2907, 2908, 2909], "excluded_lines": [2865]}, "Database.get_pending_tasks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [2928, 2929, 2939], "excluded_lines": []}, "Database.get_project_stats": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [2950, 2951, 2961, 2962], "excluded_lines": []}, "Database.save_checkpoint": {"executed_lines": [2996, 2997, 3015, 3016], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_checkpoints": {"executed_lines": [3027, 3029, 3030, 3042, 3043, 3045, 3046, 3048, 3060, 3062], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_checkpoint_by_id": {"executed_lines": [3073, 3075, 3076, 3087, 3088, 3089, 3092, 3093, 3095], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.save_token_usage": {"executed_lines": [3135, 3136, 3157, 3158], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_token_usage": {"executed_lines": [3187, 3190, 3191, 3193, 3194, 3195, 3197, 3198, 3199, 3201, 3202, 3203, 3205, 3206, 3207, 3209, 3211, 3212], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Database.get_project_costs_aggregate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [3236, 3239, 3250, 3253, 3267, 3270, 3284, 3286], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 17, 18, 20, 24, 46, 405, 459, 506, 513, 564, 578, 595, 618, 635, 668, 682, 688, 694, 700, 753, 776, 795, 848, 862, 884, 1003, 1029, 1067, 1101, 1111, 1140, 1154, 1165, 1198, 1227, 1241, 1258, 1282, 1286, 1315, 1373, 1390, 1407, 1430, 1461, 1486, 1561, 1696, 1720, 1742, 1768, 1785, 1799, 1816, 1833, 1849, 1873, 1911, 1934, 1982, 2007, 2036, 2052, 2094, 2115, 2136, 2172, 2198, 2248, 2311, 2325, 2369, 2391, 2401, 2419, 2452, 2494, 2517, 2533, 2566, 2587, 2616, 2632, 2654, 2681, 2715, 2786, 2808, 2864, 2917, 2941, 2969, 3018, 3064, 3112, 3160, 3214], "summary": {"covered_lines": 103, "num_statements": 103, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 13}, "missing_lines": [], "excluded_lines": [11, 12, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883]}}, "classes": {"Database": {"executed_lines": [21, 22, 31, 32, 34, 35, 38, 40, 43, 44, 48, 51, 81, 100, 108, 134, 142, 150, 166, 186, 192, 198, 206, 221, 241, 256, 272, 280, 295, 310, 325, 343, 351, 367, 375, 389, 396, 403, 410, 411, 412, 415, 418, 421, 424, 427, 430, 435, 436, 437, 439, 442, 443, 444, 445, 446, 447, 448, 451, 483, 484, 503, 504, 508, 509, 510, 511, 526, 527, 528, 529, 530, 531, 532, 533, 535, 536, 537, 538, 539, 540, 541, 543, 544, 561, 562, 573, 574, 575, 576, 587, 588, 592, 593, 597, 598, 615, 616, 627, 628, 632, 633, 645, 648, 649, 650, 651, 653, 656, 658, 660, 662, 663, 664, 666, 677, 678, 679, 680, 684, 685, 686, 690, 691, 692, 696, 725, 728, 735, 736, 738, 739, 745, 750, 751, 763, 765, 766, 767, 773, 774, 785, 786, 792, 793, 810, 813, 824, 826, 827, 828, 830, 832, 833, 835, 836, 837, 838, 840, 857, 858, 859, 860, 871, 872, 880, 881, 882, 906, 909, 923, 925, 938, 939, 940, 941, 942, 943, 944, 946, 947, 948, 949, 950, 953, 954, 956, 957, 959, 960, 963, 964, 965, 968, 969, 970, 972, 973, 976, 977, 978, 979, 982, 983, 984, 987, 988, 989, 990, 992, 1012, 1013, 1014, 1016, 1017, 1018, 1019, 1022, 1023, 1025, 1027, 1040, 1043, 1053, 1055, 1056, 1059, 1061, 1077, 1081, 1082, 1083, 1084, 1086, 1087, 1089, 1091, 1093, 1095, 1096, 1097, 1099, 1107, 1108, 1109, 1129, 1130, 1137, 1138, 1149, 1150, 1151, 1152, 1160, 1161, 1162, 1163, 1175, 1178, 1179, 1180, 1181, 1183, 1184, 1186, 1188, 1190, 1192, 1193, 1194, 1196, 1216, 1217, 1224, 1225, 1236, 1237, 1238, 1239, 1250, 1251, 1255, 1256, 1269, 1270, 1278, 1279, 1284, 1296, 1299, 1300, 1301, 1302, 1303, 1305, 1307, 1309, 1310, 1311, 1313, 1347, 1348, 1370, 1371, 1382, 1383, 1387, 1388, 1399, 1400, 1404, 1405, 1416, 1417, 1427, 1428, 1439, 1442, 1443, 1446, 1450, 1453, 1455, 1470, 1471, 1482, 1483, 1495, 1497, 1500, 1508, 1510, 1511, 1514, 1522, 1525, 1527, 1530, 1533, 1535, 1536, 1541, 1546, 1551, 1552, 1554, 1571, 1573, 1576, 1584, 1587, 1589, 1591, 1593, 1594, 1595, 1600, 1601, 1603, 1604, 1607, 1626, 1628, 1636, 1639, 1640, 1641, 1644, 1645, 1646, 1656, 1674, 1675, 1677, 1680, 1684, 1685, 1687, 1689, 1709, 1710, 1717, 1718, 1729, 1730, 1739, 1740, 1752, 1754, 1755, 1757, 1765, 1766, 1777, 1778, 1782, 1783, 1794, 1795, 1796, 1797, 1808, 1809, 1813, 1814, 1825, 1826, 1830, 1831, 1842, 1843, 1847, 1855, 1858, 1859, 1862, 1863, 1864, 1868, 1870, 1899, 1900, 1908, 1909, 1920, 1921, 1929, 1930, 1960, 1963, 1964, 1979, 1980, 1992, 1993, 2004, 2005, 2017, 2018, 2030, 2031, 2032, 2033, 2034, 2046, 2047, 2048, 2209, 2210, 2226, 2227, 2230, 2231, 2244, 2267, 2268, 2269, 2272, 2273, 2282, 2285, 2287, 2288, 2308, 2309, 2320, 2321, 2322, 2323, 2345, 2347, 2349, 2350, 2356, 2358, 2364, 2366, 2367, 2378, 2380, 2381, 2389, 2407, 2408, 2417, 2436, 2439, 2447, 2448, 2450, 2474, 2475, 2491, 2492, 2504, 2505, 2514, 2515, 2526, 2527, 2528, 2529, 2555, 2556, 2563, 2564, 2575, 2576, 2585, 2597, 2598, 2614, 2623, 2624, 2630, 2641, 2643, 2651, 2652, 2691, 2692, 2712, 2713, 2731, 2733, 2736, 2737, 2739, 2740, 2741, 2743, 2747, 2748, 2749, 2751, 2753, 2764, 2765, 2766, 2768, 2784, 2835, 2838, 2848, 2857, 2859, 2882, 2883, 2891, 2893, 2900, 2903, 2904, 2911, 2996, 2997, 3015, 3016, 3027, 3029, 3030, 3042, 3043, 3045, 3046, 3048, 3060, 3062, 3073, 3075, 3076, 3087, 3088, 3089, 3092, 3093, 3095, 3135, 3136, 3157, 3158, 3187, 3190, 3191, 3193, 3194, 3195, 3197, 3198, 3199, 3201, 3202, 3203, 3205, 3206, 3207, 3209, 3211, 3212], "summary": {"covered_lines": 594, "num_statements": 685, "percent_covered": 86.71532846715328, "percent_covered_display": "86.72", "missing_lines": 91, "excluded_lines": 29}, "missing_lines": [453, 454, 455, 456, 457, 646, 654, 926, 966, 971, 1078, 1176, 1297, 1528, 1531, 1537, 1538, 1590, 1592, 1596, 1597, 1647, 1648, 1650, 1651, 1652, 1654, 1961, 2062, 2065, 2074, 2075, 2077, 2078, 2080, 2082, 2083, 2085, 2092, 2103, 2104, 2113, 2124, 2125, 2134, 2143, 2146, 2155, 2156, 2158, 2159, 2160, 2161, 2163, 2170, 2178, 2181, 2189, 2196, 2232, 2235, 2397, 2398, 2399, 2666, 2667, 2677, 2744, 2745, 2802, 2894, 2905, 2906, 2907, 2908, 2909, 2928, 2929, 2939, 2950, 2951, 2961, 2962, 3236, 3239, 3250, 3253, 3267, 3270, 3284, 3286], "excluded_lines": [325, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 2814, 2865]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 17, 18, 20, 24, 46, 405, 459, 506, 513, 564, 578, 595, 618, 635, 668, 682, 688, 694, 700, 753, 776, 795, 848, 862, 884, 1003, 1029, 1067, 1101, 1111, 1140, 1154, 1165, 1198, 1227, 1241, 1258, 1282, 1286, 1315, 1373, 1390, 1407, 1430, 1461, 1486, 1561, 1696, 1720, 1742, 1768, 1785, 1799, 1816, 1833, 1849, 1873, 1911, 1934, 1982, 2007, 2036, 2052, 2094, 2115, 2136, 2172, 2198, 2248, 2311, 2325, 2369, 2391, 2401, 2419, 2452, 2494, 2517, 2533, 2566, 2587, 2616, 2632, 2654, 2681, 2715, 2786, 2808, 2864, 2917, 2941, 2969, 3018, 3064, 3112, 3160, 3214], "summary": {"covered_lines": 103, "num_statements": 103, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 13}, "missing_lines": [], "excluded_lines": [11, 12, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883]}}}, "codeframe/persistence/migrations/__init__.py": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 13, 14, 15, 17, 21, 25, 30, 31, 33, 34, 35, 37, 39, 40, 42, 44, 45, 47, 49, 58, 61, 62, 63, 64, 66, 67, 68, 70, 71, 74, 78, 79, 86, 88, 90, 91, 93, 94, 95, 98, 102, 103, 106, 107, 108, 110, 111, 112, 113, 115, 117, 119, 120, 122, 134], "summary": {"covered_lines": 59, "num_statements": 73, "percent_covered": 80.82191780821918, "percent_covered_display": "80.82", "missing_lines": 14, "excluded_lines": 2}, "missing_lines": [27, 81, 82, 83, 84, 96, 99, 100, 124, 125, 127, 128, 129, 131], "excluded_lines": [19, 23], "functions": {"Migration.__init__": {"executed_lines": [14, 15], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Migration.apply": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [19]}, "Migration.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [23]}, "Migration.can_apply": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [27], "excluded_lines": []}, "MigrationRunner.__init__": {"executed_lines": [34, 35], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MigrationRunner.register": {"executed_lines": [39, 40], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MigrationRunner.apply_all": {"executed_lines": [44, 45, 47, 49, 58, 61, 62, 63, 64, 66, 67, 68, 70, 71, 74, 78, 79, 86], "summary": {"covered_lines": 18, "num_statements": 22, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [81, 82, 83, 84], "excluded_lines": []}, "MigrationRunner.rollback": {"executed_lines": [90, 91, 93, 94, 95, 98, 102, 103, 106, 107, 108, 110, 111, 112, 113, 115], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 84.21052631578948, "percent_covered_display": "84.21", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [96, 99, 100], "excluded_lines": []}, "MigrationRunner._is_applied": {"executed_lines": [119, 120], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MigrationRunner.list_applied": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [124, 125, 127, 128, 129, 131], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 13, 17, 21, 25, 30, 31, 33, 37, 42, 88, 117, 122, 134], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"Migration": {"executed_lines": [14, 15], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 1, "excluded_lines": 2}, "missing_lines": [27], "excluded_lines": [19, 23]}, "MigrationRunner": {"executed_lines": [34, 35, 39, 40, 44, 45, 47, 49, 58, 61, 62, 63, 64, 66, 67, 68, 70, 71, 74, 78, 79, 86, 90, 91, 93, 94, 95, 98, 102, 103, 106, 107, 108, 110, 111, 112, 113, 115, 119, 120], "summary": {"covered_lines": 40, "num_statements": 53, "percent_covered": 75.47169811320755, "percent_covered_display": "75.47", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [81, 82, 83, 84, 96, 99, 100, 124, 125, 127, 128, 129, 131], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 13, 17, 21, 25, 30, 31, 33, 37, 42, 88, 117, 122, 134], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_001_remove_agent_type_constraint.py": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 23, 24, 28, 33, 39, 41, 46, 47, 49, 50, 51, 53, 55, 60, 63, 64, 65, 68, 82, 85, 91, 94, 95, 98, 99, 101, 103, 108, 111, 112, 113, 116, 130, 133, 134, 140, 141, 142, 143, 144, 151, 152, 155, 156, 158, 162], "summary": {"covered_lines": 51, "num_statements": 53, "percent_covered": 96.22641509433963, "percent_covered_display": "96.23", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [42, 43], "excluded_lines": [], "functions": {"RemoveAgentTypeConstraint.__init__": {"executed_lines": [24], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RemoveAgentTypeConstraint.can_apply": {"executed_lines": [33, 39, 41, 46, 47, 49, 50, 51, 53], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [42, 43], "excluded_lines": []}, "RemoveAgentTypeConstraint.apply": {"executed_lines": [60, 63, 64, 65, 68, 82, 85, 91, 94, 95, 98, 99, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RemoveAgentTypeConstraint.rollback": {"executed_lines": [108, 111, 112, 113, 116, 130, 133, 134, 140, 141, 142, 143, 144, 151, 152, 155, 156, 158], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 23, 28, 55, 103, 162], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RemoveAgentTypeConstraint": {"executed_lines": [24, 33, 39, 41, 46, 47, 49, 50, 51, 53, 60, 63, 64, 65, 68, 82, 85, 91, 94, 95, 98, 99, 101, 108, 111, 112, 113, 116, 130, 133, 134, 140, 141, 142, 143, 144, 151, 152, 155, 156, 158], "summary": {"covered_lines": 41, "num_statements": 43, "percent_covered": 95.34883720930233, "percent_covered_display": "95.35", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [42, 43], "excluded_lines": []}, "": {"executed_lines": [1, 13, 14, 15, 17, 20, 21, 23, 28, 55, 103, 162], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_002_refactor_projects_schema.py": {"executed_lines": [1, 23, 24, 25, 27, 30, 31, 33, 34, 39, 44, 50, 52, 57, 58, 60, 61, 62, 66, 126, 162], "summary": {"covered_lines": 19, "num_statements": 46, "percent_covered": 41.30434782608695, "percent_covered_display": "41.30", "missing_lines": 27, "excluded_lines": 0}, "missing_lines": [53, 54, 64, 71, 74, 75, 76, 77, 78, 80, 81, 83, 84, 90, 91, 94, 122, 124, 131, 134, 135, 136, 139, 140, 143, 156, 158], "excluded_lines": [], "functions": {"RefactorProjectsSchema.__init__": {"executed_lines": [34], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RefactorProjectsSchema.can_apply": {"executed_lines": [44, 50, 52, 57, 58, 60, 61, 62], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 72.72727272727273, "percent_covered_display": "72.73", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [53, 54, 64], "excluded_lines": []}, "RefactorProjectsSchema.apply": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 15, "excluded_lines": 0}, "missing_lines": [71, 74, 75, 76, 77, 78, 80, 81, 83, 84, 90, 91, 94, 122, 124], "excluded_lines": []}, "RefactorProjectsSchema.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [131, 134, 135, 136, 139, 140, 143, 156, 158], "excluded_lines": []}, "": {"executed_lines": [1, 23, 24, 25, 27, 30, 31, 33, 39, 66, 126, 162], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RefactorProjectsSchema": {"executed_lines": [34, 44, 50, 52, 57, 58, 60, 61, 62], "summary": {"covered_lines": 9, "num_statements": 36, "percent_covered": 25.0, "percent_covered_display": "25.00", "missing_lines": 27, "excluded_lines": 0}, "missing_lines": [53, 54, 64, 71, 74, 75, 76, 77, 78, 80, 81, 83, 84, 90, 91, 94, 122, 124, 131, 134, 135, 136, 139, 140, 143, 156, 158], "excluded_lines": []}, "": {"executed_lines": [1, 23, 24, 25, 27, 30, 31, 33, 39, 66, 126, 162], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_003_update_blockers_schema.py": {"executed_lines": [1, 20, 21, 22, 24, 27, 28, 30, 31, 35, 40, 46, 48, 53, 54, 56, 57, 58, 62, 175, 218], "summary": {"covered_lines": 19, "num_statements": 64, "percent_covered": 29.6875, "percent_covered_display": "29.69", "missing_lines": 45, "excluded_lines": 0}, "missing_lines": [49, 50, 60, 67, 70, 71, 72, 73, 74, 76, 77, 80, 98, 101, 102, 129, 132, 133, 136, 137, 140, 146, 148, 154, 156, 162, 164, 170, 172, 173, 180, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 195, 198, 212, 214], "excluded_lines": [], "functions": {"UpdateBlockersSchema.__init__": {"executed_lines": [31], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "UpdateBlockersSchema.can_apply": {"executed_lines": [40, 46, 48, 53, 54, 56, 57, 58], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 72.72727272727273, "percent_covered_display": "72.73", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [49, 50, 60], "excluded_lines": []}, "UpdateBlockersSchema.apply": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 27, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 27, "excluded_lines": 0}, "missing_lines": [67, 70, 71, 72, 73, 74, 76, 77, 80, 98, 101, 102, 129, 132, 133, 136, 137, 140, 146, 148, 154, 156, 162, 164, 170, 172, 173], "excluded_lines": []}, "UpdateBlockersSchema.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 15, "excluded_lines": 0}, "missing_lines": [180, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 195, 198, 212, 214], "excluded_lines": []}, "": {"executed_lines": [1, 20, 21, 22, 24, 27, 28, 30, 35, 62, 175, 218], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"UpdateBlockersSchema": {"executed_lines": [31, 40, 46, 48, 53, 54, 56, 57, 58], "summary": {"covered_lines": 9, "num_statements": 54, "percent_covered": 16.666666666666668, "percent_covered_display": "16.67", "missing_lines": 45, "excluded_lines": 0}, "missing_lines": [49, 50, 60, 67, 70, 71, 72, 73, 74, 76, 77, 80, 98, 101, 102, 129, 132, 133, 136, 137, 140, 146, 148, 154, 156, 162, 164, 170, 172, 173, 180, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 195, 198, 212, 214], "excluded_lines": []}, "": {"executed_lines": [1, 20, 21, 22, 24, 27, 28, 30, 35, 62, 175, 218], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_004_add_context_checkpoints.py": {"executed_lines": [1, 21, 22, 23, 25, 28, 29, 31, 32, 36, 41, 47, 49, 50, 51, 56, 93, 121], "summary": {"covered_lines": 16, "num_statements": 39, "percent_covered": 41.02564102564103, "percent_covered_display": "41.03", "missing_lines": 23, "excluded_lines": 0}, "missing_lines": [53, 54, 61, 64, 79, 82, 88, 90, 91, 98, 101, 102, 103, 104, 105, 106, 107, 110, 111, 113, 114, 116, 117], "excluded_lines": [], "functions": {"AddContextCheckpoints.__init__": {"executed_lines": [32], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AddContextCheckpoints.can_apply": {"executed_lines": [41, 47, 49, 50, 51], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [53, 54], "excluded_lines": []}, "AddContextCheckpoints.apply": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [61, 64, 79, 82, 88, 90, 91], "excluded_lines": []}, "AddContextCheckpoints.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 14, "excluded_lines": 0}, "missing_lines": [98, 101, 102, 103, 104, 105, 106, 107, 110, 111, 113, 114, 116, 117], "excluded_lines": []}, "": {"executed_lines": [1, 21, 22, 23, 25, 28, 29, 31, 36, 56, 93, 121], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AddContextCheckpoints": {"executed_lines": [32, 41, 47, 49, 50, 51], "summary": {"covered_lines": 6, "num_statements": 29, "percent_covered": 20.689655172413794, "percent_covered_display": "20.69", "missing_lines": 23, "excluded_lines": 0}, "missing_lines": [53, 54, 61, 64, 79, 82, 88, 90, 91, 98, 101, 102, 103, 104, 105, 106, 107, 110, 111, 113, 114, 116, 117], "excluded_lines": []}, "": {"executed_lines": [1, 21, 22, 23, 25, 28, 29, 31, 36, 56, 93, 121], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_005_add_context_indexes.py": {"executed_lines": [1, 17, 18, 19, 21, 24, 25, 27, 28, 32, 37, 43, 45, 50, 60, 62, 66, 67, 69, 74, 77, 83, 86, 92, 95, 101, 103, 104, 106, 128], "summary": {"covered_lines": 28, "num_statements": 41, "percent_covered": 68.29268292682927, "percent_covered_display": "68.29", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [46, 47, 63, 64, 111, 114, 115, 117, 118, 120, 121, 123, 124], "excluded_lines": [], "functions": {"AddContextIndexes.__init__": {"executed_lines": [28], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AddContextIndexes.can_apply": {"executed_lines": [37, 43, 45, 50, 60, 62, 66, 67], "summary": {"covered_lines": 8, "num_statements": 12, "percent_covered": 66.66666666666667, "percent_covered_display": "66.67", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [46, 47, 63, 64], "excluded_lines": []}, "AddContextIndexes.apply": {"executed_lines": [74, 77, 83, 86, 92, 95, 101, 103, 104], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "AddContextIndexes.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 9, "excluded_lines": 0}, "missing_lines": [111, 114, 115, 117, 118, 120, 121, 123, 124], "excluded_lines": []}, "": {"executed_lines": [1, 17, 18, 19, 21, 24, 25, 27, 32, 69, 106, 128], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"AddContextIndexes": {"executed_lines": [28, 37, 43, 45, 50, 60, 62, 66, 67, 74, 77, 83, 86, 92, 95, 101, 103, 104], "summary": {"covered_lines": 18, "num_statements": 31, "percent_covered": 58.064516129032256, "percent_covered_display": "58.06", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [46, 47, 63, 64, 111, 114, 115, 117, 118, 120, 121, 123, 124], "excluded_lines": []}, "": {"executed_lines": [1, 17, 18, 19, 21, 24, 25, 27, 32, 69, 106, 128], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_006_mvp_completion.py": {"executed_lines": [1, 19, 20, 21, 23, 26, 27, 29, 30, 32, 37, 43, 45, 49, 50, 52, 54, 56, 57, 58, 59, 60, 61, 62, 64, 65, 69, 70, 86, 88, 89, 95, 101, 103, 104, 105, 111, 112, 113, 114, 120, 121, 122, 129, 130, 131, 132, 133, 141, 142, 144, 146, 148, 151, 152, 153, 154, 155, 158, 159, 162, 167, 168, 172], "summary": {"covered_lines": 62, "num_statements": 70, "percent_covered": 88.57142857142857, "percent_covered_display": "88.57", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [46, 47, 63, 67, 118, 134, 135, 139], "excluded_lines": [], "functions": {"MVPCompletion.__init__": {"executed_lines": [30], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MVPCompletion.can_apply": {"executed_lines": [37, 43, 45, 49, 50], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [46, 47], "excluded_lines": []}, "MVPCompletion.apply": {"executed_lines": [54, 56, 57, 58, 59, 60, 61, 62, 64, 65, 69, 70, 86, 88, 89, 95, 101, 103, 104, 105, 111, 112, 113, 114, 120, 121, 122, 129, 130, 131, 132, 133, 141, 142], "summary": {"covered_lines": 34, "num_statements": 40, "percent_covered": 85.0, "percent_covered_display": "85.00", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [63, 67, 118, 134, 135, 139], "excluded_lines": []}, "MVPCompletion.rollback": {"executed_lines": [146, 148, 151, 152, 153, 154, 155, 158, 159, 162, 167, 168], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 19, 20, 21, 23, 26, 27, 29, 32, 52, 144, 172], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"MVPCompletion": {"executed_lines": [30, 37, 43, 45, 49, 50, 54, 56, 57, 58, 59, 60, 61, 62, 64, 65, 69, 70, 86, 88, 89, 95, 101, 103, 104, 105, 111, 112, 113, 114, 120, 121, 122, 129, 130, 131, 132, 133, 141, 142, 146, 148, 151, 152, 153, 154, 155, 158, 159, 162, 167, 168], "summary": {"covered_lines": 52, "num_statements": 60, "percent_covered": 86.66666666666667, "percent_covered_display": "86.67", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [46, 47, 63, 67, 118, 134, 135, 139], "excluded_lines": []}, "": {"executed_lines": [1, 19, 20, 21, 23, 26, 27, 29, 32, 52, 144, 172], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/persistence/migrations/migration_007_sprint10_review_polish.py": {"executed_lines": [1, 14, 15, 16, 18, 21, 22, 24, 25, 27, 32, 38, 40, 44, 45, 47, 52, 55, 56, 58, 68, 71, 72, 88, 91, 92, 96, 100, 104, 107, 108, 123, 126, 127, 131, 135, 139, 142, 145, 146, 148, 149, 150, 155, 159, 160, 163, 167, 168, 171, 182, 184, 185, 187, 188, 189, 190, 194, 195, 196, 200, 201, 202, 206, 207, 208, 212, 213, 214, 225, 226, 227, 231, 238, 239, 241, 277], "summary": {"covered_lines": 74, "num_statements": 116, "percent_covered": 63.793103448275865, "percent_covered_display": "63.79", "missing_lines": 42, "excluded_lines": 1}, "missing_lines": [41, 42, 59, 60, 61, 157, 165, 173, 175, 176, 177, 179, 192, 198, 204, 210, 216, 218, 219, 220, 222, 232, 233, 234, 236, 243, 245, 248, 249, 250, 251, 252, 253, 254, 255, 258, 259, 260, 263, 267, 272, 273], "excluded_lines": [150], "functions": {"Sprint10ReviewPolish.__init__": {"executed_lines": [25], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "Sprint10ReviewPolish.can_apply": {"executed_lines": [32, 38, 40, 44, 45], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [41, 42], "excluded_lines": []}, "Sprint10ReviewPolish.apply": {"executed_lines": [52, 55, 56, 58, 68, 71, 72, 88, 91, 92, 96, 100, 104, 107, 108, 123, 126, 127, 131, 135, 139, 142, 145, 146, 148, 149, 150, 155, 159, 160, 163, 167, 168, 171, 182, 184, 185, 187, 188, 189, 190, 194, 195, 196, 200, 201, 202, 206, 207, 208, 212, 213, 214, 225, 226, 227, 231, 238, 239], "summary": {"covered_lines": 58, "num_statements": 81, "percent_covered": 71.60493827160494, "percent_covered_display": "71.60", "missing_lines": 23, "excluded_lines": 1}, "missing_lines": [59, 60, 61, 157, 165, 173, 175, 176, 177, 179, 192, 198, 204, 210, 216, 218, 219, 220, 222, 232, 233, 234, 236], "excluded_lines": [150]}, "Sprint10ReviewPolish.rollback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 17, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 17, "excluded_lines": 0}, "missing_lines": [243, 245, 248, 249, 250, 251, 252, 253, 254, 255, 258, 259, 260, 263, 267, 272, 273], "excluded_lines": []}, "": {"executed_lines": [1, 14, 15, 16, 18, 21, 22, 24, 27, 47, 241, 277], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"Sprint10ReviewPolish": {"executed_lines": [25, 32, 38, 40, 44, 45, 52, 55, 56, 58, 68, 71, 72, 88, 91, 92, 96, 100, 104, 107, 108, 123, 126, 127, 131, 135, 139, 142, 145, 146, 148, 149, 150, 155, 159, 160, 163, 167, 168, 171, 182, 184, 185, 187, 188, 189, 190, 194, 195, 196, 200, 201, 202, 206, 207, 208, 212, 213, 214, 225, 226, 227, 231, 238, 239], "summary": {"covered_lines": 64, "num_statements": 106, "percent_covered": 60.37735849056604, "percent_covered_display": "60.38", "missing_lines": 42, "excluded_lines": 1}, "missing_lines": [41, 42, 59, 60, 61, 157, 165, 173, 175, 176, 177, 179, 192, 198, 204, 210, 216, 218, 219, 220, 222, 232, 233, 234, 236, 243, 245, 248, 249, 250, 251, 252, 253, 254, 255, 258, 259, 260, 263, 267, 272, 273], "excluded_lines": [150]}, "": {"executed_lines": [1, 14, 15, 16, 18, 21, 22, 24, 27, 47, 241, 277], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/planning/__init__.py": {"executed_lines": [1, 9, 15], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 9, 15], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 9, 15], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/planning/issue_generator.py": {"executed_lines": [1, 18, 19, 20, 21, 24, 27, 36, 37, 38, 40, 44, 45, 47, 48, 49, 51, 56, 57, 59, 60, 61, 64, 66, 74, 75, 78, 94, 97, 98, 99, 100, 101, 102, 103, 107, 110, 111, 113, 115, 117, 130, 133, 135, 136, 137, 140, 143, 144, 146, 147, 149, 159, 161, 163, 166, 169, 178, 179, 183, 185, 195, 196, 199, 200, 201, 207, 208, 213, 219], "summary": {"covered_lines": 68, "num_statements": 70, "percent_covered": 97.14285714285714, "percent_covered_display": "97.14", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [104, 214], "excluded_lines": [], "functions": {"parse_prd_features": {"executed_lines": [36, 37, 38, 40, 44, 45, 47, 48, 49, 51, 56, 57, 59, 60, 61, 64, 66, 74, 75], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "assign_priority": {"executed_lines": [94, 97, 98, 99, 100, 101, 102, 103, 107], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [104], "excluded_lines": []}, "IssueGenerator.__init__": {"executed_lines": [115], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "IssueGenerator.generate_issues_from_prd": {"executed_lines": [130, 133, 135, 136, 137, 140, 143, 144, 146, 147], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "IssueGenerator._create_issues": {"executed_lines": [159, 161, 163, 166, 169, 178, 179, 183], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "IssueGenerator._validate_issue": {"executed_lines": [195, 196, 199, 200, 201, 207, 208, 213, 219], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [214], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 21, 24, 27, 78, 110, 111, 113, 117, 149, 185], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"IssueGenerator": {"executed_lines": [115, 130, 133, 135, 136, 137, 140, 143, 144, 146, 147, 159, 161, 163, 166, 169, 178, 179, 183, 195, 196, 199, 200, 201, 207, 208, 213, 219], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 96.55172413793103, "percent_covered_display": "96.55", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [214], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 21, 24, 27, 36, 37, 38, 40, 44, 45, 47, 48, 49, 51, 56, 57, 59, 60, 61, 64, 66, 74, 75, 78, 94, 97, 98, 99, 100, 101, 102, 103, 107, 110, 111, 113, 117, 149, 185], "summary": {"covered_lines": 40, "num_statements": 41, "percent_covered": 97.5609756097561, "percent_covered_display": "97.56", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [104], "excluded_lines": []}}}, "codeframe/planning/task_decomposer.py": {"executed_lines": [1, 14, 15, 16, 17, 18, 21, 24, 25, 27, 29, 31, 45, 46, 48, 51, 54, 55, 57, 60, 61, 66, 67, 68, 71, 74, 76, 77, 79, 88, 112, 114, 127, 128, 135, 136, 138, 143, 146, 147, 148, 149, 150, 151, 154, 156, 170, 172, 176, 177, 178, 179, 180, 182, 183, 185, 186, 188, 199, 200, 203, 206, 207, 208, 210, 211, 213, 223, 225, 226, 227, 228, 230], "summary": {"covered_lines": 70, "num_statements": 74, "percent_covered": 94.5945945945946, "percent_covered_display": "94.59", "missing_lines": 4, "excluded_lines": 1}, "missing_lines": [140, 141, 144, 173], "excluded_lines": [88], "functions": {"TaskDecomposer.__init__": {"executed_lines": [29], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TaskDecomposer.decompose_issue": {"executed_lines": [45, 46, 48, 51, 54, 55, 57, 60, 61, 66, 67, 68, 71, 74, 76, 77], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TaskDecomposer.build_decomposition_prompt": {"executed_lines": [88, 112], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [88]}, "TaskDecomposer.parse_claude_response": {"executed_lines": [127, 128, 135, 136, 138, 143, 146, 147, 148, 149, 150, 151, 154, 156, 170, 172, 176, 177, 178, 179, 180, 182, 183, 185, 186], "summary": {"covered_lines": 25, "num_statements": 29, "percent_covered": 86.20689655172414, "percent_covered_display": "86.21", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [140, 141, 144, 173], "excluded_lines": []}, "TaskDecomposer.create_dependency_chain": {"executed_lines": [199, 200, 203, 206, 207, 208, 210, 211], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TaskDecomposer._estimate_task_count": {"executed_lines": [223, 225, 226, 227, 228, 230], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 14, 15, 16, 17, 18, 21, 24, 25, 27, 31, 79, 114, 188, 213], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"TaskDecomposer": {"executed_lines": [29, 45, 46, 48, 51, 54, 55, 57, 60, 61, 66, 67, 68, 71, 74, 76, 77, 88, 112, 127, 128, 135, 136, 138, 143, 146, 147, 148, 149, 150, 151, 154, 156, 170, 172, 176, 177, 178, 179, 180, 182, 183, 185, 186, 199, 200, 203, 206, 207, 208, 210, 211, 223, 225, 226, 227, 228, 230], "summary": {"covered_lines": 57, "num_statements": 61, "percent_covered": 93.44262295081967, "percent_covered_display": "93.44", "missing_lines": 4, "excluded_lines": 1}, "missing_lines": [140, 141, 144, 173], "excluded_lines": [88]}, "": {"executed_lines": [1, 14, 15, 16, 17, 18, 21, 24, 25, 27, 31, 79, 114, 188, 213], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/providers/__init__.py": {"executed_lines": [0], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/providers/anthropic.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 18, 21, 22, 28, 42, 43, 49, 50, 51, 53, 55, 79, 80, 83, 84, 85, 89, 91, 98, 101, 110, 115, 117, 118, 119, 121, 122, 123, 125, 126, 127, 129, 130, 131, 133, 134, 135], "summary": {"covered_lines": 40, "num_statements": 42, "percent_covered": 95.23809523809524, "percent_covered_display": "95.24", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [14, 15], "excluded_lines": [43], "functions": {"AnthropicProvider.__init__": {"executed_lines": [42, 43, 49, 50, 51, 53], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [43]}, "AnthropicProvider.send_message": {"executed_lines": [79, 80, 83, 84, 85, 89, 91, 98, 101, 110, 115, 117, 118, 119, 121, 122, 123, 125, 126, 127, 129, 130, 131, 133, 134, 135], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 18, 21, 22, 28, 55], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [14, 15], "excluded_lines": []}}, "classes": {"AnthropicProvider": {"executed_lines": [42, 43, 49, 50, 51, 53, 79, 80, 83, 84, 85, 89, 91, 98, 101, 110, 115, 117, 118, 119, 121, 122, 123, 125, 126, 127, 129, 130, 131, 133, 134, 135], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [43]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 18, 21, 22, 28, 55], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [14, 15], "excluded_lines": []}}}, "codeframe/tasks/__init__.py": {"executed_lines": [0], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/tasks/expire_blockers.py": {"executed_lines": [1, 18, 19, 20, 22, 23, 25, 28, 41, 42, 44, 46, 48, 49, 50, 52, 55, 57, 58, 62, 63, 64, 67, 68, 69, 70, 71, 77, 84, 85, 86, 88, 96, 100, 103, 106, 154], "summary": {"covered_lines": 35, "num_statements": 55, "percent_covered": 63.63636363636363, "percent_covered_display": "63.64", "missing_lines": 20, "excluded_lines": 2}, "missing_lines": [59, 60, 80, 81, 97, 98, 108, 110, 111, 116, 122, 129, 132, 139, 140, 146, 147, 149, 150, 151], "excluded_lines": [154, 155], "functions": {"expire_stale_blockers_job": {"executed_lines": [41, 42, 44, 46, 48, 49, 50, 52, 55, 57, 58, 62, 63, 64, 67, 68, 69, 70, 71, 77, 84, 85, 86, 88, 96, 100, 103], "summary": {"covered_lines": 27, "num_statements": 33, "percent_covered": 81.81818181818181, "percent_covered_display": "81.82", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [59, 60, 80, 81, 97, 98], "excluded_lines": []}, "main": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 14, "excluded_lines": 0}, "missing_lines": [108, 110, 111, 116, 122, 129, 132, 139, 140, 146, 147, 149, 150, 151], "excluded_lines": []}, "": {"executed_lines": [1, 18, 19, 20, 22, 23, 25, 28, 106, 154], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [154, 155]}}, "classes": {"": {"executed_lines": [1, 18, 19, 20, 22, 23, 25, 28, 41, 42, 44, 46, 48, 49, 50, 52, 55, 57, 58, 62, 63, 64, 67, 68, 69, 70, 71, 77, 84, 85, 86, 88, 96, 100, 103, 106, 154], "summary": {"covered_lines": 35, "num_statements": 55, "percent_covered": 63.63636363636363, "percent_covered_display": "63.64", "missing_lines": 20, "excluded_lines": 2}, "missing_lines": [59, 60, 80, 81, 97, 98, 108, 110, 111, 116, 122, 129, 132, 139, 140, 146, 147, 149, 150, 151], "excluded_lines": [154, 155]}}}, "codeframe/testing/__init__.py": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/testing/lint_runner.py": {"executed_lines": [1, 7, 8, 9, 10, 11, 13, 15, 18, 19, 21, 27, 28, 30, 39, 41, 43, 44, 46, 47, 48, 49, 53, 55, 56, 57, 58, 59, 63, 65, 76, 78, 79, 80, 81, 83, 85, 97, 98, 101, 102, 103, 104, 105, 107, 111, 114, 115, 116, 119, 121, 123, 136, 138, 140, 143, 150, 153, 154, 162, 163, 164, 167, 169, 171, 179, 180, 181, 198, 210, 212, 214, 217, 224, 227, 229, 231, 235, 236, 239, 240, 242, 253, 254, 255, 256, 257, 258, 260, 262, 289, 302, 303, 304, 307, 309, 310], "summary": {"covered_lines": 95, "num_statements": 119, "percent_covered": 79.83193277310924, "percent_covered_display": "79.83", "missing_lines": 24, "excluded_lines": 0}, "missing_lines": [50, 51, 60, 61, 108, 109, 117, 156, 188, 189, 190, 244, 245, 246, 247, 248, 249, 250, 270, 271, 272, 279, 280, 281], "excluded_lines": [], "functions": {"LintRunner.__init__": {"executed_lines": [27, 28], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LintRunner._load_config": {"executed_lines": [39, 41, 43, 44, 46, 47, 48, 49, 53, 55, 56, 57, 58, 59, 63], "summary": {"covered_lines": 15, "num_statements": 19, "percent_covered": 78.94736842105263, "percent_covered_display": "78.95", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [50, 51, 60, 61], "excluded_lines": []}, "LintRunner.detect_language": {"executed_lines": [76, 78, 79, 80, 81, 83], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "LintRunner.run_lint": {"executed_lines": [97, 98, 101, 102, 103, 104, 105, 107, 111, 114, 115, 116, 119, 121], "summary": {"covered_lines": 14, "num_statements": 17, "percent_covered": 82.3529411764706, "percent_covered_display": "82.35", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [108, 109, 117], "excluded_lines": []}, "LintRunner._run_ruff": {"executed_lines": [136, 138, 140, 143, 150, 153, 154, 162, 163, 164, 167, 169, 171, 179, 180, 181], "summary": {"covered_lines": 16, "num_statements": 20, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [156, 188, 189, 190], "excluded_lines": []}, "LintRunner._run_eslint": {"executed_lines": [210, 212, 214, 217, 224, 227, 229, 231, 235, 236, 239, 240, 242, 253, 254, 255, 256, 257, 258, 260, 262], "summary": {"covered_lines": 21, "num_statements": 34, "percent_covered": 61.76470588235294, "percent_covered_display": "61.76", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [244, 245, 246, 247, 248, 249, 250, 270, 271, 272, 279, 280, 281], "excluded_lines": []}, "LintRunner.has_critical_errors": {"executed_lines": [302, 303, 304, 307, 309, 310], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 11, 13, 15, 18, 19, 21, 30, 65, 85, 123, 198, 289], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"LintRunner": {"executed_lines": [27, 28, 39, 41, 43, 44, 46, 47, 48, 49, 53, 55, 56, 57, 58, 59, 63, 76, 78, 79, 80, 81, 83, 97, 98, 101, 102, 103, 104, 105, 107, 111, 114, 115, 116, 119, 121, 136, 138, 140, 143, 150, 153, 154, 162, 163, 164, 167, 169, 171, 179, 180, 181, 210, 212, 214, 217, 224, 227, 229, 231, 235, 236, 239, 240, 242, 253, 254, 255, 256, 257, 258, 260, 262, 302, 303, 304, 307, 309, 310], "summary": {"covered_lines": 80, "num_statements": 104, "percent_covered": 76.92307692307692, "percent_covered_display": "76.92", "missing_lines": 24, "excluded_lines": 0}, "missing_lines": [50, 51, 60, 61, 108, 109, 117, 156, 188, 189, 190, 244, 245, 246, 247, 248, 249, 250, 270, 271, 272, 279, 280, 281], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 10, 11, 13, 15, 18, 19, 21, 30, 65, 85, 123, 198, 289], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/testing/models.py": {"executed_lines": [1, 7, 8, 9, 12, 13, 14, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 46, 47, 48, 61, 62, 63, 64, 65, 66, 67, 69, 71, 72], "summary": {"covered_lines": 27, "num_statements": 28, "percent_covered": 96.42857142857143, "percent_covered_display": "96.43", "missing_lines": 1, "excluded_lines": 3}, "missing_lines": [43], "excluded_lines": [14, 32, 41], "functions": {"TestResult.__post_init__": {"executed_lines": [41, 42], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [43], "excluded_lines": [41]}, "CorrectionAttempt.__post_init__": {"executed_lines": [71, 72], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 12, 13, 14, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 46, 47, 48, 61, 62, 63, 64, 65, 66, 67, 69], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [14, 32]}}, "classes": {"TestResult": {"executed_lines": [41, 42], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 1, "excluded_lines": 1}, "missing_lines": [43], "excluded_lines": [41]}, "CorrectionAttempt": {"executed_lines": [71, 72], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 7, 8, 9, 12, 13, 14, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 46, 47, 48, 61, 62, 63, 64, 65, 66, 67, 69], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 2}, "missing_lines": [], "excluded_lines": [14, 32]}}}, "codeframe/ui/__init__.py": {"executed_lines": [0], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/ui/models.py": {"executed_lines": [1, 6, 7, 8, 11, 12, 14, 15, 16, 17, 20, 21, 24, 25, 30, 33, 36, 41, 45, 46, 48, 49, 50, 53, 54, 59, 60, 61, 64, 65, 70, 77, 78, 84, 86, 87, 88, 89, 93, 94, 97, 98, 100, 101, 102, 105, 106, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 120, 121, 123], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"ProjectCreateRequest.validate_source": {"executed_lines": [48, 49, 50], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 6, 7, 8, 11, 12, 14, 15, 16, 17, 20, 21, 24, 25, 30, 33, 36, 41, 45, 46, 53, 54, 59, 60, 61, 64, 65, 70, 77, 78, 84, 86, 87, 88, 89, 93, 94, 97, 98, 100, 101, 102, 105, 106, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 120, 121, 123], "summary": {"covered_lines": 48, "num_statements": 48, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"SourceType": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ProjectCreateRequest": {"executed_lines": [48, 49, 50], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ReviewRequest": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "QualityGatesRequest": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ProjectResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointCreateRequest": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "CheckpointResponse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RestoreCheckpointRequest": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 6, 7, 8, 11, 12, 14, 15, 16, 17, 20, 21, 24, 25, 30, 33, 36, 41, 45, 46, 53, 54, 59, 60, 61, 64, 65, 70, 77, 78, 84, 86, 87, 88, 89, 93, 94, 97, 98, 100, 101, 102, 105, 106, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 120, 121, 123], "summary": {"covered_lines": 48, "num_statements": 48, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/ui/server.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 25, 26, 36, 37, 40, 41, 43, 44, 47, 53, 55, 56, 57, 60, 66, 70, 73, 74, 78, 79, 80, 83, 84, 86, 87, 91, 94, 95, 97, 100, 101, 104, 113, 116, 120, 126, 127, 128, 130, 139, 140, 142, 143, 145, 146, 147, 149, 150, 152, 154, 155, 156, 157, 159, 162, 165, 168, 171, 188, 190, 193, 196, 199, 200, 208, 210, 213, 214, 217, 218, 221, 224, 229, 230, 238, 239, 241, 243, 249, 250, 252, 255, 256, 266, 267, 270, 271, 284, 286, 296, 297, 301, 303, 306, 307, 317, 318, 323, 324, 325, 330, 340, 341, 349, 353, 355, 356, 359, 361, 371, 372, 390, 392, 393, 396, 397, 403, 404, 405, 408, 411, 414, 415, 418, 420, 421, 424, 426, 436, 437, 440, 442, 445, 446, 449, 466, 467, 469, 471, 473, 479, 480, 499, 502, 503, 504, 507, 508, 509, 512, 513, 514, 519, 521, 524, 527, 528, 537, 539, 541, 543, 545, 550, 551, 567, 568, 569, 572, 575, 576, 577, 580, 581, 582, 590, 593, 594, 616, 623, 624, 625, 628, 629, 635, 636, 643, 644, 647, 648, 649, 656, 659, 661, 663, 669, 670, 671, 672, 673, 674, 675, 678, 680, 690, 698, 712, 722, 723, 744, 747, 748, 749, 752, 754, 756, 765, 774, 775, 806, 807, 808, 811, 815, 816, 818, 821, 824, 825, 828, 836, 837, 838, 840, 841, 845, 854, 855, 892, 893, 894, 897, 900, 903, 909, 910, 940, 941, 954, 956, 957, 962, 963, 999, 1000, 1001, 1006, 1008, 1010, 1011, 1021, 1024, 1025, 1038, 1041, 1042, 1074, 1075, 1076, 1088, 1089, 1105, 1106, 1123, 1124, 1159, 1160, 1297, 1298, 1315, 1318, 1319, 1320, 1325, 1326, 1339, 1340, 1342, 1344, 1355, 1369, 1375, 1414, 1417, 1432, 1434, 1435, 1456, 1457, 1481, 1486, 1501, 1504, 1505, 1520, 1522, 1523, 1532, 1533, 1569, 1570, 1594, 1597, 1600, 1602, 1605, 1606, 1665, 1666, 1695, 1698, 1701, 1704, 1707, 1708, 1749, 1751, 1753, 1764, 1769, 1770, 1774, 1783, 1785, 1789, 1790, 1791, 1794, 1799, 1801, 1815, 1834, 1835, 1855, 1857, 1858, 1859, 1867, 1877, 1878, 1899, 1901, 1906, 1908, 1909, 1918, 1919, 1922, 1925, 1926, 1928, 1943, 1944, 1975, 1976, 1977, 1979, 1981, 1982, 1983, 1986, 1987, 2044, 2045, 2051, 2052, 2107, 2108, 2115, 2116, 2117, 2120, 2123, 2131, 2137, 2138, 2141, 2142, 2159, 2171, 2172, 2246, 2247, 2286, 2287, 2322, 2323, 2324, 2327, 2330, 2339, 2340, 2377, 2378, 2379, 2380, 2383, 2386, 2393, 2402, 2403, 2404, 2600, 2601, 2648, 2649, 2650, 2653, 2656, 2657, 2673, 2676, 2677, 2727, 2728, 2731, 2732, 2733, 2736, 2737, 2738, 2779, 2780, 2822, 2823, 2827, 2828, 2829, 2853, 2854, 2875, 2878, 2879, 2883, 2884, 2885, 2922, 2923, 2973, 2974, 2977, 2978, 2982, 2983, 2984, 3037, 3038, 3089, 3092, 3093, 3094, 3097, 3098, 3100, 3101, 3102, 3103, 3105, 3106, 3111, 3113, 3114, 3121, 3128, 3145, 3146, 3202, 3205, 3206, 3207, 3209, 3211, 3212, 3214, 3216, 3226, 3227, 3281, 3283, 3285, 3286, 3289, 3291, 3296, 3298, 3309, 3315, 3316, 3317, 3320, 3321, 3322, 3323, 3324, 3325, 3326, 3329, 3330, 3332, 3341, 3343, 3353, 3354, 3357, 3360, 3361, 3364, 3370, 3371, 3394, 3409, 3416], "summary": {"covered_lines": 526, "num_statements": 810, "percent_covered": 64.93827160493827, "percent_covered_display": "64.94", "missing_lines": 284, "excluded_lines": 17}, "missing_lines": [117, 280, 281, 474, 475, 476, 637, 664, 665, 666, 691, 707, 708, 847, 849, 930, 931, 932, 935, 937, 959, 1033, 1035, 1081, 1082, 1101, 1102, 1119, 1120, 1136, 1137, 1140, 1141, 1142, 1146, 1149, 1151, 1179, 1180, 1182, 1183, 1184, 1185, 1187, 1188, 1191, 1192, 1193, 1197, 1200, 1202, 1203, 1204, 1206, 1207, 1208, 1211, 1214, 1216, 1227, 1228, 1229, 1230, 1232, 1241, 1244, 1245, 1246, 1247, 1257, 1260, 1261, 1263, 1277, 1328, 1391, 1399, 1401, 1438, 1441, 1443, 1526, 1529, 1558, 1561, 1564, 1566, 1634, 1637, 1640, 1642, 1643, 1649, 1652, 1662, 1702, 1771, 1786, 1817, 1818, 1819, 1821, 1831, 1873, 1874, 1936, 1937, 1990, 1991, 1992, 1995, 1996, 1999, 2002, 2004, 2006, 2014, 2024, 2026, 2031, 2032, 2035, 2038, 2046, 2047, 2048, 2109, 2132, 2133, 2134, 2143, 2201, 2202, 2205, 2209, 2213, 2218, 2220, 2221, 2222, 2224, 2227, 2228, 2230, 2267, 2270, 2271, 2276, 2280, 2394, 2395, 2396, 2407, 2408, 2409, 2414, 2415, 2416, 2420, 2421, 2422, 2428, 2431, 2441, 2444, 2446, 2447, 2453, 2458, 2459, 2469, 2470, 2473, 2480, 2482, 2485, 2487, 2488, 2490, 2498, 2499, 2500, 2501, 2502, 2504, 2509, 2517, 2522, 2528, 2540, 2541, 2543, 2548, 2549, 2554, 2556, 2563, 2568, 2569, 2579, 2580, 2585, 2588, 2658, 2743, 2745, 2752, 2758, 2761, 2774, 2775, 2776, 2824, 2832, 2833, 2839, 2880, 2888, 2889, 2894, 2896, 2897, 2899, 2900, 2901, 2903, 2904, 2905, 2908, 2909, 2910, 2912, 2915, 2917, 2918, 2919, 2979, 2990, 2991, 2992, 2995, 2996, 3001, 3003, 3010, 3015, 3016, 3018, 3021, 3023, 3025, 3026, 3028, 3029, 3030, 3031, 3104, 3137, 3138, 3139, 3218, 3219, 3220, 3345, 3346, 3347, 3373, 3374, 3375, 3377, 3378, 3381, 3382, 3383, 3385, 3387, 3389, 3390, 3396, 3397, 3400, 3406, 3411, 3413], "excluded_lines": [159, 210, 218, 239, 539, 1534, 1571, 2288, 2507, 2523, 3416, 3417, 3420, 3421, 3427, 3434, 3436], "functions": {"get_deployment_mode": {"executed_lines": [53, 55, 56, 57], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "is_hosted_mode": {"executed_lines": [66], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "lifespan": {"executed_lines": [78, 79, 80, 83, 84, 86, 87, 91, 94, 95, 97, 100, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ConnectionManager.__init__": {"executed_lines": [143], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ConnectionManager.connect": {"executed_lines": [146, 147], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ConnectionManager.disconnect": {"executed_lines": [150], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ConnectionManager.broadcast": {"executed_lines": [154, 155, 156, 157, 159], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [159]}, "start_agent": {"executed_lines": [188, 190, 193, 196, 199, 200, 208, 210, 213, 214, 217, 218, 221, 224, 229, 230, 238, 239, 241, 243], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 3}, "missing_lines": [], "excluded_lines": [210, 218, 239]}, "root": {"executed_lines": [252], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "health_check": {"executed_lines": [266, 267, 270, 271, 284, 286], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [280, 281], "excluded_lines": []}, "list_projects": {"executed_lines": [301, 303], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "create_project": {"executed_lines": [317, 318, 323, 324, 325, 330, 340, 341, 349, 353, 355, 356, 359, 361], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "start_project_agent": {"executed_lines": [390, 392, 393, 396, 397, 403, 404, 405, 408, 411], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_project_status": {"executed_lines": [418, 420, 421, 424, 426], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_agent_status": {"executed_lines": [440, 442], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_tasks": {"executed_lines": [449], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_activity": {"executed_lines": [469, 471, 473], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [474, 475, 476], "excluded_lines": []}, "chat_with_lead": {"executed_lines": [499, 502, 503, 504, 507, 508, 509, 512, 513, 514, 519, 521, 524, 527, 528, 537, 539, 541, 543, 545], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [539]}, "get_chat_history": {"executed_lines": [567, 568, 569, 572, 575, 576, 577, 580, 581, 582, 590], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "submit_discovery_answer": {"executed_lines": [616, 623, 624, 625, 628, 629, 635, 636, 643, 644, 647, 648, 649, 656, 659, 661, 663, 669, 670, 671, 672, 673, 674, 675, 678, 680, 690, 698, 712], "summary": {"covered_lines": 29, "num_statements": 36, "percent_covered": 80.55555555555556, "percent_covered_display": "80.56", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [637, 664, 665, 666, 691, 707, 708], "excluded_lines": []}, "get_project_prd": {"executed_lines": [744, 747, 748, 749, 752, 754, 756, 765], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_discovery_progress": {"executed_lines": [806, 807, 808, 811, 815, 816, 818, 821, 824, 825, 828, 836, 837, 838, 840, 841, 845], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 89.47368421052632, "percent_covered_display": "89.47", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [847, 849], "excluded_lines": []}, "get_project_issues": {"executed_lines": [892, 893, 894, 897, 900, 903], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "get_project_blockers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [930, 931, 932, 935, 937], "excluded_lines": []}, "get_blocker": {"executed_lines": [954, 956, 957], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [959], "excluded_lines": []}, "resolve_blocker_endpoint": {"executed_lines": [999, 1000, 1001, 1006, 1008, 1010, 1011, 1021, 1024, 1025, 1038], "summary": {"covered_lines": 11, "num_statements": 13, "percent_covered": 84.61538461538461, "percent_covered_display": "84.62", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1033, 1035], "excluded_lines": []}, "get_blocker_metrics_endpoint": {"executed_lines": [1074, 1075, 1076], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 60.0, "percent_covered_display": "60.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1081, 1082], "excluded_lines": []}, "get_lint_results": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1101, 1102], "excluded_lines": []}, "get_lint_trend": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1119, 1120], "excluded_lines": []}, "get_lint_config": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [1136, 1137, 1140, 1141, 1142, 1146, 1149, 1151], "excluded_lines": []}, "run_lint_manual": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 37, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 37, "excluded_lines": 0}, "missing_lines": [1179, 1180, 1182, 1183, 1184, 1185, 1187, 1188, 1191, 1192, 1193, 1197, 1200, 1202, 1203, 1204, 1206, 1207, 1208, 1211, 1214, 1216, 1227, 1228, 1229, 1230, 1232, 1241, 1244, 1245, 1246, 1247, 1257, 1260, 1261, 1263, 1277], "excluded_lines": []}, "get_session_state": {"executed_lines": [1315, 1318, 1319, 1320, 1325, 1326, 1339, 1340, 1342, 1344, 1355], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 91.66666666666667, "percent_covered_display": "91.67", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1328], "excluded_lines": []}, "create_context_item": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [1391, 1399, 1401], "excluded_lines": []}, "get_context_item": {"executed_lines": [1432, 1434, 1435], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [1438, 1441, 1443], "excluded_lines": []}, "list_context_items": {"executed_lines": [1481, 1486, 1501], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "delete_context_item": {"executed_lines": [1520, 1522, 1523], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 60.0, "percent_covered_display": "60.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1526, 1529], "excluded_lines": []}, "update_context_scores": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 1}, "missing_lines": [1558, 1561, 1564, 1566], "excluded_lines": [1534]}, "update_context_tiers": {"executed_lines": [1594, 1597, 1600, 1602], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [1571]}, "flash_save_context": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [1634, 1637, 1640, 1642, 1643, 1649, 1652, 1662], "excluded_lines": []}, "list_flash_save_checkpoints": {"executed_lines": [1695, 1698, 1701, 1704], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80.00", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [1702], "excluded_lines": []}, "trigger_review": {"executed_lines": [1749, 1751, 1753, 1764, 1769, 1770, 1774, 1783, 1785, 1789, 1790, 1791, 1794, 1799, 1801, 1815], "summary": {"covered_lines": 16, "num_statements": 23, "percent_covered": 69.56521739130434, "percent_covered_display": "69.57", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [1771, 1786, 1817, 1818, 1819, 1821, 1831], "excluded_lines": []}, "get_review_status": {"executed_lines": [1855, 1857, 1858, 1859, 1867], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 71.42857142857143, "percent_covered_display": "71.43", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1873, 1874], "excluded_lines": []}, "get_review_stats": {"executed_lines": [1899, 1901, 1906, 1908, 1909, 1918, 1919, 1922, 1925, 1926, 1928], "summary": {"covered_lines": 11, "num_statements": 13, "percent_covered": 84.61538461538461, "percent_covered_display": "84.62", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [1936, 1937], "excluded_lines": []}, "analyze_code_review": {"executed_lines": [1975, 1976, 1977, 1979, 1981, 1982, 1983, 1986, 1987, 2044, 2045], "summary": {"covered_lines": 11, "num_statements": 23, "percent_covered": 47.82608695652174, "percent_covered_display": "47.83", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [1990, 1991, 1992, 1995, 1996, 1999, 2002, 2035, 2038, 2046, 2047, 2048], "excluded_lines": []}, "analyze_code_review.run_review": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 7, "excluded_lines": 0}, "missing_lines": [2004, 2006, 2014, 2024, 2026, 2031, 2032], "excluded_lines": []}, "get_task_reviews": {"executed_lines": [2107, 2108, 2115, 2116, 2117, 2120, 2123, 2131, 2137, 2138, 2141, 2142, 2159], "summary": {"covered_lines": 13, "num_statements": 18, "percent_covered": 72.22222222222223, "percent_covered_display": "72.22", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [2109, 2132, 2133, 2134, 2143], "excluded_lines": []}, "get_context_stats": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 13, "excluded_lines": 0}, "missing_lines": [2201, 2202, 2205, 2209, 2213, 2218, 2220, 2221, 2222, 2224, 2227, 2228, 2230], "excluded_lines": []}, "get_context_items": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 5, "excluded_lines": 0}, "missing_lines": [2267, 2270, 2271, 2276, 2280], "excluded_lines": []}, "get_quality_gate_status": {"executed_lines": [2322, 2323, 2324, 2327, 2330], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [2288]}, "trigger_quality_gates": {"executed_lines": [2377, 2378, 2379, 2380, 2383, 2386, 2393, 2402, 2403, 2404], "summary": {"covered_lines": 10, "num_statements": 28, "percent_covered": 35.714285714285715, "percent_covered_display": "35.71", "missing_lines": 18, "excluded_lines": 0}, "missing_lines": [2394, 2395, 2396, 2407, 2408, 2409, 2414, 2415, 2416, 2420, 2421, 2422, 2428, 2431, 2441, 2444, 2585, 2588], "excluded_lines": []}, "trigger_quality_gates.run_quality_gates": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 36, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 36, "excluded_lines": 2}, "missing_lines": [2446, 2447, 2453, 2458, 2459, 2469, 2470, 2473, 2480, 2482, 2485, 2487, 2488, 2490, 2498, 2499, 2500, 2501, 2502, 2504, 2509, 2517, 2522, 2528, 2540, 2541, 2543, 2548, 2549, 2554, 2556, 2563, 2568, 2569, 2579, 2580], "excluded_lines": [2507, 2523]}, "list_checkpoints": {"executed_lines": [2648, 2649, 2650, 2653, 2656, 2657, 2673], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 87.5, "percent_covered_display": "87.50", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [2658], "excluded_lines": []}, "create_checkpoint": {"executed_lines": [2727, 2728, 2731, 2732, 2733, 2736, 2737, 2738], "summary": {"covered_lines": 8, "num_statements": 16, "percent_covered": 50.0, "percent_covered_display": "50.00", "missing_lines": 8, "excluded_lines": 0}, "missing_lines": [2743, 2745, 2752, 2758, 2761, 2774, 2775, 2776], "excluded_lines": []}, "get_checkpoint": {"executed_lines": [2822, 2823, 2827, 2828, 2829], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 55.55555555555556, "percent_covered_display": "55.56", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [2824, 2832, 2833, 2839], "excluded_lines": []}, "delete_checkpoint": {"executed_lines": [2875, 2878, 2879, 2883, 2884, 2885], "summary": {"covered_lines": 6, "num_statements": 26, "percent_covered": 23.076923076923077, "percent_covered_display": "23.08", "missing_lines": 20, "excluded_lines": 0}, "missing_lines": [2880, 2888, 2889, 2894, 2896, 2897, 2899, 2900, 2901, 2903, 2904, 2905, 2908, 2909, 2910, 2912, 2915, 2917, 2918, 2919], "excluded_lines": []}, "restore_checkpoint": {"executed_lines": [2973, 2974, 2977, 2978, 2982, 2983, 2984], "summary": {"covered_lines": 7, "num_statements": 27, "percent_covered": 25.925925925925927, "percent_covered_display": "25.93", "missing_lines": 20, "excluded_lines": 0}, "missing_lines": [2979, 2990, 2991, 2992, 2995, 2996, 3001, 3003, 3010, 3015, 3016, 3018, 3021, 3023, 3025, 3026, 3028, 3029, 3030, 3031], "excluded_lines": []}, "get_project_token_metrics": {"executed_lines": [3089, 3092, 3093, 3094, 3097, 3098, 3100, 3101, 3102, 3103, 3105, 3106, 3111, 3113, 3114, 3121, 3128], "summary": {"covered_lines": 17, "num_statements": 21, "percent_covered": 80.95238095238095, "percent_covered_display": "80.95", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [3104, 3137, 3138, 3139], "excluded_lines": []}, "get_project_cost_metrics": {"executed_lines": [3202, 3205, 3206, 3207, 3209, 3211, 3212, 3214, 3216], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 75.0, "percent_covered_display": "75.00", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [3218, 3219, 3220], "excluded_lines": []}, "get_agent_metrics": {"executed_lines": [3281, 3283, 3285, 3286, 3289, 3291, 3296, 3298, 3309, 3315, 3316, 3317, 3320, 3321, 3322, 3323, 3324, 3325, 3326, 3329, 3330, 3332, 3341, 3343], "summary": {"covered_lines": 24, "num_statements": 27, "percent_covered": 88.88888888888889, "percent_covered_display": "88.89", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [3345, 3346, 3347], "excluded_lines": []}, "pause_project": {"executed_lines": [3357], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "resume_project": {"executed_lines": [3364], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "websocket_endpoint": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 12, "excluded_lines": 0}, "missing_lines": [3373, 3374, 3375, 3377, 3378, 3381, 3382, 3383, 3385, 3387, 3389, 3390], "excluded_lines": []}, "broadcast_updates": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [3396, 3397, 3400, 3406], "excluded_lines": []}, "run_server": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0.00", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [3411, 3413], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 25, 26, 36, 37, 40, 41, 43, 44, 47, 60, 70, 73, 74, 104, 113, 116, 120, 126, 127, 128, 130, 139, 140, 142, 145, 149, 152, 162, 165, 168, 171, 249, 250, 255, 256, 296, 297, 306, 307, 371, 372, 414, 415, 436, 437, 445, 446, 466, 467, 479, 480, 550, 551, 593, 594, 722, 723, 774, 775, 854, 855, 909, 910, 940, 941, 962, 963, 1041, 1042, 1088, 1089, 1105, 1106, 1123, 1124, 1159, 1160, 1297, 1298, 1369, 1375, 1414, 1417, 1456, 1457, 1504, 1505, 1532, 1533, 1569, 1570, 1605, 1606, 1665, 1666, 1707, 1708, 1834, 1835, 1877, 1878, 1943, 1944, 2051, 2052, 2171, 2172, 2246, 2247, 2286, 2287, 2339, 2340, 2600, 2601, 2676, 2677, 2779, 2780, 2853, 2854, 2922, 2923, 3037, 3038, 3145, 3146, 3226, 3227, 3353, 3354, 3360, 3361, 3370, 3371, 3394, 3409, 3416], "summary": {"covered_lines": 148, "num_statements": 149, "percent_covered": 99.32885906040268, "percent_covered_display": "99.33", "missing_lines": 1, "excluded_lines": 7}, "missing_lines": [117], "excluded_lines": [3416, 3417, 3420, 3421, 3427, 3434, 3436]}}, "classes": {"DeploymentMode": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "ConnectionManager": {"executed_lines": [143, 146, 147, 150, 154, 155, 156, 157, 159], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [159]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 25, 26, 36, 37, 40, 41, 43, 44, 47, 53, 55, 56, 57, 60, 66, 70, 73, 74, 78, 79, 80, 83, 84, 86, 87, 91, 94, 95, 97, 100, 101, 104, 113, 116, 120, 126, 127, 128, 130, 139, 140, 142, 145, 149, 152, 162, 165, 168, 171, 188, 190, 193, 196, 199, 200, 208, 210, 213, 214, 217, 218, 221, 224, 229, 230, 238, 239, 241, 243, 249, 250, 252, 255, 256, 266, 267, 270, 271, 284, 286, 296, 297, 301, 303, 306, 307, 317, 318, 323, 324, 325, 330, 340, 341, 349, 353, 355, 356, 359, 361, 371, 372, 390, 392, 393, 396, 397, 403, 404, 405, 408, 411, 414, 415, 418, 420, 421, 424, 426, 436, 437, 440, 442, 445, 446, 449, 466, 467, 469, 471, 473, 479, 480, 499, 502, 503, 504, 507, 508, 509, 512, 513, 514, 519, 521, 524, 527, 528, 537, 539, 541, 543, 545, 550, 551, 567, 568, 569, 572, 575, 576, 577, 580, 581, 582, 590, 593, 594, 616, 623, 624, 625, 628, 629, 635, 636, 643, 644, 647, 648, 649, 656, 659, 661, 663, 669, 670, 671, 672, 673, 674, 675, 678, 680, 690, 698, 712, 722, 723, 744, 747, 748, 749, 752, 754, 756, 765, 774, 775, 806, 807, 808, 811, 815, 816, 818, 821, 824, 825, 828, 836, 837, 838, 840, 841, 845, 854, 855, 892, 893, 894, 897, 900, 903, 909, 910, 940, 941, 954, 956, 957, 962, 963, 999, 1000, 1001, 1006, 1008, 1010, 1011, 1021, 1024, 1025, 1038, 1041, 1042, 1074, 1075, 1076, 1088, 1089, 1105, 1106, 1123, 1124, 1159, 1160, 1297, 1298, 1315, 1318, 1319, 1320, 1325, 1326, 1339, 1340, 1342, 1344, 1355, 1369, 1375, 1414, 1417, 1432, 1434, 1435, 1456, 1457, 1481, 1486, 1501, 1504, 1505, 1520, 1522, 1523, 1532, 1533, 1569, 1570, 1594, 1597, 1600, 1602, 1605, 1606, 1665, 1666, 1695, 1698, 1701, 1704, 1707, 1708, 1749, 1751, 1753, 1764, 1769, 1770, 1774, 1783, 1785, 1789, 1790, 1791, 1794, 1799, 1801, 1815, 1834, 1835, 1855, 1857, 1858, 1859, 1867, 1877, 1878, 1899, 1901, 1906, 1908, 1909, 1918, 1919, 1922, 1925, 1926, 1928, 1943, 1944, 1975, 1976, 1977, 1979, 1981, 1982, 1983, 1986, 1987, 2044, 2045, 2051, 2052, 2107, 2108, 2115, 2116, 2117, 2120, 2123, 2131, 2137, 2138, 2141, 2142, 2159, 2171, 2172, 2246, 2247, 2286, 2287, 2322, 2323, 2324, 2327, 2330, 2339, 2340, 2377, 2378, 2379, 2380, 2383, 2386, 2393, 2402, 2403, 2404, 2600, 2601, 2648, 2649, 2650, 2653, 2656, 2657, 2673, 2676, 2677, 2727, 2728, 2731, 2732, 2733, 2736, 2737, 2738, 2779, 2780, 2822, 2823, 2827, 2828, 2829, 2853, 2854, 2875, 2878, 2879, 2883, 2884, 2885, 2922, 2923, 2973, 2974, 2977, 2978, 2982, 2983, 2984, 3037, 3038, 3089, 3092, 3093, 3094, 3097, 3098, 3100, 3101, 3102, 3103, 3105, 3106, 3111, 3113, 3114, 3121, 3128, 3145, 3146, 3202, 3205, 3206, 3207, 3209, 3211, 3212, 3214, 3216, 3226, 3227, 3281, 3283, 3285, 3286, 3289, 3291, 3296, 3298, 3309, 3315, 3316, 3317, 3320, 3321, 3322, 3323, 3324, 3325, 3326, 3329, 3330, 3332, 3341, 3343, 3353, 3354, 3357, 3360, 3361, 3364, 3370, 3371, 3394, 3409, 3416], "summary": {"covered_lines": 518, "num_statements": 802, "percent_covered": 64.58852867830424, "percent_covered_display": "64.59", "missing_lines": 284, "excluded_lines": 16}, "missing_lines": [117, 280, 281, 474, 475, 476, 637, 664, 665, 666, 691, 707, 708, 847, 849, 930, 931, 932, 935, 937, 959, 1033, 1035, 1081, 1082, 1101, 1102, 1119, 1120, 1136, 1137, 1140, 1141, 1142, 1146, 1149, 1151, 1179, 1180, 1182, 1183, 1184, 1185, 1187, 1188, 1191, 1192, 1193, 1197, 1200, 1202, 1203, 1204, 1206, 1207, 1208, 1211, 1214, 1216, 1227, 1228, 1229, 1230, 1232, 1241, 1244, 1245, 1246, 1247, 1257, 1260, 1261, 1263, 1277, 1328, 1391, 1399, 1401, 1438, 1441, 1443, 1526, 1529, 1558, 1561, 1564, 1566, 1634, 1637, 1640, 1642, 1643, 1649, 1652, 1662, 1702, 1771, 1786, 1817, 1818, 1819, 1821, 1831, 1873, 1874, 1936, 1937, 1990, 1991, 1992, 1995, 1996, 1999, 2002, 2004, 2006, 2014, 2024, 2026, 2031, 2032, 2035, 2038, 2046, 2047, 2048, 2109, 2132, 2133, 2134, 2143, 2201, 2202, 2205, 2209, 2213, 2218, 2220, 2221, 2222, 2224, 2227, 2228, 2230, 2267, 2270, 2271, 2276, 2280, 2394, 2395, 2396, 2407, 2408, 2409, 2414, 2415, 2416, 2420, 2421, 2422, 2428, 2431, 2441, 2444, 2446, 2447, 2453, 2458, 2459, 2469, 2470, 2473, 2480, 2482, 2485, 2487, 2488, 2490, 2498, 2499, 2500, 2501, 2502, 2504, 2509, 2517, 2522, 2528, 2540, 2541, 2543, 2548, 2549, 2554, 2556, 2563, 2568, 2569, 2579, 2580, 2585, 2588, 2658, 2743, 2745, 2752, 2758, 2761, 2774, 2775, 2776, 2824, 2832, 2833, 2839, 2880, 2888, 2889, 2894, 2896, 2897, 2899, 2900, 2901, 2903, 2904, 2905, 2908, 2909, 2910, 2912, 2915, 2917, 2918, 2919, 2979, 2990, 2991, 2992, 2995, 2996, 3001, 3003, 3010, 3015, 3016, 3018, 3021, 3023, 3025, 3026, 3028, 3029, 3030, 3031, 3104, 3137, 3138, 3139, 3218, 3219, 3220, 3345, 3346, 3347, 3373, 3374, 3375, 3377, 3378, 3381, 3382, 3383, 3385, 3387, 3389, 3390, 3396, 3397, 3400, 3406, 3411, 3413], "excluded_lines": [210, 218, 239, 539, 1534, 1571, 2288, 2507, 2523, 3416, 3417, 3420, 3421, 3427, 3434, 3436]}}}, "codeframe/ui/websocket_broadcasts.py": {"executed_lines": [1, 29, 30, 31, 33, 36, 55, 63, 64, 66, 67, 69, 70, 71, 72, 73, 76, 97, 105, 106, 111, 112, 114, 115, 116, 117, 118, 121, 146, 159, 160, 161, 165, 166, 169, 188, 197, 198, 200, 201, 202, 203, 204, 207, 226, 234, 235, 237, 238, 240, 241, 242, 243, 244, 247, 261, 262, 263, 265, 267, 269, 278, 279, 280, 281, 282, 285, 306, 316, 317, 319, 320, 321, 325, 326, 334, 347, 357, 358, 359, 360, 361, 364, 376, 384, 385, 386, 387, 388, 391, 404, 412, 413, 415, 416, 417, 418, 419, 422, 435, 444, 445, 447, 448, 449, 452, 453, 456, 473, 480, 481, 483, 484, 486, 487, 488, 489, 490, 496, 521, 535, 536, 538, 539, 541, 542, 543, 544, 545, 548, 560, 568, 569, 570, 571, 572, 575, 588, 597, 598, 599, 600, 601, 604, 618, 628, 629, 630, 631, 632, 640, 660, 661, 664, 666, 668, 681, 682, 683, 684, 685, 688, 707, 717, 718, 719, 720, 721, 724, 741, 752, 753, 754, 755, 756, 759, 774, 782, 783, 784, 785, 786], "summary": {"covered_lines": 174, "num_statements": 174, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 47}, "missing_lines": [], "excluded_lines": [1, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166], "functions": {"broadcast_task_status": {"executed_lines": [55, 63, 64, 66, 67, 69, 70, 71, 72, 73], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_agent_status": {"executed_lines": [97, 105, 106, 111, 112, 114, 115, 116, 117, 118], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_test_result": {"executed_lines": [146, 159, 160, 161, 165, 166], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 35}, "missing_lines": [], "excluded_lines": [132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166]}, "broadcast_commit_created": {"executed_lines": [188, 197, 198, 200, 201, 202, 203, 204], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_activity_update": {"executed_lines": [226, 234, 235, 237, 238, 240, 241, 242, 243, 244], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_progress_update": {"executed_lines": [261, 262, 263, 265, 267, 269, 278, 279, 280, 281, 282], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_correction_attempt": {"executed_lines": [306, 316, 317, 319, 320, 321, 325, 326], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_agent_created": {"executed_lines": [347, 357, 358, 359, 360, 361], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_agent_retired": {"executed_lines": [376, 384, 385, 386, 387, 388], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_task_assigned": {"executed_lines": [404, 412, 413, 415, 416, 417, 418, 419], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_task_blocked": {"executed_lines": [435, 444, 445, 447, 448, 449, 452, 453], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_task_unblocked": {"executed_lines": [473, 480, 481, 483, 484, 486, 487, 488, 489, 490], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_blocker_created": {"executed_lines": [521, 535, 536, 538, 539, 541, 542, 543, 544, 545], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_blocker_resolved": {"executed_lines": [560, 568, 569, 570, 571, 572], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_agent_resumed": {"executed_lines": [588, 597, 598, 599, 600, 601], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_blocker_expired": {"executed_lines": [618, 628, 629, 630, 631, 632], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_discovery_answer_submitted": {"executed_lines": [660, 661, 664, 666, 668, 681, 682, 683, 684, 685], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_discovery_question_presented": {"executed_lines": [707, 717, 718, 719, 720, 721], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_discovery_progress_updated": {"executed_lines": [741, 752, 753, 754, 755, 756], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "broadcast_discovery_completed": {"executed_lines": [774, 782, 783, 784, 785, 786], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 29, 30, 31, 33, 36, 76, 121, 169, 207, 247, 285, 334, 364, 391, 422, 456, 496, 548, 575, 604, 640, 688, 724, 759], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 12}, "missing_lines": [], "excluded_lines": [1, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131]}}, "classes": {"": {"executed_lines": [1, 29, 30, 31, 33, 36, 55, 63, 64, 66, 67, 69, 70, 71, 72, 73, 76, 97, 105, 106, 111, 112, 114, 115, 116, 117, 118, 121, 146, 159, 160, 161, 165, 166, 169, 188, 197, 198, 200, 201, 202, 203, 204, 207, 226, 234, 235, 237, 238, 240, 241, 242, 243, 244, 247, 261, 262, 263, 265, 267, 269, 278, 279, 280, 281, 282, 285, 306, 316, 317, 319, 320, 321, 325, 326, 334, 347, 357, 358, 359, 360, 361, 364, 376, 384, 385, 386, 387, 388, 391, 404, 412, 413, 415, 416, 417, 418, 419, 422, 435, 444, 445, 447, 448, 449, 452, 453, 456, 473, 480, 481, 483, 484, 486, 487, 488, 489, 490, 496, 521, 535, 536, 538, 539, 541, 542, 543, 544, 545, 548, 560, 568, 569, 570, 571, 572, 575, 588, 597, 598, 599, 600, 601, 604, 618, 628, 629, 630, 631, 632, 640, 660, 661, 664, 666, 668, 681, 682, 683, 684, 685, 688, 707, 717, 718, 719, 720, 721, 724, 741, 752, 753, 754, 755, 756, 759, 774, 782, 783, 784, 785, 786], "summary": {"covered_lines": 174, "num_statements": 174, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 47}, "missing_lines": [], "excluded_lines": [1, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166]}}}, "codeframe/workspace/__init__.py": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 3, 5], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "codeframe/workspace/manager.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 15, 17, 23, 24, 26, 48, 50, 51, 53, 55, 56, 57, 58, 59, 60, 62, 64, 66, 68, 69, 70, 71, 73, 79, 80, 81, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 100, 112, 113, 115, 116, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 135, 136, 137, 139, 140, 141, 142, 143, 144, 145, 146, 148, 159, 160, 162, 165, 166, 171, 172, 174, 175, 177, 178, 180, 181, 182, 183, 184, 185, 186, 187, 188, 191, 192, 193, 201, 202, 207, 209, 211, 226, 228, 229, 232, 235, 236, 237, 238, 240, 241, 243, 245, 248, 249], "summary": {"covered_lines": 112, "num_statements": 114, "percent_covered": 98.24561403508773, "percent_covered_display": "98.25", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [133, 134], "excluded_lines": [209], "functions": {"WorkspaceManager.__init__": {"executed_lines": [23, 24], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WorkspaceManager.create_workspace": {"executed_lines": [48, 50, 51, 53, 55, 56, 57, 58, 59, 60, 62, 64, 66, 68, 69, 70, 71], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WorkspaceManager._init_empty": {"executed_lines": [79, 80, 81, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WorkspaceManager._init_from_git": {"executed_lines": [112, 113, 115, 116, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 135, 136, 137, 139, 140, 141, 142, 143, 144, 145, 146], "summary": {"covered_lines": 25, "num_statements": 27, "percent_covered": 92.5925925925926, "percent_covered_display": "92.59", "missing_lines": 2, "excluded_lines": 0}, "missing_lines": [133, 134], "excluded_lines": []}, "WorkspaceManager._init_from_local": {"executed_lines": [159, 160, 162, 165, 166, 171, 172, 174, 175, 177, 178, 180, 181, 182, 183, 184, 185, 186, 187, 188, 191, 192, 193, 201, 202, 207, 209], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 1}, "missing_lines": [], "excluded_lines": [209]}, "WorkspaceManager._is_safe_path": {"executed_lines": [226, 228, 229, 232, 235, 236, 237, 238, 240, 241, 243], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "WorkspaceManager._init_from_upload": {"executed_lines": [248, 249], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 15, 17, 26, 73, 100, 148, 211, 245], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"WorkspaceManager": {"executed_lines": [23, 24, 48, 50, 51, 53, 55, 56, 57, 58, 59, 60, 62, 64, 66, 68, 69, 70, 71, 79, 80, 81, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 112, 113, 115, 116, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 135, 136, 137, 139, 140, 141, 142, 143, 144, 145, 146, 159, 160, 162, 165, 166, 171, 172, 174, 175, 177, 178, 180, 181, 182, 183, 184, 185, 186, 187, 188, 191, 192, 193, 201, 202, 207, 209, 226, 228, 229, 232, 235, 236, 237, 238, 240, 241, 243, 248, 249], "summary": {"covered_lines": 96, "num_statements": 98, "percent_covered": 97.95918367346938, "percent_covered_display": "97.96", "missing_lines": 2, "excluded_lines": 1}, "missing_lines": [133, 134], "excluded_lines": [209]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 14, 15, 17, 26, 73, 100, 148, 211, 245], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100.00", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}}, "totals": {"covered_lines": 6735, "num_statements": 8328, "percent_covered": 80.87175792507205, "percent_covered_display": "80.87", "missing_lines": 1593, "excluded_lines": 351}}