{ "0": "architecture-delta.mjs", "1": "render-architecture.mjs", "2": "ECPSnapshot", "3": "config.py", "4": "SQLiteStore", "5": "properties", "6": "geometry.mjs", "7": "cli.mjs", "8": "brand-marks.mjs", "9": "properties", "10": "properties", "11": "properties", "12": "test_media_classifier.py", "13": "archify.mjs", "14": "webm-artifact.smoke.mjs", "15": "render-sequence.mjs", "16": "check-render-output.mjs", "17": "Plano de testes e evals — Runtime de consolidação de artigos", "18": "properties", "19": "tools/models.py", "20": "generated-validators.mjs", "21": "test_extract_article_contents.py", "22": "properties", "23": "render-dataflow.mjs", "24": "select_article_extractor", "25": "consolidate.py", "26": "properties", "27": "repair-operations.schema.json", "28": "ClassificationResult", "29": "process_batch", "30": "main", "31": "render-lifecycle.mjs", "32": "render-workflow.mjs", "33": "properties", "34": "enrichment-response.schema.json", "35": "scripts", "36": "test_models.py", "37": "startPreview", "38": "classifier-io.schema.json", "39": "create_schema_registry", "40": "required", "41": "layout-rules.test.mjs", "42": "hygiene/harness.py", "43": "test_convert_article_to_markdown.py", "44": "CandidateObject", "45": "process_batch", "46": "required", "47": "visual-check.mjs", "48": "null", "49": "article_content_hygiene", "50": "scenarios.mjs", "51": "ArticleCrawler", "52": "required", "53": "select_article_extractor.py", "54": "properties", "55": "article_content_hygiene", "56": "candidate/parser.py", "57": "create_manifest_dict", "58": "required", "59": "properties", "60": "golden.mjs", "61": "test_extract_google_news.py", "62": "output-path.mjs", "63": "$defs", "64": "convert_article_to_markdown.py", "65": "type", "66": "properties", "67": "properties", "68": "adapter.py", "69": "validate_and_extract_enrichment", "70": "classifier.py", "71": "main", "72": "check_zero_regex.py", "73": "enum", "74": "required", "75": "enum", "76": "test_select_article_extractor.py", "77": "properties", "78": "SanitizedJsonLogger", "79": "adaptive-reader-layout.test.mjs", "80": "properties", "81": "required", "82": "required", "83": "legend-contract.test.mjs", "84": "ecp", "85": "required", "86": "common.ps1", "87": "type", "88": "ExecutionStateMachine", "89": "visual-check.test.mjs", "90": "properties", "91": "required", "92": "candidates-payload.schema.json", "93": "limits", "94": "properties", "95": "generate-brand-marks.mjs", "96": "langfuse", "97": "string", "98": "null", "99": "properties", "100": "enum", "101": "dataflow.schema.json", "102": "properties", "103": "lifecycle.schema.json", "104": "required", "105": "required", "106": "properties", "107": "convert_article", "108": "Any", "109": "extract_google_news.py", "110": "object", "111": "tags", "112": "properties", "113": "test_equivalence_mapping.py", "114": "properties", "115": "entries", "116": "sequence.schema.json", "117": "properties", "118": "semantic-radar.test.mjs", "119": "properties", "120": "properties", "121": "architecture.schema.json", "122": "legendEntry", "123": "degraded.test.mjs", "124": "viewer-chrome-layout.test.mjs", "125": "paths", "126": "properties", "127": "properties", "128": "properties", "129": "repository-evidence.mjs", "130": "properties", "131": "enum", "132": "entries", "133": "properties", "134": "properties", "135": "ordinary-model-floor.test.mjs", "136": "output-path.test.mjs", "137": "preview-contract.test.mjs", "138": "real-repository-proof.test.mjs", "139": "v1-compatibility.test.mjs", "140": "resolve_article_body", "141": "SearchQuery", "142": "kept_block_ids", "143": "properties", "144": "type", "145": "enum", "146": "enum", "147": "enum", "148": "generate-validators.mjs", "149": "authored-reachability.test.mjs", "150": "chapter-delta-preview.test.mjs", "151": "cli.test.mjs", "152": "readme-showcase.test.mjs", "153": "repository-evidence.test.mjs", "154": "sqlite", "155": "required", "156": "pricing", "157": "article-input.schema.json", "158": "enum", "159": "run_preflight_checks", "160": "Extraction Pipeline Checklist: Article Content Multi-Engine Extractor", "161": "parametrize", "162": "open-artifact.mjs", "163": "enum", "164": "wraps", "165": "enum", "166": "enum", "167": "enum", "168": "mainPath", "169": "animation.test.mjs", "170": "guided-views.test.mjs", "171": "landing.test.mjs", "172": "preset-tryon.test.mjs", "173": "reach-share-card.test.mjs", "174": "relationship-direct-explorer.test.mjs", "175": "relationship-lens.test.mjs", "176": "relationship-permalink.test.mjs", "177": "release-identity.test.mjs", "178": "repair-receipt.test.mjs", "179": "route-journey.test.mjs", "180": "route-share-card.test.mjs", "181": "semantic-legend-gateway.test.mjs", "182": "sequence-column-fit.test.mjs", "183": "share-card-export.test.mjs", "184": "story-carrier.test.mjs", "185": "story-director-strip.test.mjs", "186": "story-follow-camera.test.mjs", "187": "story-moment-link.test.mjs", "188": "story-shelf.test.mjs", "189": "enum", "190": "media-output.schema.json", "191": "required", "192": "provider_versions", "193": "manifest-output.schema.json", "194": "enum", "195": "verify_all_11_invariants", "196": "PipeCdp", "197": "revision", "198": "enum", "199": "Especificação de prompt, contexto e harness — Runtime", "200": "workflow.schema.json", "201": "enum", "202": "chapter-handoff.test.mjs", "203": "chapter-rail.test.mjs", "204": "diagram-guide.test.mjs", "205": "finder.test.mjs", "206": "intent-trace.test.mjs", "207": "motion-governor.test.mjs", "208": "presentation.test.mjs", "209": "preview.test.mjs", "210": "relationship-pulse.test.mjs", "211": "route-probe.test.mjs", "212": "semantic-camera.test.mjs", "213": "semantic-flow.test.mjs", "214": "semantic-lens.test.mjs", "215": "semantic-passport.test.mjs", "216": "semantic-zoom.test.mjs", "217": "Implementation Tasks: Article Consolidation and Hygiene Runtime", "218": "story-beat-navigator.test.mjs", "219": "story-horizon.test.mjs", "220": "enum", "221": "required", "222": "required", "223": "enum", "224": "parse_arguments", "225": "NewsArticle", "226": "ecp-snapshot.schema.json", "227": "hygiene-response.schema.json", "228": "items", "229": "test_cli_subprocess_pipeline.py", "230": "enum", "231": "enum", "232": "repository", "233": "size", "234": "viewBox", "235": "point", "236": "Functional Requirements", "237": "viewBox", "238": "automatic-port-spread.test.mjs", "239": "render-output-checks.test.mjs", "240": "skill-metadata.test.mjs", "241": "story-trail.test.mjs", "242": "required", "243": "convert_html_to_markdown", "244": "parse_google_news_rss", "245": "create-new-feature.ps1", "246": "enum", "247": "enum", "248": "PRD — Seleção determinística da biblioteca de extração de conteúdo", "249": "build_minimal_hygiene_projection", "250": "ecp-profile.schema.json", "251": "layout", "252": "focus", "253": "enum", "254": "adr_002.md", "255": "render-examples.mjs", "256": "authoring-safety-contract.test.mjs", "257": "base-input-compatibility.test.mjs", "258": "release-package-gates.test.mjs", "259": "eval_runner.py", "260": "validate_certified_cheap_model", "261": "enum", "262": "enum", "263": "enum", "264": "via", "265": "col", "266": "via", "267": "prd.md", "268": "enum", "269": "bias", "270": "Catálogo de métricas e KPIs — Runtime de consolidação de artigos", "271": "fromCol", "272": "toCol", "273": "community-proof-intake.test.mjs", "274": "cursor-onboarding.test.mjs", "275": "delivery-contract.test.mjs", "276": "guide-page.test.mjs", "277": "proof-aperture.test.mjs", "278": "start-page.test.mjs", "279": "build_release_metadata.py", "280": "Tasks: [FEATURE NAME]", "281": "parse_arguments", "282": "removal_reasons", "283": "kept_image_ids", "284": "content_type", "285": "test_prompts_contract.py", "286": "FaultyMockAdapter", "287": "MockProviderAdapter", "288": "cellH", "289": "labelSegment", "290": "pad", "291": "row", "292": "width", "293": "height", "294": "label", "295": "row", "296": "stage", "297": "width", "298": "cornerRadius", "299": "height", "300": "label", "301": "width", "302": "speckit-analyze/SKILL.md", "303": "What You Must Do When Invoked", "304": "height", "305": "labelSegment", "306": "generate-validators.test.mjs", "307": "toolbar-polish.test.mjs", "308": "ci_check.py", "309": "prepare_reference_20.py", "310": "Extrator de Notícias do Google News — Guia Completo de Funcionamento", "311": "test_live_e2e_batch_funnel_with_ollama_and_multimotor", "312": "test_contract_parity.py", "313": "test_zero_regex_enforcement.py", "314": "scripts/__init__.py", "315": "src/__init__.py", "316": "runtime/__init__.py", "317": "adapters/__init__.py", "318": "tools/__init__.py", "319": "tests/__init__.py", "320": "test_normalize_list_author_url_filtering", "321": "test_normalize_list_deduplication_preserves_case_and_order", "322": "test_normalize_date_iso_8601_variants", "323": "test_normalize_date_invalid_and_placeholders", "324": "test_metadata_priority_original_url_all_fallbacks", "325": "test_normalize_scalar_whitespace_collapsing", "326": "test_normalize_scalar_non_string_types", "327": "text-nlp-classifier", "328": "check-prerequisites.ps1", "329": "resolve-template.ps1", "330": "setup-plan.ps1", "331": "setup-tasks.ps1", "332": "adr_001.md", "333": "PRD — Conversão de artigo JSON para Markdown", "334": "Documento de Arquitetura — Runtime de consolidação de artigos", "335": "24. Requisitos funcionais", "336": "Runbook de produção — Runtime de consolidação de artigos", "337": "4. Requisitos Funcionais (FR)", "338": "Authoring contract", "339": "PRD — Runtime de consolidação e higienização de artigos", "340": "Tasks: Article Content Multi-Engine Extractor", "341": "Tasks: Convert Article JSON to Markdown", "342": "._get_connection", "343": "1. Text Normalization Pipeline", "344": "Tasks: Deterministic Article Content Selection", "345": "Execution Steps", "346": "8. Regras funcionais", "347": "12. Critérios de aceite", "348": "Feature Specification: Multilingual NLP Entity Inherence Classifier (POC)", "349": "Implementation Tasks: Google News Headlines Extractor", "350": "CLI Interface Contract: Article Consolidation and Hygiene Runtime", "351": "2. Entity Definitions", "352": "3. Concrete Architectural & Technical Decisions", "353": "Functional Requirements", "354": "30. Cenários mínimos de teste", "355": "Feature Specification: [FEATURE NAME]", "356": "Tasks: Multilingual NLP Entity Inherence Classifier (POC)", "357": "Requirements Readiness Checklist: Article Consolidation and Hygiene Runtime", "358": "Implementation Plan: Article Content Multi-Engine Extractor", "359": "Feature Specification: Deterministic Content Selection", "360": "Implementation Plan: Convert Article JSON to Markdown", "361": "2. Technical Decisions & Research Findings", "362": "Feature Specification: Convert Article JSON to Markdown", "363": "3. Operational Execution Scenarios", "364": "2. Modelos de Dados (Dataclasses e Estruturas de Runtime)", "365": "speckit-plan/SKILL.md", "366": "speckit-specify/SKILL.md", "367": "speckit-tasks/SKILL.md", "368": "25. Requisitos não funcionais", "369": "Core Principles", "370": "Core Principles", "371": "Feature Specification: Google News Headlines Extractor", "372": "2. Entity Descriptions & Fields", "373": "Implementation Plan: Deterministic Article Content Selection", "374": "Markdown Conversion Checklist: End-to-End Requirements Quality", "375": "properties", "376": "Media Routing Requirements Quality & Implementation Planning Checklist", "377": "Viewer Runtime reference", "378": "Archify", "379": "5. 📝 Conversor de Artigo JSON para Markdown", "380": "2. Cenários Práticos de Uso", "381": "004-deterministic-content-selection/spec.md", "382": "Implementation Plan: Classificação e Roteamento de Notícias Predominantemente de Mídia", "383": "Tasks: Classificação e Roteamento de Notícias Predominantemente de Mídia", "384": "build_candidates_payload", "385": "calculate_execution_fingerprint", "386": "Archify JSON IR Schemas", "387": "graphify reference: extra exports and benchmark", "388": "Ponytail", "389": "1. Operational Commands", "390": "4. 🎯 Seletor Determinístico de Conteúdo de Artigos", "391": "Implementation Plan: [FEATURE]", "392": "1. Technical Decisions & Tradeoffs", "393": "2. Cenários de Validação", "394": "1. Technical Decisions & Tradeoffs", "395": "005-convert-json-markdown/plan.md", "396": "Quickstart: Convert Article JSON to Markdown", "397": "Implementation Plan: Article Consolidation and Hygiene Runtime", "398": "CLI Contract & Routing Specification: `scripts/extract_article_contents.py`", "399": "candidate/models.py", "400": "Delivery contract", "401": "Ponytail Help", "402": "speckit-checklist/SKILL.md", "403": "6. 🚀 Runtime de Consolidação e Higienização de Artigos (006-article-consolidation-runtime)", "404": "1. Input Schemas", "405": "Implementation Plan: Multilingual NLP Entity Inherence Classifier (POC)", "406": "2. Basic CLI Usage Examples", "407": "1. Technical Decisions & Tradeoffs", "408": "Deterministic Content Selection Checklist: End-to-End Requirements Quality", "409": "1. Domain Entities & Schemas", "410": "Prompts Versioned Contract: Article Consolidation and Hygiene Runtime", "411": "properties", "412": "2. Decisões Técnicas Consolidadas", "413": "Sequence Renderer", "414": "speckit-clarify/SKILL.md", "415": "speckit-implement/SKILL.md", "416": "11. Requisitos não funcionais", "417": "13. Parsing estrutural sem regex", "418": "🧠 TextNLPClassifierApp", "419": "1. 🧠 Classificador de Conteúdo e Inerência (NLP / LLM / ECP)", "420": "POC Readiness & Requirements Quality Checklist: Multilingual NLP Entity Inherence Classifier", "421": "2. Standard Streams & Exit Codes", "422": "General Readiness Checklist: Google News Headlines Extractor", "423": "1. Entidades de Domínio & DTOs", "424": "Implementation Plan: Google News Headlines Extractor", "425": "Quickstart: Deterministic Article Content Selection", "426": "Quickstart & Validation Guide: Classificação e Roteamento de Mídia", "427": "test_benchmark_24.py", "428": "🧪 Documentação da Suíte de Testes Automatizados", "429": "Data Flow Renderer", "430": "Lifecycle Renderer", "431": "Workflow Renderer", "432": "graphify reference: query, path, explain", "433": "speckit-constitution/SKILL.md", "434": "9. Tipos de mídia", "435": "ADR-003 — Usar orquestração explícita em Python, sem LangChain ou LangGraph", "436": "Comandos e Utilitários CLI", "437": "Specification Quality Checklist: Multilingual NLP Entity Inherence Classifier", "438": "Specification Quality Checklist: Google News Headlines Extractor", "439": "CLI Contract: Google News Headlines Extractor", "440": "CLI Contract: Article Content Multi-Engine Extractor", "441": "Specification Quality Checklist: Deterministic Content Selection", "442": "CLI Interface Contract: Deterministic Article Content Selection", "443": "Specification Quality Checklist: Convert Article JSON to Markdown", "444": "CLI Contract: `convert_article_to_markdown.py`", "445": "Specification Quality Checklist: Article Consolidation and Hygiene Runtime", "446": "media-routing.md", "447": "Specification Quality Checklist: Classificação e Roteamento de Notícias Predominantemente de Mídia", "448": "4. Arquitetura e Decisões Técnicas Fechadas", "449": "enum", "450": "ponytail-audit/SKILL.md", "451": "Ponytail Gain", "452": "ponytail-review/SKILL.md", "453": "speckit-taskstoissues/SKILL.md", "454": "10. Contrato de saída", "455": "14. Higienização por LLM", "456": "4. Regras mandatórias", "457": "8. Contrato de entrada do artigo", "458": "18. Integração ECP", "459": "7. Orquestração", "460": "ADR-001 — Separar runtime e self-healing", "461": "ADR-002 — Iniciar o runtime após a seleção do extrator", "462": "ADR-004 — Gateway agnóstico com apenas modelos baratos no runtime", "463": "ADR-005 — Proibir regex e palavras-chave manuais em decisões textuais", "464": "ADR-006 — LLM seleciona evidências e propõe reparos, não regenera o artigo", "465": "ADR-007 — Tornar o ECP obrigatório antes de toda saída editorial", "466": "ADR-008 — Langfuse no runtime e Promptfoo no CI", "467": "ADR-009 — Persistir estado em SQLite e saídas no filesystem", "468": "ADR-010 — Produzir resultado estruturado sempre e Markdown condicionalmente", "469": "ADR-011 — Definir SLOs de custo e latência a partir de staging", "470": "7. Checklist de release", "471": "2. 📰 Extrator de Manchetes do Google News", "472": "[CHECKLIST TYPE] Checklist: [FEATURE NAME]", "473": "readiness.md", "474": "User Scenarios & Testing *(mandatory)*", "475": "graphify reference: add a URL and watch a folder", "476": "graphify reference: commit hook and native CLAUDE.md integration", "477": "graphify reference: incremental update and cluster-only", "478": "ponytail-debt/SKILL.md", "479": "6. Contrato de entrada", "480": "12. Preparação determinística", "481": "15. Pequenos reparos textuais", "482": "9. Contrato do ECP", "483": "15. Higienização extrativa", "484": "16. Pequenos reparos", "485": "20. Model Gateway", "486": "23. Observabilidade", "487": "3. Limites do sistema", "488": "9. Política de dependências", "489": "12. Monitoramento", "490": "14. Reprocessamento", "491": "16. Falha do provider primário", "492": "21. Falha do SQLite", "493": "6. Configuração obrigatória", "494": "⚙️ Instalação e Setup", "495": "3. 📄 Extrator e Parser Multimotor de Artigos", "496": "remove_duplicate_initial_h1", "497": "001-multilingual-entity-classifier/spec.md", "498": "JSON Schema Contract: Article Content Multi-Engine Extractor", "499": "Release Quality Summary Report", "500": "Brand marks", "501": "graphify reference: GitHub clone and cross-repo merge", "502": "graphify reference: transcribe video and audio", "503": "13. Candidatos e proveniência", "504": "16. Imagens e links", "505": "17. Gate ECP", "506": "18. Enriquecimento", "507": "5. Escopo", "508": "14. Modelo de candidatos", "509": "22. Renderer e arquivos", "510": "Architecture Decision Records — Runtime de consolidação de artigos", "511": "15. Falha de validação de entrada", "512": "17. Falha semântica ou de grounding", "513": "18. Falha do ECP", "514": "20. Falha do Langfuse", "515": "22. Falha de filesystem ou disco", "516": "26. Rollback manual", "517": "Los puntajes de River vs. Independiente Santa Fe, por la Copa Sudamericana - TyC Sports", "518": "rules/graphify.md", "519": "brand-marks/README.md", "520": "extraction-spec.md", "521": "workflows/graphify.md", "522": "PRD — Classificação e Roteamento de Notícias Predominantemente de Mídia", "523": "5. Escopo funcional", "524": "content_northvolt_de.md", "525": "content_presal_pt.md", "526": "content_tangential_es.md", "527": "de/contextual.md", "528": "de/direct.md", "529": "de/not_related.md", "530": "de/tangential.md", "531": "en/contextual.md", "532": "en/direct.md", "533": "en/not_related.md", "534": "en/tangential.md", "535": "es/contextual.md", "536": "es/direct.md", "537": "es/not_related.md", "538": "es/tangential.md", "539": "fr/contextual.md", "540": "fr/direct.md", "541": "fr/not_related.md", "542": "fr/tangential.md", "543": "it/contextual.md", "544": "it/direct.md", "545": "it/not_related.md", "546": "it/tangential.md", "547": "pt/contextual.md", "548": "pt/direct.md", "549": "pt/not_related.md", "550": "pt/tangential.md", "551": "valid_newspaper4k.md", "552": "valid_readability.md" }