docs(tests): create tests/README.md with full suite inventory, coverage matrix, and execution guide

This commit is contained in:
2026-08-21 11:23:36 -03:00
parent 040edb61db
commit e1e0be1353
13 changed files with 1688 additions and 1433 deletions
@@ -148,7 +148,7 @@
"146": "Specification Quality Checklist: Convert Article JSON to Markdown",
"147": "CLI Contract: `convert_article_to_markdown.py`",
"148": "9. Interface CLI",
"149": "get_hl_gl_ceid",
"149": "sample_rss_xml",
"150": "13. Estratégia de testes",
"151": "6. Contrato de entrada",
"152": "ECPSnapshot",
+13 -13
View File
@@ -1,7 +1,7 @@
# Graph Report - TextNLPClassifierApp (2026-08-21)
## Corpus Check
- 203 files · ~114,894 words
- 203 files · ~114,931 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
@@ -10,7 +10,7 @@
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `a874b98d`
- Built from commit: `2cdd3547`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -157,7 +157,7 @@
- Specification Quality Checklist: Convert Article JSON to Markdown
- CLI Contract: `convert_article_to_markdown.py`
- 9. Interface CLI
- get_hl_gl_ceid
- sample_rss_xml
- 13. Estratégia de testes
- 6. Contrato de entrada
- ECPSnapshot
@@ -196,7 +196,7 @@
classify.py → src/models.py
- `main()` --uses--> `ErrorCode` [INFERRED]
classify.py → src/models.py
- `test_e2e_extract_google_news_live_pipeline()` --uses--> `ExtractionResult` [INFERRED]
- `test_extract_google_news_orchestration_mocked()` --uses--> `ExtractionResult` [INFERRED]
tests/test_extract_google_news.py → scripts/extract_google_news.py
- `test_llm_adapter_interface()` --calls--> `LLMFallbackAdapter` [EXTRACTED]
tests/test_adapters.py → src/adapters/llm.py
@@ -373,16 +373,16 @@ Cohesion: 0.08
Nodes (24): 1. Visão geral (arquitetura), 2.1 DTO de entrada (`googlenews_etl/application/dtos/extract_news_dto.py`), 2.2 Value Object de validação (`googlenews_etl/domain/entities/search_query.py`), 2. Entrada, 3.1 O caso de uso (`googlenews_etl/application/use_cases/extract_news_use_case.py`), 3.2 A porta (`googlenews_etl/domain/ports/news_extractor_port.py`), 3.3.1 Inicialização: sessão HTTP com impersonação de browser, 3.3.2 Mapeamento idioma → parâmetros `hl`/`gl` (`_get_hl_gl`) (+16 more)
### Community 82 - "extract_google_news.py"
Cohesion: 0.20
Nodes (14): extract_google_news(), _fetch_rss_content(), NewsArticle, _normalize_text_for_comparison(), parse_google_news_rss(), Remove pontuação e espaços extras para comparação de redundância., Parseia o XML do RSS do Google News e extrai os itens estruturados., Resolve em paralelo as URLs intermediárias do Google News para os links finais… (+6 more)
Cohesion: 0.15
Nodes (18): extract_google_news(), _fetch_rss_content(), get_hl_gl_ceid(), NewsArticle, _normalize_text_for_comparison(), parse_google_news_rss(), Mapeia idioma e locale para os parâmetros hl, gl e ceid do Google News., Remove pontuação e espaços extras para comparação de redundância. (+10 more)
### Community 83 - "ExtractionResult"
Cohesion: 0.29
Nodes (5): ExtractionResult, Any, Resultado consolidado da extração., Valida a consolidação do ExtractionResult a partir da busca mockada com URLs…, test_extract_google_news_orchestration_mocked()
Nodes (5): ExtractionResult, Any, Resultado consolidado da extração., Valida E2E o fluxo completo de busca, parsing e resolução de URLs reais ao vivo., test_e2e_extract_google_news_live_pipeline()
### Community 84 - "test_extract_google_news.py"
Cohesion: 0.16
Nodes (14): Resolve a URL intermediária do Google News para a URL real do veículo., resolve_article_url(), fixture, Testes unitários e de integração para o Extrator de Manchetes do Google News.…, Valida o parsing do feed RSS, higienização de tags HTML e deduplicação., Valida fallback gracioso de URL quando não é link do Google News ou em erro., Valida resolução bem-sucedida de URL do Google News para o portal destino., Valida E2E que o decodificador resolve uma URL real do Google News para o… (+6 more)
Cohesion: 0.15
Nodes (15): Resolve a URL intermediária do Google News para a URL real do veículo., resolve_article_url(), Testes unitários e de integração para o Extrator de Manchetes do Google News.…, Valida fallback gracioso de URL quando não é link do Google News ou em erro., Valida resolução bem-sucedida de URL do Google News para o portal destino., Valida E2E que o decodificador resolve uma URL real do Google News para o…, Valida o mapeamento padrão de idiomas para pares (hl, gl, ceid)., Valida a sobrescrita geográfica quando o argumento locale é especificado. (+7 more)
### Community 85 - "Implementation Tasks: Google News Headlines Extractor"
Cohesion: 0.14
@@ -402,7 +402,7 @@ Nodes (7): Architecture & Pipeline, Documentation (this feature), Implementation
### Community 90 - "SearchQuery"
Cohesion: 0.20
Nodes (6): Value Object com parâmetros de busca validados., SearchQuery, Valida E2E o fluxo completo de busca, parsing e resolução de URLs reais ao vivo., Valida as regras de negócio e limites de SearchQuery., test_e2e_extract_google_news_live_pipeline(), test_search_query_validation()
Nodes (6): Value Object com parâmetros de busca validados., SearchQuery, Valida a consolidação do ExtractionResult a partir da busca mockada com URLs…, Valida as regras de negócio e limites de SearchQuery., test_extract_google_news_orchestration_mocked(), test_search_query_validation()
### Community 91 - "1. Technical Decisions & Tradeoffs"
Cohesion: 0.25
@@ -624,9 +624,9 @@ Nodes (5): 1. Script Signature, 2. Command-Line Arguments, 3. Exit Codes, 4. Sta
Cohesion: 0.40
Nodes (5): 9.1 Script, 9.2 Argumentos, 9.3 Exemplos, 9.4 Saída do processo, 9. Interface CLI
### Community 149 - "get_hl_gl_ceid"
Cohesion: 0.25
Nodes (8): get_hl_gl_ceid(), Mapeia idioma e locale para os parâmetros hl, gl e ceid do Google News., Valida o mapeamento padrão de idiomas para pares (hl, gl, ceid)., Valida a sobrescrita geográfica quando o argumento locale é especificado., Valida fallback dinâmico para idiomas regionais não listados explicitamente., test_get_hl_gl_ceid_default_mappings(), test_get_hl_gl_ceid_dynamic_fallback(), test_get_hl_gl_ceid_with_custom_locale()
### Community 149 - "sample_rss_xml"
Cohesion: 0.67
Nodes (3): fixture, Fixture que fornece o conteúdo do XML de exemplo para testes offline., sample_rss_xml()
### Community 150 - "13. Estratégia de testes"
Cohesion: 0.50
+143 -143
View File
@@ -1689,52 +1689,16 @@
"source_location": "L755"
},
{
"id": "scripts_extract_google_news_get_hl_gl_ceid",
"label": "get_hl_gl_ceid()",
"id": "tests_test_extract_google_news_sample_rss_xml",
"label": "sample_rss_xml()",
"_callable": true,
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"community_name": "sample_rss_xml",
"file_type": "code",
"norm_label": "get_hl_gl_ceid()",
"source_file": "scripts/extract_google_news.py",
"source_location": "L107"
},
{
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_default_mappings",
"label": "test_get_hl_gl_ceid_default_mappings()",
"_callable": true,
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "code",
"norm_label": "test_get_hl_gl_ceid_default_mappings()",
"norm_label": "sample_rss_xml()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L37"
},
{
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_dynamic_fallback",
"label": "test_get_hl_gl_ceid_dynamic_fallback()",
"_callable": true,
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "code",
"norm_label": "test_get_hl_gl_ceid_dynamic_fallback()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L78"
},
{
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_with_custom_locale",
"label": "test_get_hl_gl_ceid_with_custom_locale()",
"_callable": true,
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "code",
"norm_label": "test_get_hl_gl_ceid_with_custom_locale()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L60"
"source_location": "L32"
},
{
"id": "src_models_ecpsnapshot_from_json_str",
@@ -2310,7 +2274,7 @@
"file_type": "code",
"norm_label": "._parse_llm_response()",
"source_file": "src/adapters/llm.py",
"source_location": "L214"
"source_location": "L225"
},
{
"id": "tests_test_e2e_text_analysis_pipeline_test_funnel_cli_subprocess_end_to_end",
@@ -3548,6 +3512,18 @@
"source_file": "scripts/extract_google_news.py",
"source_location": "L253"
},
{
"id": "scripts_extract_google_news_get_hl_gl_ceid",
"label": "get_hl_gl_ceid()",
"_callable": true,
"_origin": "ast",
"community": 82,
"community_name": "extract_google_news.py",
"file_type": "code",
"norm_label": "get_hl_gl_ceid()",
"source_file": "scripts/extract_google_news.py",
"source_location": "L107"
},
{
"id": "scripts_extract_google_news_normalize_text_for_comparison",
"label": "_normalize_text_for_comparison()",
@@ -3584,6 +3560,18 @@
"source_file": "scripts/extract_google_news.py",
"source_location": "L220"
},
{
"id": "tests_test_extract_google_news_test_parse_google_news_rss_with_fixture",
"label": "test_parse_google_news_rss_with_fixture()",
"_callable": true,
"_origin": "ast",
"community": 82,
"community_name": "extract_google_news.py",
"file_type": "code",
"norm_label": "test_parse_google_news_rss_with_fixture()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L111"
},
{
"id": "tests_test_extract_google_news_test_resolve_articles_urls_batch",
"label": "test_resolve_articles_urls_batch()",
@@ -3621,16 +3609,16 @@
"source_location": "L73"
},
{
"id": "tests_test_extract_google_news_test_extract_google_news_orchestration_mocked",
"label": "test_extract_google_news_orchestration_mocked()",
"id": "tests_test_extract_google_news_test_e2e_extract_google_news_live_pipeline",
"label": "test_e2e_extract_google_news_live_pipeline()",
"_callable": true,
"_origin": "ast",
"community": 83,
"community_name": "ExtractionResult",
"file_type": "code",
"norm_label": "test_extract_google_news_orchestration_mocked()",
"norm_label": "test_e2e_extract_google_news_live_pipeline()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L186"
"source_location": "L302"
},
{
"id": "scripts_extract_google_news_resolve_article_url",
@@ -3644,18 +3632,6 @@
"source_file": "scripts/extract_google_news.py",
"source_location": "L207"
},
{
"id": "tests_test_extract_google_news_sample_rss_xml",
"label": "sample_rss_xml()",
"_callable": true,
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "code",
"norm_label": "sample_rss_xml()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L32"
},
{
"id": "tests_test_extract_google_news_test_e2e_resolve_real_google_news_url",
"label": "test_e2e_resolve_real_google_news_url()",
@@ -3669,16 +3645,40 @@
"source_location": "L281"
},
{
"id": "tests_test_extract_google_news_test_parse_google_news_rss_with_fixture",
"label": "test_parse_google_news_rss_with_fixture()",
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_default_mappings",
"label": "test_get_hl_gl_ceid_default_mappings()",
"_callable": true,
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "code",
"norm_label": "test_parse_google_news_rss_with_fixture()",
"norm_label": "test_get_hl_gl_ceid_default_mappings()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L111"
"source_location": "L37"
},
{
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_dynamic_fallback",
"label": "test_get_hl_gl_ceid_dynamic_fallback()",
"_callable": true,
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "code",
"norm_label": "test_get_hl_gl_ceid_dynamic_fallback()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L78"
},
{
"id": "tests_test_extract_google_news_test_get_hl_gl_ceid_with_custom_locale",
"label": "test_get_hl_gl_ceid_with_custom_locale()",
"_callable": true,
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "code",
"norm_label": "test_get_hl_gl_ceid_with_custom_locale()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L60"
},
{
"id": "tests_test_extract_google_news_test_resolve_article_url_fallback",
@@ -3753,16 +3753,16 @@
"source_location": "L40"
},
{
"id": "tests_test_extract_google_news_test_e2e_extract_google_news_live_pipeline",
"label": "test_e2e_extract_google_news_live_pipeline()",
"id": "tests_test_extract_google_news_test_extract_google_news_orchestration_mocked",
"label": "test_extract_google_news_orchestration_mocked()",
"_callable": true,
"_origin": "ast",
"community": 90,
"community_name": "SearchQuery",
"file_type": "code",
"norm_label": "test_e2e_extract_google_news_live_pipeline()",
"norm_label": "test_extract_google_news_orchestration_mocked()",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L302"
"source_location": "L186"
},
{
"id": "tests_test_extract_google_news_test_search_query_validation",
@@ -11112,48 +11112,26 @@
"source_location": "L290"
},
{
"id": "scripts_extract_google_news_rationale_108",
"label": "Mapeia idioma e locale para os par\u00e2metros hl, gl e ceid do Google News.",
"id": "tests_test_extract_google_news_py_fixture",
"label": "fixture",
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "rationale",
"norm_label": "mapeia idioma e locale para os parametros hl, gl e ceid do google news.",
"source_file": "scripts/extract_google_news.py",
"source_location": "L108"
"community_name": "sample_rss_xml",
"file_type": "code",
"norm_label": "fixture",
"source_file": "",
"source_location": ""
},
{
"id": "tests_test_extract_google_news_rationale_38",
"label": "Valida o mapeamento padr\u00e3o de idiomas para pares (hl, gl, ceid).",
"id": "tests_test_extract_google_news_rationale_33",
"label": "Fixture que fornece o conte\u00fado do XML de exemplo para testes offline.",
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"community_name": "sample_rss_xml",
"file_type": "rationale",
"norm_label": "valida o mapeamento padrao de idiomas para pares (hl, gl, ceid).",
"norm_label": "fixture que fornece o conteudo do xml de exemplo para testes offline.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L38"
},
{
"id": "tests_test_extract_google_news_rationale_61",
"label": "Valida a sobrescrita geogr\u00e1fica quando o argumento locale \u00e9 especificado.",
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "rationale",
"norm_label": "valida a sobrescrita geografica quando o argumento locale e especificado.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L61"
},
{
"id": "tests_test_extract_google_news_rationale_79",
"label": "Valida fallback din\u00e2mico para idiomas regionais n\u00e3o listados explicitamente.",
"_origin": "ast",
"community": 149,
"community_name": "get_hl_gl_ceid",
"file_type": "rationale",
"norm_label": "valida fallback dinamico para idiomas regionais nao listados explicitamente.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L79"
"source_location": "L33"
},
{
"id": "specify_templates_plan_template",
@@ -12145,7 +12123,7 @@
"source_location": "L155"
},
{
"id": "src_adapters_llm_rationale_219",
"id": "src_adapters_llm_rationale_230",
"label": "Parses and validates structured JSON response from LLM.",
"_origin": "ast",
"community": 168,
@@ -12153,7 +12131,7 @@
"file_type": "rationale",
"norm_label": "parses and validates structured json response from llm.",
"source_file": "src/adapters/llm.py",
"source_location": "L219"
"source_location": "L230"
},
{
"id": "src_adapters_llm_rationale_57",
@@ -17171,6 +17149,17 @@
"source_file": "scripts/extract_google_news.py",
"source_location": "L1"
},
{
"id": "scripts_extract_google_news_rationale_108",
"label": "Mapeia idioma e locale para os par\u00e2metros hl, gl e ceid do Google News.",
"_origin": "ast",
"community": 82,
"community_name": "extract_google_news.py",
"file_type": "rationale",
"norm_label": "mapeia idioma e locale para os parametros hl, gl e ceid do google news.",
"source_file": "scripts/extract_google_news.py",
"source_location": "L108"
},
{
"id": "scripts_extract_google_news_rationale_152",
"label": "Remove pontua\u00e7\u00e3o e espa\u00e7os extras para compara\u00e7\u00e3o de redund\u00e2ncia.",
@@ -17237,6 +17226,17 @@
"source_file": "scripts/extract_google_news.py",
"source_location": "L65"
},
{
"id": "tests_test_extract_google_news_rationale_112",
"label": "Valida o parsing do feed RSS, higieniza\u00e7\u00e3o de tags HTML e deduplica\u00e7\u00e3o.",
"_origin": "ast",
"community": 82,
"community_name": "extract_google_news.py",
"file_type": "rationale",
"norm_label": "valida o parsing do feed rss, higienizacao de tags html e deduplicacao.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L112"
},
{
"id": "tests_test_extract_google_news_rationale_162",
"label": "Valida a resolu\u00e7\u00e3o concorrente em lote de uma lista de NewsArticle.",
@@ -17271,15 +17271,15 @@
"source_location": "L85"
},
{
"id": "tests_test_extract_google_news_rationale_187",
"label": "Valida a consolida\u00e7\u00e3o do ExtractionResult a partir da busca mockada com URLs\u2026",
"id": "tests_test_extract_google_news_rationale_303",
"label": "Valida E2E o fluxo completo de busca, parsing e resolu\u00e7\u00e3o de URLs reais ao vivo.",
"_origin": "ast",
"community": 83,
"community_name": "ExtractionResult",
"file_type": "rationale",
"norm_label": "valida a consolidacao do extractionresult a partir da busca mockada com urls...",
"norm_label": "valida e2e o fluxo completo de busca, parsing e resolucao de urls reais ao vivo.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L187"
"source_location": "L303"
},
{
"id": "tests_test_extract_google_news",
@@ -17292,17 +17292,6 @@
"source_file": "tests/test_extract_google_news.py",
"source_location": "L1"
},
{
"id": "tests_test_extract_google_news_py_fixture",
"label": "fixture",
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "code",
"norm_label": "fixture",
"source_file": "",
"source_location": ""
},
{
"id": "scripts_extract_google_news_rationale_208",
"label": "Resolve a URL intermedi\u00e1ria do Google News para a URL real do ve\u00edculo.",
@@ -17325,17 +17314,6 @@
"source_file": "tests/test_extract_google_news.py",
"source_location": "L1"
},
{
"id": "tests_test_extract_google_news_rationale_112",
"label": "Valida o parsing do feed RSS, higieniza\u00e7\u00e3o de tags HTML e deduplica\u00e7\u00e3o.",
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "rationale",
"norm_label": "valida o parsing do feed rss, higienizacao de tags html e deduplicacao.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L112"
},
{
"id": "tests_test_extract_google_news_rationale_139",
"label": "Valida fallback gracioso de URL quando n\u00e3o \u00e9 link do Google News ou em erro.",
@@ -17370,15 +17348,37 @@
"source_location": "L282"
},
{
"id": "tests_test_extract_google_news_rationale_33",
"label": "Fixture que fornece o conte\u00fado do XML de exemplo para testes offline.",
"id": "tests_test_extract_google_news_rationale_38",
"label": "Valida o mapeamento padr\u00e3o de idiomas para pares (hl, gl, ceid).",
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "rationale",
"norm_label": "fixture que fornece o conteudo do xml de exemplo para testes offline.",
"norm_label": "valida o mapeamento padrao de idiomas para pares (hl, gl, ceid).",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L33"
"source_location": "L38"
},
{
"id": "tests_test_extract_google_news_rationale_61",
"label": "Valida a sobrescrita geogr\u00e1fica quando o argumento locale \u00e9 especificado.",
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "rationale",
"norm_label": "valida a sobrescrita geografica quando o argumento locale e especificado.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L61"
},
{
"id": "tests_test_extract_google_news_rationale_79",
"label": "Valida fallback din\u00e2mico para idiomas regionais n\u00e3o listados explicitamente.",
"_origin": "ast",
"community": 84,
"community_name": "test_extract_google_news.py",
"file_type": "rationale",
"norm_label": "valida fallback dinamico para idiomas regionais nao listados explicitamente.",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L79"
},
{
"id": "specs_002_google_news_extractor_tasks_implementation_for_user_story_1",
@@ -18055,15 +18055,15 @@
"source_location": "L33"
},
{
"id": "tests_test_extract_google_news_rationale_303",
"label": "Valida E2E o fluxo completo de busca, parsing e resolu\u00e7\u00e3o de URLs reais ao vivo.",
"id": "tests_test_extract_google_news_rationale_187",
"label": "Valida a consolida\u00e7\u00e3o do ExtractionResult a partir da busca mockada com URLs\u2026",
"_origin": "ast",
"community": 90,
"community_name": "SearchQuery",
"file_type": "rationale",
"norm_label": "valida e2e o fluxo completo de busca, parsing e resolucao de urls reais ao vivo.",
"norm_label": "valida a consolidacao do extractionresult a partir da busca mockada com urls...",
"source_file": "tests/test_extract_google_news.py",
"source_location": "L303"
"source_location": "L187"
},
{
"id": "tests_test_extract_google_news_rationale_87",
@@ -20530,7 +20530,7 @@
"confidence_score": 1.0,
"context": "call",
"source_file": "src/adapters/llm.py",
"source_location": "L239",
"source_location": "L250",
"weight": 1.0
},
{
@@ -20542,7 +20542,7 @@
"confidence_score": 1.0,
"context": "call",
"source_file": "src/adapters/llm.py",
"source_location": "L248",
"source_location": "L259",
"weight": 1.0
},
{
@@ -39911,7 +39911,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "src/adapters/llm.py",
"source_location": "L214",
"source_location": "L225",
"weight": 1.0
},
{
@@ -40828,14 +40828,14 @@
"weight": 1.0
},
{
"source": "src_adapters_llm_rationale_219",
"source": "src_adapters_llm_rationale_230",
"target": "src_adapters_llm_llmfallbackadapter_parse_llm_response",
"relation": "rationale_for",
"_origin": "ast",
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "src/adapters/llm.py",
"source_location": "L219",
"source_location": "L230",
"weight": 1.0
},
{
@@ -43674,7 +43674,7 @@
"confidence": "INFERRED",
"confidence_score": 0.95,
"source_file": "src/adapters/llm.py",
"source_location": "L239",
"source_location": "L250",
"weight": 0.8
},
{
@@ -44625,5 +44625,5 @@
}
],
"hyperedges": [],
"built_at_commit": "a874b98dac4bd7e25da62c6cb4b0acb92a60f57a"
"built_at_commit": "2cdd3547b22ed202328985e763812c3704892d7b"
}
+3 -3
View File
@@ -330,9 +330,9 @@
"semantic_hash": ""
},
"src/adapters/llm.py": {
"mtime": 1787321086.752706,
"seen": 1787321205.5144775,
"ast_hash": "21ac74a13ac5dfad7db498b17165f8b3",
"mtime": 1787321869.4176295,
"seen": 1787322035.8922434,
"ast_hash": "357b505df0d92f76b1d0cd606741d1a5",
"semantic_hash": ""
},
"src/classifier.py": {