Coverage report: 100%

Files Functions Classes

coverage.py v7.15.2, created at 2026-08-14 11:46 +0000

File function   statements missing excluded   coverage
src/lilbee/__init__.py _install_thread_only_tqdm_lock   6 0 0   100%
src/lilbee/__init__.py _prestart_mp_resource_tracker   8 0 0   100%
src/lilbee/__init__.py _shrink_hf_download_chunk_size   5 0 0   100%
src/lilbee/__init__.py __getattr__   12 0 0   100%
src/lilbee/__init__.py (no function)   13 0 2   100%
src/lilbee/__main__.py _isolate_vendored_openssl   3 0 0   100%
src/lilbee/__main__.py _is_frozen   1 0 0   100%
src/lilbee/__main__.py _multiprocessing_child_code   10 0 0   100%
src/lilbee/__main__.py _dispatch_frozen_child   7 0 0   100%
src/lilbee/__main__.py _dispatch_module_invocation   11 0 0   100%
src/lilbee/__main__.py (no function)   12 0 10   100%
src/lilbee/_frozen.py is_frozen   1 0 0   100%
src/lilbee/_frozen.py (no function)   3 0 0   100%
src/lilbee/api.py Lilbee.__init__   12 0 0   100%
src/lilbee/api.py Lilbee.config   1 0 0   100%
src/lilbee/api.py Lilbee.store   1 0 0   100%
src/lilbee/api.py Lilbee.embedder   1 0 0   100%
src/lilbee/api.py Lilbee.searcher   1 0 0   100%
src/lilbee/api.py Lilbee.sync   3 0 0   100%
src/lilbee/api.py Lilbee.search   2 0 0   100%
src/lilbee/api.py Lilbee.add   5 0 0   100%
src/lilbee/api.py Lilbee.remove   2 0 0   100%
src/lilbee/api.py Lilbee.status   3 0 0   100%
src/lilbee/api.py Lilbee.rebuild   3 0 0   100%
src/lilbee/api.py Lilbee.remember   4 0 0   100%
src/lilbee/api.py Lilbee.recall   3 0 0   100%
src/lilbee/api.py Lilbee.memories   3 0 0   100%
src/lilbee/api.py Lilbee.forget   2 0 0   100%
src/lilbee/api.py Lilbee.close   5 0 0   100%
src/lilbee/api.py (no function)   30 0 7   100%
src/lilbee/app/__init__.py (no function)   0 0 0   100%
src/lilbee/app/agent_configs/__init__.py (no function)   0 0 0   100%
src/lilbee/app/agent_configs/claude.py claude_stdio_config   1 0 0   100%
src/lilbee/app/agent_configs/claude.py claude_http_config   1 0 0   100%
src/lilbee/app/agent_configs/claude.py (no function)   9 0 0   100%
src/lilbee/app/agent_configs/detect.py detect_agent_client   2 0 0   100%
src/lilbee/app/agent_configs/detect.py detect_agent_clients   1 0 0   100%
src/lilbee/app/agent_configs/detect.py (no function)   11 0 0   100%
src/lilbee/app/agent_configs/document.py client_serves_models   1 0 0   100%
src/lilbee/app/agent_configs/document.py parse_agent_client   5 0 0   100%
src/lilbee/app/agent_configs/document.py _claude_document   1 0 0   100%
src/lilbee/app/agent_configs/document.py _hermes_document   2 0 0   100%
src/lilbee/app/agent_configs/document.py _opencode_document   1 0 0   100%
src/lilbee/app/agent_configs/document.py build_agent_config   2 0 0   100%
src/lilbee/app/agent_configs/document.py (no function)   42 0 0   100%
src/lilbee/app/agent_configs/hermes.py hermes_config   15 0 0   100%
src/lilbee/app/agent_configs/hermes.py (no function)   8 0 0   100%
src/lilbee/app/agent_configs/litellm.py litellm_config   2 0 0   100%
src/lilbee/app/agent_configs/litellm.py (no function)   4 0 0   100%
src/lilbee/app/agent_configs/merge.py deep_merge   6 0 0   100%
src/lilbee/app/agent_configs/merge.py prune_lilbee   3 0 0   100%
src/lilbee/app/agent_configs/merge.py (no function)   5 0 0   100%
src/lilbee/app/agent_configs/opencode.py _model_entry   4 0 0   100%
src/lilbee/app/agent_configs/opencode.py opencode_config   6 0 0   100%
src/lilbee/app/agent_configs/opencode.py (no function)   10 0 0   100%
src/lilbee/app/agent_configs/window.py agent_chat_ctx_target   1 0 0   100%
src/lilbee/app/agent_configs/window.py (no function)   3 0 0   100%
src/lilbee/app/dataset.py require_format   6 0 0   100%
src/lilbee/app/dataset.py _build_validated   7 0 0   100%
src/lilbee/app/dataset.py export_to_path   7 0 0   100%
src/lilbee/app/dataset.py export_to_bytes   3 0 0   100%
src/lilbee/app/dataset.py _run_import   8 0 0   100%
src/lilbee/app/dataset.py import_from_path   6 0 0   100%
src/lilbee/app/dataset.py import_from_bytes   6 0 0   100%
src/lilbee/app/dataset.py (no function)   35 0 2   100%
src/lilbee/app/endpoints.py (no function)   5 0 0   100%
src/lilbee/app/ingest.py _resolve_label   10 0 0   100%
src/lilbee/app/ingest.py _overlaps_existing   10 0 0   100%
src/lilbee/app/ingest.py source_label_taken   5 0 0   100%
src/lilbee/app/ingest.py register_sources   11 0 0   100%
src/lilbee/app/ingest.py register_sources._mutate   23 0 0   100%
src/lilbee/app/ingest.py _unmark_sources_under   9 0 0   100%
src/lilbee/app/ingest.py _markers_covering   8 0 0   100%
src/lilbee/app/ingest.py _is_glob   1 0 0   100%
src/lilbee/app/ingest.py folder_members   2 0 0   100%
src/lilbee/app/ingest.py expand_remove_targets   18 0 0   100%
src/lilbee/app/ingest.py expand_remove_targets._add   3 0 0   100%
src/lilbee/app/ingest.py unregister_roots   7 0 0   100%
src/lilbee/app/ingest.py unregister_roots._mutate   9 0 0   100%
src/lilbee/app/ingest.py remove_documents_durably   22 0 0   100%
src/lilbee/app/ingest.py _forget_removed_from_wiki_index   7 0 0   100%
src/lilbee/app/ingest.py temporary_ocr_config   3 0 0   100%
src/lilbee/app/ingest.py (no function)   34 0 0   100%
src/lilbee/app/memory.py make_memory_row   2 0 0   100%
src/lilbee/app/memory.py memory_enabled   1 0 0   100%
src/lilbee/app/memory.py remember   3 0 0   100%
src/lilbee/app/memory.py recall   3 0 0   100%
src/lilbee/app/memory.py list_memories   2 0 0   100%
src/lilbee/app/memory.py forget   1 0 0   100%
src/lilbee/app/memory.py set_memory_shared   1 0 0   100%
src/lilbee/app/memory.py auto_extract_enabled   1 0 0   100%
src/lilbee/app/memory.py auto_extract   11 0 0   100%
src/lilbee/app/memory.py auto_extract._chat_text   1 0 0   100%
src/lilbee/app/memory.py (no function)   25 0 0   100%
src/lilbee/app/models.py _bytes_to_gb   1 0 0   100%
src/lilbee/app/models.py ModelEntry.from_native   3 0 0   100%
src/lilbee/app/models.py ModelEntry.from_backend   2 0 0   100%
src/lilbee/app/models.py CatalogEntryData.from_catalog_model   1 0 0   100%
src/lilbee/app/models.py ManifestData.from_manifest   2 0 0   100%
src/lilbee/app/models.py adopt_embedder   9 0 0   100%
src/lilbee/app/models.py installed_chat_model_refs   2 0 0   100%
src/lilbee/app/models.py _native_manifest_index   2 0 0   100%
src/lilbee/app/models.py _resolve_native_path   4 0 0   100%
src/lilbee/app/models.py _collect_native_entries   4 0 0   100%
src/lilbee/app/models.py _collect_backend_entries   6 0 0   100%
src/lilbee/app/models.py _collect_backend_entries._source   2 0 0   100%
src/lilbee/app/models.py list_models_data   12 0 0   100%
src/lilbee/app/models.py show_model_data   8 0 0   100%
src/lilbee/app/models.py _vision_projector_missing   8 0 0   100%
src/lilbee/app/models.py _ensure_vision_projector   4 0 0   100%
src/lilbee/app/models.py pull_model_data   8 0 0   100%
src/lilbee/app/models.py _legacy_disk_size   6 0 0   100%
src/lilbee/app/models.py remove_model_data   8 0 0   100%
src/lilbee/app/models.py (no function)   107 0 6   100%
src/lilbee/app/placement.py _active_spec   2 0 0   100%
src/lilbee/app/placement.py _view   9 0 0   100%
src/lilbee/app/placement.py get_placement   7 0 0   100%
src/lilbee/app/placement.py preview_placement   2 0 0   100%
src/lilbee/app/placement.py placement_refused_message   1 0 0   100%
src/lilbee/app/placement.py set_placement   12 0 0   100%
src/lilbee/app/placement.py warm_is_reporting   1 0 0   100%
src/lilbee/app/placement.py wait_chat_ready   23 0 0   100%
src/lilbee/app/placement.py request_engine_warm   4 0 0   100%
src/lilbee/app/placement.py chat_engine_ready   4 0 0   100%
src/lilbee/app/placement.py active_chat_warm_progress   8 0 0   100%
src/lilbee/app/placement.py chat_warm_error   7 0 0   100%
src/lilbee/app/placement.py (no function)   62 0 0   100%
src/lilbee/app/reset.py _clear_dir   15 0 0   100%
src/lilbee/app/reset.py perform_reset   4 0 0   100%
src/lilbee/app/reset.py (no function)   15 0 0   100%
src/lilbee/app/search.py resolve_vault_path   14 0 0   100%
src/lilbee/app/search.py clean_result   5 0 0   100%
src/lilbee/app/search.py (no function)   5 0 2   100%
src/lilbee/app/services.py _default_session_store   2 0 0   100%
src/lilbee/app/services.py Services.cancel_inference   1 0 0   100%
src/lilbee/app/services.py Services.reload_role   1 0 0   100%
src/lilbee/app/services.py Services.add_pool_listener   1 0 0   100%
src/lilbee/app/services.py _ServicesState.__init__   3 0 0   100%
src/lilbee/app/services.py build_services   29 0 0   100%
src/lilbee/app/services.py get_services   19 0 0   100%
src/lilbee/app/services.py services_scope   4 0 0   100%
src/lilbee/app/services.py mark_interactive_session   1 0 0   100%
src/lilbee/app/services.py set_services   1 0 0   100%
src/lilbee/app/services.py peek_services   1 0 0   100%
src/lilbee/app/services.py reset_services   6 0 0   100%
src/lilbee/app/services.py reset_store   16 0 0   100%
src/lilbee/app/services.py _EngineLifecycle.__init__   1 0 0   100%
src/lilbee/app/services.py _EngineLifecycle._hard_exit_signals   0 0 4   100%
src/lilbee/app/services.py _EngineLifecycle.install   8 0 0   100%
src/lilbee/app/services.py _EngineLifecycle.reset   1 0 0   100%
src/lilbee/app/services.py _EngineLifecycle._on_hard_exit   3 0 0   100%
src/lilbee/app/services.py wait_for_hard_exit_teardown   3 0 0   100%
src/lilbee/app/services.py reset_services_on_exit   4 0 0   100%
src/lilbee/app/services.py _teardown_for_signal   2 0 0   100%
src/lilbee/app/services.py install_engine_lifecycle_hooks   1 0 0   100%
src/lilbee/app/services.py (no function)   65 0 19   100%
src/lilbee/app/settings.py _annotation_name   9 0 0   100%
src/lilbee/app/settings.py _setting_default   6 0 0   100%
src/lilbee/app/settings.py _is_write_only   4 0 0   100%
src/lilbee/app/settings.py _public_writable_keys   2 0 0   100%
src/lilbee/app/settings.py _setting_info   6 0 0   100%
src/lilbee/app/settings.py _parse_group   7 0 0   100%
src/lilbee/app/settings.py list_settings   5 0 0   100%
src/lilbee/app/settings.py get_setting   5 0 0   100%
src/lilbee/app/settings.py _is_settable   1 0 0   100%
src/lilbee/app/settings.py _is_nullable   3 0 0   100%
src/lilbee/app/settings.py _as_int_setting   10 0 0   100%
src/lilbee/app/settings.py _validate   16 0 0   100%
src/lilbee/app/settings.py _coerce_value   4 0 0   100%
src/lilbee/app/settings.py _apply_with_rollback   18 0 0   100%
src/lilbee/app/settings.py _restore_snapshot   2 0 0   100%
src/lilbee/app/settings.py _reload_changed_roles   14 0 0   100%
src/lilbee/app/settings.py requires_services_reset   1 0 0   100%
src/lilbee/app/settings.py provider_reset_refused_message   1 0 0   100%
src/lilbee/app/settings.py _invalidate_caches   22 0 0   100%
src/lilbee/app/settings.py apply_settings_update   28 0 0   100%
src/lilbee/app/settings.py apply_ephemeral_model_swap   8 0 0   100%
src/lilbee/app/settings.py _pin_legacy_store_meta   2 0 0   100%
src/lilbee/app/settings.py _embedder_dim_from_gguf   15 0 0   100%
src/lilbee/app/settings.py reconcile_embedding_dim   3 0 0   100%
src/lilbee/app/settings.py _embed_reindex_required   8 0 0   100%
src/lilbee/app/settings.py reset_settings   14 0 0   100%
src/lilbee/app/settings.py (no function)   57 0 2   100%
src/lilbee/app/settings_map.py get_default   6 0 0   100%
src/lilbee/app/settings_map.py (no function)   40 0 0   100%
src/lilbee/app/setup_state.py chat_ready   1 0 0   100%
src/lilbee/app/setup_state.py embedding_ready   1 0 0   100%
src/lilbee/app/setup_state.py _role_ready   16 0 0   100%
src/lilbee/app/setup_state.py (no function)   8 0 0   100%
src/lilbee/app/status.py _project_root   4 0 0   100%
src/lilbee/app/status.py _truncate_leaf   8 0 0   100%
src/lilbee/app/status.py _compact_path   5 0 0   100%
src/lilbee/app/status.py lilbee_label   14 0 0   100%
src/lilbee/app/status.py gather_status   4 0 0   100%
src/lilbee/app/status.py entity_status   9 0 0   100%
src/lilbee/app/status.py (no function)   38 0 0   100%
src/lilbee/app/themes.py (no function)   2 0 0   100%
src/lilbee/app/version.py get_version   1 0 0   100%
src/lilbee/app/version.py (no function)   3 0 0   100%
src/lilbee/catalog/__init__.py (no function)   9 0 0   100%
src/lilbee/catalog/compat.py classify   3 0 0   100%
src/lilbee/catalog/compat.py resolve_arch_for_pull   10 0 0   100%
src/lilbee/catalog/compat.py _resolve_blob_url   11 0 0   100%
src/lilbee/catalog/compat.py UnsupportedArchError.__init__   3 0 0   100%
src/lilbee/catalog/compat.py (no function)   13 0 2   100%
src/lilbee/catalog/download.py _models_dir   2 0 0   100%
src/lilbee/catalog/download.py _repo_partial_bytes   5 0 0   100%
src/lilbee/catalog/download.py _free_bytes   8 0 0   100%
src/lilbee/catalog/download.py disk_shortfall   9 0 0   100%
src/lilbee/catalog/download.py _require_disk_space   3 0 0   100%
src/lilbee/catalog/download.py _raise_if_disk_exhausted   9 0 0   100%
src/lilbee/catalog/download.py abort_active_download   2 0 0   100%
src/lilbee/catalog/download.py _apply_fast_download_mode   4 0 0   100%
src/lilbee/catalog/download.py _hf_download_or_translate   20 0 0   100%
src/lilbee/catalog/download.py split_shard_filenames   6 0 0   100%
src/lilbee/catalog/download.py download_model   31 0 0   100%
src/lilbee/catalog/download.py _finalize_download   5 0 0   100%
src/lilbee/catalog/download.py download_mmproj   13 0 0   100%
src/lilbee/catalog/download.py _resolve_mmproj_filename   17 0 0   100%
src/lilbee/catalog/download.py resolve_filename   16 0 0   100%
src/lilbee/catalog/download.py _cached_file_is_complete   8 0 0   100%
src/lilbee/catalog/download.py _hf_file_size   2 0 0   100%
src/lilbee/catalog/download.py fetch_expected_file_size   4 0 0   100%
src/lilbee/catalog/download.py (no function)   52 0 0   100%
src/lilbee/catalog/download_progress.py make_download_callback   4 0 0   100%
src/lilbee/catalog/download_progress.py make_download_callback._on_progress   14 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar.get_lock   1 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar.__init__   5 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar._cumulative   1 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar.update   2 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar.update_transfer   2 0 0   100%
src/lilbee/catalog/download_progress.py _CallbackProgressBar.set_transfer_postfix_str   0 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.__init__   4 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.shard_done   1 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.make_tqdm_class   6 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.make_tqdm_class._Cls._report   5 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.make_tqdm_class._Cls.update   3 0 0   100%
src/lilbee/catalog/download_progress.py _ProgressTracker.make_tqdm_class._Cls.update_transfer   3 0 0   100%
src/lilbee/catalog/download_progress.py (no function)   25 0 0   100%
src/lilbee/catalog/families.py _extract_family_name   3 0 0   100%
src/lilbee/catalog/families.py _catalog_to_variant   2 0 0   100%
src/lilbee/catalog/families.py _family_slug   1 0 0   100%
src/lilbee/catalog/families.py _build_families   14 0 0   100%
src/lilbee/catalog/families.py get_families   1 0 0   100%
src/lilbee/catalog/families.py (no function)   11 0 0   100%
src/lilbee/catalog/formatting.py _prettify_word   5 0 0   100%
src/lilbee/catalog/formatting.py clean_display_name   10 0 0   100%
src/lilbee/catalog/formatting.py download_task_name   5 0 0   100%
src/lilbee/catalog/formatting.py display_label_for_ref   7 0 0   100%
src/lilbee/catalog/formatting.py agent_model_id   1 0 0   100%
src/lilbee/catalog/formatting.py extract_quant   2 0 0   100%
src/lilbee/catalog/formatting.py quant_tier   3 0 0   100%
src/lilbee/catalog/formatting.py derive_param_count   2 0 0   100%
src/lilbee/catalog/formatting.py enrich_catalog   5 0 0   100%
src/lilbee/catalog/formatting.py (no function)   37 0 0   100%
src/lilbee/catalog/header_probe.py probe_architecture   9 0 0   100%
src/lilbee/catalog/header_probe.py _HeaderCursor.__init__   2 0 0   100%
src/lilbee/catalog/header_probe.py _HeaderCursor.take   6 0 0   100%
src/lilbee/catalog/header_probe.py _HeaderCursor.u32   1 0 0   100%
src/lilbee/catalog/header_probe.py _HeaderCursor.u64   1 0 0   100%
src/lilbee/catalog/header_probe.py _HeaderCursor.gguf_string   1 0 0   100%
src/lilbee/catalog/header_probe.py _skip_value   19 0 0   100%
src/lilbee/catalog/header_probe.py _parse_arch   20 0 0   100%
src/lilbee/catalog/header_probe.py gguf_scalar_str   12 0 0   100%
src/lilbee/catalog/header_probe.py (no function)   26 0 0   100%
src/lilbee/catalog/hf_client.py _HfSubstringFilter.__init__   2 0 0   100%
src/lilbee/catalog/hf_client.py _HfSubstringFilter.filter   1 0 0   100%
src/lilbee/catalog/hf_client.py install_hf_log_filter   3 0 0   100%
src/lilbee/catalog/hf_client.py hf_token   11 0 0   100%
src/lilbee/catalog/hf_client.py hf_headers   4 0 0   100%
src/lilbee/catalog/hf_client.py _hf_search_value   2 0 0   100%
src/lilbee/catalog/hf_client.py repo_has_mmproj   8 0 0   100%
src/lilbee/catalog/hf_client.py _resolve_sibling_gguf   4 0 0   100%
src/lilbee/catalog/hf_client.py HfClient.__init__   4 0 0   100%
src/lilbee/catalog/hf_client.py HfClient.get_cached_arch   1 0 0   100%
src/lilbee/catalog/hf_client.py HfClient.cache_arch   1 0 0   100%
src/lilbee/catalog/hf_client.py HfClient.fetch_models   43 0 0   100%
src/lilbee/catalog/hf_client.py HfClient._log_fetch_failure   5 0 0   100%
src/lilbee/catalog/hf_client.py (no function)   42 0 0   100%
src/lilbee/catalog/models.py _ggml_floor   9 0 0   100%
src/lilbee/catalog/models.py _quant_bytes_per_param   5 0 0   100%
src/lilbee/catalog/models.py estimate_min_ram_gb   1 0 0   100%
src/lilbee/catalog/models.py estimate_size_gb   3 0 0   100%
src/lilbee/catalog/models.py CatalogModel.ref   1 0 0   100%
src/lilbee/catalog/models.py CatalogModel.display_name   2 0 0   100%
src/lilbee/catalog/models.py (no function)   67 0 0   100%
src/lilbee/catalog/picks.py _serves_role   6 0 0   100%
src/lilbee/catalog/picks.py _fetch_trending   11 0 0   100%
src/lilbee/catalog/picks.py _chat_picks   11 0 0   100%
src/lilbee/catalog/picks.py _resolve_picks   4 0 0   100%
src/lilbee/catalog/picks.py _is_complete   2 0 0   100%
src/lilbee/catalog/picks.py ModelPicks.__init__   4 0 0   100%
src/lilbee/catalog/picks.py ModelPicks.all   19 0 0   100%
src/lilbee/catalog/picks.py ModelPicks.seed   4 0 0   100%
src/lilbee/catalog/picks.py ModelPicks.reset   4 0 0   100%
src/lilbee/catalog/picks.py get_picks   1 0 0   100%
src/lilbee/catalog/picks.py picks_for   1 0 0   100%
src/lilbee/catalog/picks.py find_pick   4 0 0   100%
src/lilbee/catalog/picks.py seed_picks   1 0 0   100%
src/lilbee/catalog/picks.py reset_picks   1 0 0   100%
src/lilbee/catalog/picks.py (no function)   34 0 0   100%
src/lilbee/catalog/query.py _search_blob   1 0 0   100%
src/lilbee/catalog/query.py size_bucket   7 0 0   100%
src/lilbee/catalog/query.py get_catalog   28 0 0   100%
src/lilbee/catalog/query.py task_to_pipeline   2 0 0   100%
src/lilbee/catalog/query.py pipeline_to_task   1 0 0   100%
src/lilbee/catalog/query.py _get_installed_models   5 0 0   100%
src/lilbee/catalog/query.py _sort_models   2 0 0   100%
src/lilbee/catalog/query.py is_rerank_ref   3 0 0   100%
src/lilbee/catalog/query.py _is_hf_repo_id   7 0 0   100%
src/lilbee/catalog/query.py build_adhoc_entry   1 0 0   100%
src/lilbee/catalog/query.py resolve_pull_target   11 0 0   100%
src/lilbee/catalog/query.py reclassify_by_name   8 0 0   100%
src/lilbee/catalog/query.py (no function)   29 0 0   100%
src/lilbee/catalog/refs.py pick_best_gguf   5 0 0   100%
src/lilbee/catalog/refs.py is_bare_hf_repo   1 0 0   100%
src/lilbee/catalog/refs.py hf_repo_from_ref   3 0 0   100%
src/lilbee/catalog/refs.py gguf_filename_from_ref   3 0 0   100%
src/lilbee/catalog/refs.py format_native_gguf_ref   1 0 0   100%
src/lilbee/catalog/refs.py (no function)   10 0 0   100%
src/lilbee/catalog/types.py ModelSource.parse   7 0 0   100%
src/lilbee/catalog/types.py (no function)   33 0 0   100%
src/lilbee/cli/__init__.py (no function)   11 0 0   100%
src/lilbee/cli/app.py _apply_data_root   8 0 0   100%
src/lilbee/cli/app.py _resolve_data_root   10 0 0   100%
src/lilbee/cli/app.py _OverrideState.__init__   1 0 0   100%
src/lilbee/cli/app.py chat_model_overridden   1 0 0   100%
src/lilbee/cli/app.py apply_overrides   9 0 0   100%
src/lilbee/cli/app.py _default   28 0 0   100%
src/lilbee/cli/app.py (no function)   34 0 0   100%
src/lilbee/cli/commands/__init__.py (no function)   34 0 0   100%
src/lilbee/cli/commands/_shared.py (no function)   2 0 0   100%
src/lilbee/cli/commands/agent_config.py _session_or_exit   5 0 0   100%
src/lilbee/cli/commands/agent_config.py _served_chat_models   1 0 0   100%
src/lilbee/cli/commands/agent_config.py _warn_on_small_agent_window   3 0 0   100%
src/lilbee/cli/commands/agent_config.py _build   5 0 0   100%
src/lilbee/cli/commands/agent_config.py _emit   8 0 0   100%
src/lilbee/cli/commands/agent_config.py _claude_cmd   2 0 0   100%
src/lilbee/cli/commands/agent_config.py _opencode_cmd   2 0 0   100%
src/lilbee/cli/commands/agent_config.py _hermes_cmd   2 0 0   100%
src/lilbee/cli/commands/agent_config.py _litellm_cmd   4 0 0   100%
src/lilbee/cli/commands/agent_config.py (no function)   29 0 0   100%
src/lilbee/cli/commands/dataset.py _fail   4 0 0   100%
src/lilbee/cli/commands/dataset.py export_cmd   13 0 0   100%
src/lilbee/cli/commands/dataset.py import_cmd   10 0 0   100%
src/lilbee/cli/commands/dataset.py (no function)   17 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _apply_ocr_overrides   4 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _partition_inputs   7 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _crawl_urls_blocking   26 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _crawl_urls_blocking._make_callback   2 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _crawl_urls_blocking._make_callback.on_progress   7 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _run_crawl_with_signal_cancel   16 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _run_crawl_with_signal_cancel._on_sigint   1 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _cancellable_progress   3 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _cancellable_progress._callback   3 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _run_sync_with_signal_cancel   19 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _run_sync_with_signal_cancel._on_sigint   1 0 0   100%
src/lilbee/cli/commands/ingest_sync.py sync_cmd   18 0 0   100%
src/lilbee/cli/commands/ingest_sync.py rebuild   21 0 0   100%
src/lilbee/cli/commands/ingest_sync.py index   11 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _validate_file_paths   8 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _crawl_urls_step   10 0 0   100%
src/lilbee/cli/commands/ingest_sync.py _add_json_mode   7 0 0   100%
src/lilbee/cli/commands/ingest_sync.py add   24 0 0   100%
src/lilbee/cli/commands/ingest_sync.py chunks   21 0 0   100%
src/lilbee/cli/commands/ingest_sync.py remove   22 0 0   100%
src/lilbee/cli/commands/ingest_sync.py (no function)   44 0 3   100%
src/lilbee/cli/commands/memory.py _disabled   3 0 0   100%
src/lilbee/cli/commands/memory.py memory_add   10 0 0   100%
src/lilbee/cli/commands/memory.py memory_list_cmd   16 0 0   100%
src/lilbee/cli/commands/memory.py memory_recall_cmd   13 0 0   100%
src/lilbee/cli/commands/memory.py memory_remove   13 0 0   100%
src/lilbee/cli/commands/memory.py (no function)   20 0 0   100%
src/lilbee/cli/commands/meta.py version   5 0 0   100%
src/lilbee/cli/commands/meta.py status   6 0 0   100%
src/lilbee/cli/commands/meta.py reset   18 0 0   100%
src/lilbee/cli/commands/meta.py init   16 0 0   100%
src/lilbee/cli/commands/meta.py (no function)   17 0 0   100%
src/lilbee/cli/commands/search_chat.py _exit_embedding_mismatch   7 0 0   100%
src/lilbee/cli/commands/search_chat.py _swap_stale_models_to_installed   15 0 0   100%
src/lilbee/cli/commands/search_chat.py _print_answer_stream   40 0 0   100%
src/lilbee/cli/commands/search_chat.py _reject_if_empty   8 0 0   100%
src/lilbee/cli/commands/search_chat.py _display_score   4 0 0   100%
src/lilbee/cli/commands/search_chat.py search   35 0 0   100%
src/lilbee/cli/commands/search_chat.py ask   34 0 0   100%
src/lilbee/cli/commands/search_chat.py ask._on_first_token   3 0 0   100%
src/lilbee/cli/commands/search_chat.py use_embedder   15 0 0   100%
src/lilbee/cli/commands/search_chat.py chat   9 0 0   100%
src/lilbee/cli/commands/search_chat.py topics   24 0 0   100%
src/lilbee/cli/commands/search_chat.py _topics_for_query   13 0 0   100%
src/lilbee/cli/commands/search_chat.py _topics_overview   18 0 0   100%
src/lilbee/cli/commands/search_chat.py (no function)   37 0 0   100%
src/lilbee/cli/commands/serve_logging.py setup_server_log_file   17 0 0   100%
src/lilbee/cli/commands/serve_logging.py _FaultLog.__init__   1 0 0   100%
src/lilbee/cli/commands/serve_logging.py _FaultLog.enable   7 0 0   100%
src/lilbee/cli/commands/serve_logging.py enable_fault_log   1 0 0   100%
src/lilbee/cli/commands/serve_logging.py _ExceptHook.__init__   1 0 0   100%
src/lilbee/cli/commands/serve_logging.py _ExceptHook.install   6 0 0   100%
src/lilbee/cli/commands/serve_logging.py _ExceptHook.install._hook   2 0 0   100%
src/lilbee/cli/commands/serve_logging.py install_excepthook   1 0 0   100%
src/lilbee/cli/commands/serve_logging.py setup_server_logging   3 0 0   100%
src/lilbee/cli/commands/serve_logging.py (no function)   28 0 0   100%
src/lilbee/cli/commands/servers.py port_file   1 0 0   100%
src/lilbee/cli/commands/servers.py _log_loop_exception   4 0 0   100%
src/lilbee/cli/commands/servers.py _run_server   32 0 0   100%
src/lilbee/cli/commands/servers.py _run_server._cleanup_port_file   1 0 0   100%
src/lilbee/cli/commands/servers.py _run_server._on_parent_death   1 0 0   100%
src/lilbee/cli/commands/servers.py _refuse_to_start   3 0 0   100%
src/lilbee/cli/commands/servers.py serve   35 0 0   100%
src/lilbee/cli/commands/servers.py mcp_cmd   3 0 0   100%
src/lilbee/cli/commands/servers.py (no function)   23 0 2   100%
src/lilbee/cli/commands/setup.py _download_self_check_model   20 0 0   100%
src/lilbee/cli/commands/setup.py _installed_model_path   15 0 0   100%
src/lilbee/cli/commands/setup.py _self_check_emit_failure   3 0 0   100%
src/lilbee/cli/commands/setup.py _resolved_provider_kwargs   1 0 0   100%
src/lilbee/cli/commands/setup.py _self_check_server   15 0 0   100%
src/lilbee/cli/commands/setup.py _self_check_chat   6 0 0   100%
src/lilbee/cli/commands/setup.py _self_check_embed   6 0 0   100%
src/lilbee/cli/commands/setup.py _self_check_leg   13 0 0   100%
src/lilbee/cli/commands/setup.py _teardown_on_sigterm   6 0 3   100%
src/lilbee/cli/commands/setup.py _teardown_on_sigterm._raise   1 0 0   100%
src/lilbee/cli/commands/setup.py self_check_cmd   27 0 0   100%
src/lilbee/cli/commands/setup.py self_check_extras_cmd   20 0 0   100%
src/lilbee/cli/commands/setup.py token   20 0 0   100%
src/lilbee/cli/commands/setup.py login   16 0 0   100%
src/lilbee/cli/commands/setup.py setup_crawler_cmd   17 0 0   100%
src/lilbee/cli/commands/setup.py setup_crawler_cmd._on_progress   7 0 0   100%
src/lilbee/cli/commands/setup.py (no function)   48 0 3   100%
src/lilbee/cli/commands/wiki.py _count_md_files   3 0 0   100%
src/lilbee/cli/commands/wiki.py _print_build_stats   1 0 0   100%
src/lilbee/cli/commands/wiki.py _wiki_progress_line   5 0 0   100%
src/lilbee/cli/commands/wiki.py _wiki_progress   6 0 0   100%
src/lilbee/cli/commands/wiki.py _wiki_progress.on_progress   3 0 0   100%
src/lilbee/cli/commands/wiki.py _fail_wiki_disabled   4 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_lint   21 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_list   18 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_read   13 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_citations   12 0 0   100%
src/lilbee/cli/commands/wiki.py _render_citations   15 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_status   24 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_synthesize   16 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_prune   21 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_index   8 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_generate   23 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_wipe   17 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_build   8 0 0   100%
src/lilbee/cli/commands/wiki.py _run_wiki_build   13 0 0   100%
src/lilbee/cli/commands/wiki.py _wiki_build_dry_run_output   20 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_update   4 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_drafts_list   23 0 0   100%
src/lilbee/cli/commands/wiki.py _draft_slug_error   5 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_drafts_diff   16 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_drafts_accept   18 0 0   100%
src/lilbee/cli/commands/wiki.py wiki_drafts_reject   18 0 0   100%
src/lilbee/cli/commands/wiki.py (no function)   64 0 6   100%
src/lilbee/cli/engine.py stop   9 0 0   100%
src/lilbee/cli/engine.py (no function)   11 0 0   100%
src/lilbee/cli/helpers.py json_output   1 0 0   100%
src/lilbee/cli/helpers.py announce_cold_start   9 0 0   100%
src/lilbee/cli/helpers.py announce_ready   8 0 0   100%
src/lilbee/cli/helpers.py _chat_warm_error   9 0 0   100%
src/lilbee/cli/helpers.py render_status_result   28 0 0   100%
src/lilbee/cli/helpers.py render_status   3 0 0   100%
src/lilbee/cli/helpers.py register_paths   5 0 0   100%
src/lilbee/cli/helpers.py describe_registration   6 0 0   100%
src/lilbee/cli/helpers.py add_paths   10 0 0   100%
src/lilbee/cli/helpers.py _run_foreground_sync   2 0 0   100%
src/lilbee/cli/helpers.py sync_result_to_json   4 0 0   100%
src/lilbee/cli/helpers.py auto_sync   14 0 0   100%
src/lilbee/cli/helpers.py sigint_cancel   10 0 0   100%
src/lilbee/cli/helpers.py sigint_cancel._on_sigint   2 0 0   100%
src/lilbee/cli/helpers.py (no function)   31 0 2   100%
src/lilbee/cli/launchers/__init__.py (no function)   9 0 0   100%
src/lilbee/cli/launchers/claude.py _mcp_config_path   1 0 0   100%
src/lilbee/cli/launchers/claude.py _claude_skill_dest   1 0 0   100%
src/lilbee/cli/launchers/claude.py _find_claude_binary   7 0 0   100%
src/lilbee/cli/launchers/claude.py _print_setup_plan   4 0 0   100%
src/lilbee/cli/launchers/claude.py ClaudeLauncher.__init__   2 0 0   100%
src/lilbee/cli/launchers/claude.py ClaudeLauncher.find_binary   1 0 0   100%
src/lilbee/cli/launchers/claude.py ClaudeLauncher.prepare   16 0 0   100%
src/lilbee/cli/launchers/claude.py claude_cmd   2 0 0   100%
src/lilbee/cli/launchers/claude.py (no function)   28 0 0   100%
src/lilbee/cli/launchers/config_file.py load_config_dict   9 0 0   100%
src/lilbee/cli/launchers/config_file.py atomic_write_text   1 0 0   100%
src/lilbee/cli/launchers/config_file.py (no function)   8 0 0   100%
src/lilbee/cli/launchers/hermes.py _hermes_home   1 0 0   100%
src/lilbee/cli/launchers/hermes.py _hermes_config_path   1 0 0   100%
src/lilbee/cli/launchers/hermes.py _hermes_env_path   1 0 0   100%
src/lilbee/cli/launchers/hermes.py _hermes_skill_dest   1 0 0   100%
src/lilbee/cli/launchers/hermes.py _upsert_env_token   4 0 0   100%
src/lilbee/cli/launchers/hermes.py warn_hermes_ungrounded   1 0 0   100%
src/lilbee/cli/launchers/hermes.py warn_if_below_hermes_minimum   3 0 0   100%
src/lilbee/cli/launchers/hermes.py HermesLauncher.__init__   2 0 0   100%
src/lilbee/cli/launchers/hermes.py HermesLauncher.find_binary   2 0 0   100%
src/lilbee/cli/launchers/hermes.py HermesLauncher.prepare   17 0 0   100%
src/lilbee/cli/launchers/hermes.py hermes_cmd   2 0 0   100%
src/lilbee/cli/launchers/hermes.py (no function)   35 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py hermes_interpreter   13 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py has_http_mcp   4 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py _mcp_extra_requirements   6 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py _install_failure_reason   5 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py ensure_hermes_http_mcp   24 0 0   100%
src/lilbee/cli/launchers/hermes_mcp.py (no function)   15 0 0   100%
src/lilbee/cli/launchers/launcher.py Launcher.find_binary   0 0 2   100%
src/lilbee/cli/launchers/launcher.py Launcher.prepare   0 0 7   100%
src/lilbee/cli/launchers/launcher.py _warn_on_model_pin_gaps   4 0 0   100%
src/lilbee/cli/launchers/launcher.py _warn_on_reused_small_window   4 0 0   100%
src/lilbee/cli/launchers/launcher.py run_launcher   22 0 0   100%
src/lilbee/cli/launchers/launcher.py (no function)   14 0 14   100%
src/lilbee/cli/launchers/opencode.py _opencode_config_dir   5 0 0   100%
src/lilbee/cli/launchers/opencode.py _opencode_config_path   1 0 0   100%
src/lilbee/cli/launchers/opencode.py _opencode_skill_dest   1 0 0   100%
src/lilbee/cli/launchers/opencode.py _print_setup_plan   4 0 0   100%
src/lilbee/cli/launchers/opencode.py _confirm_setup   1 0 0   100%
src/lilbee/cli/launchers/opencode.py OpencodeLauncher.__init__   2 0 0   100%
src/lilbee/cli/launchers/opencode.py OpencodeLauncher.find_binary   1 0 0   100%
src/lilbee/cli/launchers/opencode.py OpencodeLauncher.prepare   11 0 0   100%
src/lilbee/cli/launchers/opencode.py opencode_cmd   2 0 0   100%
src/lilbee/cli/launchers/opencode.py (no function)   31 0 0   100%
src/lilbee/cli/launchers/server.py running_server_session   13 0 0   100%
src/lilbee/cli/launchers/server.py free_port   3 0 0   100%
src/lilbee/cli/launchers/server.py _session_token   6 0 0   100%
src/lilbee/cli/launchers/server.py _probe_health   14 0 0   100%
src/lilbee/cli/launchers/server.py health_ok   1 0 0   100%
src/lilbee/cli/launchers/server.py wait_for_health   6 0 0   100%
src/lilbee/cli/launchers/server.py chat_ready   2 0 0   100%
src/lilbee/cli/launchers/server.py served_chat_ctx   5 0 0   100%
src/lilbee/cli/launchers/server.py planned_chat_ctx   16 0 0   100%
src/lilbee/cli/launchers/server.py client_chat_ctx   6 0 0   100%
src/lilbee/cli/launchers/server.py chat_warm_budget_s   6 0 0   100%
src/lilbee/cli/launchers/server.py wait_for_chat_warm   8 0 0   100%
src/lilbee/cli/launchers/server.py _poll_chat_ready   7 0 0   100%
src/lilbee/cli/launchers/server.py spawn_server   21 0 0   100%
src/lilbee/cli/launchers/server.py stop_spawned_server   8 0 0   100%
src/lilbee/cli/launchers/server.py ensure_server_running   11 0 0   100%
src/lilbee/cli/launchers/server.py _spawn_and_wait   7 0 0   100%
src/lilbee/cli/launchers/server.py _session_for_spawned   6 0 0   100%
src/lilbee/cli/launchers/server.py (no function)   52 0 0   100%
src/lilbee/cli/launchers/setup_gate.py _marker_path   1 0 0   100%
src/lilbee/cli/launchers/setup_gate.py _record_setup   12 0 0   100%
src/lilbee/cli/launchers/setup_gate.py _is_interactive   1 0 0   100%
src/lilbee/cli/launchers/setup_gate.py confirm_first_run_setup   11 0 0   100%
src/lilbee/cli/launchers/setup_gate.py (no function)   13 0 0   100%
src/lilbee/cli/launchers/skill_install.py install_bundled_skill   20 0 0   100%
src/lilbee/cli/launchers/skill_install.py (no function)   8 0 0   100%
src/lilbee/cli/launchers/warm_render.py _model_label   1 0 0   100%
src/lilbee/cli/launchers/warm_render.py _iter_warm_events   15 0 0   100%
src/lilbee/cli/launchers/warm_render.py _apply   10 0 0   100%
src/lilbee/cli/launchers/warm_render.py render_warm   17 0 0   100%
src/lilbee/cli/launchers/warm_render.py (no function)   16 0 0   100%
src/lilbee/cli/log_routing.py _DiagnosticsRouter.__init__   1 0 0   100%
src/lilbee/cli/log_routing.py set_explicit_verbosity   1 0 0   100%
src/lilbee/cli/log_routing.py attach_rotating_file_handler   8 0 0   100%
src/lilbee/cli/log_routing.py route_diagnostics_to_log_file   15 0 0   100%
src/lilbee/cli/log_routing.py (no function)   17 0 0   100%
src/lilbee/cli/model.py _render_list   9 0 0   100%
src/lilbee/cli/model.py _render_show   11 0 0   100%
src/lilbee/cli/model.py _parse_source_or_bad_param   8 0 0   100%
src/lilbee/cli/model.py _parse_task_or_bad_param   12 0 0   100%
src/lilbee/cli/model.py _apply_catalog_overrides   2 0 0   100%
src/lilbee/cli/model.py list_cmd   10 0 0   100%
src/lilbee/cli/model.py show_cmd   13 0 0   100%
src/lilbee/cli/model.py _run_pull   14 0 0   100%
src/lilbee/cli/model.py _pull_json_stream   3 0 0   100%
src/lilbee/cli/model.py _pull_json_stream.on_update   2 0 0   100%
src/lilbee/cli/model.py _pull_interactive_progress   8 0 0   100%
src/lilbee/cli/model.py _pull_interactive_progress.on_update   1 0 0   100%
src/lilbee/cli/model.py pull_cmd   6 0 0   100%
src/lilbee/cli/model.py _confirm_remove_or_exit   5 0 0   100%
src/lilbee/cli/model.py rm_cmd   20 0 0   100%
src/lilbee/cli/model.py _is_interactive_terminal   1 0 0   100%
src/lilbee/cli/model.py browse_cmd   10 0 0   100%
src/lilbee/cli/model.py (no function)   37 0 4   100%
src/lilbee/cli/placement.py _read_spec   8 0 0   100%
src/lilbee/cli/placement.py _guard   11 0 0   100%
src/lilbee/cli/placement.py _render_view   27 0 0   100%
src/lilbee/cli/placement.py show   2 0 0   100%
src/lilbee/cli/placement.py preview   2 0 0   100%
src/lilbee/cli/placement.py set_cmd   2 0 0   100%
src/lilbee/cli/placement.py clear   2 0 0   100%
src/lilbee/cli/placement.py (no function)   27 0 0   100%
src/lilbee/cli/sessions.py _require_sessions   6 0 0   100%
src/lilbee/cli/sessions.py _store   2 0 0   100%
src/lilbee/cli/sessions.py _fail   4 0 0   100%
src/lilbee/cli/sessions.py _resolve_id   6 0 0   100%
src/lilbee/cli/sessions.py list_cmd   14 0 0   100%
src/lilbee/cli/sessions.py show_cmd   8 0 0   100%
src/lilbee/cli/sessions.py rename_cmd   7 0 0   100%
src/lilbee/cli/sessions.py delete_cmd   9 0 0   100%
src/lilbee/cli/sessions.py (no function)   26 0 0   100%
src/lilbee/cli/sync.py _format_sync_summary   3 0 0   100%
src/lilbee/cli/sync.py _print_file_start   4 0 0   100%
src/lilbee/cli/sync.py _print_done   5 0 0   100%
src/lilbee/cli/sync.py _sync_progress_printer   3 0 0   100%
src/lilbee/cli/sync.py _sync_progress_printer._callback   3 0 0   100%
src/lilbee/cli/sync.py _get_executor   3 0 0   100%
src/lilbee/cli/sync.py shutdown_executor   4 0 0   100%
src/lilbee/cli/sync.py _on_sync_done   10 0 0   100%
src/lilbee/cli/sync.py SyncStatus.__init__   3 0 0   100%
src/lilbee/cli/sync.py SyncStatus.clear   1 0 0   100%
src/lilbee/cli/sync.py SyncStatus.adjust_pending   2 0 0   100%
src/lilbee/cli/sync.py _chat_sync_callback   3 0 0   100%
src/lilbee/cli/sync.py _chat_sync_callback._callback   16 0 0   100%
src/lilbee/cli/sync.py run_sync_background   8 0 0   100%
src/lilbee/cli/sync.py run_sync_background._run   3 0 0   100%
src/lilbee/cli/sync.py (no function)   25 0 2   100%
src/lilbee/cli/theme.py (no function)   12 0 0   100%
src/lilbee/cli/tui/__init__.py _silence_stderr_log_handlers   8 0 0   100%
src/lilbee/cli/tui/__init__.py _redirect_native_stderr_to   13 0 0   100%
src/lilbee/cli/tui/__init__.py _restore_native_stderr   6 0 0   100%
src/lilbee/cli/tui/__init__.py run_tui   13 0 0   100%
src/lilbee/cli/tui/__init__.py (no function)   18 0 0   100%
src/lilbee/cli/tui/app.py _view_screen_name   1 0 0   100%
src/lilbee/cli/tui/app.py _make_catalog   2 0 0   100%
src/lilbee/cli/tui/app.py _make_status   2 0 0   100%
src/lilbee/cli/tui/app.py _make_settings   2 0 0   100%
src/lilbee/cli/tui/app.py _make_tasks   2 0 0   100%
src/lilbee/cli/tui/app.py _make_wiki   2 0 0   100%
src/lilbee/cli/tui/app.py _make_fleet   2 0 0   100%
src/lilbee/cli/tui/app.py _make_sessions   2 0 0   100%
src/lilbee/cli/tui/app.py _import_chat_stack   1 0 0   100%
src/lilbee/cli/tui/app.py get_views   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.__init__   19 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.compose   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.get_css_variables   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.get_line_filters   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.on_mount   12 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._load_chat_screen   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._chat_import_worker   7 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._exit_on_chat_import_failure   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._install_chat_screen   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.reveal_landing   6 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.settle_landing   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.refresh_readiness   5 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.adopt_services   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._apply_readiness   2 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._recheck_models_on_model_change   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._wire_worker_pool_notifications   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._wire_worker_pool_notifications._on_spawning   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._wire_worker_pool_notifications._on_spawned   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.canonicalize_persisted_models   23 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._refresh_title   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._fan_out_provider_availability   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_cycle_theme   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_toggle_lilbee_path   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.set_theme   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._apply_and_persist_theme   2 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._reject_if_downloading   7 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.set_active_model   8 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.set_setting   10 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._offer_wiki_wipe   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._sync_theme_index_to_current   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_quit   8 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._view_is_refused   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.switch_view   20 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.switch_view._release   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_push_help   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_command_palette   13 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_dismiss_help_if_open   5 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.check_action   11 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.go_back   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_open_tasks   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_open_catalog   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_open_chat   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._shows_placement_full_screen   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._shows_sessions_full_screen   1 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._toggle_fleet_is_noop   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._toggle_sessions_is_noop   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_toggle_fleet   8 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._notify_sessions_disabled   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_toggle_sessions   11 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.resume_session   5 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.new_chat   5 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.current_session_id   2 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_global_slash_to_chat   4 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp._prefill_chat_command   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.chat_screen   5 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_run_sync   9 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_run_sync._start   8 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_nav_prev   3 0 0   100%
src/lilbee/cli/tui/app.py LilbeeApp.action_nav_next   3 0 0   100%
src/lilbee/cli/tui/app.py apply_active_model   1 0 0   100%
src/lilbee/cli/tui/app.py apply_setting   1 0 0   100%
src/lilbee/cli/tui/app.py (no function)   118 0 4   100%
src/lilbee/cli/tui/browse_bindings.py browse_back_bindings   1 0 0   100%
src/lilbee/cli/tui/browse_bindings.py (no function)   4 0 0   100%
src/lilbee/cli/tui/color_compat.py needs_eight_bit   1 0 0   100%
src/lilbee/cli/tui/color_compat.py draws_block_glyphs   1 0 0   100%
src/lilbee/cli/tui/color_compat.py draws_block_bars   2 0 0   100%
src/lilbee/cli/tui/color_compat.py resolve_term_program   14 0 0   100%
src/lilbee/cli/tui/color_compat.py nearest_eight_bit   1 0 0   100%
src/lilbee/cli/tui/color_compat.py _reduce   4 0 0   100%
src/lilbee/cli/tui/color_compat.py EightBitPalette.apply   13 0 0   100%
src/lilbee/cli/tui/color_compat.py (no function)   27 0 3   100%
src/lilbee/cli/tui/command_registry.py build_dispatch_dict   6 0 0   100%
src/lilbee/cli/tui/command_registry.py get_command   4 0 0   100%
src/lilbee/cli/tui/command_registry.py runs_while_streaming   4 0 0   100%
src/lilbee/cli/tui/command_registry.py completion_names   5 0 0   100%
src/lilbee/cli/tui/command_registry.py (no function)   15 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._app   1 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider.search   5 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider.discover   2 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._get_commands   5 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._slash_commands   1 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._run_slash_command   9 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._model_commands   8 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._set_model   6 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_delete_document   1 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_sync   1 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_retry_skipped   5 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_version   2 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_open_wiki   1 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_wikify   2 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_wipe_wiki   2 0 0   100%
src/lilbee/cli/tui/commands.py LilbeeCommandProvider._action_reset   1 0 0   100%
src/lilbee/cli/tui/commands.py (no function)   27 0 2   100%
src/lilbee/cli/tui/log_routing.py setup_tui_log_file   5 0 0   100%
src/lilbee/cli/tui/log_routing.py (no function)   10 0 0   100%
src/lilbee/cli/tui/messages.py app_title   1 0 0   100%
src/lilbee/cli/tui/messages.py sync_skipped_message   4 0 0   100%
src/lilbee/cli/tui/messages.py retry_skipped_message   1 0 0   100%
src/lilbee/cli/tui/messages.py progress_bar_glyphs   4 0 0   100%
src/lilbee/cli/tui/messages.py wiki_empty_state_leaf   3 0 0   100%
src/lilbee/cli/tui/messages.py wiki_empty_state_detail   3 0 0   100%
src/lilbee/cli/tui/messages.py _spacy_available   1 0 0   100%
src/lilbee/cli/tui/messages.py intel_util_hint_text   3 0 0   100%
src/lilbee/cli/tui/messages.py get_nav_views   1 0 0   100%
src/lilbee/cli/tui/messages.py (no function)   444 0 0   100%
src/lilbee/cli/tui/pill.py pill   3 0 0   100%
src/lilbee/cli/tui/pill.py (no function)   3 0 0   100%
src/lilbee/cli/tui/screens/__init__.py (no function)   0 0 0   100%
src/lilbee/cli/tui/screens/catalog.py _model_field_for_task   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.__init__   41 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._grid_for_tab   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._list_for_tab   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._grid_mounted   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._list_mounted   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._grid_container   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._list_widget   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._search_focused   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._filter_open   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.compose   32 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_mount   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._activate_initial_tab   29 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_unmount   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_screen_suspend   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_screen_resume   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._stop_spinner_timer   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_provider_availability_changed   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_first_grid   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._initial_focus_first_grid   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_installed_names   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._active_tab_id   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._active_task   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._active_task_has_more   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._hf_fetched_any   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._ensure_task_initial_fetch   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_toggle_view   25 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._sync_grid_list_toggle   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_focus_search   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_search_changed   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._apply_search_filter   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_search_submitted   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_first_result   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_first_list_row   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_first_grid_card   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._trigger_remote_search   13 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._resume_search_if_term_moved_on   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_search_hf_cta_clicked   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_hf_page_for_task   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_initial_hf_models_for_task   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_remote_models   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_families   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_frontier_models   15 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_more_hf_for_task   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._fetch_hf_search   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_worker_state_changed   18 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._append_more_hf_to_list   12 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._handle_worker_error_or_cancel   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._apply_worker_result   25 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._populate_library_list   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._render_library_list   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._render_library_grid   19 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._get_search_text   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._local_rows_data_key   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._all_family_rows   16 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._all_hf_rows   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._all_remote_rows   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._stamp_fit   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._build_rows   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._build_family_rows   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._build_hf_rows   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._build_remote_rows   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._build_frontier_rows   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._is_installed   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._sort_rows   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._refresh_view   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._refresh_grid   20 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._prepare_grid_refresh   28 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._extend_grid_sections_in_place   10 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._remount_grid_sections   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._capture_focused_section   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._restore_focused_section   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._mount_grid_section   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._mount_remaining_grid_sections   14 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._grid_scroll_hint_text   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._mount_grid_ctas   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._refresh_grid_ctas   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._rows_for_active_tab   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._filter_grid   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_highlighted   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._update_drawer_for_grid   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_key   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_select_tab   14 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_cycle_tab   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_cycle_source   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_toggle_drawer   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._reveal_scroll_hint_at_catalog_end   13 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._pane_grids_with_rows   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._enter_grid   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_leave_down   14 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_leave_up   10 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_select_selected   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_selected   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_model_list_selected   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._refresh_list   17 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._filter_list   5 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._sync_loading_spinner   24 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._tick_loading_spinner   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._update_sort_label   16 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._frontier_label_text   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_cycle_sort   15 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._select_row   10 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._select_frontier_row   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._load_more   12 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._load_more_search_results   12 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_load_more   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_catalog_tab_activated   12 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._populate_discover_rails   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._install_variant   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._install_model   16 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_chat_ready_changed   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._enqueue_download   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._enqueue_download._adopt   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._enqueue_download._after_confirm   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._adopt_first_download   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_go_back   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_list_or_grid   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_show_info   11 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._highlighted_row   13 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_delete_model   14 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._row_is_installed   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._resolve_delete_ref   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._get_highlighted_model_name   16 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._run_delete   10 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._refresh_after_delete   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focused_grid   3 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._list_count   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focus_list_item   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._focused_list_index   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._nudge_list   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._maybe_prefetch_on_nav   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._maybe_prefetch_on_grid_nav   19 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_list_scrolled   4 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._on_grid_scrolled   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.on_mouse_scroll_down   12 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._scroll_prefetch_due   10 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._page_rows   1 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_page_down   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_page_up   7 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_cursor_down   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_cursor_up   8 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen._first_grid_or_none   2 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_jump_top   6 0 0   100%
src/lilbee/cli/tui/screens/catalog.py CatalogScreen.action_jump_bottom   9 0 0   100%
src/lilbee/cli/tui/screens/catalog.py (no function)   253 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py row_cache_signature   3 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py for_you_by_role   9 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py for_you_sort_key   9 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py group_frontier_rows   14 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py group_task_rows_with_picks   10 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py flatten_sections   4 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py group_rows_for_grid   16 0 0   100%
src/lilbee/cli/tui/screens/catalog_grouping.py (no function)   20 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py next_source_mode   2 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py task_to_tab_id   6 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py parse_param_label   3 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _format_downloads   5 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _format_size_mb   5 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py format_size_gb   3 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _is_param_count   1 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py family_to_size_variants   2 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _size_variant_label   2 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py variant_to_row   5 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py catalog_to_row   2 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py remote_to_row   1 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py frontier_row_from_remote   1 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _param_sort_value   2 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py row_delete_id   5 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py matches_search   6 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py _normalize_for_search   1 0 0   100%
src/lilbee/cli/tui/screens/catalog_utils.py (no function)   90 0 0   100%
src/lilbee/cli/tui/screens/chat.py _engine_status_text   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py _setting_type_hint   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py _closest_source   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py _parse_add_paths   10 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatWelcome.__init__   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatWelcome._body   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatWelcome.set_no_model   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.__init__   16 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._build_command_handlers   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._task_bar   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.compose   18 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.on_mount   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.on_show   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._embedding_ready   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_settings_changed   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_chat_ready_changed   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._enter_insert_mode   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.focus_prompt   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_focus_model_bar   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_enter_model_strip   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.run_command   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._update_input_style   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._update_mode_indicator   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.on_key   22 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_chat_input_focused   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_chat_input_clicked   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.on_click   11 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_chat_submitted   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._submit_draft   10 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._ready_to_submit   13 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._reject_submit_when_busy   10 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._slash_name   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._pending_required_model_download   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._dismiss_overlay_on_submit   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._handle_slash   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._set_streaming   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.watch_streaming   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._enter_streaming_state   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._exit_streaming_state   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_add   19 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._prompt_overwrite   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._prompt_overwrite._on_confirm   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._submit_add   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._submit_add._target   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_add   28 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_cancel   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_clear   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._reset_conversation   12 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_crawl   17 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._open_crawl_dialog   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._open_crawl_dialog._on_result   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._start_crawl   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._start_crawl._kick_off_crawl   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._persist_crawl_render_mode   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._parse_crawl_flags   22 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_crawl   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_crawl.on_progress   13 0 2   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_catalog   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_delete   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_delete_worker   26 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_export   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_export._target   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_export   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_import   12 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_import._target   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_import   10 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_help   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_show_command_catalog   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.insert_slash_command   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_catalog_pick   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_login   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._run_hf_login   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_model   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_quit   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_remove   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._run_remove_model   12 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_rebuild   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_rebuild._on_confirm   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_reset   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.request_reset   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.request_reset._on_confirm   13 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_set   30 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_settings   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_remember   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_remember_worker   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_memories   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_status   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_theme   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_version   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_wiki   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cmd_sessions   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._send_message   16 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._current_scope_value   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._current_chunk_type   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._open_session   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._persist_user_turn   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._persist_assistant_turn   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.resume_session   14 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._restore_session_model   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.session_id   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.start_new_conversation   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._render_restored_message   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._stream_response   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_stream_response   24 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._stream_worker_cancelled   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._await_chat_engine   21 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._await_chat_engine._paint   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._show_warm_tip_once   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._maybe_extract_memories   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._indexing_active   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._extract_memories_worker   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_embedding_mismatch   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_adopt_confirm   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._adopt_and_retry   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_adopt_and_retry   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._consume_stream   15 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._consume_stream.flush   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._buffer_token   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._maybe_flush   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._finalize_stream   10 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._notify_no_results   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._history_budget   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._compact_history   29 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._set_compacting   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._refresh_context_usage   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._mark_context_boundary   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_history_trimmed   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_history_compacted   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_scroll_up   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_scroll_down   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.check_action   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_enter_normal_mode   16 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_cancel_stream   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._cancel_inflight_stream   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.apply_model_change   11 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._apply_input_busy_state   15 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.watch_swapping_model   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.watch_reloading_placement   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.on_fleet_body_placement_reloading   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._reload_chat_model_worker   15 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_model_swapped   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_model_swap_failed   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._open_answer_link   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_toggle_markdown   7 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._run_sync   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._run_sync._target   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._do_sync   11 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_focus_commands   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_toggle_chat_mode   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_cycle_scope   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_complete   11 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._focus_in_drawer   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._focus_in_model_bar   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._tab_into_fleet_or_next   12 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_complete_next   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_complete_prev   4 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._preview_next   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._preview_prev   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._open_completions   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._completion_value   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._set_input   5 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._preview_completion   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._fill_common_prefix   8 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_history_prev   18 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_history_next   17 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._on_chat_input_changed   6 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._refresh_completion_overlay   9 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen._refresh_arg_hint   1 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.refresh_model_bar   2 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_vim_scroll_down   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_vim_scroll_up   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_vim_scroll_home   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_vim_scroll_end   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_half_page_down   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py ChatScreen.action_half_page_up   3 0 0   100%
src/lilbee/cli/tui/screens/chat.py (no function)   275 0 2   100%
src/lilbee/cli/tui/screens/chat_helpers.py close_stream   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py _opener_argv   5 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py open_local_file   9 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py detail_for_batch_progress   5 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py remember_from_input   16 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py unregister_added_roots   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py add_indexed_anything   2 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py _throttled_embed_tick   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py _throttled_embed_tick._tick   6 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_add_progress_callback   4 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_add_progress_callback.on_progress   14 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_sync_progress_callback   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_sync_progress_callback.on_progress   14 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_import_progress_callback   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py build_import_progress_callback.on_progress   3 0 0   100%
src/lilbee/cli/tui/screens/chat_helpers.py (no function)   35 0 2   100%
src/lilbee/cli/tui/screens/command_palette.py LilbeeCommandPalette.on_mount   2 0 0   100%
src/lilbee/cli/tui/screens/command_palette.py (no function)   5 0 0   100%
src/lilbee/cli/tui/screens/fleet.py FleetScreen.compose   11 0 0   100%
src/lilbee/cli/tui/screens/fleet.py FleetScreen.action_preview   1 0 0   100%
src/lilbee/cli/tui/screens/fleet.py FleetScreen.action_apply   1 0 0   100%
src/lilbee/cli/tui/screens/fleet.py FleetScreen.action_clear   1 0 0   100%
src/lilbee/cli/tui/screens/fleet.py FleetScreen.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/fleet.py (no function)   19 0 0   100%
src/lilbee/cli/tui/screens/memories.py _flag_label   1 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.__init__   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.compose   13 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.on_mount   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._load_memories   21 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._set_empty_state   7 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._visible_memories   4 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._highlighted_id   10 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._on_search_changed   2 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_focus_search   1 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_dismiss_or_back   5 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_go_back   2 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._table_or_none   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_cursor_down   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_cursor_up   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_jump_top   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_jump_bottom   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_delete   6 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_delete._on_confirm   3 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._do_delete   8 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen.action_toggle_shared   19 0 0   100%
src/lilbee/cli/tui/screens/memories.py MemoriesScreen._memory_by_id   4 0 0   100%
src/lilbee/cli/tui/screens/memories.py (no function)   40 0 2   100%
src/lilbee/cli/tui/screens/model_info.py ModelInfoModal.__init__   2 0 0   100%
src/lilbee/cli/tui/screens/model_info.py ModelInfoModal.compose   6 0 0   100%
src/lilbee/cli/tui/screens/model_info.py ModelInfoModal._build_markdown   24 0 0   100%
src/lilbee/cli/tui/screens/model_info.py (no function)   15 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py _picker_title   7 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py _browse_catalog_row   1 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py _PickerOptions.to_sections   3 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py _option_to_row   1 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py _matches   4 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.__init__   4 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.compose   5 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.on_mount   2 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal._refresh_list   5 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal._on_search_changed   4 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal._on_search_submitted   3 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal._on_model_list_selected   2 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.action_focus_search   1 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.action_list_cursor_down   1 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py ModelPickerModal.action_list_cursor_up   1 0 0   100%
src/lilbee/cli/tui/screens/model_picker.py (no function)   42 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.compose   11 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.action_cursor_down   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.action_cursor_up   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.action_jump_top   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen.action_jump_bottom   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen._on_resumed   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen._on_new_chat   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py SessionsScreen._on_close   1 0 0   100%
src/lilbee/cli/tui/screens/sessions.py (no function)   24 0 2   100%
src/lilbee/cli/tui/screens/settings.py _LazyGroupBody.__init__   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py _LazyGroupBody.populated   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py _LazyGroupBody.populate   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.__init__   3 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.compose   12 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._compose_group_tabs   8 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.on_mount   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_tab_activated   4 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.populate_all_panes   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._populate_pane   9 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._build_pane_widgets   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._build_setting_row   9 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._build_model_picker_row   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_input_save   11 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_multiline_save   12 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_checkbox_save   7 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_select_save   11 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._persist_value   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._parse_value   7 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._validate_regex_list   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_list_blur_save   20 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_list_restore   16 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._refresh_list_title   5 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._refresh_help   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_reset_pressed   5 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_model_picker_pressed   8 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._discover_then_open_picker   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._push_model_picker   10 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_model_picker_dismissed   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._after_model_pick   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._refresh_picker_button   5 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_reset_all   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._on_reset_all_confirmed   16 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_reset_focused   9 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._reset_to_default   7 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._refresh_editor   6 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._active_pane_body   11 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_cursor_down   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_cursor_up   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_jump_top   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_jump_bottom   2 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_next_field_or_pane   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_prev_field_or_pane   1 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen.action_cycle_pane   14 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._focus_adjacent   3 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._move_focus_within_pane   25 0 0   100%
src/lilbee/cli/tui/screens/settings.py SettingsScreen._focus_pane_edge   8 0 0   100%
src/lilbee/cli/tui/screens/settings.py (no function)   96 0 4   100%
src/lilbee/cli/tui/screens/settings_widgets.py model_field_to_picker_scope   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py picker_scope_to_task   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py set_widget_value   12 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py model_picker_label   4 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py config_toml_path   1 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py effective_value   13 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py is_writable   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py type_pill   5 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py env_var_name   1 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py env_pill   4 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py help_content   3 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py title_content   6 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py stringify_default   5 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py _litellm_installed   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py _crawler_installed   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py _wiki_enabled   1 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py group_settings   9 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_editor   10 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_multiline_editor   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_list_editor   6 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_select   4 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_checkbox   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py make_input   2 0 0   100%
src/lilbee/cli/tui/screens/settings_widgets.py (no function)   50 0 3   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate.compose   4 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate.on_mount   1 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._retire_splash   3 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._repaint   1 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate.start_boot   1 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._boot_worker   10 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._stopping   2 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._marshal   3 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._fail   2 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py StartupGate._release   3 0 0   100%
src/lilbee/cli/tui/screens/startup_gate.py (no function)   30 0 0   100%
src/lilbee/cli/tui/screens/status.py _model_pill   3 0 0   100%
src/lilbee/cli/tui/screens/status.py _kv_line   9 0 0   100%
src/lilbee/cli/tui/screens/status.py _collapse_home   3 0 0   100%
src/lilbee/cli/tui/screens/status.py _ocr_label   5 0 0   100%
src/lilbee/cli/tui/screens/status.py _ocr_pill   5 0 0   100%
src/lilbee/cli/tui/screens/status.py _data_dir_pill   3 0 0   100%
src/lilbee/cli/tui/screens/status.py _build_config_content   2 0 0   100%
src/lilbee/cli/tui/screens/status.py _build_storage_content   8 0 0   100%
src/lilbee/cli/tui/screens/status.py _build_arch_content   4 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.__init__   6 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.compose   11 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.on_mount   4 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._mount_remaining_sections   13 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._show_loading_placeholders   10 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._fetch_sources_worker   5 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._fetch_arch_worker   5 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.on_worker_state_changed   14 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._apply_docs   2 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._load_arch   3 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._load_config   1 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._load_documents   12 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._render_doc_batch   11 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen._load_storage   3 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.action_cursor_down   1 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.action_cursor_up   1 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.action_jump_top   1 0 0   100%
src/lilbee/cli/tui/screens/status.py StatusScreen.action_jump_bottom   1 0 0   100%
src/lilbee/cli/tui/screens/status.py (no function)   65 0 2   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.compose   14 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.on_mount   5 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.on_show   4 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.on_hide   5 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._on_queue_change   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.on_task_queue_changed   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._focus_initial_row   6 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_refresh_tasks   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_clear_history   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_cancel_task   7 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_cursor_down   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_cursor_up   1 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_jump_top   3 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter.action_jump_bottom   3 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._all_tasks   2 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._advance_tick   12 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._refresh_rows   24 0 0   100%
src/lilbee/cli/tui/screens/task_center.py TaskCenter._update_counts   10 0 0   100%
src/lilbee/cli/tui/screens/task_center.py (no function)   45 0 2   100%
src/lilbee/cli/tui/screens/wiki.py _wiki_root   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _root_shortcuts   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _safe_float   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _safe_int   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _format_page_header   10 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _short_label   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _breadcrumb_for_slug   6 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.__init__   7 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.compose   12 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.on_screen_resume   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.reload   14 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._show_load_failure   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._empty_tree   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._load_pages   21 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._populate_tree   11 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._add_stub_group   6 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._insert_page   16 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._show_detail   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._show_placeholder   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._on_node_selected   9 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._display_page   18 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._on_search_changed   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_focus_search   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_open_drafts   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_dismiss_or_back   5 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_go_back   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen._tree_or_none   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_cursor_down   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_cursor_up   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_cursor_left   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_cursor_right   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_jump_top   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_jump_bottom   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_wikify   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py WikiScreen.action_wipe   1 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _build_progress   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _build_progress._on_progress   5 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_wikify   10 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_wikify._target   8 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _describe_sources   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py confirm_stub_generation   3 0 0   100%
src/lilbee/cli/tui/screens/wiki.py confirm_stub_generation._on_confirm   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_stub_generation   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_stub_generation._target   13 0 0   100%
src/lilbee/cli/tui/screens/wiki.py wiki_has_content   4 0 0   100%
src/lilbee/cli/tui/screens/wiki.py confirm_wiki_wipe   7 0 0   100%
src/lilbee/cli/tui/screens/wiki.py confirm_wiki_wipe._on_confirm   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_wiki_wipe   2 0 0   100%
src/lilbee/cli/tui/screens/wiki.py start_wiki_wipe._target   9 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _find_or_add_branch   5 0 0   100%
src/lilbee/cli/tui/screens/wiki.py _group_pages   13 0 0   100%
src/lilbee/cli/tui/screens/wiki.py (no function)   78 0 6   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _wiki_root   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _format_drift   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _format_faithfulness   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _format_published   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _draft_failure   7 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _post_success   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _post_failure   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _apply_failure   2 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py _kind_label   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.__init__   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.compose   12 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.on_mount   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.reload   9 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._populate_table   11 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._visible_drafts   4 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._show_diff   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._highlighted_slug   10 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._on_row_highlighted   4 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._display_diff   13 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._on_search_changed   2 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_focus_search   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_dismiss_or_back   5 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_go_back   2 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._table_or_none   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_cursor_down   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_cursor_up   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_jump_top   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_jump_bottom   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_accept   6 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_accept._on_confirm   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._do_accept   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_reject   6 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen.action_reject._on_confirm   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._do_reject   1 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._start_draft_task   3 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py WikiDraftsScreen._start_draft_task._target   12 0 0   100%
src/lilbee/cli/tui/screens/wiki_drafts.py (no function)   63 0 6   100%
src/lilbee/cli/tui/spinner.py spinner_frame   1 0 0   100%
src/lilbee/cli/tui/spinner.py (no function)   5 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.__init__   9 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue._capacity_for   1 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.subscribe   3 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.unsubscribe   3 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.active_task   7 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.active_tasks   8 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.queued_tasks   8 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.history   2 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.is_empty   4 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.get_task   2 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.find_pending   2 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue._find_pending_locked   4 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.enqueue   11 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.update_task   8 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.complete_task   11 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.fail_task   10 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.cancel   13 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.advance   21 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.remove_task   7 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue.clear_history   7 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue._remove_from_active_locked   3 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue._remove_from_queue_locked   3 0 0   100%
src/lilbee/cli/tui/task_queue.py TaskQueue._notify   4 0 0   100%
src/lilbee/cli/tui/task_queue.py (no function)   69 0 0   100%
src/lilbee/cli/tui/thread_safe.py call_from_thread   9 0 0   100%
src/lilbee/cli/tui/thread_safe.py (no function)   6 0 0   100%
src/lilbee/cli/tui/widgets/__init__.py (no function)   0 0 0   100%
src/lilbee/cli/tui/widgets/arg_hint.py ArgHintLine.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/arg_hint.py ArgHintLine.update_for_input   6 0 0   100%
src/lilbee/cli/tui/widgets/arg_hint.py ArgHintLine._clear   2 0 0   100%
src/lilbee/cli/tui/widgets/arg_hint.py _hint_for   13 0 0   100%
src/lilbee/cli/tui/widgets/arg_hint.py (no function)   17 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _option_prompt   4 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py get_completions   7 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _get_arg_completions   14 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _model_options   6 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _setting_options   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _fetch_document_names   5 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _document_options_cached   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _document_options   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py invalidate_document_cache   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _theme_options   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _path_exists   5 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py _path_options   22 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py path_completion_prefix   2 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py longest_common_prefix   7 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.show_completions   9 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay._cycle   6 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.cycle_next   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.cycle_prev   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.get_current   6 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.options   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.hide   2 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.is_visible   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py CompletionOverlay.action_dismiss_overlay   1 0 0   100%
src/lilbee/cli/tui/widgets/autocomplete.py (no function)   58 0 0   100%
src/lilbee/cli/tui/widgets/bottom_bars.py (no function)   7 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _render_fit_pill   6 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _fit_pill_compact   1 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _compat_label   6 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _compat_pill   6 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _truncate_name   3 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _key_status_pill   3 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _spec_strip   2 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _build_specs   2 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _build_local_status   5 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _local_card_lines   26 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py _build_size_variant_strip   14 0 0   100%
src/lilbee/cli/tui/widgets/catalog_card_shared.py (no function)   22 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py CatalogDetailDrawer.compose   6 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py CatalogDetailDrawer.update_for_row   7 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py CatalogDetailDrawer._clear   3 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py CatalogDetailDrawer._render_local   13 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py CatalogDetailDrawer._render_frontier   6 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py _render_sizes_block   13 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py _license_text   1 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py _compat_sentence   5 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py _description_text   5 0 0   100%
src/lilbee/cli/tui/widgets/catalog_detail.py (no function)   23 0 0   100%
src/lilbee/cli/tui/widgets/catalog_theme.py (no function)   4 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.Submitted.control   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.__init__   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.value   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.value   2 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.check_consume_key   3 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput._on_key   6 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.action_submit   3 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.action_newline   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.action_end   3 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput._sync_multiline   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput._track_multiline   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py ChatInput.on_resize   1 0 0   100%
src/lilbee/cli/tui/widgets/chat_input.py (no function)   31 0 0   100%
src/lilbee/cli/tui/widgets/clamped_option_list.py ClampedOptionList.get_content_height   2 0 0   100%
src/lilbee/cli/tui/widgets/clamped_option_list.py (no function)   5 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py ConfirmDialog.__init__   3 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py ConfirmDialog.compose   6 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py ConfirmDialog._on_button_pressed   2 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py ConfirmDialog.action_confirm   1 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py ConfirmDialog.action_cancel   1 0 0   100%
src/lilbee/cli/tui/widgets/confirm_dialog.py (no function)   17 0 0   100%
src/lilbee/cli/tui/widgets/context_chip.py ContextChip.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/context_chip.py ContextChip.render   9 0 0   100%
src/lilbee/cli/tui/widgets/context_chip.py (no function)   20 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog.compose   14 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog.on_button_pressed   3 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog.on_input_submitted   1 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog._parse_optional_non_negative_int   6 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog._parse_max_pages   7 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog._validate   27 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog._try_submit   7 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py CrawlDialog.action_cancel   1 0 0   100%
src/lilbee/cli/tui/widgets/crawl_dialog.py (no function)   31 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py _RailHeading.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py _RailHeading.action_focus_grid   8 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py DiscoverRails.compose   3 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py DiscoverRails.set_rails   3 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py DiscoverRails._set_rail   5 0 0   100%
src/lilbee/cli/tui/widgets/discover_rails.py (no function)   22 0 0   100%
src/lilbee/cli/tui/widgets/drawer.py (no function)   3 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py _clean_model_name   7 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py _role_kind   5 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetPill.Pressed.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetPill.press   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetPill.action_press   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetPill.on_click   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.PlacementReloading.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.__init__   6 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.watch_applying   5 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._show_rebuilding   6 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.compose   15 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._load_worker   7 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._render_load_failure   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._render_view   18 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._render_skipped   3 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._page_devices   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._page_count   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._build_editor   28 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._gpu_header_row   3 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._pager_row   4 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._refresh_title   7 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._update_fleet_panel   12 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._spec_from_editor   10 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.on_fleet_pill_pressed   34 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.action_preview   6 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._preview_worker   5 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.action_apply   9 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._apply_worker   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody.action_clear   4 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._clear_worker   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py FleetBody._change_placement   14 0 0   100%
src/lilbee/cli/tui/widgets/fleet_body.py (no function)   93 0 2   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.on_mount   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.on_unmount   2 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.action_close   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.action_preview   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.action_apply   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py FleetDrawer.action_clear   1 0 0   100%
src/lilbee/cli/tui/widgets/fleet_drawer.py (no function)   22 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _theme_color   1 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _heat_color   5 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _bar   4 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _badge_role_markup   4 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _render_row   23 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py _render_stats   5 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel.__init__   8 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel.set_devices   5 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel.set_probe_failed   5 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel.on_mount   2 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel.on_unmount   3 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel._request_stats   4 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel._resolve_theme   5 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel._probe_worker   7 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py GpuFleetPanel._apply_stats   9 0 0   100%
src/lilbee/cli/tui/widgets/gpu_fleet_panel.py (no function)   42 0 2   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.set_grid   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle._refresh   4 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle._render_label   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.on_click   2 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.action_flip   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.action_select_grid   2 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle.action_select_list   2 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py GridListToggle._call_screen_toggle   4 0 0   100%
src/lilbee/cli/tui/widgets/grid_list_toggle.py (no function)   23 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.Selected.control   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.Highlighted.control   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.__init__   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.grid_size   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.highlight_first   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.highlight_last   2 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.on_focus   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.on_blur   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.reveal_highlight   8 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.watch_highlighted   11 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.validate_highlighted   9 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_cursor_up   8 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_cursor_down   8 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_cursor_left   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_cursor_right   3 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.on_click   13 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_select   6 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_tab_next   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py GridSelect.action_tab_previous   1 0 0   100%
src/lilbee/cli/tui/widgets/grid_select.py (no function)   50 0 0   100%
src/lilbee/cli/tui/widgets/help_hint.py HelpHint.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/help_hint.py HelpHint.on_click   6 0 0   100%
src/lilbee/cli/tui/widgets/help_hint.py (no function)   12 0 0   100%
src/lilbee/cli/tui/widgets/list_text_area.py ListTextArea.Blurred.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/list_text_area.py ListTextArea.Blurred.control   1 0 0   100%
src/lilbee/cli/tui/widgets/list_text_area.py ListTextArea._on_blur   2 0 0   100%
src/lilbee/cli/tui/widgets/list_text_area.py (no function)   10 0 0   100%
src/lilbee/cli/tui/widgets/message.py _AnswerMarkdownIt.validateLink   1 0 0   100%
src/lilbee/cli/tui/widgets/message.py _answer_markdown_parser   1 0 0   100%
src/lilbee/cli/tui/widgets/message.py UserMessage.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/message.py UserMessage.compose   2 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.__init__   13 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.compose   3 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.on_mount   5 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage._build_content_widget   3 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.use_markdown   1 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.rebuild_content_widget   8 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage._set_content   3 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.append_reasoning   9 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.set_thinking_status   2 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.append_content   9 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage.finish   15 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage._mount_reasoning_collapsible   11 0 0   100%
src/lilbee/cli/tui/widgets/message.py AssistantMessage._dismiss_thinking_header   7 0 0   100%
src/lilbee/cli/tui/widgets/message.py _ensure_sources_block   5 0 0   100%
src/lilbee/cli/tui/widgets/message.py (no function)   47 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _cloud_provider_label   6 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _is_mmproj   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py classify_installed_models_full   6 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _lookup_bucket   6 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _native_label   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _has_vision_sidecar   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _collect_native_models   23 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _collect_remote_models   19 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py _collect_api_models   15 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.__init__   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.set_options   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton._refresh   11 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.repaint   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.on_click   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.action_open_picker   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton._is_nullable   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton.open_picker   6 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton._on_picker_dismissed   4 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton._focus_chat_prompt   4 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelPickerButton._commit_after_change   8 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModePill.action_select   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.__init__   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.compose   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.refresh_state   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle._embedding_ready   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle._refresh   13 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.set_mode   10 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.toggle   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.on_click   11 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ChatModeToggle.action_flip_mode   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.__init__   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.compose   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.is_active   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow._is_nullable   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.on_click   4 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py RoleRow.refresh_state   7 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.strip   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.focus_strip   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._focus_end   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._focus_at   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._focused_index   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.action_step   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.action_step_end   2 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.compose   5 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.on_mount   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.on_resize   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._on_settings_changed   9 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._scan_models   3 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._populate   10 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar._refresh_cloud_warning   10 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py ModelBar.refresh_models   1 0 0   100%
src/lilbee/cli/tui/widgets/model_bar.py (no function)   115 0 4   100%
src/lilbee/cli/tui/widgets/model_card.py ModelCard.__init__   4 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py ModelCard.row   1 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py ModelCard.watch_selected   6 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py ModelCard.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py _render   3 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py _render_local   2 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py _render_frontier   6 0 0   100%
src/lilbee/cli/tui/widgets/model_card.py (no function)   22 0 2   100%
src/lilbee/cli/tui/widgets/model_grid.py _row_key   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.Selected.control   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.__init__   5 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.rows   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.columns_per_row   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.set_rows   6 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._relocated_highlight   9 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.on_resize   7 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.on_show   2 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._columns_for_width   3 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._total_rows   3 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.get_content_width   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.get_content_height   5 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.watch_highlighted   7 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._reveal_highlight   13 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._scroll_region_into_view   9 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.on_focus   2 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.on_blur   1 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.action_cursor_up   7 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.action_cursor_down   8 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.action_cursor_left   4 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.action_cursor_right   4 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.action_select   4 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.highlight_first   2 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.highlight_last   2 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._cell_at   14 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.on_click   8 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid._card_lines   6 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py ModelGrid.render_line   18 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py _render_card_strip   17 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py _pad_line   6 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py _local_lines   2 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py _frontier_lines   4 0 0   100%
src/lilbee/cli/tui/widgets/model_grid.py (no function)   99 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.set_rows   5 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.append_rows   7 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.row_count   1 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.row_at   1 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList.highlighted_row   10 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList._build_options   11 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py ModelList._on_option_selected   7 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _heading_option   1 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _render_row   3 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _render_frontier   6 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _render_local   3 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _render_local_headline   6 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _fit_tag   4 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _compat_tag   5 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _render_local_meta   9 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py _local_meta_strip   9 0 0   100%
src/lilbee/cli/tui/widgets/model_list.py (no function)   44 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py config_key_for_scope   5 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py apply_model_pick   13 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _open_catalog_for_key   9 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _push_embed_swap_confirm   2 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _on_embed_confirm   4 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _persist   10 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _persist._runner   7 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py _persist._finish   2 0 0   100%
src/lilbee/cli/tui/widgets/model_pick.py (no function)   18 0 4   100%
src/lilbee/cli/tui/widgets/notice_dialog.py _DismissPill.__init__   1 0 0   100%
src/lilbee/cli/tui/widgets/notice_dialog.py _DismissPill.on_click   2 0 0   100%
src/lilbee/cli/tui/widgets/notice_dialog.py NoticeDialog.__init__   4 0 0   100%
src/lilbee/cli/tui/widgets/notice_dialog.py NoticeDialog.compose   5 0 0   100%
src/lilbee/cli/tui/widgets/notice_dialog.py NoticeDialog.action_dismiss_notice   1 0 0   100%
src/lilbee/cli/tui/widgets/notice_dialog.py (no function)   19 0 0   100%
src/lilbee/cli/tui/widgets/progress_cell.py progress_cell   5 0 0   100%
src/lilbee/cli/tui/widgets/progress_cell.py indeterminate_cell   8 0 0   100%
src/lilbee/cli/tui/widgets/progress_cell.py frozen_indeterminate_cell   1 0 0   100%
src/lilbee/cli/tui/widgets/progress_cell.py (no function)   6 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopePill.action_select   6 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.compose   4 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.scope   1 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.on_mount   3 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip._refresh_visibility   2 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip._on_settings_changed   3 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip._refresh   3 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip._set_scope   4 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.cycle_scope   3 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py ScopeChip.on_click   8 0 0   100%
src/lilbee/cli/tui/widgets/scope_chip.py (no function)   39 0 2   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.Selected.control   1 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.Selected.term   1 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.term   1 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.action_select   1 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.on_click   3 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py SearchHFCtaItem.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/search_hf_cta_item.py (no function)   27 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionRow.__init__   3 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionRow.compose   7 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.Resumed.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.__init__   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.compose   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.on_mount   3 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._store   1 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.refresh_list   2 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._render_rows   12 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._selected   2 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._on_filter   3 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._on_submit   4 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._on_row_selected   2 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._resume   2 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_cursor_down   1 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_cursor_up   1 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.jump_to   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_new_chat   1 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_close   4 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_rename   7 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._commit_rename   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._cancel_rename   1 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._finish_rename   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel.action_delete   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py SessionListPanel._on_delete_confirmed   5 0 0   100%
src/lilbee/cli/tui/widgets/session_list.py (no function)   53 0 2   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer.on_mount   2 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer.on_unmount   2 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer._on_resumed   2 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer._on_new_chat   2 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py SessionsDrawer._on_close   1 0 0   100%
src/lilbee/cli/tui/widgets/sessions_drawer.py (no function)   23 0 2   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _by_name   1 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _matches   8 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.compose   5 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.on_mount   2 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.on_input_changed   3 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.on_input_submitted   3 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.on_option_list_option_selected   3 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.action_select   11 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.action_cancel   1 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog._select_first_match   6 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog.on_resize   1 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py SlashCommandCatalog._rebuild   9 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _row_width   2 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _filter_groups   7 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _populate_options   8 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _render_header   1 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py _render_row   11 0 0   100%
src/lilbee/cli/tui/widgets/slash_command_catalog.py (no function)   44 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTab.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTab.set_active   4 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTab.on_click   1 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTab.action_activate   1 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTab._switch   1 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs.compose   7 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs.on_mount   4 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs.watch_active_view   1 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs.watch_mode_text   1 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs._on_settings_changed   6 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs._apply_wiki_visibility   6 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs._refresh   5 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py ViewTabs._update_trailing   14 0 0   100%
src/lilbee/cli/tui/widgets/status_bar.py (no function)   38 0 2   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester.get_suggestion   7 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._suggest_command   4 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._suggest_argument   11 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._suggest_from_list   4 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._get_model_names   1 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._get_setting_names   1 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._get_document_names   1 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py SlashSuggester._get_theme_names   1 0 0   100%
src/lilbee/cli/tui/widgets/suggester.py (no function)   14 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py _progress_bar   3 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py _sweep_bar   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py _warm_detail   11 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.__init__   9 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.compose   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.on_mount   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.on_unmount   3 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._controller   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.queue   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.add_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.update_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.complete_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.fail_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar.cancel_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._tick   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._sync_poll_cadence   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._refresh_display   40 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._status_line   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._warm_line   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._spawning_workers_template   3 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._pending_sync_template   8 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._hint_copy   8 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py TaskBar._compose_segments   21 0 0   100%
src/lilbee/cli/tui/widgets/task_bar.py (no function)   51 0 2   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py ProgressReporter.__init__   3 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py ProgressReporter.task_id   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py ProgressReporter.check_cancelled   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py ProgressReporter.update   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py _chromium_bootstrap_target   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py _chromium_bootstrap_target._forward   11 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.__init__   6 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.add_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.update_task   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.complete_task   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.fail_task   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.cancel_task   9 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._after_done_hooks   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._task_type_of   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._advance_all   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.downloading_label_for   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.set_pending_sync   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.clear_pending_sync   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.mark_role_spawning   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.mark_role_spawned   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.start_detect_pending   5 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._run_detect_pending   7 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.ensure_chromium   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.start_task   6 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._try_start_next   2 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._spawn_task_worker   4 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._run_task_worker   22 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._post_finalize   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._finalize_task   9 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController._notify_model_installed   5 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.reload_wiki_screens   9 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.start_download   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py TaskBarController.pending_download   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py download_key   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py _download_target   11 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py _download_target._on_progress   1 0 0   100%
src/lilbee/cli/tui/widgets/task_bar_controller.py (no function)   61 0 2   100%
src/lilbee/cli/tui/widgets/task_row.py _build_head   8 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py _format_elapsed   8 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py TaskRow.__init__   2 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py TaskRow.compose   3 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py TaskRow.update   21 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py TaskRow.flash_completed   1 0 0   100%
src/lilbee/cli/tui/widgets/task_row.py (no function)   24 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py _bounce_position   5 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py _frame_content   9 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.__init__   5 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.on_mount   1 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.on_unmount   1 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.stop   3 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.redirect_to   1 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader.set_status   1 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py ThinkingHeader._tick   5 0 0   100%
src/lilbee/cli/tui/widgets/thinking_header.py (no function)   27 0 0   100%
src/lilbee/cli/tui/widgets/top_bars.py (no function)   7 0 0   100%
src/lilbee/config_meta.py _get_extra   4 0 0   100%
src/lilbee/config_meta.py _is_nullable   4 0 0   100%
src/lilbee/config_meta.py _derive_field_sets   13 0 0   100%
src/lilbee/config_meta.py (no function)   10 0 0   100%
src/lilbee/core/__init__.py (no function)   0 0 0   100%
src/lilbee/core/config/__init__.py (no function)   6 0 0   100%
src/lilbee/core/config/context.py active_config   1 0 0   100%
src/lilbee/core/config/context.py config_scope   4 0 0   100%
src/lilbee/core/config/context.py (no function)   9 0 3   100%
src/lilbee/core/config/defaults.py _whole_segments   1 0 0   100%
src/lilbee/core/config/defaults.py (no function)   38 0 0   100%
src/lilbee/core/config/enums.py (no function)   34 0 0   100%
src/lilbee/core/config/keys.py (no function)   5 0 0   100%
src/lilbee/core/config/model.py Config._validate_fts_language   4 0 0   100%
src/lilbee/core/config/model.py Config._strip_lilbee_name   1 0 0   100%
src/lilbee/core/config/model.py Config._empty_string_to_none   3 0 0   100%
src/lilbee/core/config/model.py Config._normalize_chat_mode   8 0 0   100%
src/lilbee/core/config/model.py Config._parse_enable_ocr   13 0 0   100%
src/lilbee/core/config/model.py Config._parse_ocr_language   5 0 0   100%
src/lilbee/core/config/model.py Config._parse_flash_attention   13 0 0   100%
src/lilbee/core/config/model.py Config._parse_n_gpu_layers   14 0 0   100%
src/lilbee/core/config/model.py Config._parse_main_gpu   12 0 0   100%
src/lilbee/core/config/model.py Config._parse_gpu_devices   15 0 0   100%
src/lilbee/core/config/model.py Config._parse_placement   13 0 0   100%
src/lilbee/core/config/model.py Config._parse_semantic_chunking   9 0 0   100%
src/lilbee/core/config/model.py Config._normalize_model_tag   4 0 0   100%
src/lilbee/core/config/model.py Config._strip_trailing_slash   1 0 0   100%
src/lilbee/core/config/model.py Config._split_cors_origins   3 0 0   100%
src/lilbee/core/config/model.py Config._split_crawl_browser_extra_args   3 0 0   100%
src/lilbee/core/config/model.py Config._split_crawl_exclude_patterns   3 0 0   100%
src/lilbee/core/config/model.py Config._validate_crawl_exclude_patterns   10 0 0   100%
src/lilbee/core/config/model.py Config._merge_ignore_dirs   6 0 0   100%
src/lilbee/core/config/model.py Config._parse_ent_types   7 0 0   100%
src/lilbee/core/config/model.py Config._resolve_defaults   22 0 0   100%
src/lilbee/core/config/model.py Config.settings_customise_sources   12 0 0   100%
src/lilbee/core/config/model.py Config.model_defaults   1 0 0   100%
src/lilbee/core/config/model.py Config.apply_model_defaults   1 0 0   100%
src/lilbee/core/config/model.py Config.clear_model_defaults   1 0 0   100%
src/lilbee/core/config/model.py Config.generation_options   9 0 0   100%
src/lilbee/core/config/model.py _model_defaults_dict   4 0 0   100%
src/lilbee/core/config/model.py _PlainEnvSource.__init__   3 0 0   100%
src/lilbee/core/config/model.py _PlainEnvSource.__call__   10 0 0   100%
src/lilbee/core/config/model.py _TomlSource.__init__   1 0 0   100%
src/lilbee/core/config/model.py _TomlSource.__call__   8 0 0   100%
src/lilbee/core/config/model.py _build_cfg   7 0 0   100%
src/lilbee/core/config/model.py (no function)   283 0 0   100%
src/lilbee/core/config/parsing.py parse_bool   6 0 0   100%
src/lilbee/core/config/parsing.py (no function)   3 0 0   100%
src/lilbee/core/config/validators.py ConfigField   13 0 0   100%
src/lilbee/core/config/validators.py (no function)   3 0 0   100%
src/lilbee/core/llm_json.py json_reply_format   1 0 0   100%
src/lilbee/core/llm_json.py _first_json_value   9 0 0   100%
src/lilbee/core/llm_json.py first_json_object   1 0 0   100%
src/lilbee/core/llm_json.py first_json_array   1 0 0   100%
src/lilbee/core/llm_json.py (no function)   9 0 0   100%
src/lilbee/core/results.py _zero_to_none   1 0 0   100%
src/lilbee/core/results.py _to_excerpt   3 0 0   100%
src/lilbee/core/results.py _best_content_type   1 0 0   100%
src/lilbee/core/results.py group   11 0 0   100%
src/lilbee/core/results.py to_dicts   1 0 0   100%
src/lilbee/core/results.py (no function)   21 0 0   100%
src/lilbee/core/security.py file_lock_or_warn   10 0 0   100%
src/lilbee/core/security.py validate_path_within   6 0 0   100%
src/lilbee/core/security.py write_private_text   9 0 0   100%
src/lilbee/core/security.py harden_private_file   6 0 2   100%
src/lilbee/core/security.py (no function)   19 0 0   100%
src/lilbee/core/settings.py _config_path   1 0 0   100%
src/lilbee/core/settings.py _config_write_lock   4 0 0   100%
src/lilbee/core/settings.py load   6 0 0   100%
src/lilbee/core/settings.py save   3 0 0   100%
src/lilbee/core/settings.py get   2 0 0   100%
src/lilbee/core/settings.py set_value   4 0 0   100%
src/lilbee/core/settings.py delete_value   4 0 0   100%
src/lilbee/core/settings.py update_values   4 0 0   100%
src/lilbee/core/settings.py delete_values   5 0 0   100%
src/lilbee/core/settings.py mutate_value   6 0 0   100%
src/lilbee/core/settings.py overlay_persisted_settings   23 0 0   100%
src/lilbee/core/settings.py (no function)   27 0 0   100%
src/lilbee/core/system.py stderr_suppressed   9 0 3   100%
src/lilbee/core/system.py default_data_dir   6 0 0   100%
src/lilbee/core/system.py default_state_dir   1 0 6   100%
src/lilbee/core/system.py default_cache_dir   0 0 6   100%
src/lilbee/core/system.py find_local_root   6 0 0   100%
src/lilbee/core/system.py canonical_data_root   1 0 0   100%
src/lilbee/core/system.py canonical_models_dir   1 0 0   100%
src/lilbee/core/system.py is_ignored_dir   1 0 0   100%
src/lilbee/core/system.py chat_ctx_target_for_total_bytes   6 0 0   100%
src/lilbee/core/system.py cgroup_memory_limit   12 0 0   100%
src/lilbee/core/system.py cgroup_memory_used   6 0 0   100%
src/lilbee/core/system.py capped_total_memory   4 0 0   100%
src/lilbee/core/system.py _read_total_memory_bytes   4 0 0   100%
src/lilbee/core/system.py scaled_chat_ctx_target_default   1 0 0   100%
src/lilbee/core/system.py _mount_fstype   11 0 0   100%
src/lilbee/core/system.py is_network_path   10 0 0   100%
src/lilbee/core/system.py executable_search_path   4 0 0   100%
src/lilbee/core/system.py find_executable   1 0 0   100%
src/lilbee/core/system.py (no function)   37 0 0   100%
src/lilbee/core/text.py collapse_whitespace   1 0 0   100%
src/lilbee/core/text.py strip_possessive   1 0 0   100%
src/lilbee/core/text.py make_slug   4 0 0   100%
src/lilbee/core/text.py is_valid_label   11 0 0   100%
src/lilbee/core/text.py clean_label_for_display   2 0 0   100%
src/lilbee/core/text.py (no function)   14 0 0   100%
src/lilbee/core/vectors.py (no function)   5 0 0   100%
src/lilbee/crawler/__init__.py (no function)   11 0 0   100%
src/lilbee/crawler/bootstrap.py _browsers_cache_path   9 0 0   100%
src/lilbee/crawler/bootstrap.py _read_chromium_revision   10 0 0   100%
src/lilbee/crawler/bootstrap.py _expected_chromium_revision   7 0 0   100%
src/lilbee/crawler/bootstrap.py chromium_installed   7 0 0   100%
src/lilbee/crawler/bootstrap.py _bootstrap_lock_path   3 0 0   100%
src/lilbee/crawler/bootstrap.py crawler_browsers_path   1 0 0   100%
src/lilbee/crawler/bootstrap.py _bytes_from_stdout   10 0 0   100%
src/lilbee/crawler/bootstrap.py _emit_setup_start   3 0 0   100%
src/lilbee/crawler/bootstrap.py _emit_setup_done   3 0 0   100%
src/lilbee/crawler/bootstrap.py _drain_stdout_to_progress   10 0 0   100%
src/lilbee/crawler/bootstrap.py _drain_stderr   5 0 0   100%
src/lilbee/crawler/bootstrap.py _resolve_playwright_runner   11 0 0   100%
src/lilbee/crawler/bootstrap.py bootstrap_chromium   16 0 0   100%
src/lilbee/crawler/bootstrap.py _install_chromium   19 0 0   100%
src/lilbee/crawler/bootstrap.py _terminate_process   11 0 0   100%
src/lilbee/crawler/bootstrap.py (no function)   36 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _build_inner_crawler   7 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _conversion_limiter   2 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _silent_markdown_generator   8 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _silent_markdown_generator._SilentMarkdownGenerator.generate_markdown   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _Conversion.config_kwargs   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _Conversion.markdown_for   7 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _new_conversion   3 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _build_rate_limited_dispatcher   9 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _LilbeeAsyncCrawler.__init__   2 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _LilbeeAsyncCrawler.__aenter__   2 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _LilbeeAsyncCrawler.__aexit__   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _LilbeeAsyncCrawler.arun   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _LilbeeAsyncCrawler.arun_many   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _open_crawler   11 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _safe_strategy_cancel   6 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _safe_aclose   7 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _iter_crawl_stream   9 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _link_passes_ssrf   5 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _host_scope_filter   7 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py _host_scope_filter._ScopedSsrfFilter.apply   4 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.__init__   2 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.__aenter__   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.__aexit__   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.fetch_single   9 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.fetch_recursive   31 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py Crawl4aiFetcher.fetch_recursive._should_cancel   1 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py crawler_available   2 0 0   100%
src/lilbee/crawler/crawl4ai_fetcher.py (no function)   54 0 4   100%
src/lilbee/crawler/discovery.py build_concurrency_spec   1 0 0   100%
src/lilbee/crawler/discovery.py build_filter_spec   1 0 0   100%
src/lilbee/crawler/discovery.py (no function)   5 0 0   100%
src/lilbee/crawler/events.py _fetched_to_result   1 0 0   100%
src/lilbee/crawler/events.py _pages_cap   1 0 0   100%
src/lilbee/crawler/events.py _drain_page_stream   21 0 0   100%
src/lilbee/crawler/events.py _drain_page_stream._should_cancel   1 0 0   100%
src/lilbee/crawler/events.py _handle_crawl_teardown_error   7 0 0   100%
src/lilbee/crawler/events.py (no function)   14 0 0   100%
src/lilbee/crawler/fetcher.py WebFetcher.__aenter__   0 0 1   100%
src/lilbee/crawler/fetcher.py WebFetcher.__aexit__   0 0 1   100%
src/lilbee/crawler/fetcher.py WebFetcher.fetch_single   0 0 2   100%
src/lilbee/crawler/fetcher.py WebFetcher.fetch_recursive   0 0 12   100%
src/lilbee/crawler/fetcher.py (no function)   4 0 41   100%
src/lilbee/crawler/markdown.py base_url_for   4 0 0   100%
src/lilbee/crawler/markdown.py html_to_markdown   3 0 0   100%
src/lilbee/crawler/markdown.py (no function)   5 0 0   100%
src/lilbee/crawler/models.py (no function)   34 0 0   100%
src/lilbee/crawler/runner.py _get_crawl_semaphore   1 0 0   100%
src/lilbee/crawler/runner.py _resolve_depth   6 0 0   100%
src/lilbee/crawler/runner.py _resolve_page_limit   7 0 0   100%
src/lilbee/crawler/runner.py _looks_like_missing_chromium   1 0 0   100%
src/lilbee/crawler/runner.py crawl_single   28 0 0   100%
src/lilbee/crawler/runner.py crawl_recursive   28 0 0   100%
src/lilbee/crawler/runner.py _maybe_periodic_sync   13 0 0   100%
src/lilbee/crawler/runner.py _maybe_periodic_sync._run_sync   6 0 0   100%
src/lilbee/crawler/runner.py _make_flush_page   3 0 0   100%
src/lilbee/crawler/runner.py _make_flush_page._sync_flush   9 0 0   100%
src/lilbee/crawler/runner.py _make_flush_page.flush_page   4 0 0   100%
src/lilbee/crawler/runner.py _ensure_crawler_ready   5 0 0   100%
src/lilbee/crawler/runner.py _run_crawl   13 0 0   100%
src/lilbee/crawler/runner.py crawl_and_save   30 0 0   100%
src/lilbee/crawler/runner.py (no function)   38 0 0   100%
src/lilbee/crawler/save.py url_to_filename   19 0 0   100%
src/lilbee/crawler/save.py _web_dir   1 0 0   100%
src/lilbee/crawler/save.py _crawl_meta_path   1 0 0   100%
src/lilbee/crawler/save.py load_crawl_metadata   15 0 0   100%
src/lilbee/crawler/save.py save_crawl_metadata   13 0 0   100%
src/lilbee/crawler/save.py content_hash   1 0 0   100%
src/lilbee/crawler/save.py normalize_crawled_markdown   1 0 0   100%
src/lilbee/crawler/save.py _save_single_result   20 0 0   100%
src/lilbee/crawler/save.py _update_single_metadata   1 0 0   100%
src/lilbee/crawler/save.py (no function)   37 0 0   100%
src/lilbee/crawler/sitemap.py _fetch_sitemap_text   14 0 0   100%
src/lilbee/crawler/sitemap.py _count_sitemap_urls   14 0 0   100%
src/lilbee/crawler/sitemap.py (no function)   11 0 0   100%
src/lilbee/crawler/task.py TaskRegistry.__init__   1 0 0   100%
src/lilbee/crawler/task.py TaskRegistry.clear   1 0 0   100%
src/lilbee/crawler/task.py now_iso   1 0 0   100%
src/lilbee/crawler/task.py make_progress_updater   2 0 0   100%
src/lilbee/crawler/task.py make_progress_updater._on_progress   5 0 0   100%
src/lilbee/crawler/task.py run_crawl   26 0 0   100%
src/lilbee/crawler/task.py _evict_completed   9 0 0   100%
src/lilbee/crawler/task.py start_crawl   6 0 0   100%
src/lilbee/crawler/task.py get_task   1 0 0   100%
src/lilbee/crawler/task.py cancel_crawl   5 0 0   100%
src/lilbee/crawler/task.py list_tasks   1 0 0   100%
src/lilbee/crawler/task.py clear_tasks   1 0 0   100%
src/lilbee/crawler/task.py (no function)   47 0 0   100%
src/lilbee/crawler/url_filter.py get_blocked_networks   1 0 0   100%
src/lilbee/crawler/url_filter.py _embedded_ipv4   10 0 0   100%
src/lilbee/crawler/url_filter.py is_url   1 0 0   100%
src/lilbee/crawler/url_filter.py validate_crawl_url   23 0 0   100%
src/lilbee/crawler/url_filter.py require_valid_crawl_url   3 0 0   100%
src/lilbee/crawler/url_filter.py host_in_scope   5 0 0   100%
src/lilbee/crawler/url_filter.py (no function)   13 0 0   100%
src/lilbee/data/__init__.py (no function)   0 0 0   100%
src/lilbee/data/export.py decode_format   4 0 0   100%
src/lilbee/data/export.py resolve_format   7 0 0   100%
src/lilbee/data/export.py build_page_dataset   14 0 0   100%
src/lilbee/data/export.py _with_wide_offsets   2 0 0   100%
src/lilbee/data/export.py _reconstructed_arrow   3 0 0   100%
src/lilbee/data/export.py _reconstruct_from_chunks   10 0 0   100%
src/lilbee/data/export.py _write_parquet   7 0 0   100%
src/lilbee/data/export.py _write_jsonl   4 0 0   100%
src/lilbee/data/export.py serialize_dataset   4 0 0   100%
src/lilbee/data/export.py write_dataset   6 0 0   100%
src/lilbee/data/export.py _coerce_row   11 0 0   100%
src/lilbee/data/export.py _deserialize_parquet   3 0 0   100%
src/lilbee/data/export.py _deserialize_jsonl   6 0 0   100%
src/lilbee/data/export.py deserialize_dataset   1 0 0   100%
src/lilbee/data/export.py load_page_dataset   3 0 0   100%
src/lilbee/data/export.py _page_text_row   1 0 0   100%
src/lilbee/data/export.py _source_meta_from_rows   4 0 0   100%
src/lilbee/data/export.py import_dataset   22 0 0   100%
src/lilbee/data/export.py (no function)   42 0 3   100%
src/lilbee/data/extract/__init__.py (no function)   0 0 0   100%
src/lilbee/data/extract/backends/__init__.py (no function)   3 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.__init__   2 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.name   1 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.initialize   1 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.shutdown   1 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.dimensions   1 0 0   100%
src/lilbee/data/extract/backends/embedding.py LilbeeEmbeddingBackend.embed   1 0 0   100%
src/lilbee/data/extract/backends/embedding.py (no function)   10 0 3   100%
src/lilbee/data/extract/backends/registry.py register_binding   1 0 0   100%
src/lilbee/data/extract/backends/registry.py _registry_fns   2 0 0   100%
src/lilbee/data/extract/backends/registry.py _sync   9 0 0   100%
src/lilbee/data/extract/backends/registry.py _load_bindings   1 0 0   100%
src/lilbee/data/extract/backends/registry.py sync_xberg_backends   4 0 0   100%
src/lilbee/data/extract/backends/registry.py sync_xberg_backend   3 0 0   100%
src/lilbee/data/extract/backends/registry.py (no function)   24 0 3   100%
src/lilbee/data/extract/backends/tokenizer.py _estimate_tokens   1 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py LilbeeTokenizerBackend.__init__   1 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py LilbeeTokenizerBackend.name   1 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py LilbeeTokenizerBackend.initialize   1 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py LilbeeTokenizerBackend.shutdown   1 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py LilbeeTokenizerBackend.count_tokens   8 0 0   100%
src/lilbee/data/extract/backends/tokenizer.py (no function)   13 0 2   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrRequestRegistry.__init__   2 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrRequestRegistry.register   4 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrRequestRegistry.get   4 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrRequestRegistry.unregister   2 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py ocr_request   4 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py backend_options_for   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrConfigView.__init__   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrConfigView.vlm_prompt   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrConfigView.request_token   8 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py _OcrFn.__call__   0 0 1   100%
src/lilbee/data/extract/backends/vision_ocr.py _lilbee_version   4 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.__init__   2 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.name   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.version   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.supported_languages   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.supports_language   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.initialize   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.shutdown   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.backend_type   2 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.supports_table_detection   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.supports_document_processing   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.emits_structured_markdown   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.process_image   9 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.process_image_file   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py VisionOcrBackend.process_document   1 0 0   100%
src/lilbee/data/extract/backends/vision_ocr.py (no function)   47 0 7   100%
src/lilbee/data/extract/batch.py ExtractBatcher.__init__   8 0 0   100%
src/lilbee/data/extract/batch.py ExtractBatcher.submit   9 0 0   100%
src/lilbee/data/extract/batch.py ExtractBatcher._flush   11 0 0   100%
src/lilbee/data/extract/batch.py ExtractBatcher._run   13 0 0   100%
src/lilbee/data/extract/batch.py ExtractBatcher.close   4 0 0   100%
src/lilbee/data/extract/batch.py active_extract_batcher   1 0 0   100%
src/lilbee/data/extract/batch.py set_active_batcher   1 0 0   100%
src/lilbee/data/extract/batch.py reset_active_batcher   1 0 0   100%
src/lilbee/data/extract/batch.py (no function)   23 0 4   100%
src/lilbee/data/extract/chunk.py _char_budget   4 0 0   100%
src/lilbee/data/extract/chunk.py _size_params   7 0 0   100%
src/lilbee/data/extract/chunk.py _semantic_embedding_config   3 0 0   100%
src/lilbee/data/extract/chunk.py _table_chunking   5 0 0   100%
src/lilbee/data/extract/chunk.py build_chunking_config   9 0 0   100%
src/lilbee/data/extract/chunk.py chunk_text   13 0 0   100%
src/lilbee/data/extract/chunk.py (no function)   14 0 2   100%
src/lilbee/data/extract/code_chunker.py _detect_language   2 0 0   100%
src/lilbee/data/extract/code_chunker.py _ensure_language   8 0 0   100%
src/lilbee/data/extract/code_chunker.py find_line   4 0 0   100%
src/lilbee/data/extract/code_chunker.py _fallback_chunks   11 0 0   100%
src/lilbee/data/extract/code_chunker.py _chunk_header   5 0 0   100%
src/lilbee/data/extract/code_chunker.py _line_span   4 0 0   100%
src/lilbee/data/extract/code_chunker.py _chunks_from_result   7 0 0   100%
src/lilbee/data/extract/code_chunker.py chunk_code   19 0 0   100%
src/lilbee/data/extract/code_chunker.py is_code_file   1 0 0   100%
src/lilbee/data/extract/code_chunker.py (no function)   23 0 0   100%
src/lilbee/data/extract/document.py _ExtractedTable.markdown   0 0 1   100%
src/lilbee/data/extract/document.py _ExtractedTable.page_number   0 0 1   100%
src/lilbee/data/extract/document.py content_type_to_mode   3 0 0   100%
src/lilbee/data/extract/document.py _page_text_record   1 0 0   100%
src/lilbee/data/extract/document.py _title_scope   4 0 0   100%
src/lilbee/data/extract/document.py _embed_inputs   4 0 0   100%
src/lilbee/data/extract/document.py _enrich_texts   20 0 0   100%
src/lilbee/data/extract/document.py _effective_enable_ocr   2 0 0   100%
src/lilbee/data/extract/document.py _effective_ocr_timeout   2 0 0   100%
src/lilbee/data/extract/document.py ocr_override   9 0 0   100%
src/lilbee/data/extract/document.py _ocr_config   8 0 0   100%
src/lilbee/data/extract/document.py _ocr_force_requested   2 0 0   100%
src/lilbee/data/extract/document.py _pdf_options   10 0 0   100%
src/lilbee/data/extract/document.py warn_if_table_model_ignored   3 0 0   100%
src/lilbee/data/extract/document.py _layout_config   5 0 0   100%
src/lilbee/data/extract/document.py extraction_config   12 0 0   100%
src/lilbee/data/extract/document.py make_extract_batcher   6 0 0   100%
src/lilbee/data/extract/document.py extract_batching   10 0 0   100%
src/lilbee/data/extract/document.py _chunk_pages   1 0 0   100%
src/lilbee/data/extract/document.py chunk_and_embed_pages   9 0 0   100%
src/lilbee/data/extract/document.py _capture_result_page_texts   6 0 0   100%
src/lilbee/data/extract/document.py _document_tables   3 0 0   100%
src/lilbee/data/extract/document.py _warn_empty_ocr   1 0 0   100%
src/lilbee/data/extract/document.py ingest_document   31 0 0   100%
src/lilbee/data/extract/document.py ingest_document._tick   2 0 0   100%
src/lilbee/data/extract/document.py _markdown_h1   8 0 0   100%
src/lilbee/data/extract/document.py ingest_markdown   13 0 0   100%
src/lilbee/data/extract/document.py (no function)   56 0 13   100%
src/lilbee/data/extract/trace.py ExtractionTrace.used_vision   1 0 0   100%
src/lilbee/data/extract/trace.py ExtractionTrace.as_line   1 0 0   100%
src/lilbee/data/extract/trace.py configure_from_env   15 0 0   100%
src/lilbee/data/extract/trace.py trace_extraction   3 0 0   100%
src/lilbee/data/extract/trace.py (no function)   22 0 0   100%
src/lilbee/data/extract/xberg.py _input   2 0 0   100%
src/lilbee/data/extract/xberg.py _first   5 0 0   100%
src/lilbee/data/extract/xberg.py aextract_document   2 0 0   100%
src/lilbee/data/extract/xberg.py aextract_batch   8 0 0   100%
src/lilbee/data/extract/xberg.py extract_document   1 0 0   100%
src/lilbee/data/extract/xberg.py _run   6 0 0   100%
src/lilbee/data/extract/xberg.py (no function)   17 0 3   100%
src/lilbee/data/ingest/__init__.py (no function)   7 0 0   100%
src/lilbee/data/ingest/adaptive.py resolve_mode   8 0 0   100%
src/lilbee/data/ingest/adaptive.py ConcurrencyProfile.step   3 0 0   100%
src/lilbee/data/ingest/adaptive.py profile_for   1 0 0   100%
src/lilbee/data/ingest/adaptive.py _is_critical   2 0 0   100%
src/lilbee/data/ingest/adaptive.py _increase_vetoed   4 0 0   100%
src/lilbee/data/ingest/adaptive.py _hill_climb   9 0 0   100%
src/lilbee/data/ingest/adaptive.py decide   24 0 0   100%
src/lilbee/data/ingest/adaptive.py decide.clamp   1 0 0   100%
src/lilbee/data/ingest/adaptive.py decide.out   1 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.__init__   3 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.limit   1 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.acquire   3 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.release   3 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.__aenter__   2 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.__aexit__   1 0 0   100%
src/lilbee/data/ingest/adaptive.py ResizableGate.set_limit   3 0 0   100%
src/lilbee/data/ingest/adaptive.py AdaptiveController.__init__   7 0 0   100%
src/lilbee/data/ingest/adaptive.py AdaptiveController.run   14 0 0   100%
src/lilbee/data/ingest/adaptive.py enumerate_fleet_devices   7 0 0   100%
src/lilbee/data/ingest/adaptive.py make_signal_sampler   4 0 0   100%
src/lilbee/data/ingest/adaptive.py make_signal_sampler.sample   5 0 0   100%
src/lilbee/data/ingest/adaptive.py (no function)   72 0 2   100%
src/lilbee/data/ingest/code.py ingest_code_sync   7 0 0   100%
src/lilbee/data/ingest/code.py (no function)   8 0 0   100%
src/lilbee/data/ingest/discovery.py _content_type_for   5 0 0   100%
src/lilbee/data/ingest/discovery.py supported_extension_map   6 0 0   100%
src/lilbee/data/ingest/discovery.py _ScanProgress.__init__   4 0 0   100%
src/lilbee/data/ingest/discovery.py _ScanProgress.tick   10 0 0   100%
src/lilbee/data/ingest/discovery.py file_hash   2 0 0   100%
src/lilbee/data/ingest/discovery.py classify_file   6 0 0   100%
src/lilbee/data/ingest/discovery.py resolve_source_path   7 0 0   100%
src/lilbee/data/ingest/discovery.py resolve_source_path_checked   6 0 0   100%
src/lilbee/data/ingest/discovery.py _walk_root   12 0 0   100%
src/lilbee/data/ingest/discovery.py _walk_corpus   10 0 0   100%
src/lilbee/data/ingest/discovery.py discover_files   1 0 0   100%
src/lilbee/data/ingest/discovery.py corpus_has_at_least   1 0 0   100%
src/lilbee/data/ingest/discovery.py (no function)   29 0 0   100%
src/lilbee/data/ingest/errors.py error_reason   1 0 0   100%
src/lilbee/data/ingest/errors.py (no function)   2 0 0   100%
src/lilbee/data/ingest/fanout.py resolve_process_count   4 0 0   100%
src/lilbee/data/ingest/fanout.py plan_fanout   9 0 0   100%
src/lilbee/data/ingest/fanout.py shard_specs   5 0 0   100%
src/lilbee/data/ingest/fanout.py _shard_config   1 0 0   100%
src/lilbee/data/ingest/fanout.py _apply_shard_env   5 0 0   100%
src/lilbee/data/ingest/fanout.py _redirect_output   4 0 0   100%
src/lilbee/data/ingest/fanout.py _ShardReporter.__init__   5 0 0   100%
src/lilbee/data/ingest/fanout.py _ShardReporter.__call__   9 0 0   100%
src/lilbee/data/ingest/fanout.py _ShardReporter.flush   1 0 0   100%
src/lilbee/data/ingest/fanout.py _ShardReporter._send   1 0 0   100%
src/lilbee/data/ingest/fanout.py _Aggregate.__init__   2 0 0   100%
src/lilbee/data/ingest/fanout.py _Aggregate.update   5 0 0   100%
src/lilbee/data/ingest/fanout.py _drain   5 0 0   100%
src/lilbee/data/ingest/fanout.py _shard_progress_bar   1 0 0   100%
src/lilbee/data/ingest/fanout.py _supervise   17 0 0   100%
src/lilbee/data/ingest/fanout.py _final_verdicts   7 0 0   100%
src/lilbee/data/ingest/fanout.py _stop_workers   9 0 0   100%
src/lilbee/data/ingest/fanout.py run_workers   11 0 0   100%
src/lilbee/data/ingest/fanout.py aggregate_results   2 0 0   100%
src/lilbee/data/ingest/fanout.py run_shard   15 0 0   100%
src/lilbee/data/ingest/fanout.py (no function)   80 0 7   100%
src/lilbee/data/ingest/pipeline.py _max_concurrent   12 0 0   100%
src/lilbee/data/ingest/pipeline.py _rebuild_concept_clusters   12 0 0   100%
src/lilbee/data/ingest/pipeline.py build_entity_records   24 0 0   100%
src/lilbee/data/ingest/pipeline.py build_concept_records   14 0 0   100%
src/lilbee/data/ingest/pipeline.py produce_records   10 0 0   100%
src/lilbee/data/ingest/pipeline.py _disk_stat   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _stat_unchanged   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _classify_file_change   15 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_workers   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _PlanProgress.__init__   4 0 0   100%
src/lilbee/data/ingest/pipeline.py _PlanProgress.tick   9 0 0   100%
src/lilbee/data/ingest/pipeline.py _StreamStop.__init__   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _StreamStop.close   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _StreamStop.is_set   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _classify_pooled   14 0 0   100%
src/lilbee/data/ingest/pipeline.py _classify_changes   16 0 0   100%
src/lilbee/data/ingest/pipeline.py _classify_changes._classify   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_file_changes   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_items   20 0 0   100%
src/lilbee/data/ingest/pipeline.py _MovePool.__init__   8 0 0   100%
src/lilbee/data/ingest/pipeline.py _MovePool.take   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _detect_moves   8 0 0   100%
src/lilbee/data/ingest/pipeline.py _apply_moves   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _absent_sources   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_batch_bounds   7 0 0   100%
src/lilbee/data/ingest/pipeline.py _StreamedPlan.resolved   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _absorb_plan_batch   20 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_batches   26 0 0   100%
src/lilbee/data/ingest/pipeline.py _plan_batches._plan   1 0 0   100%
src/lilbee/data/ingest/pipeline.py detect_pending   8 0 0   100%
src/lilbee/data/ingest/pipeline.py _load_sync_skip_markers   4 0 0   100%
src/lilbee/data/ingest/pipeline.py _persist_skip_markers   7 0 0   100%
src/lilbee/data/ingest/pipeline.py _persist_skip_reasons   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _force_rebuild_store   4 0 0   100%
src/lilbee/data/ingest/pipeline.py _reconcile_missing   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _require_embedding_model   4 0 0   100%
src/lilbee/data/ingest/pipeline.py _run_post_ingest_passes   9 0 0   100%
src/lilbee/data/ingest/pipeline.py _update_wiki   14 0 0   100%
src/lilbee/data/ingest/pipeline.py _worker_failure_message   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _merge_worker_shards   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _sync_across_workers   11 0 0   100%
src/lilbee/data/ingest/pipeline.py sync   41 0 0   100%
src/lilbee/data/ingest/pipeline.py _phase_progress_callback   2 0 0   100%
src/lilbee/data/ingest/pipeline.py _phase_progress_callback._callback   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _build_admission   10 0 0   100%
src/lilbee/data/ingest/pipeline.py _failed_result   6 0 0   100%
src/lilbee/data/ingest/pipeline.py _stream_tasks   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _chain_plan_batches   3 0 0   100%
src/lilbee/data/ingest/pipeline.py ingest_stream   14 0 0   100%
src/lilbee/data/ingest/pipeline.py ingest_stream._process_one   20 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.__init__   6 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.corpus_total   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.resolved   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.pull   1 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.take   15 0 0   100%
src/lilbee/data/ingest/pipeline.py _ResultFeed.aclose   11 0 0   100%
src/lilbee/data/ingest/pipeline.py _refill_window   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _next_completions   9 0 0   100%
src/lilbee/data/ingest/pipeline.py _collect_results   35 0 0   100%
src/lilbee/data/ingest/pipeline.py _collect_under_bar   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _cancel_in_flight   8 0 0   100%
src/lilbee/data/ingest/pipeline.py _buffer_and_maybe_flush   6 0 0   100%
src/lilbee/data/ingest/pipeline.py _report_file_progress   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _classify_result   17 0 0   100%
src/lilbee/data/ingest/pipeline.py _retry_after_lock_timeout   6 0 0   100%
src/lilbee/data/ingest/pipeline.py _flush_batch   5 0 0   100%
src/lilbee/data/ingest/pipeline.py _flush_concept_records   7 0 0   100%
src/lilbee/data/ingest/pipeline.py _flush_entity_rows   7 0 0   100%
src/lilbee/data/ingest/pipeline.py _purge_emptied_sources   3 0 0   100%
src/lilbee/data/ingest/pipeline.py _flush_writes   14 0 0   100%
src/lilbee/data/ingest/pipeline.py (no function)   134 0 0   100%
src/lilbee/data/ingest/skip_marker.py _load_str_map   10 0 0   100%
src/lilbee/data/ingest/skip_marker.py _write_str_map   9 0 0   100%
src/lilbee/data/ingest/skip_marker.py _unlink   4 0 0   100%
src/lilbee/data/ingest/skip_marker.py load_skip_markers   1 0 0   100%
src/lilbee/data/ingest/skip_marker.py write_skip_markers   1 0 0   100%
src/lilbee/data/ingest/skip_marker.py load_skip_reasons   1 0 0   100%
src/lilbee/data/ingest/skip_marker.py write_skip_reasons   1 0 0   100%
src/lilbee/data/ingest/skip_marker.py clear_skip_markers   2 0 0   100%
src/lilbee/data/ingest/skip_marker.py (no function)   17 0 0   100%
src/lilbee/data/offload.py embed_inflight_target   7 0 0   100%
src/lilbee/data/offload.py max_workers   13 0 0   100%
src/lilbee/data/offload.py _ingest_executor   1 0 0   100%
src/lilbee/data/offload.py to_executor   4 0 0   100%
src/lilbee/data/offload.py to_ingest_thread   1 0 0   100%
src/lilbee/data/offload.py (no function)   21 0 0   100%
src/lilbee/data/store/__init__.py (no function)   6 0 0   100%
src/lilbee/data/store/core.py _drop_unsupported_far_rows   3 0 0   100%
src/lilbee/data/store/core.py _is_fts_position_overflow   2 0 0   100%
src/lilbee/data/store/core.py _lexical_rows   5 0 0   100%
src/lilbee/data/store/core.py _ann_nprobes   2 0 0   100%
src/lilbee/data/store/core.py _check_vector_dims   4 0 0   100%
src/lilbee/data/store/core.py _citations_for_wiki_predicate   1 0 0   100%
src/lilbee/data/store/core.py _get_distance   1 0 0   100%
src/lilbee/data/store/core.py _count_within_threshold   4 0 0   100%
src/lilbee/data/store/core.py Store.__init__   7 0 0   100%
src/lilbee/data/store/core.py Store._fts_config   2 0 0   100%
src/lilbee/data/store/core.py Store._index_build_lock   1 0 0   100%
src/lilbee/data/store/core.py Store._write_lock   1 0 0   100%
src/lilbee/data/store/core.py Store._invalidate_source_cache   1 0 0   100%
src/lilbee/data/store/core.py Store.source_ingested_at_map   5 0 0   100%
src/lilbee/data/store/core.py Store._chunks_schema   1 0 0   100%
src/lilbee/data/store/core.py Store._chunks_table   5 0 0   100%
src/lilbee/data/store/core.py Store._backfill_stem_titles_unlocked   15 0 0   100%
src/lilbee/data/store/core.py Store.get_meta   8 0 0   100%
src/lilbee/data/store/core.py Store._write_meta_unlocked   4 0 0   100%
src/lilbee/data/store/core.py Store._has_chunks   2 0 0   100%
src/lilbee/data/store/core.py Store.has_chunks   1 0 0   100%
src/lilbee/data/store/core.py Store.initialize_meta_if_legacy   12 0 0   100%
src/lilbee/data/store/core.py Store._ensure_embedding_compat   8 0 0   100%
src/lilbee/data/store/core.py Store._warn_stale_doc_prefix   9 0 0   100%
src/lilbee/data/store/core.py Store.assert_embedding_compatible   3 0 0   100%
src/lilbee/data/store/core.py Store._needs_canonical_meta_rewrite   3 0 0   100%
src/lilbee/data/store/core.py Store.canonicalize_meta_if_legacy   12 0 0   100%
src/lilbee/data/store/core.py Store.get_db   5 0 0   100%
src/lilbee/data/store/core.py Store.open_table   4 0 0   100%
src/lilbee/data/store/core.py Store.ensure_fts_index   12 0 0   100%
src/lilbee/data/store/core.py Store._ensure_fts_index_unlocked   20 0 0   100%
src/lilbee/data/store/core.py Store._ensure_title_fts_unlocked   9 0 0   100%
src/lilbee/data/store/core.py Store.ensure_title_fts_index   13 0 0   100%
src/lilbee/data/store/core.py Store._rebuild_fts_positionless   7 0 0   100%
src/lilbee/data/store/core.py Store.ensure_scalar_indexes   22 0 0   100%
src/lilbee/data/store/core.py Store._ensure_scalar_index_on   13 0 0   100%
src/lilbee/data/store/core.py Store.ensure_vector_index   19 0 0   100%
src/lilbee/data/store/core.py Store._add_chunks_unlocked   13 0 0   100%
src/lilbee/data/store/core.py Store.add_chunks   2 0 0   100%
src/lilbee/data/store/core.py Store.replace_chunks   6 0 0   100%
src/lilbee/data/store/core.py Store._stamp_meta_unlocked   2 0 0   100%
src/lilbee/data/store/core.py Store.absorb_rows   7 0 0   100%
src/lilbee/data/store/core.py Store._assert_schemas_match   5 0 0   100%
src/lilbee/data/store/core.py Store.adopt_fragments   37 0 0   100%
src/lilbee/data/store/core.py Store.bm25_probe   14 0 0   100%
src/lilbee/data/store/core.py Store.search   28 0 0   100%
src/lilbee/data/store/core.py Store._vector_arm   7 0 0   100%
src/lilbee/data/store/core.py Store._fts_arm   1 0 0   100%
src/lilbee/data/store/core.py Store._title_arm   19 0 0   100%
src/lilbee/data/store/core.py Store._hybrid_search   15 0 0   100%
src/lilbee/data/store/core.py Store._filter_and_rerank   11 0 0   100%
src/lilbee/data/store/core.py Store._adaptive_filter   13 0 0   100%
src/lilbee/data/store/core.py Store._fixed_filter   1 0 0   100%
src/lilbee/data/store/core.py Store.add_entities   8 0 0   100%
src/lilbee/data/store/core.py Store.entity_schema_state   8 0 0   100%
src/lilbee/data/store/core.py Store.save_entity_schema   5 0 0   100%
src/lilbee/data/store/core.py Store.mark_entity_schema_applied   4 0 0   100%
src/lilbee/data/store/core.py Store.entity_value_counts   14 0 0   100%
src/lilbee/data/store/core.py Store.entity_association_counts   17 0 0   100%
src/lilbee/data/store/core.py Store.count_term_mentions   15 0 0   100%
src/lilbee/data/store/core.py Store.count_chunks   2 0 0   100%
src/lilbee/data/store/core.py Store.get_chunks_by_source   6 0 0   100%
src/lilbee/data/store/core.py Store.get_chunks_by_indices   10 0 0   100%
src/lilbee/data/store/core.py Store._delete_by_sources_unlocked   5 0 0   100%
src/lilbee/data/store/core.py Store._delete_by_source_unlocked   1 0 0   100%
src/lilbee/data/store/core.py Store.delete_by_source   3 0 0   100%
src/lilbee/data/store/core.py Store.add_page_texts   7 0 0   100%
src/lilbee/data/store/core.py Store.get_page_texts   8 0 0   100%
src/lilbee/data/store/core.py Store.page_texts_arrow   7 0 0   100%
src/lilbee/data/store/core.py Store.sources_arrow   18 0 0   100%
src/lilbee/data/store/core.py Store.wiki_chunk_sources   5 0 0   100%
src/lilbee/data/store/core.py Store.wiki_citation_sources   5 0 0   100%
src/lilbee/data/store/core.py Store.get_sources   12 0 0   100%
src/lilbee/data/store/core.py Store.count_sources   6 0 0   100%
src/lilbee/data/store/core.py Store._source_row   2 0 0   100%
src/lilbee/data/store/core.py Store._sources_table   7 0 0   100%
src/lilbee/data/store/core.py Store._replace_source_rows_unlocked   5 0 0   100%
src/lilbee/data/store/core.py Store.upsert_source   4 0 0   100%
src/lilbee/data/store/core.py Store.update_source_stats   7 0 0   100%
src/lilbee/data/store/core.py Store.optimize_sources   8 0 0   100%
src/lilbee/data/store/core.py Store.write_chunks_batch   17 0 0   100%
src/lilbee/data/store/core.py Store._cleanup_batch_unlocked   3 0 0   100%
src/lilbee/data/store/core.py Store._add_page_texts_unlocked   3 0 0   100%
src/lilbee/data/store/core.py Store._add_chunk_records_unlocked   5 0 0   100%
src/lilbee/data/store/core.py Store._batch_source_rows   1 0 0   100%
src/lilbee/data/store/core.py Store._delete_source_unlocked   3 0 0   100%
src/lilbee/data/store/core.py Store.delete_source   3 0 0   100%
src/lilbee/data/store/core.py Store._remove_many_unlocked   5 0 0   100%
src/lilbee/data/store/core.py Store.relocate_sources   26 0 0   100%
src/lilbee/data/store/core.py Store._relocated_title   12 0 0   100%
src/lilbee/data/store/core.py Store.remove_documents   8 0 0   100%
src/lilbee/data/store/core.py Store.clear_table   5 0 0   100%
src/lilbee/data/store/core.py Store.clear_and_add   6 0 0   100%
src/lilbee/data/store/core.py Store.add_citations   7 0 0   100%
src/lilbee/data/store/core.py Store.get_citations_for_wiki   6 0 0   100%
src/lilbee/data/store/core.py Store.get_citations_for_source   6 0 0   100%
src/lilbee/data/store/core.py Store.delete_citations_for_wiki   1 0 0   100%
src/lilbee/data/store/core.py Store.delete_all_wiki_rows   4 0 0   100%
src/lilbee/data/store/core.py Store.replace_citations_for_wiki   1 0 0   100%
src/lilbee/data/store/core.py Store.replace_wiki_mentions_for_source   2 0 0   100%
src/lilbee/data/store/core.py Store.wiki_mention_rows   12 0 0   100%
src/lilbee/data/store/core.py Store.clear_wiki_mentions   1 0 0   100%
src/lilbee/data/store/core.py Store.has_wiki_mentions   2 0 0   100%
src/lilbee/data/store/core.py Store._memories_schema   1 0 0   100%
src/lilbee/data/store/core.py Store._duplicate_memory_id_unlocked   7 0 0   100%
src/lilbee/data/store/core.py Store._evict_overflow_unlocked   8 0 0   100%
src/lilbee/data/store/core.py Store.add_memory   16 0 0   100%
src/lilbee/data/store/core.py Store.get_memories   10 0 0   100%
src/lilbee/data/store/core.py Store.search_memories   7 0 0   100%
src/lilbee/data/store/core.py Store.update_memory   15 0 0   100%
src/lilbee/data/store/core.py Store.delete_memory   8 0 0   100%
src/lilbee/data/store/core.py Store._owned_memory_predicate   1 0 0   100%
src/lilbee/data/store/core.py Store.rebuild_memory_embeddings   16 0 0   100%
src/lilbee/data/store/core.py Store.close   4 0 0   100%
src/lilbee/data/store/core.py Store.drop_all   10 0 0   100%
src/lilbee/data/store/core.py (no function)   157 0 5   100%
src/lilbee/data/store/fusion.py vector_similarity   1 0 0   100%
src/lilbee/data/store/fusion.py adaptive_weight_scale   8 0 0   100%
src/lilbee/data/store/fusion.py normalized_bm25   4 0 0   100%
src/lilbee/data/store/fusion.py _key   1 0 0   100%
src/lilbee/data/store/fusion.py _rank_weight   1 0 0   100%
src/lilbee/data/store/fusion.py _merge_arm   10 0 0   100%
src/lilbee/data/store/fusion.py fuse_arms   8 0 0   100%
src/lilbee/data/store/fusion.py (no function)   14 0 0   100%
src/lilbee/data/store/lance_helpers.py install_lancedb_thread_error_suppressor   3 0 0   100%
src/lilbee/data/store/lance_helpers.py install_lancedb_thread_error_suppressor._hook   3 0 0   100%
src/lilbee/data/store/lance_helpers.py table_names   5 0 0   100%
src/lilbee/data/store/lance_helpers.py ensure_table   6 0 0   100%
src/lilbee/data/store/lance_helpers.py _safe_delete_unlocked   6 0 0   100%
src/lilbee/data/store/lance_helpers.py safe_delete   2 0 0   100%
src/lilbee/data/store/lance_helpers.py escape_sql_string   1 0 0   100%
src/lilbee/data/store/lance_helpers.py local_owner_predicate   1 0 0   100%
src/lilbee/data/store/lance_helpers.py human_recall_predicate   1 0 0   100%
src/lilbee/data/store/lance_helpers.py agent_recall_predicate   1 0 0   100%
src/lilbee/data/store/lance_helpers.py _chunk_type_predicate   4 0 0   100%
src/lilbee/data/store/lance_helpers.py _has_fts_index   7 0 0   100%
src/lilbee/data/store/lance_helpers.py _has_scalar_index   4 0 0   100%
src/lilbee/data/store/lance_helpers.py _has_vector_index   7 0 0   100%
src/lilbee/data/store/lance_helpers.py _escape_like_wildcards   1 0 0   100%
src/lilbee/data/store/lance_helpers.py _sources_search_filter   7 0 0   100%
src/lilbee/data/store/lance_helpers.py refs_compatible   9 0 0   100%
src/lilbee/data/store/lance_helpers.py (no function)   25 0 5   100%
src/lilbee/data/store/ranking.py cosine_sim   7 0 0   100%
src/lilbee/data/store/ranking.py mmr_rerank   25 0 0   100%
src/lilbee/data/store/ranking.py (no function)   8 0 0   100%
src/lilbee/data/store/schema.py _meta_schema   1 0 0   100%
src/lilbee/data/store/schema.py _entity_schema_state_schema   1 0 0   100%
src/lilbee/data/store/schema.py _sources_schema   1 0 0   100%
src/lilbee/data/store/schema.py _page_texts_schema   1 0 0   100%
src/lilbee/data/store/schema.py _citations_schema   1 0 0   100%
src/lilbee/data/store/schema.py _wiki_mentions_schema   1 0 0   100%
src/lilbee/data/store/schema.py (no function)   8 0 0   100%
src/lilbee/data/store/shard_merge.py merge_shards   19 0 0   100%
src/lilbee/data/store/shard_merge.py _adopt_chunks   11 0 0   100%
src/lilbee/data/store/shard_merge.py _reconcile_sources   5 0 0   100%
src/lilbee/data/store/shard_merge.py _source_count   3 0 0   100%
src/lilbee/data/store/shard_merge.py _copy_table   1 0 0   100%
src/lilbee/data/store/shard_merge.py _predicates   7 0 0   100%
src/lilbee/data/store/shard_merge.py _in_predicate   2 0 0   100%
src/lilbee/data/store/shard_merge.py _copy_rows   9 0 0   100%
src/lilbee/data/store/shard_merge.py (no function)   16 0 4   100%
src/lilbee/data/store/types.py ConceptRecords.merged   1 0 0   100%
src/lilbee/data/store/types.py scope_to_chunk_type   6 0 0   100%
src/lilbee/data/store/types.py SearchChunk._coerce_none_chunk_type   1 0 0   100%
src/lilbee/data/store/types.py source_stat   7 0 0   100%
src/lilbee/data/store/types.py agent_owner   1 0 0   100%
src/lilbee/data/store/types.py is_agent_owner   1 0 0   100%
src/lilbee/data/store/types.py EmbeddingModelMismatchError.__init__   5 0 0   100%
src/lilbee/data/store/types.py EmbeddingModelMismatchError.dims_match   1 0 0   100%
src/lilbee/data/store/types.py EmbeddingModelMismatchError._build_message   3 0 0   100%
src/lilbee/data/store/types.py (no function)   146 0 0   100%
src/lilbee/data/title.py is_junk_stem   6 0 0   100%
src/lilbee/data/title.py ExtractionMetadata.title   0 0 1   100%
src/lilbee/data/title.py ExtractionMetadata.authors   0 0 1   100%
src/lilbee/data/title.py ExtractionMetadata.created_at   0 0 1   100%
src/lilbee/data/title.py derive_title   6 0 0   100%
src/lilbee/data/title.py source_meta_from_extraction   7 0 0   100%
src/lilbee/data/title.py (no function)   13 0 9   100%
src/lilbee/data/types.py ShardId.owns   2 0 0   100%
src/lilbee/data/types.py SyncResult.__str__   9 0 0   100%
src/lilbee/data/types.py SyncResult.__repr__   1 0 0   100%
src/lilbee/data/types.py SyncResult.__rich__   1 0 0   100%
src/lilbee/data/types.py (no function)   79 0 0   100%
src/lilbee/mcp_server.py set_http_mounted   1 0 0   100%
src/lilbee/mcp_server.py _caller_cancelled   1 0 0   100%
src/lilbee/mcp_server.py _offload_sync   5 0 0   100%
src/lilbee/mcp_server.py _offload_sync._runner   3 0 0   100%
src/lilbee/mcp_server.py _tool   2 0 0   100%
src/lilbee/mcp_server.py _tool_named   2 0 0   100%
src/lilbee/mcp_server.py _tool_named.deco   2 0 0   100%
src/lilbee/mcp_server.py _tool_if   4 0 0   100%
src/lilbee/mcp_server.py _tool_if.deco   2 0 0   100%
src/lilbee/mcp_server.py _wiki_enabled   1 0 0   100%
src/lilbee/mcp_server.py _error   1 0 0   100%
src/lilbee/mcp_server.py _wiki_tool   5 0 0   100%
src/lilbee/mcp_server.py _wiki_tool.guarded   3 0 0   100%
src/lilbee/mcp_server.py search   18 0 0   100%
src/lilbee/mcp_server.py status   2 0 0   100%
src/lilbee/mcp_server.py _entity_status_dict   3 0 0   100%
src/lilbee/mcp_server.py _cancel_token   6 0 0   100%
src/lilbee/mcp_server.py sync   3 0 0   100%
src/lilbee/mcp_server.py add   34 0 0   100%
src/lilbee/mcp_server.py crawl   13 0 0   100%
src/lilbee/mcp_server.py crawl_status   4 0 0   100%
src/lilbee/mcp_server.py crawl_cancel   4 0 0   100%
src/lilbee/mcp_server.py init   18 0 0   100%
src/lilbee/mcp_server.py remove   3 0 0   100%
src/lilbee/mcp_server.py list_documents   2 0 0   100%
src/lilbee/mcp_server.py _require_agent_session   4 0 0   100%
src/lilbee/mcp_server.py sessions_list   4 0 0   100%
src/lilbee/mcp_server.py session_get   7 0 0   100%
src/lilbee/mcp_server.py session_create   4 0 0   100%
src/lilbee/mcp_server.py session_add_message   13 0 0   100%
src/lilbee/mcp_server.py session_set_summary   8 0 0   100%
src/lilbee/mcp_server.py session_rename   8 0 0   100%
src/lilbee/mcp_server.py session_delete   8 0 0   100%
src/lilbee/mcp_server.py export_dataset   6 0 0   100%
src/lilbee/mcp_server.py import_dataset   10 0 0   100%
src/lilbee/mcp_server.py import_dataset.on_progress   6 0 0   100%
src/lilbee/mcp_server.py reset   8 0 0   100%
src/lilbee/mcp_server.py wiki_lint   4 0 0   100%
src/lilbee/mcp_server.py wiki_citations   8 0 0   100%
src/lilbee/mcp_server.py wiki_status   10 0 0   100%
src/lilbee/mcp_server.py wiki_list   5 0 0   100%
src/lilbee/mcp_server.py wiki_read   7 0 0   100%
src/lilbee/mcp_server.py wiki_build   6 0 0   100%
src/lilbee/mcp_server.py wiki_update   2 0 0   100%
src/lilbee/mcp_server.py wiki_synthesize   2 0 0   100%
src/lilbee/mcp_server.py wiki_prune   3 0 0   100%
src/lilbee/mcp_server.py wiki_index   3 0 0   100%
src/lilbee/mcp_server.py wiki_generate   10 0 0   100%
src/lilbee/mcp_server.py wiki_wipe   7 0 0   100%
src/lilbee/mcp_server.py _setting_info_to_dict   1 0 0   100%
src/lilbee/mcp_server.py _json_safe   3 0 0   100%
src/lilbee/mcp_server.py settings_list   5 0 0   100%
src/lilbee/mcp_server.py settings_get   5 0 0   100%
src/lilbee/mcp_server.py settings_set   7 0 0   100%
src/lilbee/mcp_server.py settings_reset   7 0 0   100%
src/lilbee/mcp_server.py model_list   11 0 0   100%
src/lilbee/mcp_server.py catalog_browse   13 0 0   100%
src/lilbee/mcp_server.py model_show   6 0 0   100%
src/lilbee/mcp_server.py _log_progress_failure   4 0 0   100%
src/lilbee/mcp_server.py model_pull   17 0 0   100%
src/lilbee/mcp_server.py model_pull.on_update   6 0 0   100%
src/lilbee/mcp_server.py model_rm   6 0 0   100%
src/lilbee/mcp_server.py wiki_drafts_list   4 0 0   100%
src/lilbee/mcp_server.py wiki_drafts_diff   10 0 0   100%
src/lilbee/mcp_server.py _collapse_nullable_anyof   8 0 0   100%
src/lilbee/mcp_server.py _strip_property_noise   5 0 0   100%
src/lilbee/mcp_server.py _flatten_tool_description   1 0 0   100%
src/lilbee/mcp_server.py _strip_schema   8 0 0   100%
src/lilbee/mcp_server.py LilbeeMCP.list_tools   9 0 0   100%
src/lilbee/mcp_server.py _client_name   4 0 0   100%
src/lilbee/mcp_server.py _slug   2 0 0   100%
src/lilbee/mcp_server.py _anon_owner_id   9 0 0   100%
src/lilbee/mcp_server.py _derive_owner   5 0 0   100%
src/lilbee/mcp_server.py memory_remember   5 0 0   100%
src/lilbee/mcp_server.py memory_recall   5 0 0   100%
src/lilbee/mcp_server.py memory_list   5 0 0   100%
src/lilbee/mcp_server.py memory_forget   6 0 0   100%
src/lilbee/mcp_server.py _placement_dict   2 0 0   100%
src/lilbee/mcp_server.py _placement_guard   6 0 0   100%
src/lilbee/mcp_server.py _placement_result   1 0 0   100%
src/lilbee/mcp_server.py _parse_spec   2 0 0   100%
src/lilbee/mcp_server.py get_gpus_tool   2 0 0   100%
src/lilbee/mcp_server.py get_gpus_tool._body   5 0 0   100%
src/lilbee/mcp_server.py get_placement_tool   1 0 0   100%
src/lilbee/mcp_server.py preview_placement_tool   1 0 0   100%
src/lilbee/mcp_server.py set_placement_tool   4 0 0   100%
src/lilbee/mcp_server.py clear_placement_tool   3 0 0   100%
src/lilbee/mcp_server.py build_mcp_server   5 0 0   100%
src/lilbee/mcp_server.py _exit_on_parent_death   4 0 0   100%
src/lilbee/mcp_server.py main   9 0 0   100%
src/lilbee/mcp_server.py (no function)   188 0 2   100%
src/lilbee/modelhub/__init__.py (no function)   0 0 0   100%
src/lilbee/modelhub/model_info.py _cache_key   1 0 0   100%
src/lilbee/modelhub/model_info.py invalidate_cache   1 0 0   100%
src/lilbee/modelhub/model_info.py get_model_architecture   10 0 0   100%
src/lilbee/modelhub/model_info.py _read_chat_arch   11 0 0   100%
src/lilbee/modelhub/model_info.py _read_embed_arch   10 0 0   100%
src/lilbee/modelhub/model_info.py _read_vision_arch   12 0 0   100%
src/lilbee/modelhub/model_info.py (no function)   18 0 0   100%
src/lilbee/modelhub/model_manager/__init__.py (no function)   5 0 0   100%
src/lilbee/modelhub/model_manager/core.py _prefixed_source   8 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.__init__   4 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.list_installed   15 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.list_native_identities   15 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._invalidate_installed_cache   6 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._list_native   1 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._list_remote   3 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.is_installed   5 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._is_native   7 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._is_remote   1 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.get_source   8 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.pull   9 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.enforce_arch_compat   5 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._pull_native   8 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager.remove   8 0 0   100%
src/lilbee/modelhub/model_manager/core.py ModelManager._remove_native   13 0 0   100%
src/lilbee/modelhub/model_manager/core.py (no function)   30 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _discovery_client   1 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _http_get   1 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _classify_remote_task   9 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py classify_remote_models   2 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py classify_all_remote_models   4 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _discover_via_ollama_tags   16 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _discover_via_openai_models   15 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _has_provider_key   3 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py discover_api_models   10 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py detect_remote_embedding_models   1 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py _installed_native_refs   5 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py gather_known_model_refs   7 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py KnownModelCache.__init__   5 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py KnownModelCache.refs   10 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py KnownModelCache.resolve   11 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py KnownModelCache.invalidate   3 0 0   100%
src/lilbee/modelhub/model_manager/discovery.py (no function)   41 0 0   100%
src/lilbee/modelhub/model_manager/types.py (no function)   17 0 0   100%
src/lilbee/modelhub/model_manager/validation.py _is_local_installed   5 0 3   100%
src/lilbee/modelhub/model_manager/validation.py _local_server_reachable   2 0 3   100%
src/lilbee/modelhub/model_manager/validation.py _classify_local_server_ref   6 0 0   100%
src/lilbee/modelhub/model_manager/validation.py _classify_uninstalled_ref   11 0 2   100%
src/lilbee/modelhub/model_manager/validation.py _classify_ref   9 0 0   100%
src/lilbee/modelhub/model_manager/validation.py validate_persisted_model   2 0 0   100%
src/lilbee/modelhub/model_manager/validation.py _first_available_api_chat_ref   10 0 0   100%
src/lilbee/modelhub/model_manager/validation.py _first_installed_local_ref   10 0 0   100%
src/lilbee/modelhub/model_manager/validation.py _canonicalize   9 0 0   100%
src/lilbee/modelhub/model_manager/validation.py canonicalize_chat_model   1 0 0   100%
src/lilbee/modelhub/model_manager/validation.py canonicalize_embedding_model   1 0 0   100%
src/lilbee/modelhub/model_manager/validation.py (no function)   39 0 0   100%
src/lilbee/modelhub/models.py _catalog_from_picks   1 0 0   100%
src/lilbee/modelhub/models.py _get_model_catalog   2 0 0   100%
src/lilbee/modelhub/models.py __getattr__   3 0 0   100%
src/lilbee/modelhub/models.py get_system_ram_gb   15 0 0   100%
src/lilbee/modelhub/models.py get_free_disk_gb   5 0 0   100%
src/lilbee/modelhub/models.py pick_default_model   7 0 0   100%
src/lilbee/modelhub/models.py _model_download_size_gb   3 0 0   100%
src/lilbee/modelhub/models.py display_model_picker   28 0 0   100%
src/lilbee/modelhub/models.py prompt_model_choice   18 0 0   100%
src/lilbee/modelhub/models.py validate_disk_and_pull   5 0 0   100%
src/lilbee/modelhub/models.py pull_with_progress   11 0 0   100%
src/lilbee/modelhub/models.py pull_with_progress._on_bytes   2 0 0   100%
src/lilbee/modelhub/models.py ensure_chat_model   8 0 0   100%
src/lilbee/modelhub/models.py list_installed_models   14 0 0   100%
src/lilbee/modelhub/models.py (no function)   37 0 0   100%
src/lilbee/modelhub/registry.py _validate_hf_repo   3 0 0   100%
src/lilbee/modelhub/registry.py _validate_gguf_filename   3 0 0   100%
src/lilbee/modelhub/registry.py parse_hf_ref   6 0 0   100%
src/lilbee/modelhub/registry.py repo_to_dir   1 0 0   100%
src/lilbee/modelhub/registry.py ModelManifest.ref   1 0 0   100%
src/lilbee/modelhub/registry.py ModelManifest.disk_size_bytes   1 0 0   100%
src/lilbee/modelhub/registry.py _copy_atomic   9 0 0   100%
src/lilbee/modelhub/registry.py _blob_size_matches   4 0 0   100%
src/lilbee/modelhub/registry.py _sha256_file   8 0 0   100%
src/lilbee/modelhub/registry.py _blob_digest   4 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.__init__   2 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._repo_cache_dir   1 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.resolve   26 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._resolve_split   8 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._resolve_repo_only   22 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._cached_gguf_names   5 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._snapshot_gguf_path   16 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._find_cached_gguf   2 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._split_shards_present   4 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.shard_paths   4 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._reregister_from_cache   8 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.is_installed   5 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.install   10 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.remove   19 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._recover_legacy_shard_blobs   4 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._gc_blob   22 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.list_installed   11 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._blob_present   4 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.get_manifest   5 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry.installed_ref_for_repo   2 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._manifest_path   5 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._read_manifest   1 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._write_manifest   13 0 0   100%
src/lilbee/modelhub/registry.py ModelRegistry._load_manifest_file   8 0 0   100%
src/lilbee/modelhub/registry.py _repo_relative_gguf_name   6 0 0   100%
src/lilbee/modelhub/registry.py _shard_accounting   13 0 0   100%
src/lilbee/modelhub/registry.py register_downloaded_model   12 0 0   100%
src/lilbee/modelhub/registry.py (no function)   77 0 2   100%
src/lilbee/modelhub/role_validator.py TaskMismatchError.__init__   4 0 0   100%
src/lilbee/modelhub/role_validator.py _model_task_validation_bypassed   3 0 0   100%
src/lilbee/modelhub/role_validator.py _resolve_installed_task   4 0 0   100%
src/lilbee/modelhub/role_validator.py _skips_catalog_check   5 0 0   100%
src/lilbee/modelhub/role_validator.py _canonical_pick_ref   6 0 0   100%
src/lilbee/modelhub/role_validator.py _installed_ref_and_task   4 0 0   100%
src/lilbee/modelhub/role_validator.py _not_installed   1 0 0   100%
src/lilbee/modelhub/role_validator.py validate_model_task_assignment   12 0 0   100%
src/lilbee/modelhub/role_validator.py (no function)   20 0 0   100%
src/lilbee/parent_monitor.py parse_parent_pid   13 0 0   100%
src/lilbee/parent_monitor.py _parent_start_time   4 0 0   100%
src/lilbee/parent_monitor.py _same_process   6 0 0   100%
src/lilbee/parent_monitor.py _parent_alive   1 0 0   100%
src/lilbee/parent_monitor.py watch_parent_async   5 0 0   100%
src/lilbee/parent_monitor.py watch_parent_thread   4 0 0   100%
src/lilbee/parent_monitor.py watch_parent_thread._loop   5 0 0   100%
src/lilbee/parent_monitor.py (no function)   17 0 0   100%
src/lilbee/providers/__init__.py (no function)   0 0 0   100%
src/lilbee/providers/backend_names.py (no function)   11 0 0   100%
src/lilbee/providers/base.py prompt_token_budget   1 0 0   100%
src/lilbee/providers/base.py estimate_budget_tokens   1 0 0   100%
src/lilbee/providers/base.py ClosableIterator.close   0 0 1   100%
src/lilbee/providers/base.py LLMOptions.to_dict   1 0 0   100%
src/lilbee/providers/base.py filter_options   1 0 0   100%
src/lilbee/providers/base.py normalize_generation_options   7 0 0   100%
src/lilbee/providers/base.py ProviderError.__init__   3 0 0   100%
src/lilbee/providers/base.py require_role_ref   3 0 0   100%
src/lilbee/providers/base.py FinishReason.coerce   6 0 0   100%
src/lilbee/providers/base.py LLMProvider.embed   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.count_tokens   0 0 7   100%
src/lilbee/providers/base.py LLMProvider.chat   0 0 1   100%
src/lilbee/providers/base.py LLMProvider.chat   0 0 1   100%
src/lilbee/providers/base.py LLMProvider.chat   0 0 12   100%
src/lilbee/providers/base.py LLMProvider.supports_tools   0 0 6   100%
src/lilbee/providers/base.py LLMProvider.chat_with_tools   0 0 7   100%
src/lilbee/providers/base.py LLMProvider.vision_ocr   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.vision_slot_capacity   0 0 9   100%
src/lilbee/providers/base.py LLMProvider.list_models   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.list_chat_models   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.pull_model   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.show_model   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.get_capabilities   0 0 6   100%
src/lilbee/providers/base.py LLMProvider.rerank   0 0 14   100%
src/lilbee/providers/base.py LLMProvider.supports_rerank   0 0 10   100%
src/lilbee/providers/base.py LLMProvider.shutdown   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.invalidate_load_cache   0 0 2   100%
src/lilbee/providers/base.py LLMProvider.drop_loaded_models_async   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.warm_up_pool   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.cancel_inference   0 0 7   100%
src/lilbee/providers/base.py LLMProvider.reload_role   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.reload_placement   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.role_ready   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.max_concurrent_chats   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.served_chat_ctx   0 0 7   100%
src/lilbee/providers/base.py LLMProvider.warm_pending   0 0 7   100%
src/lilbee/providers/base.py LLMProvider.warm_progress   0 0 8   100%
src/lilbee/providers/base.py LLMProvider.add_spawn_listener   0 0 7   100%
src/lilbee/providers/base.py (no function)   86 0 118   100%
src/lilbee/providers/engine_params.py resolve_embed_ctx   3 0 0   100%
src/lilbee/providers/engine_params.py resolve_llm_rerank_ctx   2 0 0   100%
src/lilbee/providers/engine_params.py chat_options_to_kwargs   5 0 0   100%
src/lilbee/providers/engine_params.py resolve_model_path   15 0 0   100%
src/lilbee/providers/engine_params.py _kv_elem_bytes_for_cfg   1 0 0   100%
src/lilbee/providers/engine_params.py chat_ctx_ceiling   4 0 0   100%
src/lilbee/providers/engine_params.py resolve_chat_ctx   11 0 0   100%
src/lilbee/providers/engine_params.py min_usable_chat_ctx   1 0 0   100%
src/lilbee/providers/engine_params.py resolve_n_gpu_layers   5 0 0   100%
src/lilbee/providers/engine_params.py resolve_vision_ctx   7 0 0   100%
src/lilbee/providers/engine_params.py (no function)   33 0 2   100%
src/lilbee/providers/factory.py create_provider   10 0 2   100%
src/lilbee/providers/factory.py (no function)   5 0 3   100%
src/lilbee/providers/fleet/__init__.py (no function)   0 0 0   100%
src/lilbee/providers/fleet/adapters.py resolve_rerank_mode   7 0 0   100%
src/lilbee/providers/fleet/adapters.py rerank_spec   1 0 0   100%
src/lilbee/providers/fleet/adapters.py embed_spec   9 0 0   100%
src/lilbee/providers/fleet/adapters.py expert_offload_patterns   3 0 0   100%
src/lilbee/providers/fleet/adapters.py _attention_args   8 0 0   100%
src/lilbee/providers/fleet/adapters.py _main_gpu_args   8 0 0   100%
src/lilbee/providers/fleet/adapters.py _thread_args   2 0 0   100%
src/lilbee/providers/fleet/adapters.py build_server_argv   20 0 0   100%
src/lilbee/providers/fleet/adapters.py (no function)   41 0 0   100%
src/lilbee/providers/fleet/binary.py _bundled_tool   6 0 0   100%
src/lilbee/providers/fleet/binary.py engine_pin   1 0 0   100%
src/lilbee/providers/fleet/binary.py _engine_build_id   16 0 0   100%
src/lilbee/providers/fleet/binary.py _engine_wheel_version   5 0 0   100%
src/lilbee/providers/fleet/binary.py _binary_signature   5 0 0   100%
src/lilbee/providers/fleet/binary.py _load_config_signature   4 0 0   100%
src/lilbee/providers/fleet/binary.py resolve_engine_tool   15 0 0   100%
src/lilbee/providers/fleet/binary.py resolve_llama_server   1 0 0   100%
src/lilbee/providers/fleet/binary.py resolve_llama_swap   1 0 0   100%
src/lilbee/providers/fleet/binary.py resolve_gguf_parser   1 0 0   100%
src/lilbee/providers/fleet/binary.py llama_server_runtime_env   2 0 0   100%
src/lilbee/providers/fleet/binary.py (no function)   24 0 0   100%
src/lilbee/providers/fleet/child_guard.py bind_lifetime_to_parent   4 0 0   100%
src/lilbee/providers/fleet/child_guard.py _make_pdeathsig_preexec   5 0 0   100%
src/lilbee/providers/fleet/child_guard.py _make_pdeathsig_preexec._set_pdeathsig   3 0 0   100%
src/lilbee/providers/fleet/child_guard.py _LifetimeSpawner.__init__   2 0 0   100%
src/lilbee/providers/fleet/child_guard.py _LifetimeSpawner.spawn   5 0 0   100%
src/lilbee/providers/fleet/child_guard.py _LifetimeSpawner.close   4 0 0   100%
src/lilbee/providers/fleet/child_guard.py _assign_to_kill_on_close_job   0 0 53   100%
src/lilbee/providers/fleet/child_guard.py _watch_via_death_pipe   14 0 0   100%
src/lilbee/providers/fleet/child_guard.py release_death_pipe   4 0 0   100%
src/lilbee/providers/fleet/child_guard.py spawn_bound_child   17 0 0   100%
src/lilbee/providers/fleet/child_guard.py (no function)   29 0 8   100%
src/lilbee/providers/fleet/client.py _estimate_tokens   1 0 0   100%
src/lilbee/providers/fleet/client.py _raise_for_status   18 0 0   100%
src/lilbee/providers/fleet/client.py classify_upstream_death   6 0 0   100%
src/lilbee/providers/fleet/client.py is_load_capacity_failure   1 0 0   100%
src/lilbee/providers/fleet/client.py is_rebuildable_failure   1 0 0   100%
src/lilbee/providers/fleet/client.py _classify_error   7 0 0   100%
src/lilbee/providers/fleet/client.py is_connection_failure   3 0 0   100%
src/lilbee/providers/fleet/client.py _is_transient_probe_failure   3 0 0   100%
src/lilbee/providers/fleet/client.py _upstream_failure_tail   8 0 0   100%
src/lilbee/providers/fleet/client.py _fetch_log_tail   8 0 0   100%
src/lilbee/providers/fleet/client.py retry_on_busy   14 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.__init__   15 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.healthy   4 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.mark_unhealthy   3 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.mark_healthy   2 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.reserve   2 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.release   2 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.health   5 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat   0 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat   0 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat   0 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat   8 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._chat_stream   11 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat_bounded   12 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat_tools   12 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat_result   17 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.chat_stream_items   2 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._open_chat_stream   10 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._chat_payload   9 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._prepare_chat_messages   4 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._ensure_alternation_probed   8 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._probe_alternation   9 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._chat_probe   8 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.embed   7 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._embed_subbatch   9 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.rerank   10 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._fit_estimated   3 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._rerank_batch   8 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._rerank_llm   7 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._llm_rerank_one   4 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._llm_rerank_one._call   4 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._embeddings_call   4 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._embeddings_call._call   7 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._truncate_and_subbatch   17 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._fit_input   9 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._native_route   1 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._tokenize   3 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.count_tokens   1 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._detokenize   3 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._abortable   6 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.abort_streams   5 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient.close   2 0 0   100%
src/lilbee/providers/fleet/client.py LlamaServerClient._track   1 0 0   100%
src/lilbee/providers/fleet/client.py _InFlight.__init__   1 0 0   100%
src/lilbee/providers/fleet/client.py _InFlight.__enter__   2 0 0   100%
src/lilbee/providers/fleet/client.py _InFlight.__exit__   2 0 0   100%
src/lilbee/providers/fleet/client.py _embedding_vector   7 0 0   100%
src/lilbee/providers/fleet/client.py _rerank_score   4 0 0   100%
src/lilbee/providers/fleet/client.py _first_token_top_logprobs   7 0 0   100%
src/lilbee/providers/fleet/client.py _llm_rerank_score   15 0 0   100%
src/lilbee/providers/fleet/client.py _parse_sse_deltas   14 0 0   100%
src/lilbee/providers/fleet/client.py _ThinkInliner.__init__   2 0 0   100%
src/lilbee/providers/fleet/client.py _ThinkInliner.feed   14 0 0   100%
src/lilbee/providers/fleet/client.py _ThinkInliner.finish   4 0 0   100%
src/lilbee/providers/fleet/client.py _inline_message_reasoning   5 0 0   100%
src/lilbee/providers/fleet/client.py _usage_from_body   6 0 0   100%
src/lilbee/providers/fleet/client.py _coerce_finish_reason   1 0 0   100%
src/lilbee/providers/fleet/client.py _tool_call_delta_from_chunk   7 0 0   100%
src/lilbee/providers/fleet/client.py _parse_sse_stream_items   26 0 0   100%
src/lilbee/providers/fleet/client.py _arguments_to_str   5 0 0   100%
src/lilbee/providers/fleet/client.py _parse_native_tool_calls   15 0 0   100%
src/lilbee/providers/fleet/client.py _bare_call_from_mapping   7 0 0   100%
src/lilbee/providers/fleet/client.py _recover_bare_json_tool_calls   12 0 0   100%
src/lilbee/providers/fleet/client.py _tool_call_delta_from_recovered   1 0 0   100%
src/lilbee/providers/fleet/client.py _recover_bare_json_stream   22 0 0   100%
src/lilbee/providers/fleet/client.py _passthrough_text   2 0 0   100%
src/lilbee/providers/fleet/client.py _flush_plain   2 0 0   100%
src/lilbee/providers/fleet/client.py _recover_buffer   8 0 0   100%
src/lilbee/providers/fleet/client.py (no function)   169 0 0   100%
src/lilbee/providers/fleet/contract.py decoded_launches   4 0 0   100%
src/lilbee/providers/fleet/contract.py served_pairs   2 0 0   100%
src/lilbee/providers/fleet/contract.py chat_ctx_covers   6 0 0   100%
src/lilbee/providers/fleet/contract.py contract_matches   6 0 0   100%
src/lilbee/providers/fleet/contract.py (no function)   8 0 3   100%
src/lilbee/providers/fleet/ctx.py fit_split_ctx   18 0 0   100%
src/lilbee/providers/fleet/ctx.py fit_split_ctx._peak_fits   5 0 0   100%
src/lilbee/providers/fleet/ctx.py (no function)   10 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _wheel_lib_dir   8 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _cuda_wheel_lib_dirs   1 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _ships_its_own_cuda_runtime   2 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _dir_entries   4 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py cuda_runtime_env   15 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py apply_cuda_runtime_env   1 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _linked_cuda_major   2 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py _links_cuda_runtime   2 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py assert_cuda_devices_usable   11 0 0   100%
src/lilbee/providers/fleet/cuda_runtime.py (no function)   21 0 2   100%
src/lilbee/providers/fleet/devices.py _parse_topo_matrix   20 0 0   100%
src/lilbee/providers/fleet/devices.py host_lacks_nvlink   6 0 0   100%
src/lilbee/providers/fleet/devices.py _probe_env   3 0 0   100%
src/lilbee/providers/fleet/devices.py probe_devices   15 0 0   100%
src/lilbee/providers/fleet/devices.py _run_list_devices   4 0 0   100%
src/lilbee/providers/fleet/devices.py _decoded_output   3 0 0   100%
src/lilbee/providers/fleet/devices.py _probe_tail   2 0 0   100%
src/lilbee/providers/fleet/devices.py _parse_devices   18 0 0   100%
src/lilbee/providers/fleet/devices.py _is_software_renderer   2 0 0   100%
src/lilbee/providers/fleet/devices.py _loader_free_bytes   4 0 0   100%
src/lilbee/providers/fleet/devices.py _vulkan_device_type   2 0 0   100%
src/lilbee/providers/fleet/devices.py _is_unusable_vulkan   6 0 0   100%
src/lilbee/providers/fleet/devices.py _is_unified   6 0 0   100%
src/lilbee/providers/fleet/devices.py _select_backend   11 0 0   100%
src/lilbee/providers/fleet/devices.py _backend_preference   3 0 0   100%
src/lilbee/providers/fleet/devices.py _compose_visible   9 0 0   100%
src/lilbee/providers/fleet/devices.py visible_env   13 0 0   100%
src/lilbee/providers/fleet/devices.py amd_visible_var   4 0 0   100%
src/lilbee/providers/fleet/devices.py _amd_visible_env   2 0 0   100%
src/lilbee/providers/fleet/devices.py (no function)   68 0 0   100%
src/lilbee/providers/fleet/engine_diagnostics.py ldd_output   8 0 0   100%
src/lilbee/providers/fleet/engine_diagnostics.py links_any   4 0 0   100%
src/lilbee/providers/fleet/engine_diagnostics.py device_probe_diagnostic   6 0 0   100%
src/lilbee/providers/fleet/engine_diagnostics.py (no function)   10 0 0   100%
src/lilbee/providers/fleet/gpu_backends/__init__.py resolve_backend   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/__init__.py util_backend_name   8 0 0   100%
src/lilbee/providers/fleet/gpu_backends/__init__.py (no function)   14 0 1   100%
src/lilbee/providers/fleet/gpu_backends/amd.py AmdBackend.sample   4 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _amd_smi_output   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _rocm_smi_output   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _parse_amd_smi   24 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _parse_rocm_smi   29 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _amd_smi_samples   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py _rocm_smi_samples   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/amd.py (no function)   20 0 0   100%
src/lilbee/providers/fleet/gpu_backends/apple.py AppleBackend.sample   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/apple.py _ioreg_output   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/apple.py _parse_ioreg   5 0 0   100%
src/lilbee/providers/fleet/gpu_backends/apple.py _ioreg_samples   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/apple.py (no function)   13 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py UtilBackend.sample   0 0 1   100%
src/lilbee/providers/fleet/gpu_backends/base.py run_smi   6 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py extract_int   10 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py parse_device_index   2 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py _coerce_metric   12 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py find_metric   13 0 0   100%
src/lilbee/providers/fleet/gpu_backends/base.py (no function)   22 0 3   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py read_drm_util   18 0 0   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py _snapshot   13 0 0   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py _client_engine_ns   18 0 0   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py _driver_matches   5 0 0   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py _parse_engine_line   9 0 0   100%
src/lilbee/providers/fleet/gpu_backends/fdinfo.py (no function)   12 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py IntelBackend.sample   5 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _xpu_smi_output   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _device_level   12 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _metric_int   4 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _parse_xpu_smi   10 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _xpu_smi_samples   6 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _fdinfo_samples   6 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _intel_gpu_top_output   13 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _last_json_object   13 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _igt_max_busy   10 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _intel_gpu_top_samples   6 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _single   2 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py intel_util_hint   6 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py _igt_permission_denied   7 0 0   100%
src/lilbee/providers/fleet/gpu_backends/intel.py (no function)   41 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py SmiCache.__init__   4 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py SmiCache.stats   7 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py SmiCache.reset   2 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py NvidiaBackend.sample   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py _smi_output   1 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py _as_int   4 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py _parse_smi_output   17 0 0   100%
src/lilbee/providers/fleet/gpu_backends/nvidia.py (no function)   20 0 0   100%
src/lilbee/providers/fleet/gpu_env.py _apply_vulkan_loader_safety   7 0 0   100%
src/lilbee/providers/fleet/gpu_env.py _apply_gpu_devices_pin   9 0 0   100%
src/lilbee/providers/fleet/gpu_env.py shard_visible_devices   2 0 0   100%
src/lilbee/providers/fleet/gpu_env.py _mask_entry   4 0 0   100%
src/lilbee/providers/fleet/gpu_env.py _clear_empty_visible_device_vars   5 0 0   100%
src/lilbee/providers/fleet/gpu_env.py _container_runtime_exposes_a_gpu   2 0 0   100%
src/lilbee/providers/fleet/gpu_env.py apply_fleet_gpu_env   3 0 0   100%
src/lilbee/providers/fleet/gpu_env.py (no function)   20 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py installed_gpu_vendor_ids   5 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py _linux_gpu_vendor_ids   13 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py _read_sysfs_hex   4 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py _windows_gpu_vendor_ids   3 0 2   100%
src/lilbee/providers/fleet/gpu_hardware.py _iter_windows_gpu_vendor_ids   7 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py _vendor_ids_in   7 0 0   100%
src/lilbee/providers/fleet/gpu_hardware.py (no function)   19 0 2   100%
src/lilbee/providers/fleet/gpu_select.py enumerate_gpu_vram   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py integrated_vulkan_indices   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py vulkan_free_bytes_by_name   5 0 0   100%
src/lilbee/providers/fleet/gpu_select.py vulkan_device_types_by_name   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py discrete_gpu_from_vendor   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py host_has_no_discrete_gpu   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _known_device_type   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py enumerate_in_process   8 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _run_probe_child   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _enumerate_vulkan_devices   15 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _drop_devices_the_engine_refuses   1 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _deduplicate_by_uuid   10 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _load_vulkan_loader   17 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _create_probe_instance   8 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _resolve_properties2   7 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _resolve_memory_budget   10 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _supports_memory_budget   7 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _free_device_local_bytes   14 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _resolve_features2   7 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _storage_buffer_16bit   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _device_uuid   7 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _list_devices_with_instance   27 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _resolve_vk_symbols   16 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _device_local_vram   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _icds_to_disable   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _classify_manifest_vendor   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _vulkan_vendors_present   7 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _select_best_vendor   4 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _vendors_with_hardware   2 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _platform_supports_icd_pin   1 0 0   100%
src/lilbee/providers/fleet/gpu_select.py _icd_pin_is_ours_to_make   6 0 0   100%
src/lilbee/providers/fleet/gpu_select.py disable_conflicting_vulkan_icds   11 0 2   100%
src/lilbee/providers/fleet/gpu_select.py (no function)   133 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py DeviceLike.index   0 0 1   100%
src/lilbee/providers/fleet/gpu_stats.py DeviceLike.backend   0 0 1   100%
src/lilbee/providers/fleet/gpu_stats.py DeviceLike.name   0 0 1   100%
src/lilbee/providers/fleet/gpu_stats.py DeviceLike.total_bytes   0 0 1   100%
src/lilbee/providers/fleet/gpu_stats.py DeviceLike.free_bytes   0 0 1   100%
src/lilbee/providers/fleet/gpu_stats.py _safe_sample   7 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py probe_gpu_stats_shared   8 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py _cuda_order_is_reordered   2 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py _physical_index   12 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py probe_gpu_stats   15 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py intel_util_hint   7 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py probe_intel_util_hint   1 0 0   100%
src/lilbee/providers/fleet/gpu_stats.py (no function)   29 0 8   100%
src/lilbee/providers/fleet/groups.py SwapGroup.swaps   1 0 0   100%
src/lilbee/providers/fleet/groups.py group_for   1 0 0   100%
src/lilbee/providers/fleet/groups.py (no function)   12 0 0   100%
src/lilbee/providers/fleet/ingest_warmth.py ingest_keep_warm   1 0 0   100%
src/lilbee/providers/fleet/ingest_warmth.py keep_fleet_warm   4 0 0   100%
src/lilbee/providers/fleet/ingest_warmth.py (no function)   8 0 0   100%
src/lilbee/providers/fleet/launch.py role_model_prefix   1 0 0   100%
src/lilbee/providers/fleet/launch.py InstanceLaunch.to_state   1 0 0   100%
src/lilbee/providers/fleet/launch.py InstanceLaunch.from_state   2 0 0   100%
src/lilbee/providers/fleet/launch.py InstanceLaunch.model_id   1 0 0   100%
src/lilbee/providers/fleet/launch.py (no function)   27 0 0   100%
src/lilbee/providers/fleet/normalize.py _content_text   8 0 0   100%
src/lilbee/providers/fleet/normalize.py _one_tool_call_note   9 0 0   100%
src/lilbee/providers/fleet/normalize.py _tool_calls_note   3 0 0   100%
src/lilbee/providers/fleet/normalize.py _assistant_text   2 0 0   100%
src/lilbee/providers/fleet/normalize.py _to_turn   7 0 0   100%
src/lilbee/providers/fleet/normalize.py _append_or_merge   3 0 0   100%
src/lilbee/providers/fleet/normalize.py to_alternating   11 0 0   100%
src/lilbee/providers/fleet/normalize.py (no function)   30 0 0   100%
src/lilbee/providers/fleet/placement.py plan_placement   12 0 0   100%
src/lilbee/providers/fleet/placement.py plan_placement.place   1 0 0   100%
src/lilbee/providers/fleet/placement.py _place_ungated   1 0 0   100%
src/lilbee/providers/fleet/placement.py _place_persistent   16 0 0   100%
src/lilbee/providers/fleet/placement.py _place_beside_disjoint   16 0 0   100%
src/lilbee/providers/fleet/placement.py _tight_device_group   7 0 0   100%
src/lilbee/providers/fleet/placement.py _place_tight   15 0 0   100%
src/lilbee/providers/fleet/placement.py _group_slot   7 0 0   100%
src/lilbee/providers/fleet/placement.py _phase_disjoint   1 0 0   100%
src/lilbee/providers/fleet/placement.py _place_elastic   7 0 0   100%
src/lilbee/providers/fleet/placement.py _persistent_single   1 0 0   100%
src/lilbee/providers/fleet/placement.py _place_single   5 0 0   100%
src/lilbee/providers/fleet/placement.py _place_split   26 0 0   100%
src/lilbee/providers/fleet/placement.py _best_or_none   4 0 0   100%
src/lilbee/providers/fleet/placement.py _charge_split   3 0 0   100%
src/lilbee/providers/fleet/placement.py _place_replicas   14 0 0   100%
src/lilbee/providers/fleet/placement.py _place_shared_memory   23 0 0   100%
src/lilbee/providers/fleet/placement.py _shared_beside_disjoint   14 0 0   100%
src/lilbee/providers/fleet/placement.py _shared_pool_order   2 0 0   100%
src/lilbee/providers/fleet/placement.py _best_single_device   4 0 0   100%
src/lilbee/providers/fleet/placement.py placement_from_spec   12 0 0   100%
src/lilbee/providers/fleet/placement.py _vram_proportional_split   1 0 0   100%
src/lilbee/providers/fleet/placement.py _split_ratio_candidates   6 0 0   100%
src/lilbee/providers/fleet/placement.py _normalized   2 0 0   100%
src/lilbee/providers/fleet/placement.py _shifted_toward_roomiest   9 0 0   100%
src/lilbee/providers/fleet/placement.py _required_entry   7 0 0   100%
src/lilbee/providers/fleet/placement.py _charge_devices   7 0 0   100%
src/lilbee/providers/fleet/placement.py (no function)   64 0 0   100%
src/lilbee/providers/fleet/placement_spec.py PlacementSpec.to_json   9 0 0   100%
src/lilbee/providers/fleet/placement_spec.py PlacementSpec.__str__   1 0 0   100%
src/lilbee/providers/fleet/placement_spec.py PlacementSpec.from_json   11 0 0   100%
src/lilbee/providers/fleet/placement_spec.py _role_for   4 0 0   100%
src/lilbee/providers/fleet/placement_spec.py _coerce_int   8 0 0   100%
src/lilbee/providers/fleet/placement_spec.py _int_list   3 0 0   100%
src/lilbee/providers/fleet/placement_spec.py _role_placement   25 0 0   100%
src/lilbee/providers/fleet/placement_spec.py (no function)   26 0 0   100%
src/lilbee/providers/fleet/planning.py _weights_bytes   4 0 0   100%
src/lilbee/providers/fleet/planning.py _is_sibling_shard   2 0 0   100%
src/lilbee/providers/fleet/planning.py _slots_for   7 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_split_chat_slots   10 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_chat_slots   2 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_vision_slots   5 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_llm_rerank_slots   1 0 0   100%
src/lilbee/providers/fleet/planning.py _slot_budget   4 0 0   100%
src/lilbee/providers/fleet/planning.py _fit_slots   9 0 0   100%
src/lilbee/providers/fleet/planning.py _role_ctx   12 0 0   100%
src/lilbee/providers/fleet/planning.py _pinned_chat_ctx   8 0 0   100%
src/lilbee/providers/fleet/planning.py _known_chat_ceiling   6 0 0   100%
src/lilbee/providers/fleet/planning.py _rerank_mode_for   3 0 0   100%
src/lilbee/providers/fleet/planning.py _role_rerank_mode   1 0 0   100%
src/lilbee/providers/fleet/planning.py _server_spec   5 0 0   100%
src/lilbee/providers/fleet/planning.py _pooled_batch_size   3 0 0   100%
src/lilbee/providers/fleet/planning.py _role_gpu_layers   1 0 0   100%
src/lilbee/providers/fleet/planning.py _flash_enabled   2 0 0   100%
src/lilbee/providers/fleet/planning.py _fleet_backend   8 0 0   100%
src/lilbee/providers/fleet/planning.py _flash_attention_is_trusted   2 0 0   100%
src/lilbee/providers/fleet/planning.py flash_attn_flag   3 0 0   100%
src/lilbee/providers/fleet/planning.py _role_launches_with_flash   3 0 0   100%
src/lilbee/providers/fleet/planning.py _role_flash   1 0 0   100%
src/lilbee/providers/fleet/planning.py _role_kv_cache_type   2 0 0   100%
src/lilbee/providers/fleet/planning.py _replica_count   1 0 0   100%
src/lilbee/providers/fleet/planning.py _role_kv_cache_type_v   3 0 0   100%
src/lilbee/providers/fleet/planning.py chat_cache_type_flags   3 0 0   100%
src/lilbee/providers/fleet/planning.py chat_cache_type_flags.flag   1 0 0   100%
src/lilbee/providers/fleet/planning.py _vision_mmproj   6 0 0   100%
src/lilbee/providers/fleet/planning.py _estimate_role   13 0 0   100%
src/lilbee/providers/fleet/planning.py _chat_serve_budget_footprint   2 0 0   100%
src/lilbee/providers/fleet/planning.py _placement_estimate_ctx   6 0 0   100%
src/lilbee/providers/fleet/planning.py _placement_estimate_slots   8 0 0   100%
src/lilbee/providers/fleet/planning.py _peak_estimator   3 0 0   100%
src/lilbee/providers/fleet/planning.py _peak_estimator.estimate_peak   8 0 0   100%
src/lilbee/providers/fleet/planning.py _chat_split_ctx_objective   8 0 0   100%
src/lilbee/providers/fleet/planning.py _chat_split_ctx_objective.fit   1 0 0   100%
src/lilbee/providers/fleet/planning.py _search_reservation   1 0 0   100%
src/lilbee/providers/fleet/planning.py _role_weights_bytes   10 0 0   100%
src/lilbee/providers/fleet/planning.py _is_moe   5 0 0   100%
src/lilbee/providers/fleet/planning.py expert_offload_all   2 0 0   100%
src/lilbee/providers/fleet/planning.py expert_offload_layers   4 0 0   100%
src/lilbee/providers/fleet/planning.py _role_expert_offload   4 0 0   100%
src/lilbee/providers/fleet/planning.py _expert_offload_configured   2 0 0   100%
src/lilbee/providers/fleet/planning.py _weights_exceed_everything   2 0 0   100%
src/lilbee/providers/fleet/planning.py _weights_exceed_hardware   6 0 0   100%
src/lilbee/providers/fleet/planning.py _vision_without_mmproj   4 0 0   100%
src/lilbee/providers/fleet/planning.py _estimate_or_fallback   10 0 0   100%
src/lilbee/providers/fleet/planning.py _admit_estimate   9 0 0   100%
src/lilbee/providers/fleet/planning.py _analytic_footprint_floor   3 0 0   100%
src/lilbee/providers/fleet/planning.py _estimate_is_implausible   1 0 0   100%
src/lilbee/providers/fleet/planning.py _floor_implausible_estimate   5 0 0   100%
src/lilbee/providers/fleet/planning.py _sizing_failure_fallback   12 0 0   100%
src/lilbee/providers/fleet/planning.py _fallback_floor_for   10 0 0   100%
src/lilbee/providers/fleet/planning.py _ref_is_moe   6 0 0   100%
src/lilbee/providers/fleet/planning.py _cpu_offload_in_play   2 0 0   100%
src/lilbee/providers/fleet/planning.py _host_bytes_must_be_resident   9 0 0   100%
src/lilbee/providers/fleet/planning.py _host_committed   1 0 0   100%
src/lilbee/providers/fleet/planning.py _host_memory_refuses   11 0 0   100%
src/lilbee/providers/fleet/planning.py _warn_weights_exceed   1 0 0   100%
src/lilbee/providers/fleet/planning.py _warn_weights_spill   1 0 0   100%
src/lilbee/providers/fleet/planning.py placeable_total_vram   10 0 0   100%
src/lilbee/providers/fleet/planning.py role_model_placeable   6 0 0   100%
src/lilbee/providers/fleet/planning.py _server_model_inputs   12 0 0   100%
src/lilbee/providers/fleet/planning.py _server_model_inputs.consider   14 0 0   100%
src/lilbee/providers/fleet/planning.py _non_chat_reservation   10 0 0   100%
src/lilbee/providers/fleet/planning.py _charge_by_device   8 0 0   100%
src/lilbee/providers/fleet/planning.py _launch_for   32 0 0   100%
src/lilbee/providers/fleet/planning.py _launch_for._split_fit   1 0 0   100%
src/lilbee/providers/fleet/planning.py build_single_role_launch   10 0 0   100%
src/lilbee/providers/fleet/planning.py resolve_devices   1 0 0   100%
src/lilbee/providers/fleet/planning.py _warn_gpu_present_but_unenumerated   8 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_devices_and_refusal   23 0 0   100%
src/lilbee/providers/fleet/planning.py _ReadDeviceCache.__init__   6 0 0   100%
src/lilbee/providers/fleet/planning.py _ReadDeviceCache.get   15 0 0   100%
src/lilbee/providers/fleet/planning.py _ReadDeviceCache.clear   4 0 0   100%
src/lilbee/providers/fleet/planning.py clear_read_device_cache   4 0 0   100%
src/lilbee/providers/fleet/planning.py _PlanProbeStore.__init__   2 0 0   100%
src/lilbee/providers/fleet/planning.py _PlanProbeStore.set   2 0 0   100%
src/lilbee/providers/fleet/planning.py _PlanProbeStore.get   2 0 0   100%
src/lilbee/providers/fleet/planning.py _PlanProbeStore.clear   2 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.__init__   3 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.steps   2 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.note_base   2 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.base   2 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.step   4 0 0   100%
src/lilbee/providers/fleet/planning.py _CtxDownshiftStore.clear   7 0 0   100%
src/lilbee/providers/fleet/planning.py apply_ctx_downshift   5 0 0   100%
src/lilbee/providers/fleet/planning.py _shifted   1 0 0   100%
src/lilbee/providers/fleet/planning.py record_ctx_downshift   14 0 0   100%
src/lilbee/providers/fleet/planning.py clear_ctx_downshift   1 0 0   100%
src/lilbee/providers/fleet/planning.py _probe_engine_devices   9 0 0   100%
src/lilbee/providers/fleet/planning.py _reprobe_while_a_gpu_is_installed   11 0 0   100%
src/lilbee/providers/fleet/planning.py assert_engine_probeable   1 0 0   100%
src/lilbee/providers/fleet/planning.py capture_plan_probe   2 0 0   100%
src/lilbee/providers/fleet/planning.py refresh_plan_devices   13 0 0   100%
src/lilbee/providers/fleet/planning.py clear_plan_probe   1 0 0   100%
src/lilbee/providers/fleet/planning.py _cpu_pin_when_every_device_was_refused   5 0 0   100%
src/lilbee/providers/fleet/planning.py _plan_devices   2 0 0   100%
src/lilbee/providers/fleet/planning.py plan_sizing_budget   7 0 0   100%
src/lilbee/providers/fleet/planning.py _device_sizing_budget   4 0 0   100%
src/lilbee/providers/fleet/planning.py _live_sizing_devices   4 0 0   100%
src/lilbee/providers/fleet/planning.py _plan_free_system_memory   2 0 0   100%
src/lilbee/providers/fleet/planning.py _unreported_bytes   6 0 0   100%
src/lilbee/providers/fleet/planning.py _chat_no_mmap   3 0 0   100%
src/lilbee/providers/fleet/planning.py _device_names   5 0 0   100%
src/lilbee/providers/fleet/planning.py _unified_memory_budget   3 0 0   100%
src/lilbee/providers/fleet/planning.py _unified_admission_budget   3 0 0   100%
src/lilbee/providers/fleet/planning.py _system_memory_floor   3 0 0   100%
src/lilbee/providers/fleet/planning.py _capped_by_device_memory   3 0 0   100%
src/lilbee/providers/fleet/planning.py _device_capacity   4 0 0   100%
src/lilbee/providers/fleet/planning.py _packable_devices   2 0 0   100%
src/lilbee/providers/fleet/planning.py _resolve_placement   6 0 0   100%
src/lilbee/providers/fleet/planning.py _placement_or_auto   7 0 0   100%
src/lilbee/providers/fleet/planning.py resolve_placement_plan   14 0 0   100%
src/lilbee/providers/fleet/planning.py _log_placement_findings   6 0 0   100%
src/lilbee/providers/fleet/planning.py _unusable_chat_ctx_reason   10 0 0   100%
src/lilbee/providers/fleet/planning.py plan_launches   19 0 0   100%
src/lilbee/providers/fleet/planning.py plan_all_launches   8 0 0   100%
src/lilbee/providers/fleet/planning.py (no function)   195 0 2   100%
src/lilbee/providers/fleet/proc.py run_bounded   10 0 0   100%
src/lilbee/providers/fleet/proc.py _abandon_group   7 0 2   100%
src/lilbee/providers/fleet/proc.py (no function)   11 0 0   100%
src/lilbee/providers/fleet/provider.py _prewarm_key   2 0 0   100%
src/lilbee/providers/fleet/provider.py _request_timeout_s   1 0 0   100%
src/lilbee/providers/fleet/provider.py _launches_by_group   4 0 0   100%
src/lilbee/providers/fleet/provider.py _by_role   4 0 0   100%
src/lilbee/providers/fleet/provider.py _least_in_flight   2 0 0   100%
src/lilbee/providers/fleet/provider.py _reserve_least_in_flight   4 0 0   100%
src/lilbee/providers/fleet/provider.py _healthy_groups_ours   9 0 0   100%
src/lilbee/providers/fleet/provider.py _healthy_states   6 0 0   100%
src/lilbee/providers/fleet/provider.py _bindable_group   7 0 0   100%
src/lilbee/providers/fleet/provider.py _PrimedStream.__init__   2 0 0   100%
src/lilbee/providers/fleet/provider.py _PrimedStream.__iter__   1 0 0   100%
src/lilbee/providers/fleet/provider.py _PrimedStream.__next__   3 0 0   100%
src/lilbee/providers/fleet/provider.py _PrimedStream.close   1 0 0   100%
src/lilbee/providers/fleet/provider.py _primed_stream   5 0 0   100%
src/lilbee/providers/fleet/provider.py _call_with_failover   11 0 0   100%
src/lilbee/providers/fleet/provider.py _retry_on_other_replica   13 0 0   100%
src/lilbee/providers/fleet/provider.py _no_healthy_replica_error   1 0 0   100%
src/lilbee/providers/fleet/provider.py _role_device_sets   7 0 0   100%
src/lilbee/providers/fleet/provider.py _warm_chains   17 0 0   100%
src/lilbee/providers/fleet/provider.py _warm_role   6 0 0   100%
src/lilbee/providers/fleet/provider.py _supports_tools_cached   8 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher.__init__   2 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher.slot   4 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher._acquire   7 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher._pick   3 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher._free_slots   1 0 0   100%
src/lilbee/providers/fleet/provider.py _VisionDispatcher._release   6 0 0   100%
src/lilbee/providers/fleet/provider.py _dispatch_vision   22 0 0   100%
src/lilbee/providers/fleet/provider.py _vision_call   4 0 0   100%
src/lilbee/providers/fleet/provider.py _bounded_vision_chat   4 0 0   100%
src/lilbee/providers/fleet/provider.py _ocr_dispatch   2 0 0   100%
src/lilbee/providers/fleet/provider.py _ocr_dispatch._attempt   4 0 0   100%
src/lilbee/providers/fleet/provider.py _pdf_drain_budget   4 0 0   100%
src/lilbee/providers/fleet/provider.py _ocr_deadline   2 0 0   100%
src/lilbee/providers/fleet/provider.py _configured_model_for   2 0 0   100%
src/lilbee/providers/fleet/provider.py _unusable_engine_reason   5 0 0   100%
src/lilbee/providers/fleet/provider.py _chat_needs_local_engine   2 0 0   100%
src/lilbee/providers/fleet/provider.py _no_server_message   4 0 0   100%
src/lilbee/providers/fleet/provider.py _placeable_demand   11 0 0   100%
src/lilbee/providers/fleet/provider.py _demanded_chat_ctx   9 0 0   100%
src/lilbee/providers/fleet/provider.py _can_build_engine   12 0 0   100%
src/lilbee/providers/fleet/provider.py _warm_ttl_seconds   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.__init__   23 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._ensure_fleet   10 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._acquire_engine   12 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._acquire_in_dir   18 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._bind_all_in_dir   28 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._reload_dir   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._hold_membership   5 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._plan_and_spawn   29 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._adopt_group   11 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._swap_for   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._role_launches   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._drop_group   10 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._retire_clients   6 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._require_clients   14 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._with_rediscover   11 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._retry_rebuilt   9 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._rebuild_role   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.role_ready   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.max_concurrent_chats   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.served_chat_ctx   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.warm_pending   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.warm_progress   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._shutdown_swap   11 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._release_engines   17 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._release_holds   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._drop_swap_refs   18 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._drop_dead_swaps   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._require_configured_model   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.chat   0 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.chat   0 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.chat   8 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.chat_with_tools   6 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._fit_chat_context   8 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.embed   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._embed_once   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.count_tokens   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.vision_ocr   9 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.vision_slot_capacity   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._vision_pool   6 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.rerank   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._rerank_once   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.supports_rerank   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.list_models   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.list_chat_models   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.pull_model   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.show_model   7 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.get_capabilities   16 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.supports_tools   11 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.warm_up_pool   11 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._roles_ready   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._warm_up_blocking   13 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._fail_warm_unless_ready   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._finalize_warm_if_chat_never_ran   15 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._preload_roles   12 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._warm_chain   15 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._warm_role_clients   14 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._warm_chat_role   9 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._chat_load_failure   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._prewarm_chat_weights   28 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.cancel_inference   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.reload_role   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.reload_placement   1 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._dispatch_reload   15 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._reload_blocking   21 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._rebind_or_overflow   13 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._reload_pass   44 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider._preload_restarted   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.add_spawn_listener   3 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.invalidate_load_cache   2 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.drop_loaded_models_async   4 0 0   100%
src/lilbee/providers/fleet/provider.py FleetProvider.shutdown   1 0 0   100%
src/lilbee/providers/fleet/provider.py (no function)   176 0 3   100%
src/lilbee/providers/fleet/readback.py _is_host_device   1 0 0   100%
src/lilbee/providers/fleet/readback.py parse_device_buffers   8 0 0   100%
src/lilbee/providers/fleet/readback.py engine_build   2 0 0   100%
src/lilbee/providers/fleet/readback.py load_finished   1 0 0   100%
src/lilbee/providers/fleet/readback.py device_footprint   1 0 0   100%
src/lilbee/providers/fleet/readback.py device_label   1 0 0   100%
src/lilbee/providers/fleet/readback.py report_divergence   7 0 0   100%
src/lilbee/providers/fleet/readback.py engine_log_path   1 0 0   100%
src/lilbee/providers/fleet/readback.py engine_log_env   2 0 0   100%
src/lilbee/providers/fleet/readback.py check_launch   13 0 0   100%
src/lilbee/providers/fleet/readback.py _without_unreported   6 0 0   100%
src/lilbee/providers/fleet/readback.py _report_per_device   11 0 0   100%
src/lilbee/providers/fleet/readback.py report_missing_log   4 0 0   100%
src/lilbee/providers/fleet/readback.py (no function)   36 0 0   100%
src/lilbee/providers/fleet/replicas.py resolve_replica_count   5 0 0   100%
src/lilbee/providers/fleet/replicas.py gpu_device_count   10 0 0   100%
src/lilbee/providers/fleet/replicas.py (no function)   9 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _links_hip_runtime   1 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _amd_gpu_present   9 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _amd_discrete_gpu_proven   1 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _gfx_name   3 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _host_amd_gfx_targets   11 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _bundled_rocblas_gfx_targets   4 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _hsa_override_gfx   6 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _rocm_support_facts   7 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _warn_if_override_uncovered   3 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py _assert_rocblas_covers_enumerated_devices   15 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py assert_rocm_devices_usable   11 0 0   100%
src/lilbee/providers/fleet/rocm_runtime.py (no function)   25 0 2   100%
src/lilbee/providers/fleet/swap_config.py build_swap_config   12 0 0   100%
src/lilbee/providers/fleet/swap_config.py cold_load_timeout_s   1 0 0   100%
src/lilbee/providers/fleet/swap_config.py _health_check_timeout_s   2 0 0   100%
src/lilbee/providers/fleet/swap_config.py _command_line   4 0 0   100%
src/lilbee/providers/fleet/swap_config.py (no function)   29 0 4   100%
src/lilbee/providers/fleet/swap_manager.py _probe_client   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _platform_const   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _atomic_write   3 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _state_filename   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.__init__   14 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.start   19 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.reap_stale   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._process_identity   11 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._write_state   6 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.endpoint   3 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.role_ready   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._check_estimates   11 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.is_live   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.running   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.bound   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.bind   11 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._proxy_answers   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager.shutdown   14 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._close_log   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._await_health   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._ready_models   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._boot_log_tail   7 0 0   100%
src/lilbee/providers/fleet/swap_manager.py SwapManager._fail   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _port_range_from   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _ephemeral_range   9 0 0   100%
src/lilbee/providers/fleet/swap_manager.py release_reserved_ports   2 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _window_span   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _search_start   2 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _pick_free_ports   8 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _bind_below_ephemeral   15 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _live_children   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _reap_survivors   9 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _await_killed   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _processes_named   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _swaps_for_config   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py find_live_state   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _running_endpoint_answers   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py state_is_healthy   3 0 0   100%
src/lilbee/providers/fleet/swap_manager.py engine_record_exists   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py stop_engine   13 0 0   100%
src/lilbee/providers/fleet/swap_manager.py reap_stale   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _clean_stale_tmp_files   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _clean_stale_configs   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _stop_own_fleet   9 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _terminate_proc_group   10 0 2   100%
src/lilbee/providers/fleet/swap_manager.py _hard_stop_proc   7 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _load_state   9 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _is_live_llama_swap   10 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _stop_stale_swap   13 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _signal_stale   6 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _stop_recorded_engine   6 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _find_orphan_servers   12 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _state_owner_pid   6 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _state_group   3 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _config_filename   1 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _config_owner_pid   5 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _has_live_swap_parent   7 0 0   100%
src/lilbee/providers/fleet/swap_manager.py _port_argument   4 0 0   100%
src/lilbee/providers/fleet/swap_manager.py (no function)   147 0 3   100%
src/lilbee/providers/fleet/vram.py usable_vram_fraction   2 0 0   100%
src/lilbee/providers/fleet/vram.py GgufVramEstimate.footprint   1 0 0   100%
src/lilbee/providers/fleet/vram.py GgufVramEstimate.peak_footprint   2 0 0   100%
src/lilbee/providers/fleet/vram.py estimate_instance_footprint   5 0 0   100%
src/lilbee/providers/fleet/vram.py estimate_instance_footprint.run   1 0 0   100%
src/lilbee/providers/fleet/vram.py _corrected_projector_estimate   3 0 0   100%
src/lilbee/providers/fleet/vram.py engine_build_identity   2 0 0   100%
src/lilbee/providers/fleet/vram.py _cached_footprint   2 0 0   100%
src/lilbee/providers/fleet/vram.py estimator_argv   10 0 0   100%
src/lilbee/providers/fleet/vram.py _run_parser   8 0 0   100%
src/lilbee/providers/fleet/vram.py _parse_estimate   10 0 0   100%
src/lilbee/providers/fleet/vram.py (no function)   61 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py iter_vulkan_manifest_paths   5 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _iter_windows_vulkan_manifest_paths   5 0 2   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _iter_khronos_software_manifests   17 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py iter_pnp_class_subkeys   21 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _iter_pnp_class_manifests   2 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _read_vulkan_driver_name_values   12 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _iter_linux_vulkan_manifest_paths   22 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _linux_vulkan_icd_directories   8 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py _xdg_dirs   6 0 0   100%
src/lilbee/providers/fleet/vulkan_icd_discovery.py (no function)   24 0 2   100%
src/lilbee/providers/fleet/vulkan_probe.py _as_json   1 0 0   100%
src/lilbee/providers/fleet/vulkan_probe.py from_json   1 0 0   100%
src/lilbee/providers/fleet/vulkan_probe.py main   4 0 0   100%
src/lilbee/providers/fleet/vulkan_probe.py (no function)   9 0 2   100%
src/lilbee/providers/fleet/windowing.py estimate_tokens   1 0 0   100%
src/lilbee/providers/fleet/windowing.py _message_tokens   10 0 0   100%
src/lilbee/providers/fleet/windowing.py _tools_tokens   3 0 0   100%
src/lilbee/providers/fleet/windowing.py window_messages   19 0 0   100%
src/lilbee/providers/fleet/windowing.py (no function)   19 0 0   100%
src/lilbee/providers/gguf_meta.py train_ctx_from_meta   12 0 0   100%
src/lilbee/providers/gguf_meta.py _disk_cache_file   4 0 2   100%
src/lilbee/providers/gguf_meta.py _disk_cache_load   15 0 0   100%
src/lilbee/providers/gguf_meta.py _disk_cache_store   8 0 0   100%
src/lilbee/providers/gguf_meta.py read_gguf_metadata   22 0 0   100%
src/lilbee/providers/gguf_meta.py _read_gguf_metadata_uncached   20 0 0   100%
src/lilbee/providers/gguf_meta.py _find_mmproj_in_hf_snapshots   10 0 0   100%
src/lilbee/providers/gguf_meta.py _find_mmproj_in_flat_dir   2 0 0   100%
src/lilbee/providers/gguf_meta.py find_mmproj_for_model   4 0 0   100%
src/lilbee/providers/gguf_meta.py read_mmproj_projector_type   9 0 0   100%
src/lilbee/providers/gguf_meta.py (no function)   37 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmSubstringFilter.__init__   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmSubstringFilter.filter   2 0 0   100%
src/lilbee/providers/litellm_sdk.py install_litellm_log_filter   1 0 0   100%
src/lilbee/providers/litellm_sdk.py _sdk_attr   1 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.__init__   1 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.model   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView._first_choice   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.message_content   7 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.delta_content   7 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.finish_reason   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.tool_calls   8 0 0   100%
src/lilbee/providers/litellm_sdk.py _LitellmResponseView.delta_tool_calls   8 0 0   100%
src/lilbee/providers/litellm_sdk.py _extract_tool_call   5 0 0   100%
src/lilbee/providers/litellm_sdk.py _extract_tool_call_delta   7 0 0   100%
src/lilbee/providers/litellm_sdk.py litellm_available   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _require_litellm   5 0 0   100%
src/lilbee/providers/litellm_sdk.py _route_model   5 0 0   100%
src/lilbee/providers/litellm_sdk.py _format_messages   11 0 0   100%
src/lilbee/providers/litellm_sdk.py _embedding_index   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _embedding_vector   2 0 0   100%
src/lilbee/providers/litellm_sdk.py _response_model   3 0 0   100%
src/lilbee/providers/litellm_sdk.py _cause_chain   12 0 0   100%
src/lilbee/providers/litellm_sdk.py _classify_litellm_error   9 0 2   100%
src/lilbee/providers/litellm_sdk.py _provider_error   4 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.provider_name   1 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.active_backend_name   1 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.available   1 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.supports_tools   1 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.configure_logging   7 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.complete   8 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.complete_stream   8 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend._stream_chunks   12 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend._completion_kwargs   10 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.embed   17 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.rerank   19 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.list_models   5 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.list_chat_models   5 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend._all_chat_models_for   9 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend._list_ollama_models   7 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend._list_openai_models   11 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.pull_model   3 0 0   100%
src/lilbee/providers/litellm_sdk.py LitellmSdkBackend.show_model   21 0 0   100%
src/lilbee/providers/litellm_sdk.py (no function)   79 0 0   100%
src/lilbee/providers/local_servers/__init__.py (no function)   5 0 0   100%
src/lilbee/providers/local_servers/config_urls.py _configured_url   1 0 0   100%
src/lilbee/providers/local_servers/config_urls.py base_url_for   4 0 0   100%
src/lilbee/providers/local_servers/config_urls.py configured_local_servers   1 0 0   100%
src/lilbee/providers/local_servers/config_urls.py (no function)   11 0 0   100%
src/lilbee/providers/local_servers/lm_studio.py (no function)   3 0 0   100%
src/lilbee/providers/local_servers/ollama.py (no function)   3 0 0   100%
src/lilbee/providers/local_servers/registry.py openai_models_url   4 0 0   100%
src/lilbee/providers/local_servers/registry.py detect_local_server   5 0 0   100%
src/lilbee/providers/local_servers/registry.py local_server_for_key   4 0 0   100%
src/lilbee/providers/local_servers/registry.py canonical_local_ref   4 0 0   100%
src/lilbee/providers/local_servers/registry.py local_server_for_label   5 0 0   100%
src/lilbee/providers/local_servers/registry.py (no function)   11 0 0   100%
src/lilbee/providers/local_servers/spec.py LocalServerSpec.qualify   1 0 0   100%
src/lilbee/providers/local_servers/spec.py LocalServerSpec.normalize_name   3 0 0   100%
src/lilbee/providers/local_servers/spec.py (no function)   15 0 0   100%
src/lilbee/providers/model_cache.py kv_bytes_per_token   14 0 0   100%
src/lilbee/providers/model_cache.py estimate_model_memory   4 0 0   100%
src/lilbee/providers/model_cache.py compute_dynamic_ctx   14 0 0   100%
src/lilbee/providers/model_cache.py get_available_memory   8 0 0   100%
src/lilbee/providers/model_cache.py free_system_memory   8 0 0   100%
src/lilbee/providers/model_cache.py total_system_memory   2 0 0   100%
src/lilbee/providers/model_cache.py has_nvidia_gpu   1 0 0   100%
src/lilbee/providers/model_cache.py _try_nvidia_memory   5 0 0   100%
src/lilbee/providers/model_cache.py _nvidia_device_totals   23 0 0   100%
src/lilbee/providers/model_cache.py _decoded   1 0 0   100%
src/lilbee/providers/model_cache.py _parse_smi_row   8 0 0   100%
src/lilbee/providers/model_cache.py _apply_cuda_visible_mask   10 0 0   100%
src/lilbee/providers/model_cache.py _resolve_cuda_entry   7 0 0   100%
src/lilbee/providers/model_cache.py (no function)   31 0 0   100%
src/lilbee/providers/model_defaults.py (no function)   11 0 0   100%
src/lilbee/providers/model_ref.py is_native_gguf_ref   1 0 0   100%
src/lilbee/providers/model_ref.py routes_to_native_gguf   2 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.is_api   1 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.is_local   1 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.is_remote   1 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.for_openai_prefix   6 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.for_display   1 0 0   100%
src/lilbee/providers/model_ref.py ProviderModelRef.needs_api_base   1 0 0   100%
src/lilbee/providers/model_ref.py format_remote_ref   3 0 0   100%
src/lilbee/providers/model_ref.py parse_model_ref   12 0 0   100%
src/lilbee/providers/model_ref.py default_first   3 0 0   100%
src/lilbee/providers/model_ref.py with_configured_remote_chat   3 0 0   100%
src/lilbee/providers/model_ref.py translate_options   8 0 0   100%
src/lilbee/providers/model_ref.py (no function)   31 0 0   100%
src/lilbee/providers/roles.py configured_model_message   1 0 0   100%
src/lilbee/providers/roles.py (no function)   37 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.__init__   4 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider._get_local   6 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider._get_sdk_provider   5 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider._pick_backend   3 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.embed   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.count_tokens   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.chat   0 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.chat   0 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.chat   5 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.supports_tools   4 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.chat_with_tools   3 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.vision_ocr   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.vision_slot_capacity   1 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.list_models   11 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.list_chat_models   4 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.pull_model   4 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.show_model   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.get_capabilities   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.rerank   8 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.supports_rerank   6 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.shutdown   4 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.invalidate_load_cache   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.drop_loaded_models_async   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.warm_up_pool   1 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.cancel_inference   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.reload_role   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.reload_placement   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.role_ready   5 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider._role_routes_remote   2 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.max_concurrent_chats   3 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.served_chat_ctx   3 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.warm_pending   1 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.warm_progress   3 0 0   100%
src/lilbee/providers/routing_provider.py RoutingProvider.add_spawn_listener   1 0 0   100%
src/lilbee/providers/routing_provider.py _is_native_rerank_ref   11 0 0   100%
src/lilbee/providers/routing_provider.py (no function)   56 0 2   100%
src/lilbee/providers/sdk_backend.py get_provider_api_key   6 0 0   100%
src/lilbee/providers/sdk_backend.py provider_has_key   4 0 0   100%
src/lilbee/providers/sdk_backend.py detect_backend_name   8 0 0   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.provider_name   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.active_backend_name   0 0 7   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.available   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.configure_logging   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.complete   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.complete_stream   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.embed   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.rerank   0 0 7   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.list_models   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.list_chat_models   0 0 9   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.pull_model   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.show_model   0 0 2   100%
src/lilbee/providers/sdk_backend.py LlmSdkBackend.supports_tools   0 0 2   100%
src/lilbee/providers/sdk_backend.py (no function)   64 0 55   100%
src/lilbee/providers/sdk_llm_provider.py _api_base_for   3 0 0   100%
src/lilbee/providers/sdk_llm_provider.py inject_provider_keys   4 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.__init__   3 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider._ensure_initialized   8 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.embed   10 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.count_tokens   1 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.chat   0 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.chat   0 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.chat   20 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.supports_tools   1 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.chat_with_tools   2 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider._chat_stream   13 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.vision_ocr   13 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.vision_slot_capacity   1 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.list_models   9 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.list_chat_models   9 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.pull_model   9 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.show_model   9 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.get_capabilities   5 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.rerank   12 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.supports_rerank   1 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.available   1 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.shutdown   0 0 0   100%
src/lilbee/providers/sdk_llm_provider.py SdkLLMProvider.invalidate_load_cache   0 0 0   100%
src/lilbee/providers/sdk_llm_provider.py (no function)   43 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.__init__   3 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.begin   3 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.reading   1 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.loading_engine   1 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.ready   1 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.fail   1 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.clear   3 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker.snapshot   5 0 0   100%
src/lilbee/providers/warm_progress.py WarmProgressTracker._advance   3 0 0   100%
src/lilbee/providers/warm_progress.py (no function)   34 0 0   100%
src/lilbee/retrieval/__init__.py (no function)   0 0 0   100%
src/lilbee/retrieval/clustering.py SourceClusterer.available   0 0 2   100%
src/lilbee/retrieval/clustering.py SourceClusterer.get_clusters   0 0 2   100%
src/lilbee/retrieval/clustering.py _select_backend   8 0 0   100%
src/lilbee/retrieval/clustering.py Clusterer.__init__   2 0 0   100%
src/lilbee/retrieval/clustering.py Clusterer.backend   1 0 0   100%
src/lilbee/retrieval/clustering.py Clusterer.available   1 0 0   100%
src/lilbee/retrieval/clustering.py Clusterer.get_clusters   1 0 0   100%
src/lilbee/retrieval/clustering.py (no function)   21 0 10   100%
src/lilbee/retrieval/clustering_embedding/__init__.py (no function)   3 0 0   100%
src/lilbee/retrieval/clustering_embedding/clusterer.py _warn_if_undersegmented   7 0 0   100%
src/lilbee/retrieval/clustering_embedding/clusterer.py EmbeddingClusterer.__init__   2 0 0   100%
src/lilbee/retrieval/clustering_embedding/clusterer.py EmbeddingClusterer.available   8 0 0   100%
src/lilbee/retrieval/clustering_embedding/clusterer.py EmbeddingClusterer.get_clusters   21 0 0   100%
src/lilbee/retrieval/clustering_embedding/clusterer.py (no function)   12 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py auto_k   4 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _parse_chunk_row   12 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _load_chunk_records   21 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py normalize_rows   8 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py mutual_knn   21 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py label_propagation   17 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py communities_by_label   4 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _source_totals   4 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _filter_sources   12 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _corpus_document_frequency   5 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _label_community   19 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py _build_clusters   13 0 0   100%
src/lilbee/retrieval/clustering_embedding/helpers.py (no function)   30 0 0   100%
src/lilbee/retrieval/clustering_embedding/types.py _tokenize_for_tf   6 0 0   100%
src/lilbee/retrieval/clustering_embedding/types.py ClusterChunk.__post_init__   2 0 0   100%
src/lilbee/retrieval/clustering_embedding/types.py (no function)   11 0 0   100%
src/lilbee/retrieval/concepts/__init__.py (no function)   6 0 0   100%
src/lilbee/retrieval/concepts/clusterer.py ConceptGraphClusterer.__init__   1 0 0   100%
src/lilbee/retrieval/concepts/clusterer.py ConceptGraphClusterer.available   1 0 0   100%
src/lilbee/retrieval/concepts/clusterer.py ConceptGraphClusterer.get_clusters   2 0 0   100%
src/lilbee/retrieval/concepts/clusterer.py (no function)   10 0 0   100%
src/lilbee/retrieval/concepts/community.py _compute_pmi   11 0 0   100%
src/lilbee/retrieval/concepts/community.py _leiden_partition   8 0 0   100%
src/lilbee/retrieval/concepts/community.py (no function)   17 0 0   100%
src/lilbee/retrieval/concepts/graph.py _iter_row_batches   2 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.__init__   6 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph._ensure_nlp   9 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.extract_concepts   15 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.extract_concepts_batch   8 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.build_concept_records   12 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.write_concept_records   11 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.boost_results   18 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.get_chunk_concepts   10 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph._chunk_concepts_batch   13 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.expand_query   11 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.get_related_concepts   22 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.top_communities   16 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph._corpus_pmi_inputs   18 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.rebuild_clusters   18 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph._clear_graph   2 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.compact_tables   9 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.get_cluster_sources   16 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.get_cluster_label   12 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.get_graph   3 0 0   100%
src/lilbee/retrieval/concepts/graph.py ConceptGraph.reset_nlp_cache   2 0 0   100%
src/lilbee/retrieval/concepts/graph.py (no function)   46 0 2   100%
src/lilbee/retrieval/concepts/nlp.py concepts_available   6 0 0   100%
src/lilbee/retrieval/concepts/nlp.py _ensure_spacy_model   6 0 0   100%
src/lilbee/retrieval/concepts/nlp.py load_spacy_pipeline   1 0 0   100%
src/lilbee/retrieval/concepts/nlp.py _filter_noun_chunks   13 0 0   100%
src/lilbee/retrieval/concepts/nlp.py (no function)   11 0 0   100%
src/lilbee/retrieval/concepts/schema.py _concept_nodes_schema   1 0 0   100%
src/lilbee/retrieval/concepts/schema.py _concept_edges_schema   1 0 0   100%
src/lilbee/retrieval/concepts/schema.py _chunk_concepts_schema   1 0 0   100%
src/lilbee/retrieval/concepts/schema.py (no function)   5 0 0   100%
src/lilbee/retrieval/embedder.py _name_base   1 0 0   100%
src/lilbee/retrieval/embedder.py _remote_sees_model   7 0 0   100%
src/lilbee/retrieval/embedder.py is_model_installed   6 0 0   100%
src/lilbee/retrieval/embedder.py is_model_available   8 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.__init__   4 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embed_char_budget   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.batch_char_budget   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.truncated_total   2 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.truncate   7 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.validate_vector   7 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.validate_model   7 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embedding_available   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder._profile   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embed   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embed_query   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embed_batch   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder.embed_query_batch   1 0 0   100%
src/lilbee/retrieval/embedder.py Embedder._embed_with   23 0 0   100%
src/lilbee/retrieval/embedder.py (no function)   33 0 0   100%
src/lilbee/retrieval/embedding_profiles.py resolve_embedding_profile   5 0 0   100%
src/lilbee/retrieval/embedding_profiles.py (no function)   14 0 0   100%
src/lilbee/retrieval/entities/__init__.py (no function)   4 0 0   100%
src/lilbee/retrieval/entities/extractor.py normalize_value   4 0 0   100%
src/lilbee/retrieval/entities/extractor.py _pattern_is_usable   12 0 0   100%
src/lilbee/retrieval/entities/extractor.py induce_schema   30 0 0   100%
src/lilbee/retrieval/entities/extractor.py _compile_pattern   1 0 0   100%
src/lilbee/retrieval/entities/extractor.py _extract_regex   11 0 0   100%
src/lilbee/retrieval/entities/extractor.py _extract_spacy   8 0 0   100%
src/lilbee/retrieval/entities/extractor.py _extract_llm_batch   29 0 0   100%
src/lilbee/retrieval/entities/extractor.py _regex_findings   11 0 0   100%
src/lilbee/retrieval/entities/extractor.py _retry_batch_singly   15 0 0   100%
src/lilbee/retrieval/entities/extractor.py extract_entities   25 0 0   100%
src/lilbee/retrieval/entities/extractor.py _rows_for_chunk   12 0 0   100%
src/lilbee/retrieval/entities/extractor.py (no function)   37 0 2   100%
src/lilbee/retrieval/entities/lifecycle.py ensure_entities   18 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py _evolve   19 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py _corpus_drifted   5 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py _induce   12 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py _sample_chunks   18 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py _full_pass   33 0 0   100%
src/lilbee/retrieval/entities/lifecycle.py (no function)   16 0 4   100%
src/lilbee/retrieval/entities/schema.py EntityType._slugify   4 0 0   100%
src/lilbee/retrieval/entities/schema.py EntitySchema.type_for_noun   10 0 0   100%
src/lilbee/retrieval/entities/schema.py extractor_key   2 0 0   100%
src/lilbee/retrieval/entities/schema.py merge_schemas   6 0 0   100%
src/lilbee/retrieval/entities/schema.py parse_schema   5 0 0   100%
src/lilbee/retrieval/entities/schema.py load_schema   2 0 0   100%
src/lilbee/retrieval/entities/schema.py save_schema   2 0 0   100%
src/lilbee/retrieval/entities/schema.py _entities_schema   1 0 0   100%
src/lilbee/retrieval/entities/schema.py (no function)   31 0 3   100%
src/lilbee/retrieval/language.py _english_noun_variants   18 0 0   100%
src/lilbee/retrieval/language.py query_language   1 0 0   100%
src/lilbee/retrieval/language.py noun_variants   1 0 0   100%
src/lilbee/retrieval/language.py (no function)   27 0 0   100%
src/lilbee/retrieval/query/__init__.py (no function)   5 0 0   100%
src/lilbee/retrieval/query/compaction.py summary_word_budget   1 0 0   100%
src/lilbee/retrieval/query/compaction.py history_budget   1 0 0   100%
src/lilbee/retrieval/query/compaction.py summary_messages   3 0 0   100%
src/lilbee/retrieval/query/compaction.py prompt_history   6 0 0   100%
src/lilbee/retrieval/query/compaction.py overflow   3 0 0   100%
src/lilbee/retrieval/query/compaction.py compaction_due   3 0 0   100%
src/lilbee/retrieval/query/compaction.py foldable   8 0 0   100%
src/lilbee/retrieval/query/compaction.py summary_cap   1 0 0   100%
src/lilbee/retrieval/query/compaction.py batch_overflow   20 0 0   100%
src/lilbee/retrieval/query/compaction.py plan_compaction   4 0 0   100%
src/lilbee/retrieval/query/compaction.py merge_notes   2 0 0   100%
src/lilbee/retrieval/query/compaction.py _truncated   2 0 0   100%
src/lilbee/retrieval/query/compaction.py (no function)   40 0 2   100%
src/lilbee/retrieval/query/dedup.py _relevance_weight   3 0 0   100%
src/lilbee/retrieval/query/dedup.py normalize_scores   6 0 0   100%
src/lilbee/retrieval/query/dedup.py fusion_norms   7 0 0   100%
src/lilbee/retrieval/query/dedup.py order_by_fusion   3 0 0   100%
src/lilbee/retrieval/query/dedup.py _greedy_cover   24 0 0   100%
src/lilbee/retrieval/query/dedup.py filter_results   10 0 0   100%
src/lilbee/retrieval/query/dedup.py _sort_key   3 0 0   100%
src/lilbee/retrieval/query/dedup.py sort_by_relevance   1 0 0   100%
src/lilbee/retrieval/query/dedup.py diversify_sources   10 0 0   100%
src/lilbee/retrieval/query/dedup.py dedup_near_identical   9 0 0   100%
src/lilbee/retrieval/query/dedup.py prepare_results   1 0 0   100%
src/lilbee/retrieval/query/dedup.py (no function)   18 0 0   100%
src/lilbee/retrieval/query/expansion.py (no function)   7 0 0   100%
src/lilbee/retrieval/query/formatting.py display_source_path   11 0 0   100%
src/lilbee/retrieval/query/formatting.py _source_label   9 0 0   100%
src/lilbee/retrieval/query/formatting.py _source_file_url   5 0 0   100%
src/lilbee/retrieval/query/formatting.py _source_locator   2 0 0   100%
src/lilbee/retrieval/query/formatting.py _format_citation   10 0 0   100%
src/lilbee/retrieval/query/formatting.py _location_suffix   7 0 0   100%
src/lilbee/retrieval/query/formatting.py source_markdown_link   3 0 0   100%
src/lilbee/retrieval/query/formatting.py format_source   4 0 0   100%
src/lilbee/retrieval/query/formatting.py unique_sources   7 0 0   100%
src/lilbee/retrieval/query/formatting.py _context_header   4 0 0   100%
src/lilbee/retrieval/query/formatting.py build_context   4 0 0   100%
src/lilbee/retrieval/query/formatting.py format_sources_block   5 0 0   100%
src/lilbee/retrieval/query/formatting.py _extract_cited_indices   10 0 0   100%
src/lilbee/retrieval/query/formatting.py _identifier_shaped   1 0 0   100%
src/lilbee/retrieval/query/formatting.py cited_subset   12 0 0   100%
src/lilbee/retrieval/query/formatting.py _mentions   1 0 0   100%
src/lilbee/retrieval/query/formatting.py _stream_safe_prefix   2 0 0   100%
src/lilbee/retrieval/query/formatting.py strip_llm_citations   1 0 0   100%
src/lilbee/retrieval/query/formatting.py StreamingCitationFilter.__init__   2 0 0   100%
src/lilbee/retrieval/query/formatting.py StreamingCitationFilter.feed   9 0 0   100%
src/lilbee/retrieval/query/formatting.py StreamingCitationFilter.flush   6 0 0   100%
src/lilbee/retrieval/query/formatting.py StreamingCitationFilter.answer   1 0 0   100%
src/lilbee/retrieval/query/formatting.py (no function)   40 0 0   100%
src/lilbee/retrieval/query/history_window.py estimate_text_tokens   1 0 0   100%
src/lilbee/retrieval/query/history_window.py chars_for_tokens   1 0 0   100%
src/lilbee/retrieval/query/history_window.py estimate_tokens   1 0 0   100%
src/lilbee/retrieval/query/history_window.py windowed_history   13 0 0   100%
src/lilbee/retrieval/query/history_window.py (no function)   8 0 2   100%
src/lilbee/retrieval/query/intent.py document_references   20 0 0   100%
src/lilbee/retrieval/query/intent.py matches_reference   12 0 0   100%
src/lilbee/retrieval/query/intent.py _same_number   3 0 0   100%
src/lilbee/retrieval/query/intent.py title_candidates   9 0 0   100%
src/lilbee/retrieval/query/intent.py _title_tokens   2 0 0   100%
src/lilbee/retrieval/query/intent.py matches_title   3 0 0   100%
src/lilbee/retrieval/query/intent.py matches_stored_title   5 0 0   100%
src/lilbee/retrieval/query/intent.py parse_aggregate   18 0 0   100%
src/lilbee/retrieval/query/intent.py parse_llm_aggregate   14 0 0   100%
src/lilbee/retrieval/query/intent.py (no function)   34 0 0   100%
src/lilbee/retrieval/query/memory.py format_memory_block   12 0 0   100%
src/lilbee/retrieval/query/memory.py (no function)   6 0 2   100%
src/lilbee/retrieval/query/memory_extract.py build_extract_messages   1 0 0   100%
src/lilbee/retrieval/query/memory_extract.py _coerce_kind   6 0 0   100%
src/lilbee/retrieval/query/memory_extract.py parse_extraction   15 0 0   100%
src/lilbee/retrieval/query/memory_extract.py extract_memories   8 0 0   100%
src/lilbee/retrieval/query/memory_extract.py (no function)   20 0 0   100%
src/lilbee/retrieval/query/neighbors.py _overlap_chars   4 0 0   100%
src/lilbee/retrieval/query/neighbors.py _seam   9 0 0   100%
src/lilbee/retrieval/query/neighbors.py _merge_span   13 0 0   100%
src/lilbee/retrieval/query/neighbors.py merge_adjacent_texts   1 0 0   100%
src/lilbee/retrieval/query/neighbors.py expand_neighbors   18 0 0   100%
src/lilbee/retrieval/query/neighbors.py _fetch_neighbor_rows   6 0 0   100%
src/lilbee/retrieval/query/neighbors.py _neighbor_run   7 0 0   100%
src/lilbee/retrieval/query/neighbors.py _widen   22 0 0   100%
src/lilbee/retrieval/query/neighbors.py _widened_copy   2 0 0   100%
src/lilbee/retrieval/query/neighbors.py (no function)   14 0 3   100%
src/lilbee/retrieval/query/searcher.py _strip_list_marker   1 0 0   100%
src/lilbee/retrieval/query/searcher.py _bm25_confidence   3 0 0   100%
src/lilbee/retrieval/query/searcher.py _noun_names_type   2 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.__init__   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._apply_temporal_filter   21 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._apply_guardrails   4 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._concept_query_expansion   9 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._llm_expand   8 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._expand_query   22 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._should_skip_expansion   16 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._apply_concept_boost   13 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._hyde_search   10 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._refuse_wiki_scope   4 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._retrieval_scope   3 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._parse_structured_query   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._search_structured   15 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.select_context   17 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._merge_variant_results   7 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._merge_hyde_results   8 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.search   31 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._condense_question   13 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.summarize_history   18 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._summarize_batch   23 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._known_item_results   15 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._document_chunks   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._resolve_title_filename   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._resolve_reference_filename   9 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._resolve_reference_by_content   10 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.build_rag_context   23 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._finalize_context   12 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._context_budget   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._fit_to_budget   11 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._widen_with_neighbors   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._system_with_memory   2 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._memory_block   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._memory_facts   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._answer_aggregate   12 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._decline_aggregate   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._answer_typed_aggregate   11 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._answer_distinct_count   8 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._answer_association_count   10 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.route_direct_answer   9 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._llm_classify_aggregate   10 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.skip_retrieval   1 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.search_unavailable   1 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.library_empty   1 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.direct_messages   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._messages_for_provider   1 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._direct_chat   6 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.pre_retrieval_answer   3 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.ask_raw   24 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.ask   5 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._stream_direct   8 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher.ask_stream   22 0 0   100%
src/lilbee/retrieval/query/searcher.py Searcher._filtered_answer_tokens   14 0 0   100%
src/lilbee/retrieval/query/searcher.py (no function)   118 0 3   100%
src/lilbee/retrieval/query/structural.py _normalize_leaders   2 0 0   100%
src/lilbee/retrieval/query/structural.py _is_toc   6 0 0   100%
src/lilbee/retrieval/query/structural.py _is_cover_page   14 0 0   100%
src/lilbee/retrieval/query/structural.py is_structural_chunk   4 0 0   100%
src/lilbee/retrieval/query/structural.py (no function)   17 0 0   100%
src/lilbee/retrieval/query/tokenize.py _tokenize   1 0 0   100%
src/lilbee/retrieval/query/tokenize.py _idf_weights   6 0 0   100%
src/lilbee/retrieval/query/tokenize.py (no function)   7 0 0   100%
src/lilbee/retrieval/reasoning.py TagParser.feed   9 0 0   100%
src/lilbee/retrieval/reasoning.py TagParser.flush   6 0 0   100%
src/lilbee/retrieval/reasoning.py TagParser._process_thinking   15 0 0   100%
src/lilbee/retrieval/reasoning.py TagParser._process_normal   11 0 0   100%
src/lilbee/retrieval/reasoning.py filter_reasoning   20 0 0   100%
src/lilbee/retrieval/reasoning.py effective_reasoning_cap   3 0 0   100%
src/lilbee/retrieval/reasoning.py stream_chat_with_cap   21 0 0   100%
src/lilbee/retrieval/reasoning.py stream_chat_with_cap._on_cap   2 0 0   100%
src/lilbee/retrieval/reasoning.py stream_chat_with_cap._on_reasoning   1 0 0   100%
src/lilbee/retrieval/reasoning.py _text_only   5 0 0   100%
src/lilbee/retrieval/reasoning.py cap_events_as_stream_tokens   5 0 0   100%
src/lilbee/retrieval/reasoning.py _close_iterator   3 0 0   100%
src/lilbee/retrieval/reasoning.py strip_reasoning   1 0 0   100%
src/lilbee/retrieval/reasoning.py split_reasoning   2 0 0   100%
src/lilbee/retrieval/reasoning.py _could_be_partial   1 0 0   100%
src/lilbee/retrieval/reasoning.py (no function)   46 0 2   100%
src/lilbee/retrieval/reranker.py _blend_scores   11 0 0   100%
src/lilbee/retrieval/reranker.py Reranker.__init__   1 0 0   100%
src/lilbee/retrieval/reranker.py Reranker.rerank   28 0 0   100%
src/lilbee/retrieval/reranker.py _score_candidates   11 0 0   100%
src/lilbee/retrieval/reranker.py (no function)   19 0 0   100%
src/lilbee/runtime/__init__.py (no function)   0 0 0   100%
src/lilbee/runtime/_splash_runner.py apply_color   3 0 0   100%
src/lilbee/runtime/_splash_runner.py build_logo_frames   1 0 0   100%
src/lilbee/runtime/_splash_runner.py build_knight_rider_frames   17 0 0   100%
src/lilbee/runtime/_splash_runner.py left_pad   5 0 0   100%
src/lilbee/runtime/_splash_runner.py render_frame   4 0 0   100%
src/lilbee/runtime/_splash_runner.py move_up_and_clear   1 0 0   100%
src/lilbee/runtime/_splash_runner.py clear_screen   1 0 0   100%
src/lilbee/runtime/_splash_runner.py _read_signal   7 0 0   100%
src/lilbee/runtime/_splash_runner.py _poll_pipe_win32   0 0 16   100%
src/lilbee/runtime/_splash_runner.py _poll_pipe_posix   0 0 8   100%
src/lilbee/runtime/_splash_runner.py poll_pipe   1 0 2   100%
src/lilbee/runtime/_splash_runner.py animation_loop   20 0 3   100%
src/lilbee/runtime/_splash_runner.py animation_loop.handle_term   0 0 2   100%
src/lilbee/runtime/_splash_runner.py animation_loop.should_stop   3 0 0   100%
src/lilbee/runtime/_splash_runner.py _animate_frames   11 0 1   100%
src/lilbee/runtime/_splash_runner.py main   10 0 0   100%
src/lilbee/runtime/_splash_runner.py (no function)   44 0 2   100%
src/lilbee/runtime/asyncio_loop.py is_executor_shutdown   1 0 0   100%
src/lilbee/runtime/asyncio_loop.py get_loop   12 0 0   100%
src/lilbee/runtime/asyncio_loop.py run   5 0 0   100%
src/lilbee/runtime/asyncio_loop.py shutdown   11 0 0   100%
src/lilbee/runtime/asyncio_loop.py _drain   6 0 0   100%
src/lilbee/runtime/asyncio_loop.py (no function)   19 0 0   100%
src/lilbee/runtime/bee_logo.py xterm_fg   1 0 0   100%
src/lilbee/runtime/bee_logo.py (no function)   7 0 0   100%
src/lilbee/runtime/cancellation.py CancelSignal.is_set   0 0 1   100%
src/lilbee/runtime/cancellation.py (no function)   3 0 7   100%
src/lilbee/runtime/cpu.py _cgroup_cpu_quota   20 0 0   100%
src/lilbee/runtime/cpu.py _cpu_budget   8 0 0   100%
src/lilbee/runtime/cpu.py available_cpu_count   1 0 0   100%
src/lilbee/runtime/cpu.py cpu_quota   10 0 0   100%
src/lilbee/runtime/cpu.py engine_thread_count   4 0 0   100%
src/lilbee/runtime/cpu.py (no function)   14 0 0   100%
src/lilbee/runtime/engine_lock.py machine_engine_dir   5 0 0   100%
src/lilbee/runtime/engine_lock.py private_engine_dir   1 0 0   100%
src/lilbee/runtime/engine_lock.py build_lock   18 0 0   100%
src/lilbee/runtime/engine_lock.py kernel_arbitrates_locks   11 0 0   100%
src/lilbee/runtime/engine_lock.py _users_dir   1 0 0   100%
src/lilbee/runtime/engine_lock.py _keep_warm_path   2 0 0   100%
src/lilbee/runtime/engine_lock.py request_keep_warm   3 0 0   100%
src/lilbee/runtime/engine_lock.py withdraw_keep_warm   1 0 0   100%
src/lilbee/runtime/engine_lock.py keep_warm_requested   1 0 0   100%
src/lilbee/runtime/engine_lock.py clear_keep_warm   2 0 0   100%
src/lilbee/runtime/engine_lock.py _user_lock_path   1 0 0   100%
src/lilbee/runtime/engine_lock.py UserLockHold.release_and_check_last   5 0 0   100%
src/lilbee/runtime/engine_lock.py hold_user_lock   5 0 0   100%
src/lilbee/runtime/engine_lock.py _user_file_lock   1 0 0   100%
src/lilbee/runtime/engine_lock.py live_users_exist   12 0 0   100%
src/lilbee/runtime/engine_lock.py (no function)   44 0 2   100%
src/lilbee/runtime/hardware.py compute_fit   8 0 0   100%
src/lilbee/runtime/hardware.py available_memory_for_fit   6 0 0   100%
src/lilbee/runtime/hardware.py _expert_offload_headroom   9 0 0   100%
src/lilbee/runtime/hardware.py family_size_variants   2 0 0   100%
src/lilbee/runtime/hardware.py _size_variant_label   2 0 0   100%
src/lilbee/runtime/hardware.py (no function)   26 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.__init__   2 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry._get_registry_lock   3 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.reset   2 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.try_acquire   9 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.canonical_source_name   1 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.acquire   12 0 0   100%
src/lilbee/runtime/ingest_lock.py IngestLockRegistry.release   6 0 0   100%
src/lilbee/runtime/ingest_lock.py (no function)   12 0 0   100%
src/lilbee/runtime/launcher.py _shell_completion_active   1 0 0   100%
src/lilbee/runtime/launcher.py _force_utf8_stdio   4 0 0   100%
src/lilbee/runtime/launcher.py main   23 0 0   100%
src/lilbee/runtime/launcher.py (no function)   9 0 0   100%
src/lilbee/runtime/lock.py _lock_path   1 0 0   100%
src/lilbee/runtime/lock.py server_lock_path   1 0 0   100%
src/lilbee/runtime/lock.py acquire_server_lock   7 0 0   100%
src/lilbee/runtime/lock.py ScopeHold.release   2 0 0   100%
src/lilbee/runtime/lock.py acquire_scope_lock   9 0 0   100%
src/lilbee/runtime/lock.py read_scope_owner   5 0 0   100%
src/lilbee/runtime/lock.py write_lock   17 0 0   100%
src/lilbee/runtime/lock.py (no function)   35 0 0   100%
src/lilbee/runtime/progress/__init__.py (no function)   3 0 0   100%
src/lilbee/runtime/progress/callbacks.py noop_callback   0 0 0   100%
src/lilbee/runtime/progress/callbacks.py (no function)   5 0 0   100%
src/lilbee/runtime/progress/types.py (no function)   104 0 0   100%
src/lilbee/runtime/splash.py _should_skip   5 0 0   100%
src/lilbee/runtime/splash.py start   11 0 0   100%
src/lilbee/runtime/splash.py stop   11 0 0   100%
src/lilbee/runtime/splash.py dismiss   15 0 0   100%
src/lilbee/runtime/splash.py _close_write_fd   2 0 0   100%
src/lilbee/runtime/splash.py _signal_takeover   2 0 0   100%
src/lilbee/runtime/splash.py _restore_cursor   5 0 0   100%
src/lilbee/runtime/splash.py _atexit_cleanup   2 0 0   100%
src/lilbee/runtime/splash.py (no function)   24 0 0   100%
src/lilbee/runtime/temporal.py detect_temporal   4 0 0   100%
src/lilbee/runtime/temporal.py _today   1 0 0   100%
src/lilbee/runtime/temporal.py _yesterday   1 0 0   100%
src/lilbee/runtime/temporal.py _this_week   1 0 0   100%
src/lilbee/runtime/temporal.py _last_week   2 0 0   100%
src/lilbee/runtime/temporal.py _this_month   1 0 0   100%
src/lilbee/runtime/temporal.py _last_month   2 0 0   100%
src/lilbee/runtime/temporal.py _recent   1 0 0   100%
src/lilbee/runtime/temporal.py resolve_date_range   5 0 0   100%
src/lilbee/runtime/temporal.py (no function)   20 0 0   100%
src/lilbee/server/__init__.py create_app   2 0 0   100%
src/lilbee/server/__init__.py (no function)   1 0 0   100%
src/lilbee/server/anthropic_api/__init__.py (no function)   0 0 0   100%
src/lilbee/server/anthropic_api/errors.py anthropic_error_type   1 0 0   100%
src/lilbee/server/anthropic_api/errors.py anthropic_error_body   1 0 0   100%
src/lilbee/server/anthropic_api/errors.py (no function)   7 0 0   100%
src/lilbee/server/anthropic_api/models.py (no function)   71 0 0   100%
src/lilbee/server/anthropic_api/routes.py _auth_before_request   1 0 0   100%
src/lilbee/server/anthropic_api/routes.py messages_endpoint   16 0 0   100%
src/lilbee/server/anthropic_api/routes.py _preflight_resolved_model   7 0 0   100%
src/lilbee/server/anthropic_api/routes.py _run_non_stream   10 0 0   100%
src/lilbee/server/anthropic_api/routes.py _gated_messages_stream   15 0 0   100%
src/lilbee/server/anthropic_api/routes.py _internal_error_response   2 0 0   100%
src/lilbee/server/anthropic_api/routes.py _error_response   1 0 0   100%
src/lilbee/server/anthropic_api/routes.py _auth_failure   8 0 0   100%
src/lilbee/server/anthropic_api/routes.py _validation_exception_handler   1 0 0   100%
src/lilbee/server/anthropic_api/routes.py _response_id   1 0 0   100%
src/lilbee/server/anthropic_api/routes.py (no function)   36 0 0   100%
src/lilbee/server/anthropic_api/streaming.py encode_anthropic_event   2 0 0   100%
src/lilbee/server/anthropic_api/streaming.py encode_anthropic_sse   3 0 0   100%
src/lilbee/server/anthropic_api/streaming.py encode_anthropic_sse._frames   2 0 0   100%
src/lilbee/server/anthropic_api/streaming.py (no function)   10 0 0   100%
src/lilbee/server/anthropic_api/translate.py messages_to_canonical_request   4 0 0   100%
src/lilbee/server/anthropic_api/translate.py _system_text   6 0 0   100%
src/lilbee/server/anthropic_api/translate.py _canonical_messages_for   10 0 0   100%
src/lilbee/server/anthropic_api/translate.py _block_messages   17 0 0   100%
src/lilbee/server/anthropic_api/translate.py _tool_result_message   1 0 0   100%
src/lilbee/server/anthropic_api/translate.py _message_text   3 0 0   100%
src/lilbee/server/anthropic_api/translate.py _tool_result_content   11 0 0   100%
src/lilbee/server/anthropic_api/translate.py _tools_from_request   3 0 0   100%
src/lilbee/server/anthropic_api/translate.py _tool_choice_from_request   8 0 0   100%
src/lilbee/server/anthropic_api/translate.py canonical_to_messages_response   10 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper.__init__   3 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper._close_open   5 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper._ensure_block   8 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper._text_events   10 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper.block_start   10 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper.block_delta   5 0 0   100%
src/lilbee/server/anthropic_api/translate.py _AnthropicStreamMapper.block_stop   4 0 0   100%
src/lilbee/server/anthropic_api/translate.py canonical_stream_to_anthropic_events   18 0 0   100%
src/lilbee/server/anthropic_api/translate.py (no function)   34 0 0   100%
src/lilbee/server/app.py _warn_if_few_file_descriptors   6 0 2   100%
src/lilbee/server/app.py _raise_thread_pool_ceiling   3 0 0   100%
src/lilbee/server/app.py _ServerLoop.__init__   1 0 0   100%
src/lilbee/server/app.py _ServerLoop.set   1 0 0   100%
src/lilbee/server/app.py _ServerLoop.running   2 0 0   100%
src/lilbee/server/app.py reapply_thread_pool_ceiling   3 0 0   100%
src/lilbee/server/app.py _log_embedding_model_state   9 0 0   100%
src/lilbee/server/app.py _lifespan   18 0 0   100%
src/lilbee/server/app.py _json_error_response   3 0 0   100%
src/lilbee/server/app.py create_app   3 0 0   100%
src/lilbee/server/app.py (no function)   47 0 2   100%
src/lilbee/server/auth.py auth_checked_in_handler   4 0 0   100%
src/lilbee/server/auth.py authenticates_itself   1 0 0   100%
src/lilbee/server/auth.py server_json_path   1 0 0   100%
src/lilbee/server/auth.py SessionManager.__init__   2 0 0   100%
src/lilbee/server/auth.py SessionManager.load_or_generate   12 0 0   100%
src/lilbee/server/auth.py SessionManager.disable   2 0 0   100%
src/lilbee/server/auth.py SessionManager._read_persisted_token   16 0 0   100%
src/lilbee/server/auth.py SessionManager.cleanup   7 0 0   100%
src/lilbee/server/auth.py SessionManager.validate   5 0 0   100%
src/lilbee/server/auth.py AuthMiddleware.__init__   1 0 0   100%
src/lilbee/server/auth.py AuthMiddleware.__call__   17 0 0   100%
src/lilbee/server/auth.py (no function)   33 0 0   100%
src/lilbee/server/chat_completions_api/__init__.py (no function)   0 0 0   100%
src/lilbee/server/chat_completions_api/errors.py completions_error_body   1 0 0   100%
src/lilbee/server/chat_completions_api/errors.py classify_provider_error   13 0 0   100%
src/lilbee/server/chat_completions_api/errors.py (no function)   28 0 0   100%
src/lilbee/server/chat_completions_api/models.py (no function)   124 0 0   100%
src/lilbee/server/chat_completions_api/routes.py list_models_endpoint   5 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _build_models_list_payload   7 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _auth_before_request   1 0 0   100%
src/lilbee/server/chat_completions_api/routes.py chat_completions_endpoint   20 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _reject_before_dispatch   5 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _preflight_resolved_model   7 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _internal_error_response   2 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _run_non_stream   10 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _gated_completions_stream   14 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _sse_error_frame   4 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _error_response   1 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _auth_failure   8 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _validation_exception_handler   1 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _parse_created   6 0 0   100%
src/lilbee/server/chat_completions_api/routes.py _response_id   1 0 0   100%
src/lilbee/server/chat_completions_api/routes.py (no function)   49 0 0   100%
src/lilbee/server/chat_completions_api/streaming.py encode_completions_sse   4 0 0   100%
src/lilbee/server/chat_completions_api/streaming.py encode_completions_sse._frames   2 0 0   100%
src/lilbee/server/chat_completions_api/streaming.py (no function)   7 0 0   100%
src/lilbee/server/chat_completions_api/translate.py completions_to_canonical_request   8 0 0   100%
src/lilbee/server/chat_completions_api/translate.py canonical_to_completions_response   6 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _StreamMapper.__init__   4 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _StreamMapper.block_start   12 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _StreamMapper.block_delta   8 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _StreamMapper.block_stop   2 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _StreamMapper._text_delta   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _tool_call_open   1 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _tool_call_args   1 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _finish_reason_for   3 0 0   100%
src/lilbee/server/chat_completions_api/translate.py canonical_stream_to_completions_chunks   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _chunks_for_event   10 0 1   100%
src/lilbee/server/chat_completions_api/translate.py _message_delta_chunks   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _maybe_chunk   1 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _chunk   1 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _usage_chunk   2 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _system_text   7 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _message_from_request   11 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _content_blocks   11 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _tool_result_content   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _response_tool_call   1 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _tools_from_request   3 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _tool_choice_from_request   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py _stop_from_request   5 0 0   100%
src/lilbee/server/chat_completions_api/translate.py (no function)   38 0 0   100%
src/lilbee/server/chat_dispatch/__init__.py (no function)   0 0 0   100%
src/lilbee/server/chat_dispatch/canonical.py CanonicalMessage.from_string   1 0 0   100%
src/lilbee/server/chat_dispatch/canonical.py CanonicalToolChoice.__post_init__   2 0 0   100%
src/lilbee/server/chat_dispatch/canonical.py (no function)   96 0 0   100%
src/lilbee/server/chat_dispatch/capability.py model_supports_tools   5 0 0   100%
src/lilbee/server/chat_dispatch/capability.py (no function)   6 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate.__init__   3 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate.in_flight   1 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate.acquire   20 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate.release   3 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate._observe_capacity   2 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate._admit_waiters   6 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate._pop_live_waiter   5 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatGate._abandon   4 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py _busy_message   2 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py chat_gate   1 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py acquire_chat_slot_or_busy   2 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py release_chat_slot   1 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatSlotGuard.__init__   1 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatSlotGuard.released   1 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py ChatSlotGuard.release   4 0 0   100%
src/lilbee/server/chat_dispatch/concurrency.py (no function)   26 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py ModelNotFoundError.__init__   2 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py ModelDoesNotSupportToolsError.__init__   2 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _provider_chat_kwargs   1 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _stop_reason_for   3 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _content_blocks_from_result   6 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py dispatch_chat   4 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py dispatch_chat_stream   13 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _async_iter_provider_stream   5 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _next_or_done   4 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState.__init__   6 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState.feed   7 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState.finish   5 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState._feed_finish   3 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState._feed_text   6 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState._feed_tool   10 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState._tool_block_fields   4 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _StreamState._close_current   3 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _resolve_canonical_model   4 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _ensure_tool_capability   2 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _ensure_configured_local_model   3 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py preflight_chat_request   4 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _provider_messages   6 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _translate_message   10 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _flatten_text   1 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _provider_tools   3 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _provider_tool_choice   5 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _provider_options   18 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _new_call_id   1 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py _new_message_id   1 0 0   100%
src/lilbee/server/chat_dispatch/dispatch.py (no function)   59 0 0   100%
src/lilbee/server/chat_dispatch/tool_args.py parse_tool_arguments   7 0 0   100%
src/lilbee/server/chat_dispatch/tool_args.py (no function)   4 0 0   100%
src/lilbee/server/handlers/__init__.py _chat_status   8 0 0   100%
src/lilbee/server/handlers/__init__.py health   3 0 0   100%
src/lilbee/server/handlers/__init__.py shutdown   2 0 0   100%
src/lilbee/server/handlers/__init__.py warm_stream   14 0 0   100%
src/lilbee/server/handlers/__init__.py gpu_stats_stream   19 0 0   100%
src/lilbee/server/handlers/__init__.py status   2 0 0   100%
src/lilbee/server/handlers/__init__.py placement   2 0 0   100%
src/lilbee/server/handlers/__init__.py placement_preview   4 0 0   100%
src/lilbee/server/handlers/__init__.py placement_set   4 0 0   100%
src/lilbee/server/handlers/__init__.py placement_clear   2 0 0   100%
src/lilbee/server/handlers/__init__.py _placement_response_off_loop   1 0 0   100%
src/lilbee/server/handlers/__init__.py _placement_response   3 0 0   100%
src/lilbee/server/handlers/__init__.py _intel_notice_text   4 0 0   100%
src/lilbee/server/handlers/__init__.py gpus   3 0 0   100%
src/lilbee/server/handlers/__init__.py gpus._body   2 0 0   100%
src/lilbee/server/handlers/__init__.py (no function)   43 0 3   100%
src/lilbee/server/handlers/agent_config.py agent_config_index   2 0 0   100%
src/lilbee/server/handlers/agent_config.py agent_config   2 0 0   100%
src/lilbee/server/handlers/agent_config.py _model_inputs   4 0 0   100%
src/lilbee/server/handlers/agent_config.py _build_document   2 0 0   100%
src/lilbee/server/handlers/agent_config.py (no function)   14 0 0   100%
src/lilbee/server/handlers/config.py update_config   4 0 0   100%
src/lilbee/server/handlers/config.py get_config   3 0 0   100%
src/lilbee/server/handlers/config.py _compute_config_defaults   8 0 2   100%
src/lilbee/server/handlers/config.py get_config_defaults   1 0 0   100%
src/lilbee/server/handlers/config.py (no function)   16 0 0   100%
src/lilbee/server/handlers/crawl.py crawl_stream   8 0 0   100%
src/lilbee/server/handlers/crawl.py crawl_stream._run_crawl   4 0 0   100%
src/lilbee/server/handlers/crawl.py (no function)   7 0 0   100%
src/lilbee/server/handlers/documents.py _is_safe_for_inline_render   5 0 0   100%
src/lilbee/server/handlers/documents.py _imported_source_markdown   5 0 0   100%
src/lilbee/server/handlers/documents.py delete_documents   3 0 0   100%
src/lilbee/server/handlers/documents.py list_documents   5 0 0   100%
src/lilbee/server/handlers/documents.py get_source_content   1 0 0   100%
src/lilbee/server/handlers/documents.py _get_source_content_sync   25 0 0   100%
src/lilbee/server/handlers/documents.py (no function)   13 0 0   100%
src/lilbee/server/handlers/ingest.py _run_sync_with_sentinel   6 0 0   100%
src/lilbee/server/handlers/ingest.py sync_stream   7 0 0   100%
src/lilbee/server/handlers/ingest.py _run_add   19 0 0   100%
src/lilbee/server/handlers/ingest.py validate_add_paths   11 0 0   100%
src/lilbee/server/handlers/ingest.py _parse_ocr_params   7 0 0   100%
src/lilbee/server/handlers/ingest.py _ingest_stream   23 0 0   100%
src/lilbee/server/handlers/ingest.py add_files_stream   2 0 0   100%
src/lilbee/server/handlers/ingest.py _clean_upload_name   11 0 0   100%
src/lilbee/server/handlers/ingest.py validate_upload_names   3 0 0   100%
src/lilbee/server/handlers/ingest.py _run_upload   14 0 0   100%
src/lilbee/server/handlers/ingest.py add_uploads_stream   2 0 0   100%
src/lilbee/server/handlers/ingest.py _run_import_with_sentinel   4 0 0   100%
src/lilbee/server/handlers/ingest.py import_stream   7 0 0   100%
src/lilbee/server/handlers/ingest.py (no function)   31 0 3   100%
src/lilbee/server/handlers/memory.py _require_memory   2 0 0   100%
src/lilbee/server/handlers/memory.py remember_memory   3 0 0   100%
src/lilbee/server/handlers/memory.py list_local_memories   2 0 0   100%
src/lilbee/server/handlers/memory.py update_memory_shared   3 0 0   100%
src/lilbee/server/handlers/memory.py remove_memory   3 0 0   100%
src/lilbee/server/handlers/memory.py (no function)   10 0 0   100%
src/lilbee/server/handlers/models.py format_task_mismatch   2 0 0   100%
src/lilbee/server/handlers/models.py _catalog_section   2 0 0   100%
src/lilbee/server/handlers/models.py list_models   3 0 0   100%
src/lilbee/server/handlers/models.py _set_model   2 0 0   100%
src/lilbee/server/handlers/models.py _resolve_via_available_repo   3 0 0   100%
src/lilbee/server/handlers/models.py _resolve_via_parse   5 0 0   100%
src/lilbee/server/handlers/models.py _resolve_via_provider_key   7 0 0   100%
src/lilbee/server/handlers/models.py _require_model_available   10 0 0   100%
src/lilbee/server/handlers/models.py _build_task_to_field   1 0 0   100%
src/lilbee/server/handlers/models.py _require_model_for_task   4 0 0   100%
src/lilbee/server/handlers/models.py set_chat_model   2 0 0   100%
src/lilbee/server/handlers/models.py set_embedding_model   3 0 0   100%
src/lilbee/server/handlers/models.py set_vision_model   2 0 0   100%
src/lilbee/server/handlers/models.py set_reranker_model   2 0 0   100%
src/lilbee/server/handlers/models.py models_show   3 0 0   100%
src/lilbee/server/handlers/models.py _parse_source   1 0 0   100%
src/lilbee/server/handlers/models.py _row_fit   7 0 0   100%
src/lilbee/server/handlers/models.py _families_by_repo   5 0 0   100%
src/lilbee/server/handlers/models.py _row_size_variants   4 0 0   100%
src/lilbee/server/handlers/models.py _build_catalog_entry   1 0 0   100%
src/lilbee/server/handlers/models.py _hosted_entry   1 0 0   100%
src/lilbee/server/handlers/models.py _discover_hosted_sync   8 0 0   100%
src/lilbee/server/handlers/models.py _hosted_cache_key   2 0 0   100%
src/lilbee/server/handlers/models.py _collect_hosted_entries   11 0 0   100%
src/lilbee/server/handlers/models.py models_catalog   14 0 0   100%
src/lilbee/server/handlers/models.py _installed_entries_sync   6 0 0   100%
src/lilbee/server/handlers/models.py models_installed   2 0 0   100%
src/lilbee/server/handlers/models.py enforce_pull_arch_compat   9 0 0   100%
src/lilbee/server/handlers/models.py models_pull   9 0 0   100%
src/lilbee/server/handlers/models.py models_pull._pull_blocking   8 0 0   100%
src/lilbee/server/handlers/models.py models_pull._pull_blocking._on_bytes   4 0 0   100%
src/lilbee/server/handlers/models.py models_delete   8 0 0   100%
src/lilbee/server/handlers/models.py list_external_models   12 0 0   100%
src/lilbee/server/handlers/models.py (no function)   78 0 3   100%
src/lilbee/server/handlers/rag.py _classify_stream_error   14 0 0   100%
src/lilbee/server/handlers/rag.py search   4 0 0   100%
src/lilbee/server/handlers/rag.py ask   8 0 0   100%
src/lilbee/server/handlers/rag.py _chat_warming_events   4 0 0   100%
src/lilbee/server/handlers/rag.py _put_answer_token   4 0 0   100%
src/lilbee/server/handlers/rag.py _put_answer_tail   6 0 0   100%
src/lilbee/server/handlers/rag.py _run_llm_stream   17 0 0   100%
src/lilbee/server/handlers/rag.py _store_extracted_memories   3 0 0   100%
src/lilbee/server/handlers/rag.py _emit_extracted_memories   5 0 0   100%
src/lilbee/server/handlers/rag.py _mismatch_detail   1 0 0   100%
src/lilbee/server/handlers/rag.py _emit_sources_and_memories   7 0 0   100%
src/lilbee/server/handlers/rag.py _stream_rag_response   34 0 0   100%
src/lilbee/server/handlers/rag.py ask_stream   1 0 0   100%
src/lilbee/server/handlers/rag.py _compaction_pending   2 0 0   100%
src/lilbee/server/handlers/rag.py _manage_history   9 0 0   100%
src/lilbee/server/handlers/rag.py _context_management_frames   21 0 0   100%
src/lilbee/server/handlers/rag.py _context_management_frames._on_batch   1 0 0   100%
src/lilbee/server/handlers/rag.py _context_management_frames._condense   3 0 0   100%
src/lilbee/server/handlers/rag.py _persist_summary   4 0 0   100%
src/lilbee/server/handlers/rag.py chat   23 0 0   100%
src/lilbee/server/handlers/rag.py chat_stream   1 0 0   100%
src/lilbee/server/handlers/rag.py _resolve_chat_stream_context   9 0 0   100%
src/lilbee/server/handlers/rag.py _stream_chat_response   30 0 0   100%
src/lilbee/server/handlers/rag.py _cap_aware_chat_events   16 0 0   100%
src/lilbee/server/handlers/rag.py _drive_stream   17 0 0   100%
src/lilbee/server/handlers/rag.py _nudged_request   1 0 0   100%
src/lilbee/server/handlers/rag.py _aclose   4 0 0   100%
src/lilbee/server/handlers/rag.py _sse_for_chat_event   4 0 0   100%
src/lilbee/server/handlers/rag.py _chat_answer_frame   12 0 0   100%
src/lilbee/server/handlers/rag.py _chat_answer_tail_frame   7 0 0   100%
src/lilbee/server/handlers/rag.py _text_from_event   3 0 0   100%
src/lilbee/server/handlers/rag.py _retrieval_off   1 0 0   100%
src/lilbee/server/handlers/rag.py _resolve_stream_context   15 0 0   100%
src/lilbee/server/handlers/rag.py _build_canonical_request   3 0 0   100%
src/lilbee/server/handlers/rag.py _canonical_role   4 0 0   100%
src/lilbee/server/handlers/rag.py _split_system   3 0 0   100%
src/lilbee/server/handlers/rag.py _join_text_blocks   1 0 0   100%
src/lilbee/server/handlers/rag.py (no function)   72 0 4   100%
src/lilbee/server/handlers/sessions.py _require_sessions   2 0 0   100%
src/lilbee/server/handlers/sessions.py _store   2 0 0   100%
src/lilbee/server/handlers/sessions.py _session_errors   6 0 0   100%
src/lilbee/server/handlers/sessions.py _meta_item   1 0 0   100%
src/lilbee/server/handlers/sessions.py _detail   1 0 0   100%
src/lilbee/server/handlers/sessions.py list_sessions   1 0 0   100%
src/lilbee/server/handlers/sessions.py get_session   2 0 0   100%
src/lilbee/server/handlers/sessions.py create_session   4 0 0   100%
src/lilbee/server/handlers/sessions.py add_session_message   5 0 0   100%
src/lilbee/server/handlers/sessions.py claim_session   4 0 0   100%
src/lilbee/server/handlers/sessions.py set_session_summary   4 0 0   100%
src/lilbee/server/handlers/sessions.py rename_session   3 0 0   100%
src/lilbee/server/handlers/sessions.py delete_session   3 0 0   100%
src/lilbee/server/handlers/sessions.py (no function)   22 0 0   100%
src/lilbee/server/handlers/sse.py frames_with_keepalive   22 0 0   100%
src/lilbee/server/handlers/sse.py sse_event   1 0 0   100%
src/lilbee/server/handlers/sse.py sse_error   6 0 0   100%
src/lilbee/server/handlers/sse.py classify_load_error   6 0 0   100%
src/lilbee/server/handlers/sse.py sse_done   1 0 0   100%
src/lilbee/server/handlers/sse.py _resolve_generation_options   1 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue.__init__   5 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue._put   1 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue._get   1 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue._evict_oldest_droppable   6 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue.put_nowait   4 0 0   100%
src/lilbee/server/handlers/sse.py SseEventQueue.put_event_nowait   10 0 0   100%
src/lilbee/server/handlers/sse.py SseStream.__init__   4 0 0   100%
src/lilbee/server/handlers/sse.py SseStream.put_threadsafe   1 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._put_and_check_stall   4 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._build_callback   4 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._build_callback._callback   9 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._flush_pending   5 0 0   100%
src/lilbee/server/handlers/sse.py SseStream.terminal_frame   6 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._drain_waiters   1 0 0   100%
src/lilbee/server/handlers/sse.py SseStream._drain_timeout   4 0 0   100%
src/lilbee/server/handlers/sse.py SseStream.drain   32 0 0   100%
src/lilbee/server/handlers/sse.py (no function)   51 0 0   100%
src/lilbee/server/handlers/wiki.py _wiki_run_stream   8 0 0   100%
src/lilbee/server/handlers/wiki.py _wiki_run_stream._run   3 0 0   100%
src/lilbee/server/handlers/wiki.py wiki_build_stream   2 0 0   100%
src/lilbee/server/handlers/wiki.py wiki_synthesize_stream   2 0 0   100%
src/lilbee/server/handlers/wiki.py wiki_generate_stream   2 0 0   100%
src/lilbee/server/handlers/wiki.py _generate_one_page   7 0 0   100%
src/lilbee/server/handlers/wiki.py (no function)   18 0 0   100%
src/lilbee/server/mcp_mount.py _fmt_host   1 0 0   100%
src/lilbee/server/mcp_mount.py _transport_security   9 0 0   100%
src/lilbee/server/mcp_mount.py build_mcp_mount   9 0 0   100%
src/lilbee/server/mcp_mount.py build_mcp_mount._forward   1 0 0   100%
src/lilbee/server/mcp_mount.py build_mcp_mount._session_lifespan   2 0 0   100%
src/lilbee/server/mcp_mount.py (no function)   18 0 3   100%
src/lilbee/server/models.py decode_chunk_type   4 0 0   100%
src/lilbee/server/models.py AskRequest._check_chunk_type   1 0 0   100%
src/lilbee/server/models.py ChatRequest._check_chunk_type   1 0 0   100%
src/lilbee/server/models.py PlacementResponse.from_view   1 0 0   100%
src/lilbee/server/models.py AgentConfigIndexResponse.from_detections   1 0 0   100%
src/lilbee/server/models.py AgentConfigResponse.from_document   1 0 0   100%
src/lilbee/server/models.py (no function)   402 0 4   100%
src/lilbee/server/routes/__init__.py (no function)   0 0 0   100%
src/lilbee/server/routes/agent_config.py _base_url   1 0 0   100%
src/lilbee/server/routes/agent_config.py agent_config_index_route   1 0 0   100%
src/lilbee/server/routes/agent_config.py agent_config_route   5 0 0   100%
src/lilbee/server/routes/agent_config.py (no function)   12 0 0   100%
src/lilbee/server/routes/crawl.py crawl_route   7 0 0   100%
src/lilbee/server/routes/crawl.py (no function)   10 0 0   100%
src/lilbee/server/routes/documents.py sync_route   4 0 0   100%
src/lilbee/server/routes/documents.py add_route   5 0 0   100%
src/lilbee/server/routes/documents.py add_upload_route   6 0 0   100%
src/lilbee/server/routes/documents.py documents_list_route   1 0 0   100%
src/lilbee/server/routes/documents.py documents_remove_route   1 0 0   100%
src/lilbee/server/routes/documents.py export_route   6 0 0   100%
src/lilbee/server/routes/documents.py import_route   6 0 0   100%
src/lilbee/server/routes/documents.py (no function)   28 0 0   100%
src/lilbee/server/routes/general.py health_route   1 0 0   100%
src/lilbee/server/routes/general.py warm_stream_route   1 0 0   100%
src/lilbee/server/routes/general.py status_route   1 0 0   100%
src/lilbee/server/routes/general.py shutdown_route   1 0 0   100%
src/lilbee/server/routes/general.py config_route   1 0 0   100%
src/lilbee/server/routes/general.py config_defaults_route   1 0 0   100%
src/lilbee/server/routes/general.py config_update_route   4 0 0   100%
src/lilbee/server/routes/general.py source_content_route   13 0 0   100%
src/lilbee/server/routes/general.py (no function)   30 0 0   100%
src/lilbee/server/routes/memory.py memories_list_route   1 0 0   100%
src/lilbee/server/routes/memory.py memories_remember_route   1 0 0   100%
src/lilbee/server/routes/memory.py memories_update_route   1 0 0   100%
src/lilbee/server/routes/memory.py memories_remove_route   1 0 0   100%
src/lilbee/server/routes/memory.py (no function)   13 0 0   100%
src/lilbee/server/routes/models.py _task_mismatch_detail   3 0 0   100%
src/lilbee/server/routes/models.py models_list_route   1 0 0   100%
src/lilbee/server/routes/models.py models_external_route   1 0 0   100%
src/lilbee/server/routes/models.py models_set_chat_route   4 0 0   100%
src/lilbee/server/routes/models.py models_set_embedding_route   4 0 0   100%
src/lilbee/server/routes/models.py models_set_vision_route   4 0 0   100%
src/lilbee/server/routes/models.py models_set_reranker_route   4 0 0   100%
src/lilbee/server/routes/models.py models_catalog_route   4 0 0   100%
src/lilbee/server/routes/models.py models_installed_route   1 0 0   100%
src/lilbee/server/routes/models.py models_pull_route   5 0 0   100%
src/lilbee/server/routes/models.py models_show_route   1 0 0   100%
src/lilbee/server/routes/models.py models_delete_route   4 0 0   100%
src/lilbee/server/routes/models.py (no function)   40 0 0   100%
src/lilbee/server/routes/placement.py _spec_json   1 0 0   100%
src/lilbee/server/routes/placement.py _refused   2 0 0   100%
src/lilbee/server/routes/placement.py placement_route   4 0 0   100%
src/lilbee/server/routes/placement.py placement_preview_route   9 0 0   100%
src/lilbee/server/routes/placement.py placement_set_route   14 0 0   100%
src/lilbee/server/routes/placement.py placement_clear_route   6 0 0   100%
src/lilbee/server/routes/placement.py gpus_route   4 0 0   100%
src/lilbee/server/routes/placement.py gpu_stats_stream_route   6 0 0   100%
src/lilbee/server/routes/placement.py (no function)   34 0 0   100%
src/lilbee/server/routes/search.py _embedding_mismatch_http   1 0 0   100%
src/lilbee/server/routes/search.py _raise_chat_http_error   3 0 0   100%
src/lilbee/server/routes/search.py _api_chat_error_status   7 0 0   100%
src/lilbee/server/routes/search.py _acquire_chat_lock_or_raise   5 0 0   100%
src/lilbee/server/routes/search.py _gated_stream   10 0 0   100%
src/lilbee/server/routes/search.py _slot_gated_sse   1 0 0   100%
src/lilbee/server/routes/search.py search_route   13 0 0   100%
src/lilbee/server/routes/search.py ask_route   8 0 0   100%
src/lilbee/server/routes/search.py ask_stream_route   2 0 0   100%
src/lilbee/server/routes/search.py chat_route   9 0 0   100%
src/lilbee/server/routes/search.py chat_stream_route   3 0 0   100%
src/lilbee/server/routes/search.py (no function)   40 0 0   100%
src/lilbee/server/routes/sessions.py sessions_list_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_get_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_create_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_add_message_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_claim_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_set_summary_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_rename_route   1 0 0   100%
src/lilbee/server/routes/sessions.py session_delete_route   1 0 0   100%
src/lilbee/server/routes/sessions.py (no function)   21 0 0   100%
src/lilbee/server/routes/setup.py setup_crawler_status_route   3 0 0   100%
src/lilbee/server/routes/setup.py _bootstrap_crawler_stream   8 0 0   100%
src/lilbee/server/routes/setup.py _bootstrap_crawler_stream._run   3 0 0   100%
src/lilbee/server/routes/setup.py setup_crawler_route   1 0 0   100%
src/lilbee/server/routes/setup.py (no function)   15 0 0   100%
src/lilbee/server/validation_format.py format_validation   3 0 0   100%
src/lilbee/server/validation_format.py (no function)   3 0 0   100%
src/lilbee/server/wiki.py _wiki_root   1 0 0   100%
src/lilbee/server/wiki.py _require_wiki   2 0 0   100%
src/lilbee/server/wiki.py _find_page   1 0 0   100%
src/lilbee/server/wiki.py wiki_list_route   3 0 0   100%
src/lilbee/server/wiki.py wiki_drafts_route   3 0 0   100%
src/lilbee/server/wiki.py wiki_draft_diff_route   9 0 0   100%
src/lilbee/server/wiki.py wiki_draft_accept_route   12 0 0   100%
src/lilbee/server/wiki.py wiki_draft_reject_route   9 0 0   100%
src/lilbee/server/wiki.py wiki_citations_reverse_route   5 0 0   100%
src/lilbee/server/wiki.py wiki_read_route   9 0 0   100%
src/lilbee/server/wiki.py _citations_for_slug   6 0 0   100%
src/lilbee/server/wiki.py wiki_lint_route   4 0 0   100%
src/lilbee/server/wiki.py _lint_report   3 0 0   100%
src/lilbee/server/wiki.py wiki_prune_route   3 0 0   100%
src/lilbee/server/wiki.py wiki_index_route   4 0 0   100%
src/lilbee/server/wiki.py wiki_stubs_route   3 0 0   100%
src/lilbee/server/wiki.py _ungenerated_stubs   1 0 0   100%
src/lilbee/server/wiki.py wiki_generate_route   6 0 0   100%
src/lilbee/server/wiki.py wiki_wipe_route   2 0 0   100%
src/lilbee/server/wiki.py wiki_build_route   4 0 0   100%
src/lilbee/server/wiki.py _build_dry_run   4 0 0   100%
src/lilbee/server/wiki.py wiki_update_route   2 0 0   100%
src/lilbee/server/wiki.py wiki_synthesize_route   2 0 0   100%
src/lilbee/server/wiki.py wiki_status_route   9 0 0   100%
src/lilbee/server/wiki.py (no function)   66 0 0   100%
src/lilbee/sessions/__init__.py (no function)   3 0 0   100%
src/lilbee/sessions/store.py sessions_enabled   1 0 0   100%
src/lilbee/sessions/store.py agent_sessions_enabled   1 0 0   100%
src/lilbee/sessions/store.py SessionNotFoundError.__init__   2 0 0   100%
src/lilbee/sessions/store.py _may_append   3 0 0   100%
src/lilbee/sessions/store.py SessionOwnershipError.__init__   4 0 0   100%
src/lilbee/sessions/store.py derive_title   7 0 0   100%
src/lilbee/sessions/store.py _message_from_event   1 0 0   100%
src/lilbee/sessions/store.py SessionStore.__init__   2 0 0   100%
src/lilbee/sessions/store.py SessionStore._dir   1 0 0   100%
src/lilbee/sessions/store.py SessionStore._path   1 0 0   100%
src/lilbee/sessions/store.py SessionStore._now   1 0 0   100%
src/lilbee/sessions/store.py SessionStore._require   4 0 0   100%
src/lilbee/sessions/store.py SessionStore._write_event   4 0 0   100%
src/lilbee/sessions/store.py SessionStore._iter_events   9 0 0   100%
src/lilbee/sessions/store.py SessionStore.create   5 0 0   100%
src/lilbee/sessions/store.py SessionStore.add_message   6 0 0   100%
src/lilbee/sessions/store.py SessionStore.transfer   1 0 0   100%
src/lilbee/sessions/store.py SessionStore.set_title   1 0 0   100%
src/lilbee/sessions/store.py SessionStore.set_summary   1 0 0   100%
src/lilbee/sessions/store.py SessionStore.delete   1 0 0   100%
src/lilbee/sessions/store.py SessionStore.get   2 0 0   100%
src/lilbee/sessions/store.py SessionStore.list   9 0 0   100%
src/lilbee/sessions/store.py SessionStore._meta_for   13 0 0   100%
src/lilbee/sessions/store.py SessionStore._replay   30 0 0   100%
src/lilbee/sessions/store.py (no function)   89 0 0   100%
src/lilbee/skills/__init__.py (no function)   0 0 0   100%
src/lilbee/skills/lilbee_mcp/__init__.py (no function)   0 0 0   100%
src/lilbee/vision.py resolve_ocr_prompt   5 0 0   100%
src/lilbee/vision.py _png_to_data_url   3 0 0   100%
src/lilbee/vision.py build_vision_messages   1 0 0   100%
src/lilbee/vision.py (no function)   5 0 0   100%
src/lilbee/wiki/__init__.py (no function)   10 0 0   100%
src/lilbee/wiki/batch.py hash_existing_sources   7 0 0   100%
src/lilbee/wiki/batch.py _first_label_where   5 0 0   100%
src/lilbee/wiki/batch.py match_label   2 0 0   100%
src/lilbee/wiki/batch.py short_source_hash   1 0 0   100%
src/lilbee/wiki/batch.py archive_legacy_concept_pages   26 0 0   100%
src/lilbee/wiki/batch.py _unwrap_archived_links   14 0 0   100%
src/lilbee/wiki/batch.py finalize_section   38 0 0   100%
src/lilbee/wiki/batch.py (no function)   28 0 0   100%
src/lilbee/wiki/browse.py WikiPageInfo.to_dict   1 0 0   100%
src/lilbee/wiki/browse.py _json_safe   7 0 0   100%
src/lilbee/wiki/browse.py list_md_files   3 0 0   100%
src/lilbee/wiki/browse.py _page_type_from_path   8 0 0   100%
src/lilbee/wiki/browse.py page_slug   2 0 0   100%
src/lilbee/wiki/browse.py _extract_h1_title   10 0 0   100%
src/lilbee/wiki/browse.py _resolve_page_title   5 0 0   100%
src/lilbee/wiki/browse.py build_page_info   8 0 0   100%
src/lilbee/wiki/browse.py find_page   6 0 0   100%
src/lilbee/wiki/browse.py _list_md_files_recursive   3 0 0   100%
src/lilbee/wiki/browse.py list_pages   5 0 0   100%
src/lilbee/wiki/browse.py list_draft_pages   1 0 0   100%
src/lilbee/wiki/browse.py read_page   8 0 0   100%
src/lilbee/wiki/browse.py (no function)   36 0 0   100%
src/lilbee/wiki/citations.py _fence_flags   9 0 0   100%
src/lilbee/wiki/citations.py parse_wiki_citations   11 0 0   100%
src/lilbee/wiki/citations.py render_citation_block   6 0 0   100%
src/lilbee/wiki/citations.py footnote_marker_keys   2 0 0   100%
src/lilbee/wiki/citations.py scrub_unverified_markers   4 0 0   100%
src/lilbee/wiki/citations.py _scrub_line   2 0 0   100%
src/lilbee/wiki/citations.py wiki_sourced_count   1 0 0   100%
src/lilbee/wiki/citations.py _is_wiki_sourced   1 0 0   100%
src/lilbee/wiki/citations.py excerpt_in_chunks   2 0 0   100%
src/lilbee/wiki/citations.py verify_citation   5 0 0   100%
src/lilbee/wiki/citations.py find_unmarked_claims   2 0 0   100%
src/lilbee/wiki/citations.py strip_citation_block   5 0 0   100%
src/lilbee/wiki/citations.py _find_citation_block_start   4 0 0   100%
src/lilbee/wiki/citations.py _body_end   4 0 0   100%
src/lilbee/wiki/citations.py _body_end_before_trailing_footnotes   12 0 0   100%
src/lilbee/wiki/citations.py _drop_separator   3 0 0   100%
src/lilbee/wiki/citations.py extract_body   6 0 0   100%
src/lilbee/wiki/citations.py _strip_frontmatter   7 0 0   100%
src/lilbee/wiki/citations.py _format_source_ref   14 0 0   100%
src/lilbee/wiki/citations.py _extract_excerpt   8 0 0   100%
src/lilbee/wiki/citations.py _find_closing_quote   9 0 0   100%
src/lilbee/wiki/citations.py _encode_excerpt_escapes   1 0 0   100%
src/lilbee/wiki/citations.py _decode_excerpt_escapes   13 0 0   100%
src/lilbee/wiki/citations.py _find_excerpt_location   4 0 0   100%
src/lilbee/wiki/citations.py _build_citation_record   1 0 0   100%
src/lilbee/wiki/citations.py verify_citations   12 0 0   100%
src/lilbee/wiki/citations.py render_provenance   2 0 0   100%
src/lilbee/wiki/citations.py resolve_multi_source_citations   12 0 0   100%
src/lilbee/wiki/citations.py _match_citation_source   4 0 0   100%
src/lilbee/wiki/citations.py _find_excerpt_source   4 0 0   100%
src/lilbee/wiki/citations.py (no function)   53 0 0   100%
src/lilbee/wiki/drafts.py DraftInfo.published_exists   1 0 0   100%
src/lilbee/wiki/drafts.py DraftInfo.to_dict   1 0 0   100%
src/lilbee/wiki/drafts.py AcceptResult.to_dict   1 0 0   100%
src/lilbee/wiki/drafts.py _draft_path   4 0 0   100%
src/lilbee/wiki/drafts.py _find_published   6 0 0   100%
src/lilbee/wiki/drafts.py _parse_drift_ratio   4 0 0   100%
src/lilbee/wiki/drafts.py _parse_origin_subdir   4 0 0   100%
src/lilbee/wiki/drafts.py _parse_pending_kind   6 0 0   100%
src/lilbee/wiki/drafts.py _is_marker_line   1 0 0   100%
src/lilbee/wiki/drafts.py _split_marker_line   13 0 0   100%
src/lilbee/wiki/drafts.py _classify_and_strip_markers   4 0 0   100%
src/lilbee/wiki/drafts.py list_drafts   11 0 0   100%
src/lilbee/wiki/drafts.py diff_draft   8 0 0   100%
src/lilbee/wiki/drafts.py _base_slug_for_collision   1 0 0   100%
src/lilbee/wiki/drafts.py accept_draft   29 0 0   100%
src/lilbee/wiki/drafts.py _accept_target   7 0 0   100%
src/lilbee/wiki/drafts.py _refuse_bodyless_draft   4 0 0   100%
src/lilbee/wiki/drafts.py _refuse_stale_draft   6 0 0   100%
src/lilbee/wiki/drafts.py _accepted_citations   10 0 0   100%
src/lilbee/wiki/drafts.py _keeps_provenance   5 0 0   100%
src/lilbee/wiki/drafts.py _render_accepted_page   3 0 0   100%
src/lilbee/wiki/drafts.py _frontmatter_sources   2 0 0   100%
src/lilbee/wiki/drafts.py reject_draft   6 0 0   100%
src/lilbee/wiki/drafts.py _wiki_source_for   2 0 0   100%
src/lilbee/wiki/drafts.py _coerce_float   6 0 0   100%
src/lilbee/wiki/drafts.py (no function)   70 0 0   100%
src/lilbee/wiki/entity_extractor/__init__.py (no function)   4 0 0   100%
src/lilbee/wiki/entity_extractor/base.py EntityExtractor.available   0 0 8   100%
src/lilbee/wiki/entity_extractor/base.py EntityExtractor.extract   0 0 2   100%
src/lilbee/wiki/entity_extractor/base.py (no function)   18 0 9   100%
src/lilbee/wiki/entity_extractor/factory.py effective_entity_mode   1 0 0   100%
src/lilbee/wiki/entity_extractor/factory.py get_entity_extractor   5 0 0   100%
src/lilbee/wiki/entity_extractor/factory.py (no function)   14 0 3   100%
src/lilbee/wiki/entity_extractor/llm_tagged.py LlmTaggedExtractor.__init__   2 0 0   100%
src/lilbee/wiki/entity_extractor/llm_tagged.py LlmTaggedExtractor.available   1 0 0   100%
src/lilbee/wiki/entity_extractor/llm_tagged.py LlmTaggedExtractor.extract   1 0 0   100%
src/lilbee/wiki/entity_extractor/llm_tagged.py (no function)   7 0 4   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py pre_clean_for_ner   3 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py NerConceptsExtractor.__init__   2 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py NerConceptsExtractor.available   1 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py NerConceptsExtractor.extract   25 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _accumulate_doc_entities   15 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _merge_possessives   10 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _Aggregate.__init__   3 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _sorted_refs   1 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _make_record   6 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py _load_spacy   10 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts.py (no function)   28 0 4   100%
src/lilbee/wiki/entity_extractor/ner_concepts_plus_llm_types.py NerConceptsPlusLlmTypesExtractor.__init__   2 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts_plus_llm_types.py NerConceptsPlusLlmTypesExtractor.available   1 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts_plus_llm_types.py NerConceptsPlusLlmTypesExtractor.extract   1 0 0   100%
src/lilbee/wiki/entity_extractor/ner_concepts_plus_llm_types.py (no function)   7 0 4   100%
src/lilbee/wiki/generation.py _generate_for_cluster   9 0 0   100%
src/lilbee/wiki/generation.py generate_synthesis_pages   19 0 0   100%
src/lilbee/wiki/generation.py _all_sources_in_scope   18 0 0   100%
src/lilbee/wiki/generation.py _entity_surface_map   7 0 0   100%
src/lilbee/wiki/generation.py _augment_surface_map_with_existing_pages   8 0 0   100%
src/lilbee/wiki/generation.py rewrite_links_across_wiki   18 0 0   100%
src/lilbee/wiki/generation.py build_wiki   27 0 0   100%
src/lilbee/wiki/generation.py _corpus_chunks   4 0 0   100%
src/lilbee/wiki/generation.py preview_build_entities   3 0 0   100%
src/lilbee/wiki/generation.py run_full_build   13 0 0   100%
src/lilbee/wiki/generation.py run_full_synthesize   8 0 0   100%
src/lilbee/wiki/generation.py (no function)   48 0 0   100%
src/lilbee/wiki/grammar.py (no function)   12 0 0   100%
src/lilbee/wiki/index.py _wiki_root   1 0 0   100%
src/lilbee/wiki/index.py parse_title   1 0 0   100%
src/lilbee/wiki/index.py _title_from_frontmatter   7 0 0   100%
src/lilbee/wiki/index.py parse_source_count   1 0 0   100%
src/lilbee/wiki/index.py _source_count_from_frontmatter   6 0 0   100%
src/lilbee/wiki/index.py update_wiki_index   20 0 0   100%
src/lilbee/wiki/index.py _render_section   13 0 0   100%
src/lilbee/wiki/index.py append_wiki_log   12 0 0   100%
src/lilbee/wiki/index.py (no function)   16 0 0   100%
src/lilbee/wiki/ingest.py incremental_update   25 0 0   100%
src/lilbee/wiki/ingest.py incremental_update._log_skip   2 0 0   100%
src/lilbee/wiki/ingest.py incremental_update._regenerate   5 0 0   100%
src/lilbee/wiki/ingest.py (no function)   7 0 0   100%
src/lilbee/wiki/lazy.py _chunks_for_stub   17 0 0   100%
src/lilbee/wiki/lazy.py _resolve   4 0 0   100%
src/lilbee/wiki/lazy.py resolve_stub   1 0 0   100%
src/lilbee/wiki/lazy.py generate_stub_page   31 0 0   100%
src/lilbee/wiki/lazy.py generate_stub_page.resolver   1 0 0   100%
src/lilbee/wiki/lazy.py (no function)   20 0 7   100%
src/lilbee/wiki/links.py compile_rewriter   3 0 0   100%
src/lilbee/wiki/links.py rewrite_wiki_links   4 0 0   100%
src/lilbee/wiki/links.py apply_rewriter   9 0 0   100%
src/lilbee/wiki/links.py _compile_surface_pattern   3 0 0   100%
src/lilbee/wiki/links.py _rewrite_line   2 0 0   100%
src/lilbee/wiki/links.py _rewrite_line.replace   4 0 0   100%
src/lilbee/wiki/links.py _classify_lines   29 0 0   100%
src/lilbee/wiki/links.py (no function)   16 0 0   100%
src/lilbee/wiki/lint.py LintIssue.to_dict   1 0 0   100%
src/lilbee/wiki/lint.py LintReport.error_count   1 0 0   100%
src/lilbee/wiki/lint.py LintReport.warning_count   1 0 0   100%
src/lilbee/wiki/lint.py _lint_citation   11 0 0   100%
src/lilbee/wiki/lint.py _lint_excerpt   8 0 0   100%
src/lilbee/wiki/lint.py _lint_model_changed   6 0 0   100%
src/lilbee/wiki/lint.py _lint_unmarked   2 0 0   100%
src/lilbee/wiki/lint.py lint_wiki_page   22 0 0   100%
src/lilbee/wiki/lint.py lint_changed_sources   15 0 0   100%
src/lilbee/wiki/lint.py lint_all   22 0 0   100%
src/lilbee/wiki/lint.py _lint_orphans   22 0 0   100%
src/lilbee/wiki/lint.py (no function)   50 0 0   100%
src/lilbee/wiki/page.py build_wiki_messages   4 0 0   100%
src/lilbee/wiki/page.py wiki_generation_options   1 0 0   100%
src/lilbee/wiki/page.py prompt_overhead_tokens   3 0 0   100%
src/lilbee/wiki/page.py truncate_chunks_to_budget   16 0 0   100%
src/lilbee/wiki/page.py _format_chunk   6 0 0   100%
src/lilbee/wiki/page.py chunks_to_text   1 0 0   100%
src/lilbee/wiki/page.py build_frontmatter   3 0 0   100%
src/lilbee/wiki/page.py write_page   13 0 0   100%
src/lilbee/wiki/page.py _write_draft_page   5 0 0   100%
src/lilbee/wiki/page.py assemble_content   4 0 0   100%
src/lilbee/wiki/page.py indexable_chunks   2 0 0   100%
src/lilbee/wiki/page.py index_wiki_page   15 0 0   100%
src/lilbee/wiki/page.py generate_page   40 0 0   100%
src/lilbee/wiki/page.py generate_page._emit   2 0 0   100%
src/lilbee/wiki/page.py (no function)   40 0 0   100%
src/lilbee/wiki/persistence.py origin_marker   1 0 0   100%
src/lilbee/wiki/persistence.py _read_draft   6 0 0   100%
src/lilbee/wiki/persistence.py draft_source_names   5 0 0   100%
src/lilbee/wiki/persistence.py _draft_belongs_to_other_source   7 0 0   100%
src/lilbee/wiki/persistence.py divert_to_drafts   10 0 0   100%
src/lilbee/wiki/persistence.py subdir_from_wiki_source   5 0 0   100%
src/lilbee/wiki/persistence.py persist_and_finalize   28 0 0   100%
src/lilbee/wiki/persistence.py write_pending_marker   10 0 0   100%
src/lilbee/wiki/persistence.py delete_pending_marker_if_present   6 0 0   100%
src/lilbee/wiki/persistence.py delete_drift_draft_if_present   12 0 0   100%
src/lilbee/wiki/persistence.py divert_concept_collision   8 0 0   100%
src/lilbee/wiki/persistence.py (no function)   24 0 0   100%
src/lilbee/wiki/prune.py PruneRecord.to_dict   1 0 0   100%
src/lilbee/wiki/prune.py PruneReport.archived_count   1 0 0   100%
src/lilbee/wiki/prune.py PruneReport.flagged_count   1 0 0   100%
src/lilbee/wiki/prune.py PruneReport.reconciled_count   1 0 0   100%
src/lilbee/wiki/prune.py _delete_wiki_rows   9 0 0   100%
src/lilbee/wiki/prune.py _archive_page   9 0 0   100%
src/lilbee/wiki/prune.py _live_sources   10 0 0   100%
src/lilbee/wiki/prune.py _check_all_sources_deleted   6 0 0   100%
src/lilbee/wiki/prune.py _check_cluster_below_threshold   6 0 0   100%
src/lilbee/wiki/prune.py _check_stale_majority   8 0 0   100%
src/lilbee/wiki/prune.py _archive_and_record   2 0 0   100%
src/lilbee/wiki/prune.py _evaluate_page   7 0 0   100%
src/lilbee/wiki/prune.py _reconcile_orphan_rows   12 0 0   100%
src/lilbee/wiki/prune.py _finalize_prune   8 0 0   100%
src/lilbee/wiki/prune.py prune_wiki   21 0 0   100%
src/lilbee/wiki/prune.py (no function)   46 0 0   100%
src/lilbee/wiki/quality.py content_change_ratio   8 0 0   100%
src/lilbee/wiki/quality.py diff_summary   6 0 0   100%
src/lilbee/wiki/quality.py _title_content_coherence   18 0 0   100%
src/lilbee/wiki/quality.py _mean_vector   4 0 0   100%
src/lilbee/wiki/quality.py _embedding_faithfulness_score   8 0 0   100%
src/lilbee/wiki/quality.py check_faithfulness   19 0 0   100%
src/lilbee/wiki/quality.py (no function)   18 0 0   100%
src/lilbee/wiki/shared.py count_pages_in   6 0 0   100%
src/lilbee/wiki/shared.py total_wiki_pages   1 0 0   100%
src/lilbee/wiki/shared.py is_pending_marker_text   2 0 0   100%
src/lilbee/wiki/shared.py atomic_write_text   9 0 0   100%
src/lilbee/wiki/shared.py parse_frontmatter   25 0 0   100%
src/lilbee/wiki/shared.py (no function)   65 0 0   100%
src/lilbee/wiki/stats.py BuildStats.ensure   1 0 0   100%
src/lilbee/wiki/stats.py BuildStats.publish_rate   3 0 0   100%
src/lilbee/wiki/stats.py BuildStats.citation_verify_rate   4 0 0   100%
src/lilbee/wiki/stats.py BuildStats.record_published   3 0 0   100%
src/lilbee/wiki/stats.py BuildStats.record_drafted   2 0 0   100%
src/lilbee/wiki/stats.py BuildStats.record_pending_marker   1 0 0   100%
src/lilbee/wiki/stats.py BuildStats.record_citations   2 0 0   100%
src/lilbee/wiki/stats.py BuildStats.as_dict   1 0 0   100%
src/lilbee/wiki/stats.py BuildStats.summary_line   1 0 0   100%
src/lilbee/wiki/stats.py format_summary_line   2 0 0   100%
src/lilbee/wiki/stats.py (no function)   35 0 0   100%
src/lilbee/wiki/stubs.py WikiStub.sources   1 0 0   100%
src/lilbee/wiki/stubs.py WikiStub.mentions   1 0 0   100%
src/lilbee/wiki/stubs.py WikiStub.subdir   1 0 0   100%
src/lilbee/wiki/stubs.py WikiStub.wiki_slug   1 0 0   100%
src/lilbee/wiki/stubs.py WikiStub.to_dict   1 0 0   100%
src/lilbee/wiki/stubs.py _stub_from_dict   5 0 0   100%
src/lilbee/wiki/stubs.py stub_index_path   3 0 0   100%
src/lilbee/wiki/stubs.py _read_stub_index   20 0 0   100%
src/lilbee/wiki/stubs.py load_stub_index   1 0 0   100%
src/lilbee/wiki/stubs.py save_stub_index   4 0 0   100%
src/lilbee/wiki/stubs.py _recut_refs   14 0 0   100%
src/lilbee/wiki/stubs.py _mention_rows_by_source   9 0 0   100%
src/lilbee/wiki/stubs.py _stubs_from_mention_rows   14 0 0   100%
src/lilbee/wiki/stubs.py _write_source_mentions   7 0 0   100%
src/lilbee/wiki/stubs.py refresh_stub_index   24 0 0   100%
src/lilbee/wiki/stubs.py _page_exists   4 0 0   100%
src/lilbee/wiki/stubs.py drop_sources_from_index   16 0 0   100%
src/lilbee/wiki/stubs.py _is_placeholder   5 0 0   100%
src/lilbee/wiki/stubs.py ungenerated_stubs   1 0 0   100%
src/lilbee/wiki/stubs.py (no function)   44 0 5   100%
src/lilbee/wiki/synthesis.py generate_synthesis_page   14 0 0   100%
src/lilbee/wiki/synthesis.py generate_synthesis_page.resolver   1 0 0   100%
src/lilbee/wiki/synthesis.py _split_batched_output   23 0 0   100%
src/lilbee/wiki/synthesis.py _declaration_scope_end   4 0 0   100%
src/lilbee/wiki/synthesis.py _parse_declared_concepts   6 0 0   100%
src/lilbee/wiki/synthesis.py _prefix_heading   1 0 0   100%
src/lilbee/wiki/synthesis.py _existing_concept_labels   5 0 0   100%
src/lilbee/wiki/synthesis.py _concept_instruction   5 0 0   100%
src/lilbee/wiki/synthesis.py _build_batch_prompt   2 0 0   100%
src/lilbee/wiki/synthesis.py group_entities_by_primary_source   10 0 0   100%
src/lilbee/wiki/synthesis.py generate_source_batch   20 0 0   100%
src/lilbee/wiki/synthesis.py _entity_scoring_chunks   7 0 0   100%
src/lilbee/wiki/synthesis.py _request_batch_sections   11 0 0   100%
src/lilbee/wiki/synthesis.py _finalize_sections   8 0 0   100%
src/lilbee/wiki/synthesis.py _write_pending_markers   10 0 0   100%
src/lilbee/wiki/synthesis.py (no function)   41 0 0   100%
src/lilbee/wiki/wipe.py WipeReport.summary   4 0 0   100%
src/lilbee/wiki/wipe.py wipe_wiki   13 0 0   100%
src/lilbee/wiki/wipe.py (no function)   16 0 3   100%
Total     40851 0 1025   100%

No items found using the specified filter.