# AID — metodologia 2.0 (reinício de 04/11/2026)

## Objetivo
Seleções individuais de futebol e, após validação, ténis/NHL/NBA, fundamentadas em opiniões de especialistas independentes e evidência editorial. Sem modelos de previsão próprios. A pessoa decide se aposta e em que mercado.

## Separação obrigatória
- **Agenda**: descoberta de jogos com identidade estável, hora Portugal continental e origem atribuída. ESPN é uma fonte secundária de descoberta: não apresentar como calendário UEFA oficialmente confirmado.
- **Investigação**: consultar prognósticos estruturados por evento e mercado, nomeadamente OLBG e bettingexpert, sujeitos a acesso e permissões. Confrontar com artigos editoriais originais e fontes oficiais.
- **Recomendação**: publicação apenas após autoria identificada, hora de publicação anterior ao jogo, seleção/mercado normalizados, argumentos relevantes e controlo de contradições.
- **Histórico**: separado do painel operacional, com preservação de evidências e decisões.

## Regras de integridade
1. Não converter votos da mesma comunidade em confirmação multifonte independente.
2. Não contar mercados diferentes como o mesmo prognóstico.
3. Não usar autores não confirmados nem odds fictícias.
4. Não publicar recomendações para jogos que começaram, em Europe/Lisbon.
5. Não transformar erro de API ou calendário vazio em afirmação de que não há jogos.
6. Não publicar qualquer seleção apenas para preencher a página.
7. Não alegar valor financeiro sem preço/odd contemporânea; sucesso passado não garante retorno.
8. Não extrair nem republicar conteúdo em violação das condições de uso das fontes.
9. Nenhuma recomendação é gerada automaticamente nesta primeira base.

## Estado inicial verificável
- Interface nova, calendário e recomendações separados.
- Atualizador de agenda baseado num endpoint público não documentado da ESPN: disponibilidade não garantida, sem autenticação, dependente de testes e termos de uso.
- Lista de recomendações inicialmente vazia e explicitamente identificada.
- Integração de opiniões estruturadas, análise dos especialistas e confirmação oficial por jogo ainda por implementar e validar.
- Arquivo anterior: branch archive/aid-v1-before-reset-2026-11-04.

## Critério para avançar
Primeiro ter agenda dos encontros de hoje com hora correta e histórico de falhas. Depois avaliar dez jogos em OLBG/bettingexpert/editoriais independentes, medir recuperação de opiniões autenticadas, associação correta e datas pré-jogo. Só após resultados positivos apresentar seleções ao utilizador.

## Piloto de sinais estruturados — 04/11/2026

Foi acrescentado `scripts/research_olbg.py` e o ficheiro `data/research.json`, integrados na recolha automática e na interface. A extração usa a listagem pública OLBG Champions League e exige equivalência do encontro, identidade do evento ESPN, data de hoje e hora portuguesa exata. As falhas são registadas, sem produzir seleções sintéticas.

Primeira execução documentada em `data/research.json` (19h28 UTC): **7 encontros elegíveis; 7 sinais comunitários correspondentes; 0 erros de associação registados; 0 recomendações AID**. O mercado e a escolha são mantidos explicitamente; os números de votos representam **uma única comunidade**, não avaliações de especialistas externos independentes. Esta execução não verifica a correção do conteúdo original por auditoria humana nem a fiabilidade desportiva das escolhas.

**Critério de promoção futura:** opinião de autor identificado, texto original consultado, timestamp anterior ao início, identidade exata do mercado, análise dos argumentos e confronto com outra origem editorial efetivamente independente. Sem esses elementos, o estado mantém-se `em_investigacao`, mesmo que exista apoio comunitário elevado. A página de dados públicos é sujeita a alterações e condições de acesso.

## Investigação multifonte — 04/11/2026

A plataforma já consulta **duas origens de natureza diferente**:

