Coverage report: 66%

Files Functions Classes

coverage.py v7.14.0, created at 2026-09-23 22:14 -0400

File function   statements missing excluded   coverage
src / quber / __init__.py (no function)   5 0 0   100%
src / quber / cli.py cli   1 0 0   100%
src / quber / cli.py analyze   19 19 0   0%
src / quber / cli.py analyze.run_analysis   13 13 0   0%
src / quber / cli.py batch   24 24 0   0%
src / quber / cli.py batch.process_batch   16 16 0   0%
src / quber / cli.py models   36 6 0   83%
src / quber / cli.py db   1 1 0   0%
src / quber / cli.py init   12 12 0   0%
src / quber / cli.py import_json   11 11 0   0%
src / quber / cli.py import_dir   11 11 0   0%
src / quber / cli.py stats   18 18 0   0%
src / quber / cli.py generate_embeddings   31 31 0   0%
src / quber / cli.py parse   27 27 0   0%
src / quber / cli.py ade   8 8 0   0%
src / quber / cli.py figure   35 35 0   0%
src / quber / cli.py extract   60 60 0   0%
src / quber / cli.py dual   18 18 0   0%
src / quber / cli.py fuse   11 11 0   0%
src / quber / cli.py run_fusion   56 56 0   0%
src / quber / cli.py parser_for_preset_lazy   2 2 0   0%
src / quber / cli.py validate   30 30 0   0%
src / quber / cli.py playground   2 2 0   0%
src / quber / cli.py main   1 1 0   0%
src / quber / cli.py (no function)   127 0 2   100%
src / quber / core / __init__.py (no function)   0 0 0   100%
src / quber / core / consolidation.py HeaderConsolidator.__init__   4 0 0   100%
src / quber / core / consolidation.py HeaderConsolidator.consolidate   34 34 0   0%
src / quber / core / consolidation.py HeaderConsolidator.find_preceding_headers   31 5 0   84%
src / quber / core / consolidation.py HeaderConsolidator.consolidate_headers   5 0 0   100%
src / quber / core / consolidation.py HeaderConsolidator.get_preceding_text   17 2 0   88%
src / quber / core / consolidation.py HeaderConsolidator.print_debug_info   10 0 0   100%
src / quber / core / consolidation.py save_metadata   3 0 0   100%
src / quber / core / consolidation.py (no function)   14 0 0   100%
src / quber / core / extractors / __init__.py (no function)   6 0 0   100%
src / quber / core / extractors / base.py TableExtractor.extract_tables   1 0 0   100%
src / quber / core / extractors / base.py TableExtractor.extract_tables_sync   1 0 0   100%
src / quber / core / extractors / base.py ExtractedTable.coerce_legacy_footnote_strings   3 1 0   67%
src / quber / core / extractors / base.py GroundedCell.status_is_a_registered_code   3 0 0   100%
src / quber / core / extractors / base.py cell_flags   13 2 0   85%
src / quber / core / extractors / base.py table_address   1 0 0   100%
src / quber / core / extractors / base.py grid_fingerprint   3 0 0   100%
src / quber / core / extractors / base.py grounded_grid   6 0 0   100%
src / quber / core / extractors / base.py grounded_grid.norm   4 0 0   100%
src / quber / core / extractors / base.py (no function)   106 0 0   100%
src / quber / core / extractors / camelot / __init__.py (no function)   3 0 0   100%
src / quber / core / extractors / camelot / acquire.py render_pages   8 8 0   0%
src / quber / core / extractors / camelot / acquire.py grid_to_markdown   7 0 0   100%
src / quber / core / extractors / camelot / acquire.py grid_to_markdown.render   2 0 0   100%
src / quber / core / extractors / camelot / acquire.py column_letter   6 0 0   100%
src / quber / core / extractors / camelot / acquire.py grid_to_addressed_markdown   8 1 0   88%
src / quber / core / extractors / camelot / acquire.py grid_to_addressed_markdown.tag   1 0 0   100%
src / quber / core / extractors / camelot / acquire.py grid_to_addressed_markdown.render_addressed   2 0 0   100%
src / quber / core / extractors / camelot / acquire.py df_to_cells   1 1 0   0%
src / quber / core / extractors / camelot / acquire.py cells_to_boxes   12 0 0   100%
src / quber / core / extractors / camelot / acquire.py df_to_markdown   1 1 0   0%
src / quber / core / extractors / camelot / acquire.py camelot_worker   22 22 0   0%
src / quber / core / extractors / camelot / acquire.py run_camelot_flavors_parallel   16 16 0   0%
src / quber / core / extractors / camelot / acquire.py is_content_empty   7 0 0   100%
src / quber / core / extractors / camelot / acquire.py (no function)   29 0 2   100%
src / quber / core / extractors / camelot / correspondence / __init__.py (no function)   2 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py correct_structure   43 7 0   84%
src / quber / core / extractors / camelot / correspondence / correction.py _printed_text   1 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py printed_title   8 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py _blank_unsourced_placeholders   11 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py _leaks_coordinate_frame   1 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py ungrounded_values   1 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py numeric_keys   1 0 0   100%
src / quber / core / extractors / camelot / correspondence / correction.py (no function)   38 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py page_size_pts   3 3 0   0%
src / quber / core / extractors / camelot / correspondence / geometry.py camelot_bbox_to_norm   7 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py norm_bbox_to_table_area   6 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py bbox_to_top_left   2 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py table_crop_box   2 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py coverage_fraction   5 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py neighbor_bounded_bbox   17 17 0   0%
src / quber / core / extractors / camelot / correspondence / geometry.py region_text_in_bbox   15 2 0   87%
src / quber / core / extractors / camelot / correspondence / geometry.py crop_region_png   8 0 0   100%
src / quber / core / extractors / camelot / correspondence / geometry.py (no function)   16 0 0   100%
src / quber / core / extractors / camelot / correspondence / matching.py assign_chunks   20 20 0   0%
src / quber / core / extractors / camelot / correspondence / matching.py chunk_top   3 3 0   0%
src / quber / core / extractors / camelot / correspondence / matching.py assemble_cells   4 4 0   0%
src / quber / core / extractors / camelot / correspondence / matching.py (no function)   15 0 0   100%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.__init__   14 0 0   100%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.extract_tables   18 18 0   0%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.extract_tables.detect_page   3 3 0   0%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.process_page   91 91 0   0%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.apply_structure_correction   5 0 0   100%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.finalize   33 33 0   0%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.make_extracted   14 0 0   100%
src / quber / core / extractors / camelot / correspondence / orchestrator.py CamelotCorrespondenceExtractor.extract_tables_sync   1 1 0   0%
src / quber / core / extractors / camelot / correspondence / orchestrator.py (no function)   38 0 0   100%
src / quber / core / extractors / camelot / correspondence / recovery.py init_recovery_warning_filter   1 0 0   100%
src / quber / core / extractors / camelot / correspondence / recovery.py camelot_targeted   20 20 0   0%
src / quber / core / extractors / camelot / correspondence / recovery.py nearest_grid_region   7 7 0   0%
src / quber / core / extractors / camelot / correspondence / recovery.py (no function)   11 0 0   100%
src / quber / core / extractors / camelot / llm / __init__.py (no function)   2 0 0   100%
src / quber / core / extractors / camelot / llm / orchestrator.py CamelotLLMTableExtractor.__init__   7 0 0   100%
src / quber / core / extractors / camelot / llm / orchestrator.py CamelotLLMTableExtractor.extract_tables   7 0 0   100%
src / quber / core / extractors / camelot / llm / orchestrator.py CamelotLLMTableExtractor.extract_tables_sync   1 1 0   0%
src / quber / core / extractors / camelot / llm / orchestrator.py (no function)   22 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py acquire_candidates   9 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py classify_candidate   4 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py group_pages   8 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py unify_page   21 3 0   86%
src / quber / core / extractors / camelot / llm / pipeline.py log_unified   2 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py correct_table   27 4 0   85%
src / quber / core / extractors / camelot / llm / pipeline.py finalize   2 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py build_pipeline_graph   23 0 0   100%
src / quber / core / extractors / camelot / llm / pipeline.py (no function)   68 0 0   100%
src / quber / core / extractors / camelot / recapture.py dropped_numeric_keys   3 0 0   100%
src / quber / core / extractors / camelot / recapture.py printed_lines   9 1 0   89%
src / quber / core / extractors / camelot / recapture.py repair_capture   33 5 0   85%
src / quber / core / extractors / camelot / recapture.py (no function)   15 0 0   100%
src / quber / core / extractors / camelot / tighten.py squeeze   1 0 0   100%
src / quber / core / extractors / camelot / tighten.py _union   1 0 0   100%
src / quber / core / extractors / camelot / tighten.py _candidates   6 0 0   100%
src / quber / core / extractors / camelot / tighten.py _token_runs   10 0 0   100%
src / quber / core / extractors / camelot / tighten.py tighten_box   33 1 0   97%
src / quber / core / extractors / camelot / tighten.py tighten_box.offset   3 0 0   100%
src / quber / core / extractors / camelot / tighten.py tighten_box.run_offset   4 0 0   100%
src / quber / core / extractors / camelot / tighten.py ink_extent   6 0 0   100%
src / quber / core / extractors / camelot / tighten.py tighten_cell_boxes   17 1 0   94%
src / quber / core / extractors / camelot / tighten.py (no function)   14 0 0   100%
src / quber / core / extractors / dual / __init__.py (no function)   4 0 0   100%
src / quber / core / extractors / dual / camelot.py run_camelot_flow   7 0 0   100%
src / quber / core / extractors / dual / camelot.py run_camelot_flow.tag   3 0 0   100%
src / quber / core / extractors / dual / camelot.py (no function)   8 0 0   100%
src / quber / core / extractors / dual / models.py DualResult.visual_count_by_page   4 0 0   100%
src / quber / core / extractors / dual / models.py DualResult.camelot_count_by_page   4 0 0   100%
src / quber / core / extractors / dual / models.py (no function)   20 0 0   100%
src / quber / core / extractors / dual / orchestrator.py DualFlowExtractor.__init__   4 4 0   0%
src / quber / core / extractors / dual / orchestrator.py DualFlowExtractor.run   3 3 0   0%
src / quber / core / extractors / dual / orchestrator.py DualFlowExtractor.run_sync   1 1 0   0%
src / quber / core / extractors / dual / orchestrator.py (no function)   13 0 0   100%
src / quber / core / extractors / dual / vision.py run_vision_flow   6 0 0   100%
src / quber / core / extractors / dual / vision.py run_vision_flow.locate_page   3 0 0   100%
src / quber / core / extractors / dual / vision.py (no function)   9 0 0   100%
src / quber / core / extractors / mock.py MockTableExtractor.__init__   1 0 0   100%
src / quber / core / extractors / mock.py MockTableExtractor.extract_tables   2 0 0   100%
src / quber / core / extractors / mock.py MockTableExtractor.extract_tables_sync   1 0 0   100%
src / quber / core / extractors / mock.py (no function)   8 0 0   100%
src / quber / core / extractors / set_of_mark / __init__.py (no function)   4 0 0   100%
src / quber / core / extractors / set_of_mark / assemble.py assemble_table   19 9 0   53%
src / quber / core / extractors / set_of_mark / assemble.py (no function)   28 0 0   100%
src / quber / core / extractors / set_of_mark / extent.py normalize   1 0 0   100%
src / quber / core / extractors / set_of_mark / extent.py last_row_tokens   5 0 0   100%
src / quber / core / extractors / set_of_mark / extent.py revise_content_region   10 0 0   100%
src / quber / core / extractors / set_of_mark / extent.py apply_content_regions   9 0 0   100%
src / quber / core / extractors / set_of_mark / extent.py (no function)   13 0 0   100%
src / quber / core / extractors / set_of_mark / inspection.py inspect_gap_cells   25 4 0   84%
src / quber / core / extractors / set_of_mark / inspection.py _reassign   6 0 0   100%
src / quber / core / extractors / set_of_mark / inspection.py _downgrade_all   2 0 0   100%
src / quber / core / extractors / set_of_mark / inspection.py (no function)   15 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _norm   1 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _first_value_row   4 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _union   1 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py markdown_rows   10 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py parse_address   10 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py resolve_merges   16 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py resolve_merges.in_data_region   2 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _lookup   16 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py resolve_corrected_grid   38 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py classify_cells   19 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _tile_windows   32 1 0   97%
src / quber / core / extractors / set_of_mark / merge_grounding.py _close_header_stacks   28 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _close_header_stacks.candidates   20 1 0   95%
src / quber / core / extractors / set_of_mark / merge_grounding.py _close_unpaired_rows   28 4 0   86%
src / quber / core / extractors / set_of_mark / merge_grounding.py _close_marker_labels   16 1 0   94%
src / quber / core / extractors / set_of_mark / merge_grounding.py locate_markers   59 2 0   97%
src / quber / core / extractors / set_of_mark / merge_grounding.py locate_markers.canon   1 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py locate_markers.strip_marker   4 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _consume_run   14 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _align_rows   20 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py _align_rows.overlap   2 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py find_dropped_header_text   15 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py log_ungrounded_cells   3 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py log_ungrounded   5 0 0   100%
src / quber / core / extractors / set_of_mark / merge_grounding.py (no function)   28 0 0   100%
src / quber / core / extractors / set_of_mark / orchestrator.py SetOfMarkExtractor.__init__   7 7 0   0%
src / quber / core / extractors / set_of_mark / orchestrator.py SetOfMarkExtractor.extract_tables   7 7 0   0%
src / quber / core / extractors / set_of_mark / orchestrator.py SetOfMarkExtractor.extract_tables_sync   1 1 0   0%
src / quber / core / extractors / set_of_mark / orchestrator.py (no function)   17 0 0   100%
src / quber / core / extractors / set_of_mark / pipeline.py locate_tables   4 4 0   0%
src / quber / core / extractors / set_of_mark / pipeline.py locate_tables.per_page   3 3 0   0%
src / quber / core / extractors / set_of_mark / pipeline.py capture_table   15 15 0   0%
src / quber / core / extractors / set_of_mark / pipeline.py finalize   4 4 0   0%
src / quber / core / extractors / set_of_mark / pipeline.py build_set_of_mark_graph   11 11 0   0%
src / quber / core / extractors / set_of_mark / pipeline.py (no function)   48 0 0   100%
src / quber / core / extractors / set_of_mark / split.py split_table   33 4 0   88%
src / quber / core / extractors / set_of_mark / split.py subdivide   17 1 0   94%
src / quber / core / extractors / set_of_mark / split.py subdivide.center_y   1 0 0   100%
src / quber / core / extractors / set_of_mark / split.py vision_count_probe   9 3 0   67%
src / quber / core / extractors / set_of_mark / split.py reextract_subregion   23 6 0   74%
src / quber / core / extractors / set_of_mark / split.py render_page   9 9 0   0%
src / quber / core / extractors / set_of_mark / split.py (no function)   20 0 0   100%
src / quber / core / figures / __init__.py (no function)   3 0 0   100%
src / quber / core / figures / capture.py capture_tables   38 3 0   92%
src / quber / core / figures / capture.py _capture   9 0 0   100%
src / quber / core / figures / capture.py _over_pictures   20 4 0   80%
src / quber / core / figures / capture.py _covers   1 0 0   100%
src / quber / core / figures / capture.py _orphan_grids   25 5 0   80%
src / quber / core / figures / capture.py _page_ordinals   2 0 0   100%
src / quber / core / figures / capture.py _best_match   15 3 0   80%
src / quber / core / figures / capture.py (no function)   29 0 0   100%
src / quber / core / figures / correct.py correct_figures   23 1 0   96%
src / quber / core / figures / correct.py candidates   16 2 0   88%
src / quber / core / figures / correct.py _record_markers   15 2 0   87%
src / quber / core / figures / correct.py _overlaps   3 0 0   100%
src / quber / core / figures / correct.py (no function)   18 0 0   100%
src / quber / core / figures / crosscheck.py crosscheck_cells   25 2 0   92%
src / quber / core / figures / crosscheck.py _questions   15 1 0   93%
src / quber / core / figures / crosscheck.py _parse_cells   13 2 0   85%
src / quber / core / figures / crosscheck.py _best_match   9 0 0   100%
src / quber / core / figures / crosscheck.py (no function)   15 0 0   100%
src / quber / core / figures / dpt3 / __init__.py (no function)   6 0 0   100%
src / quber / core / figures / dpt3 / blocks.py group_scanned_text   34 3 0   91%
src / quber / core / figures / dpt3 / blocks.py _floating_text   12 1 0   92%
src / quber / core / figures / dpt3 / blocks.py _owning_block   10 1 0   90%
src / quber / core / figures / dpt3 / blocks.py _reparent   5 0 0   100%
src / quber / core / figures / dpt3 / blocks.py (no function)   14 0 0   100%
src / quber / core / figures / dpt3 / digest.py response_generation   5 0 0   100%
src / quber / core / figures / dpt3 / digest.py digest_page   20 1 0   95%
src / quber / core / figures / dpt3 / digest.py project_scan   5 0 0   100%
src / quber / core / figures / dpt3 / digest.py figure_text   8 0 0   100%
src / quber / core / figures / dpt3 / digest.py _markdown_rows   7 0 0   100%
src / quber / core / figures / dpt3 / digest.py _figure   5 0 0   100%
src / quber / core / figures / dpt3 / digest.py _table   22 4 0   82%
src / quber / core / figures / dpt3 / digest.py _value_table   4 0 0   100%
src / quber / core / figures / dpt3 / digest.py _GridText.__init__   4 0 0   100%
src / quber / core / figures / dpt3 / digest.py _GridText.handle_starttag   8 2 0   75%
src / quber / core / figures / dpt3 / digest.py _GridText.handle_endtag   4 0 0   100%
src / quber / core / figures / dpt3 / digest.py _GridText.handle_data   2 0 0   100%
src / quber / core / figures / dpt3 / digest.py _GridText.close   2 0 0   100%
src / quber / core / figures / dpt3 / digest.py _GridText._flush_cell   6 1 0   83%
src / quber / core / figures / dpt3 / digest.py _GridText._flush_row   4 0 0   100%
src / quber / core / figures / dpt3 / digest.py _slice   6 1 0   83%
src / quber / core / figures / dpt3 / digest.py _box   6 0 0   100%
src / quber / core / figures / dpt3 / digest.py (no function)   28 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py resolve_figure_footnotes   48 3 0   94%
src / quber / core / figures / dpt3 / footnotes.py _resolve   16 1 0   94%
src / quber / core / figures / dpt3 / footnotes.py _agree   3 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py _place_on_values   18 2 0   89%
src / quber / core / figures / dpt3 / footnotes.py _insert_notes   7 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py _trailing_notes   15 2 0   87%
src / quber / core / figures / dpt3 / footnotes.py _agent_notes   16 2 0   88%
src / quber / core / figures / dpt3 / footnotes.py _document_notes   10 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py _headings   6 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py _page_figures   2 0 0   100%
src / quber / core / figures / dpt3 / footnotes.py (no function)   20 0 0   100%
src / quber / core / figures / dpt3 / graft.py graft_figures   1 0 0   100%
src / quber / core / figures / dpt3 / graft.py insert_orphan_tables   20 4 0   80%
src / quber / core / figures / dpt3 / graft.py _table_prov   7 1 0   86%
src / quber / core / figures / dpt3 / graft.py unhomed_tables   19 1 0   95%
src / quber / core / figures / dpt3 / graft.py _overlaps   1 0 0   100%
src / quber / core / figures / dpt3 / graft.py (no function)   19 0 0   100%
src / quber / core / figures / dpt3 / models.py (no function)   49 0 0   100%
src / quber / core / figures / geometry.py norm_box   7 2 0   71%
src / quber / core / figures / geometry.py point_box   5 0 0   100%
src / quber / core / figures / geometry.py prov_box   6 2 0   67%
src / quber / core / figures / geometry.py (no function)   11 0 0   100%
src / quber / core / figures / graft.py graft_figures   26 1 0   96%
src / quber / core / figures / graft.py graft_tables   25 4 0   84%
src / quber / core / figures / graft.py unread_pictures   25 2 0   92%
src / quber / core / figures / graft.py _overlaps   1 0 0   100%
src / quber / core / figures / graft.py _add_beside_picture   8 2 0   75%
src / quber / core / figures / graft.py _discard_superseded   11 0 0   100%
src / quber / core / figures / graft.py _regions   38 1 0   97%
src / quber / core / figures / graft.py _reading_order   2 0 0   100%
src / quber / core / figures / graft.py _reading_order.key   2 0 0   100%
src / quber / core / figures / graft.py _is_furniture   2 0 0   100%
src / quber / core / figures / graft.py _discard   6 0 0   100%
src / quber / core / figures / graft.py _reshape   22 0 0   100%
src / quber / core / figures / graft.py _crop   9 3 0   67%
src / quber / core / figures / graft.py _attach   3 0 0   100%
src / quber / core / figures / graft.py _prov   3 0 0   100%
src / quber / core / figures / graft.py (no function)   37 0 0   100%
src / quber / core / figures / grid.py scanned_tables   13 0 0   100%
src / quber / core / figures / grid.py _composite_tables   12 1 0   92%
src / quber / core / figures / grid.py _cells_by_chunk   10 1 0   90%
src / quber / core / figures / grid.py _table_box   5 0 0   100%
src / quber / core / figures / grid.py _dense_grid   17 0 0   100%
src / quber / core / figures / grid.py _CellText.__init__   4 0 0   100%
src / quber / core / figures / grid.py _CellText.handle_starttag   5 0 0   100%
src / quber / core / figures / grid.py _CellText.handle_endtag   2 0 0   100%
src / quber / core / figures / grid.py _CellText.handle_data   2 0 0   100%
src / quber / core / figures / grid.py _CellText._flush   6 0 0   100%
src / quber / core / figures / grid.py _cell_text   4 0 0   100%
src / quber / core / figures / grid.py (no function)   22 0 0   100%
src / quber / core / figures / models.py FigureValueRun.reconciled   1 1 0   0%
src / quber / core / figures / models.py FigureValueRun.flagged   1 1 0   0%
src / quber / core / figures / models.py FigureRun.nominated   1 0 0   100%
src / quber / core / figures / models.py FigureRun.scanned   1 0 0   100%
src / quber / core / figures / models.py FigureRun.submitted   1 0 0   100%
src / quber / core / figures / models.py FigureRun.with_figures   1 1 0   0%
src / quber / core / figures / models.py FigureRun.with_tables   1 1 0   0%
src / quber / core / figures / models.py FigureRun.figures   1 0 0   100%
src / quber / core / figures / models.py FigureRun.tables   1 1 0   0%
src / quber / core / figures / models.py FigureRun.credits   1 0 0   100%
src / quber / core / figures / models.py (no function)   88 0 0   100%
src / quber / core / figures / nominate.py nominate_pages   19 2 0   89%
src / quber / core / figures / nominate.py nominate_pages.page_entry   1 0 0   100%
src / quber / core / figures / nominate.py table_verdicts   16 16 0   0%
src / quber / core / figures / nominate.py _top_left_box   4 4 0   0%
src / quber / core / figures / nominate.py _center_in   2 2 0   0%
src / quber / core / figures / nominate.py picture_classes   11 0 0   100%
src / quber / core / figures / nominate.py (no function)   21 0 0   100%
src / quber / core / figures / orchestrator.py run_figures   71 71 0   0%
src / quber / core / figures / orchestrator.py run_figures_sync   1 1 0   0%
src / quber / core / figures / orchestrator.py _scan_pages   10 10 0   0%
src / quber / core / figures / orchestrator.py _scan_pages.one   16 16 0   0%
src / quber / core / figures / orchestrator.py _page_response   27 0 0   100%
src / quber / core / figures / orchestrator.py widen_to_all_pages   5 0 0   100%
src / quber / core / figures / orchestrator.py _stored_track_pages   17 3 0   82%
src / quber / core / figures / orchestrator.py _page_dims   1 1 0   0%
src / quber / core / figures / orchestrator.py resolve_parse   11 1 0   91%
src / quber / core / figures / orchestrator.py load_document   2 2 0   0%
src / quber / core / figures / orchestrator.py write_marker   1 1 0   0%
src / quber / core / figures / orchestrator.py (no function)   49 0 0   100%
src / quber / core / figures / scan.py scan_page   4 4 0   0%
src / quber / core / figures / scan.py page_scan   19 1 0   95%
src / quber / core / figures / scan.py (no function)   16 0 0   100%
src / quber / core / figures / values.py ScanValueParser.parse   1 0 0   100%
src / quber / core / figures / values.py LocalValueReader.read   0 0 0   100%
src / quber / core / figures / values.py page_fragments   11 0 0   100%
src / quber / core / figures / values.py fragments_in_box   9 0 0   100%
src / quber / core / figures / values.py norm_value   15 0 0   100%
src / quber / core / figures / values.py label_words   4 0 0   100%
src / quber / core / figures / values.py value_fragment   6 0 0   100%
src / quber / core / figures / values.py picture_for_value   19 1 0   95%
src / quber / core / figures / values.py tie_page   22 0 0   100%
src / quber / core / figures / values.py tie_page.take_match   14 3 0   79%
src / quber / core / figures / values.py read_figure_values   22 22 0   0%
src / quber / core / figures / values.py (no function)   36 0 0   100%
src / quber / core / fusion / __init__.py (no function)   5 0 0   100%
src / quber / core / fusion / footnotes.py FootnoteResolution.text_for   5 0 0   100%
src / quber / core / fusion / footnotes.py canonical_marker   2 0 0   100%
src / quber / core / fusion / footnotes.py split_leading_marker   8 1 0   88%
src / quber / core / fusion / footnotes.py resolve_footnotes   48 1 0   98%
src / quber / core / fusion / footnotes.py absorb_lookup   9 0 0   100%
src / quber / core / fusion / footnotes.py _extends   9 1 0   89%
src / quber / core / fusion / footnotes.py _words   1 0 0   100%
src / quber / core / fusion / footnotes.py _scan_candidates   7 0 0   100%
src / quber / core / fusion / footnotes.py _section_pointer   26 3 0   88%
src / quber / core / fusion / footnotes.py _heading_key   1 0 0   100%
src / quber / core / fusion / footnotes.py (no function)   25 0 0   100%
src / quber / core / fusion / fusion.py fuse_artifacts   12 12 0   0%
src / quber / core / fusion / fusion.py DocumentFusion.__init__   6 6 0   0%
src / quber / core / fusion / fusion.py DocumentFusion.fuse   4 4 0   0%
src / quber / core / fusion / fusion.py DocumentFusion.fuse_sync   1 1 0   0%
src / quber / core / fusion / fusion.py _split_merged_regions   20 20 0   0%
src / quber / core / fusion / fusion.py _annotate   7 7 0   0%
src / quber / core / fusion / fusion.py _docling_norm_box   7 7 0   0%
src / quber / core / fusion / fusion.py (no function)   26 0 0   100%
src / quber / core / fusion / graft.py build_unified_document   30 6 0   80%
src / quber / core / fusion / graft.py _rewrite_report_refs   9 1 0   89%
src / quber / core / fusion / graft.py _mark_vetted   11 11 0   0%
src / quber / core / fusion / graft.py _dedup_table_region_text   44 3 0   93%
src / quber / core / fusion / graft.py _table_text_bag   6 0 0   100%
src / quber / core / fusion / graft.py _covered_by   11 1 0   91%
src / quber / core / fusion / graft.py _center_in   4 0 0   100%
src / quber / core / fusion / graft.py _apply_replace   10 2 0   80%
src / quber / core / fusion / graft.py _apply_insert   17 1 0   94%
src / quber / core / fusion / graft.py _apply_undercount   27 3 0   89%
src / quber / core / fusion / graft.py attach_attribution   16 1 0   94%
src / quber / core / fusion / graft.py caption_lines   15 0 0   100%
src / quber / core / fusion / graft.py _furniture_keys   7 0 0   100%
src / quber / core / fusion / graft.py _paragraph_containing   7 1 0   86%
src / quber / core / fusion / graft.py markdown_to_table_data   11 0 0   100%
src / quber / core / fusion / graft.py _graft_cell_geometry   11 0 0   100%
src / quber / core / fusion / graft.py _pair_by_vertical_order   3 0 0   100%
src / quber / core / fusion / graft.py _vertical_key   6 3 0   50%
src / quber / core / fusion / graft.py _table_top   6 2 0   67%
src / quber / core / fusion / graft.py _som_prov   7 1 0   86%
src / quber / core / fusion / graft.py reading_order_anchor   22 2 0   91%
src / quber / core / fusion / graft.py _item_top_left_top   4 1 0   75%
src / quber / core / fusion / graft.py (no function)   43 0 0   100%
src / quber / core / fusion / heading_review.py review_headings   59 5 0   92%
src / quber / core / fusion / heading_review.py review_headings.position_evidence   7 1 0   86%
src / quber / core / fusion / heading_review.py (no function)   10 0 2   100%
src / quber / core / fusion / matching.py match_tables   9 0 0   100%
src / quber / core / fusion / matching.py _match_page   44 0 0   100%
src / quber / core / fusion / matching.py _classify_region   19 0 0   100%
src / quber / core / fusion / matching.py _connected_regions   21 0 0   100%
src / quber / core / fusion / matching.py _connected_regions.key_s   1 0 0   100%
src / quber / core / fusion / matching.py _connected_regions.key_d   1 0 0   100%
src / quber / core / fusion / matching.py _connected_regions.find   5 0 0   100%
src / quber / core / fusion / matching.py _connected_regions.union   3 0 0   100%
src / quber / core / fusion / matching.py _som_box   5 3 0   40%
src / quber / core / fusion / matching.py _docling_box   6 2 0   67%
src / quber / core / fusion / matching.py _picture_classes   11 1 0   91%
src / quber / core / fusion / matching.py (no function)   17 0 0   100%
src / quber / core / fusion / models.py (no function)   22 0 4   100%
src / quber / core / models.py (no function)   14 0 0   100%
src / quber / core / ocr / __init__.py (no function)   2 0 0   100%
src / quber / core / ocr / well.py PageWell.fragments_in_box   10 0 0   100%
src / quber / core / ocr / well.py DocumentWell.page   4 0 0   100%
src / quber / core / ocr / well.py make_engine   2 2 0   0%
src / quber / core / ocr / well.py read_image   17 17 0   0%
src / quber / core / ocr / well.py build_well   12 12 0   0%
src / quber / core / ocr / well.py (no function)   29 0 0   100%
src / quber / core / parsers / __init__.py __getattr__   4 0 0   100%
src / quber / core / parsers / __init__.py (no function)   7 0 2   100%
src / quber / core / parsers / base.py Parser.parse   0 0 1   100%
src / quber / core / parsers / base.py (no function)   4 0 1   100%
src / quber / core / parsers / docling_parser.py DoclingParser.__init__   6 0 0   100%
src / quber / core / parsers / docling_parser.py DoclingParser.build_pipeline_options   0 0 2   100%
src / quber / core / parsers / docling_parser.py DoclingParser.build_converter   1 1 0   0%
src / quber / core / parsers / docling_parser.py DoclingParser.apply_perf_settings   0 0 0   100%
src / quber / core / parsers / docling_parser.py DoclingParser.fingerprint   8 8 0   0%
src / quber / core / parsers / docling_parser.py DoclingParser.parse   8 8 0   0%
src / quber / core / parsers / docling_parser.py LegacyDoclingParser.build_pipeline_options   5 0 0   100%
src / quber / core / parsers / docling_parser.py TunedFinancialParser.build_pipeline_options   12 0 0   100%
src / quber / core / parsers / docling_parser.py TunedFinancialParser.build_converter   1 1 0   0%
src / quber / core / parsers / docling_parser.py TunedFinancialParser.apply_perf_settings   1 1 0   0%
src / quber / core / parsers / docling_parser.py parser_for_preset   6 0 0   100%
src / quber / core / parsers / docling_parser.py (no function)   35 0 2   100%
src / quber / core / parsers / mock.py MockParser.__init__   1 0 0   100%
src / quber / core / parsers / mock.py MockParser.parse   2 0 0   100%
src / quber / core / parsers / mock.py (no function)   7 0 0   100%
src / quber / core / parsers / result.py ParseResult.provenance_by_ref   1 0 0   100%
src / quber / core / parsers / result.py ParseResult.save   8 8 0   0%
src / quber / core / parsers / result.py ParseResult.load   7 7 0   0%
src / quber / core / parsers / result.py ParseResult.from_conversion   13 13 0   0%
src / quber / core / parsers / result.py derive_table_provenance   2 2 0   0%
src / quber / core / parsers / result.py _cell_box_top_left   3 3 0   0%
src / quber / core / parsers / result.py _table_box_top_left   4 4 0   0%
src / quber / core / parsers / result.py _center_in   3 3 0   0%
src / quber / core / parsers / result.py _table_provenance   14 14 0   0%
src / quber / core / parsers / result.py (no function)   51 0 3   100%
src / quber / core / printed_text.py printed_key   1 0 0   100%
src / quber / core / printed_text.py is_printed   2 0 0   100%
src / quber / core / printed_text.py page_lines   14 0 0   100%
src / quber / core / printed_text.py (no function)   10 0 0   100%
src / quber / core / validate.py CountMismatch.delta   1 0 0   100%
src / quber / core / validate.py ValidationReport.has_mismatches   1 0 0   100%
src / quber / core / validate.py camelot_counts_by_page   1 0 0   100%
src / quber / core / validate.py camelot_vs_llm_count   21 2 0   90%
src / quber / core / validate.py camelot_vs_llm_count.count_one   6 2 0   67%
src / quber / core / validate.py camelot_vs_llm_count_sync   2 0 0   100%
src / quber / core / validate.py (no function)   24 0 0   100%
src / quber / db / __init__.py (no function)   4 0 0   100%
src / quber / db / connection.py get_database_url   9 0 0   100%
src / quber / db / connection.py get_engine   4 0 0   100%
src / quber / db / connection.py init_db   8 0 0   100%
src / quber / db / connection.py get_session_factory   3 0 0   100%
src / quber / db / connection.py get_session   12 0 0   100%
src / quber / db / connection.py (no function)   14 0 0   100%
src / quber / db / embeddings.py EmbeddingService.__init__   14 1 0   93%
src / quber / db / embeddings.py EmbeddingService.init_local_model   18 6 0   67%
src / quber / db / embeddings.py EmbeddingService.init_openai_client   11 11 0   0%
src / quber / db / embeddings.py EmbeddingService.embed   5 0 0   100%
src / quber / db / embeddings.py EmbeddingService.embed_local   3 0 0   100%
src / quber / db / embeddings.py EmbeddingService.embed_openai   9 0 0   100%
src / quber / db / embeddings.py EmbeddingService.embed_table_metadata   3 0 0   100%
src / quber / db / embeddings.py get_embedding_service   6 0 0   100%
src / quber / db / embeddings.py (no function)   17 0 0   100%
src / quber / db / importer.py import_json_file   57 5 0   91%
src / quber / db / importer.py import_directory   33 8 0   76%
src / quber / db / importer.py get_import_stats   12 0 0   100%
src / quber / db / importer.py (no function)   12 0 0   100%
src / quber / db / models.py Document.__repr__   0 0 1   100%
src / quber / db / models.py ExtractedTable.__repr__   0 0 4   100%
src / quber / db / models.py (no function)   41 0 2   100%
src / quber / files / __init__.py (no function)   0 0 0   100%
src / quber / files / cache.py evict_stale_s3_cache   12 0 0   100%
src / quber / files / cache.py init_s3_cache   12 4 0   67%
src / quber / files / cache.py resolve_document   8 5 0   38%
src / quber / files / cache.py fetch_file   7 7 0   0%
src / quber / files / cache.py resolve_artifacts   7 0 0   100%
src / quber / files / cache.py (no function)   12 0 0   100%
src / quber / files / output.py is_s3   1 1 0   0%
src / quber / files / output.py output_sink   17 12 0   29%
src / quber / files / output.py write_completion_marker   2 2 0   0%
src / quber / files / output.py (no function)   12 0 0   100%
src / quber / files / pdf.py slice_page   7 7 0   0%
src / quber / files / pdf.py render_page   7 1 0   86%
src / quber / files / pdf.py render_region   10 1 0   90%
src / quber / files / pdf.py (no function)   8 0 2   100%
src / quber / playground / __init__.py (no function)   0 0 0   100%
src / quber / playground / agent.py anthropic_model   6 6 0   0%
src / quber / playground / agent.py answer_model   1 1 0   0%
src / quber / playground / agent.py _agent   1 1 0   0%
src / quber / playground / agent.py build_context   5 0 0   100%
src / quber / playground / agent.py _prompt   3 0 0   100%
src / quber / playground / agent.py _trace_inputs   1 1 0   0%
src / quber / playground / agent.py answer   6 6 0   0%
src / quber / playground / agent.py answer_stream   12 12 0   0%
src / quber / playground / agent.py (no function)   28 0 0   100%
src / quber / playground / answers / __init__.py (no function)   3 0 0   100%
src / quber / playground / answers / declared.py prompt_for   2 0 0   100%
src / quber / playground / answers / declared.py build_agent   1 1 0   0%
src / quber / playground / answers / declared.py trace_inputs   1 1 0   0%
src / quber / playground / answers / declared.py answer   6 6 0   0%
src / quber / playground / answers / declared.py answer_stream   12 12 0   0%
src / quber / playground / answers / declared.py (no function)   27 0 0   100%
src / quber / playground / answers / document.py DocumentIdentity.from_row   1 0 0   100%
src / quber / playground / answers / document.py DocumentIdentity.header   5 0 0   100%
src / quber / playground / answers / document.py with_document   3 0 0   100%
src / quber / playground / answers / document.py (no function)   14 0 0   100%
src / quber / playground / answers / expectation.py scalar_answer   3 0 0   100%
src / quber / playground / answers / expectation.py prose_answer   3 0 0   100%
src / quber / playground / answers / expectation.py answer   5 5 0   0%
src / quber / playground / answers / expectation.py answer_stream   12 12 0   0%
src / quber / playground / answers / expectation.py (no function)   11 0 0   100%
src / quber / playground / answers / figures.py norm_printed   1 0 0   100%
src / quber / playground / answers / figures.py as_number   14 2 0   86%
src / quber / playground / answers / figures.py is_percent   1 0 0   100%
src / quber / playground / answers / figures.py (no function)   7 0 0   100%
src / quber / playground / answers / fixed.py build_agent   1 1 0   0%
src / quber / playground / answers / fixed.py prompt_for   2 0 0   100%
src / quber / playground / answers / fixed.py trace_inputs   1 1 0   0%
src / quber / playground / answers / fixed.py answer   6 6 0   0%
src / quber / playground / answers / fixed.py (no function)   17 0 0   100%
src / quber / playground / answers / planned.py _planner   1 1 0   0%
src / quber / playground / answers / planned.py plan_for   7 7 0   0%
src / quber / playground / answers / planned.py compile_model   11 0 0   100%
src / quber / playground / answers / planned.py (no function)   25 0 0   100%
src / quber / playground / answers / shapes.py Scalar.number   1 0 0   100%
src / quber / playground / answers / shapes.py Point.number   1 0 0   100%
src / quber / playground / answers / shapes.py (no function)   42 0 0   100%
src / quber / playground / answers / streaming.py readable   6 6 0   0%
src / quber / playground / answers / streaming.py answer_stream   12 12 0   0%
src / quber / playground / answers / streaming.py (no function)   11 0 0   100%
src / quber / playground / app.py warm_embedding_model   2 2 0   0%
src / quber / playground / app.py warm_embedding_model.warm   2 2 0   0%
src / quber / playground / app.py open_job_records   2 2 0   0%
src / quber / playground / app.py healthz   8 8 0   0%
src / quber / playground / app.py _inspect_codes   2 0 0   100%
src / quber / playground / app.py _status_reasons   2 0 0   100%
src / quber / playground / app.py _reason   10 0 0   100%
src / quber / playground / app.py _label   11 2 0   82%
src / quber / playground / app.py _stamped_index   5 5 0   0%
src / quber / playground / app.py index   1 1 0   0%
src / quber / playground / app.py static_asset   4 4 0   0%
src / quber / playground / app.py _doc_dict   3 3 0   0%
src / quber / playground / app.py _doc_row   5 5 0   0%
src / quber / playground / app.py documents   10 10 0   0%
src / quber / playground / app.py _parse_int   7 7 0   0%
src / quber / playground / app.py patch_document   23 23 0   0%
src / quber / playground / app.py _ingest_busy   8 8 0   0%
src / quber / playground / app.py _doc_files   4 4 0   0%
src / quber / playground / app.py _remove_doc_files   10 10 0   0%
src / quber / playground / app.py delete_document   11 11 0   0%
src / quber / playground / app.py pdf   5 5 0   0%
src / quber / playground / app.py _bbox_dict   1 0 0   100%
src / quber / playground / app.py _box_contains   1 0 0   100%
src / quber / playground / app.py _resolve_refs   42 7 0   83%
src / quber / playground / app.py _resolve_refs.buries_fine   4 0 0   100%
src / quber / playground / app.py document_flags   3 3 0   0%
src / quber / playground / app.py _scan_breadth   20 0 0   100%
src / quber / playground / app.py _run_stage   14 14 0   0%
src / quber / playground / app.py _run_hosted_extraction   8 8 0   0%
src / quber / playground / app.py _run_hosted_extraction.log   3 3 0   0%
src / quber / playground / app.py _await_slot   3 3 0   0%
src / quber / playground / app.py _admission_error   28 28 0   0%
src / quber / playground / app.py _finalize_job   15 15 0   0%
src / quber / playground / app.py _admit_or_fail   21 21 0   0%
src / quber / playground / app.py _run_job   31 31 0   0%
src / quber / playground / app.py upload   25 25 0   0%
src / quber / playground / app.py job_status   4 4 0   0%
src / quber / playground / app.py _readable   7 7 0   0%
src / quber / playground / app.py cited_ids_source_first   4 0 0   100%
src / quber / playground / app.py _chat_response   2 2 0   0%
src / quber / playground / app.py chat   7 7 0   0%
src / quber / playground / app.py chat_stream   8 8 0   0%
src / quber / playground / app.py chat_stream.events   8 8 0   0%
src / quber / playground / app.py batch_start   13 13 0   0%
src / quber / playground / app.py batch_start.retrieve_one   1 1 0   0%
src / quber / playground / app.py batch_start.answer_one   2 2 0   0%
src / quber / playground / app.py _run_state   4 4 0   0%
src / quber / playground / app.py batch_state   1 1 0   0%
src / quber / playground / app.py batch_events   3 3 0   0%
src / quber / playground / app.py batch_events.stream   2 2 0   0%
src / quber / playground / app.py _export_stem   5 5 0   0%
src / quber / playground / app.py batch_export_xlsx   2 2 0   0%
src / quber / playground / app.py batch_export_csv   2 2 0   0%
src / quber / playground / app.py (no function)   173 0 0   100%
src / quber / playground / auth.py ActivityMeter.__init__   5 5 0   0%
src / quber / playground / auth.py ActivityMeter.record   2 2 0   0%
src / quber / playground / auth.py ActivityMeter.run   10 10 0   0%
src / quber / playground / auth.py LoginGate.__init__   4 4 0   0%
src / quber / playground / auth.py LoginGate.__call__   21 21 0   0%
src / quber / playground / auth.py request_base   2 2 0   0%
src / quber / playground / auth.py secure   1 1 0   0%
src / quber / playground / auth.py install   20 4 0   80%
src / quber / playground / auth.py install.me_open   1 1 0   0%
src / quber / playground / auth.py install.login   1 1 0   0%
src / quber / playground / auth.py install.callback   7 7 0   0%
src / quber / playground / auth.py install.logout   6 6 0   0%
src / quber / playground / auth.py install.me   2 2 0   0%
src / quber / playground / auth.py (no function)   26 0 0   100%
src / quber / playground / backfill_boxes.py backfill_document   22 22 0   0%
src / quber / playground / backfill_boxes.py main   25 25 0   0%
src / quber / playground / backfill_boxes.py (no function)   13 13 2   0%
src / quber / playground / batch.py RunStore.save_run   1 0 0   100%
src / quber / playground / batch.py RunStore.save_row   0 0 0   100%
src / quber / playground / batch.py RunStore.finish_run   1 0 0   100%
src / quber / playground / batch.py RunStore.load_run   1 0 0   100%
src / quber / playground / batch.py RunStore.running_for   1 0 0   100%
src / quber / playground / batch.py parse_questions   1 0 0   100%
src / quber / playground / batch.py _Run.running   1 0 0   100%
src / quber / playground / batch.py _Run.state   1 0 0   100%
src / quber / playground / batch.py _Run.publish   2 0 0   100%
src / quber / playground / batch.py _Run.close_subscribers   2 0 0   100%
src / quber / playground / batch.py BatchRunner.__init__   4 0 0   100%
src / quber / playground / batch.py BatchRunner.running_ids   1 1 0   0%
src / quber / playground / batch.py BatchRunner.start   12 1 0   92%
src / quber / playground / batch.py BatchRunner.get   5 0 0   100%
src / quber / playground / batch.py BatchRunner._stored   1 0 0   100%
src / quber / playground / batch.py BatchRunner._state_from_stored   2 2 0   0%
src / quber / playground / batch.py BatchRunner.running_for   3 1 0   67%
src / quber / playground / batch.py BatchRunner.events   19 5 0   74%
src / quber / playground / batch.py BatchRunner._stored_events   15 15 0   0%
src / quber / playground / batch.py BatchRunner._done_event   1 0 0   100%
src / quber / playground / batch.py BatchRunner._run   11 1 0   91%
src / quber / playground / batch.py BatchRunner._run.one   14 1 0   93%
src / quber / playground / batch.py BatchRunner._with_retry   10 0 1   100%
src / quber / playground / batch.py (no function)   61 0 0   100%
src / quber / playground / benchmark / __init__.py (no function)   0 0 0   100%
src / quber / playground / benchmark / load.py doc_key_for   1 1 0   0%
src / quber / playground / benchmark / load.py _pg_text   1 1 0   0%
src / quber / playground / benchmark / load.py _rows   1 1 0   0%
src / quber / playground / benchmark / load.py load   23 23 0   0%
src / quber / playground / benchmark / load.py main   5 5 0   0%
src / quber / playground / benchmark / load.py (no function)   14 14 2   0%
src / quber / playground / benchmark / pages.py backfill   17 17 0   0%
src / quber / playground / benchmark / pages.py main   1 1 0   0%
src / quber / playground / benchmark / pages.py (no function)   8 8 2   0%
src / quber / playground / benchmark / run_shapes.py values_agree   5 0 0   100%
src / quber / playground / benchmark / run_shapes.py looks_like_prose   4 0 0   100%
src / quber / playground / benchmark / run_shapes.py gold_in_prose   11 4 0   64%
src / quber / playground / benchmark / run_shapes.py cell_text   6 6 0   0%
src / quber / playground / benchmark / run_shapes.py retrieval_hit   1 1 0   0%
src / quber / playground / benchmark / run_shapes.py scalar_field   11 11 0   0%
src / quber / playground / benchmark / run_shapes.py run_arm   36 36 0   0%
src / quber / playground / benchmark / run_shapes.py score   14 14 0   0%
src / quber / playground / benchmark / run_shapes.py run_question   9 9 0   0%
src / quber / playground / benchmark / run_shapes.py summarize   11 11 0   0%
src / quber / playground / benchmark / run_shapes.py summarize.arm_of   1 1 0   0%
src / quber / playground / benchmark / run_shapes.py run   10 10 0   0%
src / quber / playground / benchmark / run_shapes.py rescore   7 7 0   0%
src / quber / playground / benchmark / run_shapes.py main   11 11 0   0%
src / quber / playground / benchmark / run_shapes.py (no function)   36 0 2   100%
src / quber / playground / benchmark / verify_gold.py norm   1 0 0   100%
src / quber / playground / benchmark / verify_gold.py load_documents   6 6 0   0%
src / quber / playground / benchmark / verify_gold.py tagged_cells   1 0 0   100%
src / quber / playground / benchmark / verify_gold.py cell_index   8 0 0   100%
src / quber / playground / benchmark / verify_gold.py occurrences   2 0 0   100%
src / quber / playground / benchmark / verify_gold.py verify   20 1 0   95%
src / quber / playground / benchmark / verify_gold.py main   16 16 0   0%
src / quber / playground / benchmark / verify_gold.py (no function)   15 0 2   100%
src / quber / playground / db.py dsn   2 0 0   100%
src / quber / playground / db.py connect   3 0 0   100%
src / quber / playground / db.py connect_async   3 0 0   100%
src / quber / playground / db.py apply_schema   3 3 0   0%
src / quber / playground / db.py (no function)   14 0 0   100%
src / quber / playground / embedding.py _service   1 0 0   100%
src / quber / playground / embedding.py embed_texts   4 1 0   75%
src / quber / playground / embedding.py embed_query   1 0 0   100%
src / quber / playground / embedding.py embed_document   4 4 0   0%
src / quber / playground / embedding.py (no function)   10 0 0   100%
src / quber / playground / export.py build_rows   1 0 0   100%
src / quber / playground / export.py _build_row   35 4 0   89%
src / quber / playground / export.py percent_format   3 0 0   100%
src / quber / playground / export.py write_xlsx   20 0 0   100%
src / quber / playground / export.py _quote   1 0 0   100%
src / quber / playground / export.py _free_text   3 0 0   100%
src / quber / playground / export.py write_csv   9 0 0   100%
src / quber / playground / export.py (no function)   35 0 0   100%
src / quber / playground / gpu.py configured   2 2 0   0%
src / quber / playground / gpu.py _bucket_and_prefix   3 3 0   0%
src / quber / playground / gpu.py _s3   1 1 0   0%
src / quber / playground / gpu.py _presign   1 1 0   0%
src / quber / playground / gpu.py _submit   6 6 0   0%
src / quber / playground / gpu.py _read_if_fresh   8 8 0   0%
src / quber / playground / gpu.py _read_json_if_fresh   2 2 0   0%
src / quber / playground / gpu.py _read_text_if_fresh   2 2 0   0%
src / quber / playground / gpu.py _job_status   4 4 0   0%
src / quber / playground / gpu.py _wait_for_marker   34 34 0   0%
src / quber / playground / gpu.py parse   12 12 0   0%
src / quber / playground / gpu.py embed   17 17 0   0%
src / quber / playground / gpu.py (no function)   30 0 0   100%
src / quber / playground / ingest_fusion.py _fetch_optional   6 6 0   0%
src / quber / playground / ingest_fusion.py _fetch   5 5 0   0%
src / quber / playground / ingest_fusion.py _governing   3 3 0   0%
src / quber / playground / ingest_fusion.py _is_page_number   1 1 0   0%
src / quber / playground / ingest_fusion.py _picture_notes   1 1 0   0%
src / quber / playground / ingest_fusion.py _picture_marks   1 1 0   0%
src / quber / playground / ingest_fusion.py _superseded_refs   3 3 0   0%
src / quber / playground / ingest_fusion.py _picture_class   3 3 0   0%
src / quber / playground / ingest_fusion.py _cited_line   1 0 0   100%
src / quber / playground / ingest_fusion.py _picture_text   11 11 0   0%
src / quber / playground / ingest_fusion.py _unanchored_value_records   16 0 0   100%
src / quber / playground / ingest_fusion.py _picture_bbox   11 11 0   0%
src / quber / playground / ingest_fusion.py _reading_order_refs   16 16 0   0%
src / quber / playground / ingest_fusion.py _reading_order_refs.visit   12 12 0   0%
src / quber / playground / ingest_fusion.py _page_sizes   5 5 0   0%
src / quber / playground / ingest_fusion.py _norm_bbox   9 9 0   0%
src / quber / playground / ingest_fusion.py _esc   1 1 0   0%
src / quber / playground / ingest_fusion.py _pg_text   1 1 0   0%
src / quber / playground / ingest_fusion.py _embed_view   4 4 0   0%
src / quber / playground / ingest_fusion.py _table_head   13 13 0   0%
src / quber / playground / ingest_fusion.py _grid_html   6 6 0   0%
src / quber / playground / ingest_fusion.py _cell_vicinity   16 16 0   0%
src / quber / playground / ingest_fusion.py _header_band   6 6 0   0%
src / quber / playground / ingest_fusion.py _docling_table_text   9 9 0   0%
src / quber / playground / ingest_fusion.py _lookup_unresolved   21 21 0   0%
src / quber / playground / ingest_fusion.py ingest   303 303 0   0%
src / quber / playground / ingest_fusion.py main   18 18 0   0%
src / quber / playground / ingest_fusion.py (no function)   48 0 2   100%
src / quber / playground / jobs.py ensure_tables   4 4 0   0%
src / quber / playground / jobs.py save_upload   14 14 0   0%
src / quber / playground / jobs.py _upload_from_row   7 7 0   0%
src / quber / playground / jobs.py mark_stale_uploads   5 5 0   0%
src / quber / playground / jobs.py load_upload   5 5 0   0%
src / quber / playground / jobs.py live_uploads   5 5 0   0%
src / quber / playground / jobs.py heartbeat_uploads   5 5 0   0%
src / quber / playground / jobs.py BatchStore.save_run   2 2 0   0%
src / quber / playground / jobs.py BatchStore.save_row   3 3 0   0%
src / quber / playground / jobs.py BatchStore.finish_run   2 2 0   0%
src / quber / playground / jobs.py BatchStore.mark_stale_runs   10 10 0   0%
src / quber / playground / jobs.py BatchStore.load_run   8 8 0   0%
src / quber / playground / jobs.py BatchStore.running_for   4 4 0   0%
src / quber / playground / jobs.py BatchStore.heartbeat   5 5 0   0%
src / quber / playground / jobs.py start_heartbeat   4 4 0   0%
src / quber / playground / jobs.py start_heartbeat.beat   7 7 0   0%
src / quber / playground / jobs.py (no function)   36 0 0   100%
src / quber / playground / metadata.py infer   30 1 0   97%
src / quber / playground / metadata.py filing_label   9 0 0   100%
src / quber / playground / metadata.py export_stem   6 0 0   100%
src / quber / playground / metadata.py _norm   1 0 0   100%
src / quber / playground / metadata.py tuple_key   3 0 0   100%
src / quber / playground / metadata.py overlap_key   2 0 0   100%
src / quber / playground / metadata.py annotate_overlaps   9 0 0   100%
src / quber / playground / metadata.py (no function)   15 0 0   100%
src / quber / playground / ranking.py ChunkRanker.__call__   1 0 0   100%
src / quber / playground / ranking.py Ranking.order   4 0 0   100%
src / quber / playground / ranking.py Ranking.cleared   1 0 0   100%
src / quber / playground / ranking.py Ranking.kept_pages   1 1 0   0%
src / quber / playground / ranking.py client   5 5 0   0%
src / quber / playground / ranking.py page_texts   8 8 0   0%
src / quber / playground / ranking.py _Tally.__init__   4 4 0   0%
src / quber / playground / ranking.py _Tally.record   3 3 0   0%
src / quber / playground / ranking.py _Tally.failed   3 3 0   0%
src / quber / playground / ranking.py _twice   9 9 0   0%
src / quber / playground / ranking.py _twice.guarded   2 2 0   0%
src / quber / playground / ranking.py _levels   1 1 0   0%
src / quber / playground / ranking.py _run_outputs   1 1 0   0%
src / quber / playground / ranking.py judge_pages   14 14 0   0%
src / quber / playground / ranking.py judge_pages.judge   11 11 0   0%
src / quber / playground / ranking.py grade_chunks   15 15 0   0%
src / quber / playground / ranking.py grade_chunks.grade   10 10 0   0%
src / quber / playground / ranking.py score   6 6 0   0%
src / quber / playground / ranking.py rank   10 10 0   0%
src / quber / playground / ranking.py rank_sync   1 1 0   0%
src / quber / playground / ranking.py (no function)   63 0 2   100%
src / quber / playground / retrieval.py retrieve   34 34 0   0%
src / quber / playground / retrieval.py retrieve_sync   1 1 0   0%
src / quber / playground / retrieval.py _fused_window   9 1 0   89%
src / quber / playground / retrieval.py _cap_line_records   10 0 0   100%
src / quber / playground / retrieval.py (no function)   26 0 0   100%
src / quber / playground / selection.py _agent   1 1 0   0%
src / quber / playground / selection.py _prompt   2 2 0   0%
src / quber / playground / selection.py select   13 13 0   0%
src / quber / playground / selection.py select_sync   1 1 0   0%
src / quber / playground / selection.py (no function)   19 19 2   0%
src / quber / playground / session.py signature   1 0 0   100%
src / quber / playground / session.py b64decode   1 0 0   100%
src / quber / playground / session.py encode   2 0 0   100%
src / quber / playground / session.py decode   15 2 0   87%
src / quber / playground / session.py issue   2 0 0   100%
src / quber / playground / session.py identity_of   6 2 0   67%
src / quber / playground / session.py verify   4 0 0   100%
src / quber / playground / session.py signed_identity   1 0 0   100%
src / quber / playground / session.py state_for   2 0 0   100%
src / quber / playground / session.py next_from_state   4 0 0   100%
src / quber / playground / session.py safe_next   3 0 0   100%
src / quber / playground / session.py base_url   1 1 0   0%
src / quber / playground / session.py authorize_url   2 0 0   100%
src / quber / playground / session.py logout_url   2 0 0   100%
src / quber / playground / session.py authenticate   13 13 0   0%
src / quber / playground / session.py claims   8 8 0   0%
src / quber / playground / session.py complete_sign_in   17 14 0   18%
src / quber / playground / session.py cookie_header   1 1 0   0%
src / quber / playground / session.py clear_cookie_header   1 1 0   0%
src / quber / playground / session.py cookie_value   4 4 0   0%
src / quber / playground / session.py page   1 0 0   100%
src / quber / playground / session.py login_page   3 0 0   100%
src / quber / playground / session.py refusal_page   2 0 0   100%
src / quber / playground / session.py failed_page   1 0 0   100%
src / quber / playground / session.py link_preview_tags   5 0 0   100%
src / quber / playground / session.py (no function)   71 0 0   100%
src / quber / playground / storage.py prefix   4 4 0   0%
src / quber / playground / storage.py publish   12 12 0   0%
src / quber / playground / storage.py publish_workdir   3 3 0   0%
src / quber / playground / storage.py write_source_manifest   5 5 0   0%
src / quber / playground / storage.py local_pdf   14 14 0   0%
src / quber / playground / storage.py publish_library   14 14 0   0%
src / quber / playground / storage.py (no function)   17 0 2   100%
src / quber / playground / tracing.py tracer   3 3 0   0%
src / quber / playground / tracing.py run_metadata   2 2 0   0%
src / quber / playground / tracing.py (no function)   8 0 0   100%
src / quber / processors / __init__.py (no function)   2 0 0   100%
src / quber / processors / period.py PeriodInferenceProcessor.__init__   2 2 0   0%
src / quber / processors / period.py PeriodInferenceProcessor.infer   6 6 0   0%
src / quber / processors / period.py (no function)   16 16 0   0%
src / quber / processors / table_inference.py provenance_page   4 1 0   75%
src / quber / processors / table_inference.py TableInferenceProcessor.__init__   9 0 0   100%
src / quber / processors / table_inference.py TableInferenceProcessor.analyze_table   14 14 0   0%
src / quber / processors / table_inference.py TableInferenceProcessor.analyze_tables_batch   8 8 0   0%
src / quber / processors / table_inference.py TableInferenceProcessor.analyze_tables_batch.analyze_with_limit   3 3 0   0%
src / quber / processors / table_inference.py TableInferenceProcessor.format_prompt   1 0 0   100%
src / quber / processors / table_inference.py TableInferenceProcessor.get_table_preview   5 0 0   100%
src / quber / processors / table_inference.py TableInferenceProcessor.extract_page_context   33 3 0   91%
src / quber / processors / table_inference.py TableInferenceProcessor.generate_executive_summary   13 13 0   0%
src / quber / processors / table_inference.py TableInferenceProcessor.process_document   23 23 0   0%
src / quber / processors / table_inference.py TableInferenceProcessor.save_json   3 0 0   100%
src / quber / processors / table_inference.py TableInferenceProcessor.save_summary   37 1 0   97%
src / quber / processors / table_inference.py (no function)   43 0 2   100%
src / quber / prompts / __init__.py (no function)   2 0 0   100%
src / quber / prompts / loader.py load_prompt   16 0 0   100%
src / quber / prompts / loader.py (no function)   10 4 0   60%
src / quber / providers / __init__.py (no function)   0 0 0   100%
src / quber / providers / landing / __init__.py (no function)   2 0 0   100%
src / quber / providers / landing / client.py parse_document   9 9 0   0%
src / quber / providers / landing / client.py is_v2_model   1 0 0   100%
src / quber / providers / landing / client.py build_client   5 5 0   0%
src / quber / providers / landing / client.py _await_result   34 34 0   0%
src / quber / providers / landing / client.py (no function)   15 0 0   100%
src / quber / providers / landing / orchestrator.py run_parse   23 23 0   0%
src / quber / providers / landing / orchestrator.py (no function)   19 0 0   100%
src / quber / review / __init__.py (no function)   4 0 0   100%
src / quber / review / annotated.py render_annotated_pdf   17 17 0   0%
src / quber / review / annotated.py (no function)   7 0 0   100%
src / quber / review / flags.py render_flag_page   3 3 0   0%
src / quber / review / flags.py _grid_html   9 0 0   100%
src / quber / review / flags.py _reasoning_html   7 0 0   100%
src / quber / review / flags.py render_flags_html   17 0 0   100%
src / quber / review / flags.py (no function)   15 0 0   100%
src / quber / review / html.py render_pages   3 3 0   0%
src / quber / review / html.py before_b64   15 0 0   100%
src / quber / review / html.py grid_html   9 9 0   0%
src / quber / review / html.py md_to_html   10 10 0   0%
src / quber / review / html.py render_review_html   19 19 0   0%
src / quber / review / html.py (no function)   17 0 0   100%
src / quber / settings / __init__.py coerce_legacy_bool   5 1 0   80%
src / quber / settings / __init__.py get_settings   1 0 0   100%
src / quber / settings / __init__.py (no function)   96 0 0   100%
src / quber / utils / __init__.py (no function)   2 0 0   100%
src / quber / utils / cuda_runtime.py preload_cuda_runtime_libs   14 3 0   79%
src / quber / utils / cuda_runtime.py (no function)   6 0 0   100%
src / quber / utils / logging.py setup_logging   26 0 0   100%
src / quber / utils / logging.py get_logger   3 0 0   100%
src / quber / utils / logging.py (no function)   8 0 0   100%
Total     9829 3386 51   66%

No items found using the specified filter.