1. **OLBG (comunidade):** sinais agregados por encontro, mercado e escolha; votos não são previsões de autores independentes nem probabilidades.
2. **Sports Mole (redação editorial):** pesquisa por encontros nas páginas de futebol, seguida da abertura de artigos originais; são verificados título com ambas as equipas, autor, hora de publicação anterior ao início e previsão explícita no trecho “We say”.

Na primeira execução real foram encontrados **sete artigos com previsões assinadas**, ligados a **sete encontros**. A comparação ao mesmo mercado encontrou **cinco alinhamentos e duas divergências** (PSV–Club Brugge e Viking–Sabah). Esta evidência está publicada em `data/editorial_research.json` e `data/comparison.json`.

**Limites:** a comparação representa uma comunidade e uma publicação, não dois especialistas de comunidades independentes nem múltiplos editores. A escolha do redator da Sports Mole é uma previsão de resultado editorial, não necessariamente uma aposta recomendada. O AID continua com zero recomendações aprovadas; não estimar probabilidade ou valor financeiro destas contagens. A lista dinâmica mantém apenas partidas ainda por começar; dados anteriores são históricos.

**Registo de fontes** em `data/source_registry.json`: OLBG e Sports Mole automatizados; bettingexpert, Oddschecker e Action Network apenas investigados, sem alegar integração. Bettingexpert anuncia suspensão indefinida de competições de tipsters desde 30/06/2026, o que obriga a verificar critérios de rankings e atualidade da atividade antes de uso.

**Próxima decisão metodológica:** procurar uma terceira origem realmente independente, com autor, timestamp e escolha da mesma linha de mercado, e avaliar divergências e argumentos por evento. Acordo de votos com um editorial não promove automaticamente uma escolha a recomendação AID.

## Terceira origem, pesquisa antecipada — 04/11/2026

Adicionado `scripts/research_footballwhispers.py`: consulta a página de índice da Football Whispers e associa as ligações de artigos apenas a jogos da agenda ESPN nos dois dias seguintes, exigindo data e identidade exata das equipas. Publica `data/footballwhispers_research.json` com URL, encontro, horário e estado documental; não extrai recomendações, percentagens nem autores que não estejam confirmados. Os testes cobrem oposição errada, data errada, domínio estranho, jogo expirado e falha de acesso.

O sítio publica conteúdo comercial e algumas páginas apresentam informação editorial contraditória; por isso é fonte de investigação, **não prova de confiança**. A automação foi integrada no workflow e a interface ganhou a secção "Investigação para amanhã". A primeira execução desta recolha ainda não tem dados publicados na altura do registo, pelo que não declarar número de artigos encontrados ou qualidade confirmada.

Próximo passo: verificar execução real, validar páginas originais, autoria, timestamp e previsão explícita, comparar pelo mesmo mercado e apenas depois decidir se existe sustentação suficiente. Não equiparar a Football Whispers a Sports Mole ou OLBG por simples presença na lista.

## Expansão por competição — 04/11/2026

A descoberta de calendário passou a consultar **sete dias** de nove competições: Liga Portugal, Premier League, LaLiga, Serie A, Bundesliga, Ligue 1, Champions League, Europa League e Conference League. Cada consulta preserva o seu estado; a origem ESPN permanece uma fonte de descoberta, não confirmação oficial.

O coletor Sports Mole deixou de exigir Champions League, procurando artigos originais para jogos de hoje ainda por começar e de amanhã de qualquer das nove competições. O resultado inclui contagens por competição: jogos elegíveis, jogos com artigo e escolhas assinadas. A fonte não ganha credibilidade por ter mais artigos.

O coletor OLBG passou a pesquisar também a listagem geral de futebol e a aceitar eventos de hoje e amanhã, distinguindo explicitamente as datas relativas (Today/Tomorrow) e exigindo coincidência da hora PT. Sinais duplicados da mesma comunidade não são contados como duas origens independentes.

A interface mostra cobertura separada **por competição nos próximos sete dias**; jogos agendados não equivalem a jogos investigados. Os painéis de investigação podem mostrar artigos para amanhã, mas seleções AID operacionais permanecem limitadas a encontros de hoje não iniciados.

Execução intermédia observada (04/11, 20h08 PT, anterior à recolha semanal): 35 encontros elegíveis amanhã em Europa/Conference; quatro sinais OLBG em duas competições, dois artigos assinados Sports Mole na Europa League. O novo calendário semanal **ainda carece de execução e validação**. Ténis, NHL e NBA são objetivos seguintes e não estão cobertos por estes coletores de futebol.

## Resultado da expansão para sete dias — 04/11/2026

**Execução verificada às 20h09 (Portugal):** 63/63 consultas à ESPN concluídas, 102 encontros distintos nas nove competições. Distribuição: Champions League 9, Europa League 18, Conference League 18, Liga Portugal 9, Premier League 10, LaLiga 10, Serie A 10, Bundesliga 9, Ligue 1 9.

O leitor Sports Mole pesquisa agora jogos elegíveis até seis dias depois da data atual (incluindo o fim de semana), e a interface mostra os respetivos artigos na vista semanal, independentemente da competição. **Execução observada às 20h11:** 92 encontros futuros no calendário, três previsões assinadas identificadas (duas da Europa League e uma da LaLiga: Sevilla–Alavés, 06/11). A escassez de opiniões encontradas em outras ligas não comprova ausência de análises; demonstra limites do alcance dos índices consultados.

OLBG passou a consultar a página generalista e a distinguir palpites rotulados "Today" e "Tomorrow". Os palpites de comunidades não são equivalentes a autores editoriais independentes. Não foram incorporados modelos de previsão.

**Ainda por implementar:** descoberta editorial sistemática nas nove ligas (páginas de competição e especialistas locais), além de cobertura específica de ATP/WTA, NHL e NBA. Dados de calendário não bastam para declarar recomendações credíveis. A publicação Cloudflare não foi verificada nesta execução.

## Descoberta editorial por liga — resultado de 04/11/2026

O leitor Sports Mole passou a consultar, além das páginas gerais, páginas específicas de Primeira Liga, Premier League, LaLiga, Serie A, Bundesliga e Ligue 1. A associação continua a exigir ambas as equipas e um encontro futuro com identidade ESPN; variantes de nomes foram acrescentadas de forma explícita (por exemplo, FC Famalicao ↔ Famalicao, Coventry City ↔ Coventry), sem aproximação difusa.

**Execução real às 20h16 de 04/11/2026:** dez artigos ligados a eventos futuros, dos quais nove continham previsões editoriais assinadas, em seis competições (Europa League, Conference League, Liga Portugal, Premier League, LaLiga e Ligue 1). Foram identificados, entre outros, FC Famalicao–Arouca (Adeyeye Oluwapelumi), Everton–Coventry City (Matt Law), Sevilla–Alavés (Matt Law) e Toulouse–Strasbourg (Joel Lefevre). Uma consulta à página de features e um artigo registaram `TimeoutError`, sem promoção a evidência.

**Os dados NÃO representam nove especialistas independentes:** alguns artigos são do mesmo autor e publicação, previsões de resultado não equivalem necessariamente a dicas de apostas, e ainda não ocorreu confronto multifonte suficiente nessas ligas. Zero recomendações finais AID. As ligas sem artigos associados permanecem no painel de cobertura com zero, em vez de recomendações artificiais.

## Quarta origem — SportsGambler (04/11/2026)

O AID acrescentou um coletor de **descoberta de artigos** por páginas individuais de Premier League, LaLiga, Serie A, Bundesliga, Ligue 1, Champions League e Europa League. A fonte declara combinar análise editorial com métricas e modelos proprietários, pelo que não podemos contar automaticamente o conteúdo como parecer independente de especialista humano.

Código `scripts/research_sportsgambler.py`, testes `tests/test_research_sportsgambler.py`, dados `data/sportsgambler_research.json`, automação integrada em `.github/workflows/calendar.yml`, nova secção própria na interface e registo atualizado em `data/source_registry.json`.

**Garantias:** ligações limitadas ao domínio oficial HTTPS, associação ao calendário por duas equipas em ordem e URL original; sem jogo futuro confirmado não existe artigo elegível; erros não são interpretados como ausência de jogos. Links por si só não certificam autor, data, escolha, mercado ou consenso.

**Estado na verificação:** código publicado; primeira execução ainda não escreveu um novo estado no ficheiro de dados (`not_checked`). Não declarar contagem de artigos, melhoria de cobertura ou recomendações resultantes até à recolha real. Prioridade seguinte: auditar conteúdos originais e inserir na comparação apenas fontes humanas comprovadas.

## Painel Apoio à decisão — 04/11/2026

A nova área inicial já apresenta **fichas de análise por encontro**, em vez de listas de recolhas por site. Geração automática: `scripts/build_decision_brief.py`; dados `data/decision_brief.json`; testes `tests/test_decision_brief.py`; execução integrada no workflow `.github/workflows/calendar.yml`.

Cada ficha preserva data/hora Portugal continental, encontro, competição, mercado, opinião editorial assinada, nome do autor, seleção comunitária, eventuais votos, origem original e o que falta verificar. Os estados de investigação são: `investigacao_prioritaria` (alinhamento entre uma opinião assinada e uma comunidade), `opinioes_divergentes`, `opiniao_editorial_unica`, `apenas_comunidade`, `artigos_por_validar` e `sem_evidencia`. **Estes estados são prioridades de investigação, NÃO níveis de confiança, probabilidade, recomendações finais ou valor esperado.**

Execução observada às 20h30 UTC: 92 encontros futuros considerados; dois encontros com sinais alinhados de OLBG e Sports Mole (Benfica–Lech Poznan; Sparta Prague–AFC Bournemouth) e zero divergências após correção das designações Bournemouth / AFC Bournemouth. Um falso conflito inicial foi corrigido com teste de regressão antes de aceitar o resultado.

**Próximo requisito de produto:** desenvolver o processo de avaliação editorial dos fundamentos de cada opinião e fontes realmente independentes por mercado; a mera concordância com OLBG não autoriza promover uma seleção a recomendação. A página ainda não foi inspecionada diretamente no deployment Cloudflare.

## Avaliação editorial orientada à decisão — 04/11/2026

Foi criada `data/editorial_reviews.json` com análise fundamentada de dois encontros prioritários (Benfica–Lech Poznan e Sparta Prague–AFC Bournemouth), a partir de artigos originais da Sports Mole publicados a 03/11/2026. Registam-se por encontro: previsão e autor, URL original, argumentos factuais atribuídos ao artigo, contra-argumentos, ausências reportadas, itens por confirmar e decisão operacional **«acompanhar»**. Cada afirmação desportiva permanece uma alegação da fonte, não uma confirmação oficial independente.

O gerador `scripts/build_decision_brief.py` passou a cruzar a avaliação com o artigo original por **evento, data, mercado, autor, URL e seleção**; se qualquer elemento não corresponder, a revisão não é apresentada. A interface mostra os argumentos e reservas nas fichas iniciais. Teste de regressão em `tests/test_decision_brief.py`.

Nenhum dos dois encontros foi promovido a recomendação de aposta. Falta confirmar fonte oficial dos encontros, notícias e onzes atualizados, segunda opinião editorial realmente independente e odd real para avaliar valor económico. Há sempre a possibilidade de resposta **«não recomendar»**. Um sinal OLBG constitui apenas um apoio comunitário, não validação entre dois especialistas.

É um passo de produto no sentido de ajudar decisões, mas não demonstra taxa de acerto, retorno esperado ou validação financeira de qualquer escolha. A página pública Cloudflare continua sem confirmação de acessibilidade por esta execução.
