{
  "meta": {
    "descricao": "Registro de atualizações do monitor: cada execução da coleta registra saúde das fontes, mudanças detectadas (com fonte oficial e data de detecção) e métricas HTTP.",
    "execucao": "2026-10-25",
    "mudancas_total": 166
  },
  "mudancas": [
    {
      "data": "2026-10-22",
      "titulo": "Online speech by Commissioner Albuquerque at the Nordic Financial Unions Conference: Resilience in an era of uncertainty and change",
      "descricao": "European Commission Speech Online, 22 Oct 2026 Good morning, ladies and gentlemen, I very much wish I could be with you in beautiful Reykjavík this morning. Hopefully we will be able to make that happen in t...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2237",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2237",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2237",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-22",
      "timestamp_execucao": "2026-10-22T07:13:04-03:00",
      "id_execucao": "run_2026_10_22_0713"
    },
    {
      "data": "2026-10-21",
      "titulo": "Daily News 21 / 10 / 2026",
      "descricao": "European Commission Daily news Brussels, 21 Oct 2026 Commission to investigate how Booking.com combats scams and fraud under the Digital Services Act Today, the European Commission has opened formal proceedings t...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_mex_26_2225",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2225",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2225",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-21",
      "timestamp_execucao": "2026-10-21T07:11:47-03:00",
      "id_execucao": "run_2026_10_21_0711"
    },
    {
      "data": "2026-10-21",
      "titulo": "Commission to investigate how Booking.com combats scams and fraud under the Digital Services Act",
      "descricao": "European Commission Press release Brussels, 21 Oct 2026 Today, the European Commission has opened formal proceedings to assess whether Booking.com may have breached the Digital Services Act (DSA) by not having diligently assessed or effectively mitigated risks related to fraudulent listings and phishing scams.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2223",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2223",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2223",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-21",
      "timestamp_execucao": "2026-10-21T07:11:47-03:00",
      "id_execucao": "run_2026_10_21_0711"
    },
    {
      "data": "2026-10-19",
      "titulo": "Daily News 19 / 10 / 2026",
      "descricao": "European Commission Daily news Brussels, 19 Oct 2026 Commission invests €3.4 billion in net-zero technology projects Today, the European Commission has selected 77 European net-zero technology projects to receive...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_mex_26_2195",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2195",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2195",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-19",
      "timestamp_execucao": "2026-10-19T07:47:49-03:00",
      "id_execucao": "run_2026_10_19_0747"
    },
    {
      "data": "2026-10-18",
      "titulo": "Commission invests €3.4 billion in net-zero technology projects",
      "descricao": "European Commission Press release Brussels, 19 Oct 2026 Today, the European Commission has selected 77 European net-zero technology projects to receive funding support worth €3.4 billion under the second call of the Innovation Fund, launched in December 2025.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2187",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2187",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2187",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-19",
      "timestamp_execucao": "2026-10-19T07:47:49-03:00",
      "id_execucao": "run_2026_10_19_0747"
    },
    {
      "data": "2026-10-16",
      "titulo": "Norwegian DPA fines Xandr EUR 8 600 000 for unlawful processing of personal data",
      "descricao": "Background information Date of final decision: 2 October 2026 National case Controller: Xandr Inc. Legal References: Article 6 (Lawfulness of processing), Article 9 (Processing of special categories of personal data) Decision: Administrative fine Key words: Fines, Basic principles, Marketing, Online platforms Summary of the Decision Origin of the case The case started in 2020 when the Norwegian Consumer Council lodged a complaint against the advertising technology company Xandr (at the time AppNexus, now a part of Microsoft) with the Norwegian DPA (Data Protection Authority). The case concerns",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_norwegian_dpa_fines_xandr_eur_8_600_000_for_unlawful_processing_of_personal_data_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/norwegian-dpa-fines-xandr-eur-8-600-000-for-unlawful-processing-of-personal-data_en",
      "url_oficial": "https://www.edpb.europa.eu/news/norwegian-dpa-fines-xandr-eur-8-600-000-for-unlawful-processing-of-personal-data_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-16",
      "timestamp_execucao": "2026-10-16T06:52:23-03:00",
      "id_execucao": "run_2026_10_16_0652"
    },
    {
      "data": "2026-10-15",
      "titulo": "Speech by Commissioner Albuquerque (by video message) for the Malta's Financial Wellbeing Conference 2026: From Access to Trust",
      "descricao": "European Commission Speech Online, 15 Oct 2026 Good morning to everyone gathered in Malta today. Although other commitments mean that I am joining you from Brussels, I was determined to contribute to this im...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2176",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2176",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2176",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-15",
      "timestamp_execucao": "2026-10-15T17:01:20-03:00",
      "id_execucao": "run_2026_10_15_1701"
    },
    {
      "data": "2026-10-15",
      "titulo": "Commission launches RAISE pledging initiative to boost AI support for researchers across Europe",
      "descricao": "European Commission Press release Brussels, 15 Oct 2026 Today, at the European AI in Science Summit in Dublin, the European Commission launched the RAISE (Resource for AI Science in Europe) pledging initiative for AI in Science Enablers.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2175",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2175",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2175",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-15",
      "timestamp_execucao": "2026-10-15T10:39:47-03:00",
      "id_execucao": "run_2026_10_15_1039"
    },
    {
      "data": "2026-10-14",
      "titulo": "Eurobarometer survey highlights growing use of AI in European companies",
      "descricao": "European Commission Press release Brussels, 14 Oct 2026 European businesses rely increasingly on artificial intelligence (AI). That is what the results of the latest Eurobarometer survey showed, published today.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2160",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2160",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2160",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-14",
      "timestamp_execucao": "2026-10-14T07:15:12-03:00",
      "id_execucao": "run_2026_10_14_0715"
    },
    {
      "data": "2026-10-13",
      "titulo": "Speech by Executive Vice-President Virkkunen at the International AI Summit in Dublin",
      "descricao": "European Commission Speech Dublin, 14 Oct 2026 Prime Minister Martin, Minister Smyth, Minister Burke, thank you for inviting me. I would like to begin with a remarkable story from Ireland's past. In 1858, on...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2150",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2150",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2150",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-14",
      "timestamp_execucao": "2026-10-14T07:15:12-03:00",
      "id_execucao": "run_2026_10_14_0715"
    },
    {
      "data": "2026-10-13",
      "titulo": "EDPB publishes statement on the data protection challenges of smart glasses",
      "descricao": "Brussels, 13 October – During its latest plenary, the EDPB has adopted statement on smart glasses and published the report “The connected gaze. Video recording, surveillance and administering evidence in the age of smart glasses” *, developed in the context of the Support Pool of Expert (SPE) programme **. As smart glasses become widely available and more frequently used, they raise significant questions for the protection of individuals’ personal data and rights and freedoms even if they create new opportunities for communication, assistance, and innovation. “These devices look like ordinary ",
      "tipo": "nova orientação oficial",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_publishes_statement_on_the_data_protection_challenges_of_smart_glasses_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-publishes-statement-on-the-data-protection-challenges-of-smart-glasses_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-publishes-statement-on-the-data-protection-challenges-of-smart-glasses_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-13",
      "timestamp_execucao": "2026-10-13T13:24:37-03:00",
      "id_execucao": "run_2026_10_13_1324"
    },
    {
      "data": "2026-10-13",
      "titulo": "EDPB publishes statement on the data protection challenges of smart glasses",
      "descricao": "Brussels, 13 October – During its latest plenary, the EDPB has adopted statement 1/2026 on smart glasses and published the report “The connected gaze. Video recording, surveillance and administering evidence in the age of smart glasses” *, developed in the context of the Support Pool of Expert (SPE) programme **. As smart glasses become widely available and more frequently used, they raise significant questions for the protection of individuals’ personal data and rights and freedoms even if they create new opportunities for communication, assistance, and innovation. “These devices look like or",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_publishes_statement_on_the_data_protection_challenges_of_smart_glasses_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-publishes-statement-on-the-data-protection-challenges-of-smart-glasses_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-publishes-statement-on-the-data-protection-challenges-of-smart-glasses_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:df6218e95f0fabd6",
      "valor_novo": "sha1:bc4a821990e5cdbb",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-15",
      "timestamp_execucao": "2026-10-15T10:39:47-03:00",
      "id_execucao": "run_2026_10_15_1039"
    },
    {
      "data": "2026-10-13",
      "titulo": "Commissioner Roswall's opening speech at the event, 'Water Innovation Europe 2026'",
      "descricao": "European Commission Speech Dublin, 13 Oct 2026 Distinguished guests, ladies and gentlemen, I am delighted to be back in Dublin and happy to once again open the Water Innovation Europe conference. Let m...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2152",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2152",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2152",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-13",
      "timestamp_execucao": "2026-10-13T13:24:37-03:00",
      "id_execucao": "run_2026_10_13_1324"
    },
    {
      "data": "2026-10-12",
      "titulo": "Italian DPA fines Wind Tre EUR 16 700 000 for unlawful telemarketing and data protection infringements",
      "descricao": "Background information Date of final decision: 05/06/2026 National case Controller: Wind Tre S.p.A. Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 6 (Lawfulness of processing), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 15 (Right to access by the data subject), Article 21 (Right to object), Article 24 (Responsibility of the controller), Article 25 (Data protection by design and by default) and Article 32 (Security of processing) Decision: Administrative fine, Definit",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_wind_tre_eur_16_700_000_for_unlawful_telemarketing_and_data_protection_e",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-wind-tre-eur-16-700-000-for-unlawful-telemarketing-and-data-protection_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-wind-tre-eur-16-700-000-for-unlawful-telemarketing-and-data-protection_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-12",
      "timestamp_execucao": "2026-10-12T10:11:33-03:00",
      "id_execucao": "run_2026_10_12_1011"
    },
    {
      "data": "2026-10-12",
      "titulo": "Daily News 12 / 10 / 2026",
      "descricao": "European Commission Daily news Brussels, 12 Oct 2026 Commission welcomes adoption of €115 million ‘AGILE' programme for rapid defence innovation The European Commission welcomes the adoption of the Regulation esta...",
      "tipo": "adoção/publicação",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_mex_26_2138",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2138",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2138",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-12",
      "timestamp_execucao": "2026-10-12T10:11:33-03:00",
      "id_execucao": "run_2026_10_12_1011"
    },
    {
      "data": "2026-10-12",
      "titulo": "Daily News 12 / 10 / 2026",
      "descricao": "European Commission Daily news Brussels, 13 Oct 2026 Commission welcomes adoption of €115 million ‘AGILE' programme for rapid defence innovation The European Commission welcomes the adoption of the Regulation esta...",
      "tipo": "alteração de texto",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_mex_26_2138",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2138",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_2138",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:d149d31bf2c070c0",
      "valor_novo": "sha1:130909a34e4a4821",
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-13",
      "timestamp_execucao": "2026-10-13T09:43:36-03:00",
      "id_execucao": "run_2026_10_13_0943"
    },
    {
      "data": "2026-10-12",
      "titulo": "Commission welcomes adoption of €115 million ‘AGILE' programme for rapid defence innovation",
      "descricao": "European Commission Press release Brussels, 12 Oct 2026 The European Commission welcomes the adoption of the Regulation establishing Programme for agile and rapid defence innovation (AGILE) which will bring disruptive defence technology from the lab to the field at record speed. The new €115 million funding tool will provide dedicated support to small and medium sized enterprises (SMEs), including start-ups and scale ups to develop innovative defence solutions and support their uptake.",
      "tipo": "adoção/publicação",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2132",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2132",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2132",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-12",
      "timestamp_execucao": "2026-10-12T10:11:33-03:00",
      "id_execucao": "run_2026_10_12_1011"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines security company EUR 39 000 for violations concerning employees’ data",
      "descricao": "Background information Date of final decision: 6 August 2026 National case Controller: La Patria S.p.A. Legal Reference(s): Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 13 (Information to be provided where personal data are collected from the data subject) and Article 15 (Right to access by the data subject) Decision: Administrative fine Key words: Data subjects rights, Fines Summary of the Decision Origin of the case The Italian Data Protection Authority (DPA) initiated an investigation following a complaint lod",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_security_company_eur_39_000_for_violations_concerning_employees_data_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-security-company-eur-39-000-for-violations-concerning-employees-data_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-security-company-eur-39-000-for-violations-concerning-employees-data_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines IQVIA EUR 7 000 000 for unlawful processing of patients’ health data",
      "descricao": "Background information Date of final decision: 23 September 2026 National case Controller: IQVIA Solutions Italy S.r.l Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 9 (Processing of special categories of personal data), Article 13 (Information to be provided where personal data are collected from the data subject), Article 25 (Data protection by design and by default), Article 28 (Processor) and Article 35 (Data protection impact assessment) Decision: Administrative fine Key words: Data protection impact assessment, Health and research, Anonymisati",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_iqvia_eur_7_000_000_for_unlawful_processing_of_patients_health_data_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-iqvia-eur-7-000-000-for-unlawful-processing-of-patients-health-data_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-iqvia-eur-7-000-000-for-unlawful-processing-of-patients-health-data_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines Emirates EUR 180 000 for infringements concerning passengers’ health data",
      "descricao": "Background information Date of final decision: 14 May 2026 National case Controller: Emirates Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine, Compliance order Website topics: Health and research, Basic principles Summary of the Decision Origin of the case The Italian Data Protection Authority (DPA) initiated an in",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_emirates_eur_180_000_for_infringements_concerning_passengers_health_data",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-emirates-eur-180-000-for-infringements-concerning-passengers-health-data_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-emirates-eur-180-000-for-infringements-concerning-passengers-health-data_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines Emirates EUR 180 000 for infringements concerning passengers’ health data",
      "descricao": "Background information Date of final decision: 14 May 2026 National case Controller: Emirates Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine, Compliance order Key words: Health and research, Basic principles Summary of the Decision Origin of the case The Italian Data Protection Authority (DPA) initiated an investi",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_emirates_eur_180_000_for_infringements_concerning_passengers_health_data",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-emirates-eur-180-000-for-infringements-concerning-passengers-health-data_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-emirates-eur-180-000-for-infringements-concerning-passengers-health-data_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:8ec95a5b45fc48ba",
      "valor_novo": "sha1:9b20c99eadb404c6",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-16",
      "timestamp_execucao": "2026-10-16T06:52:23-03:00",
      "id_execucao": "run_2026_10_16_0652"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines BBVA EUR 5 508 000 for failing to respect a customer’s objection to direct marketing",
      "descricao": "Background information Date of final decision: 3 July 2026 National case Controller: Banco Bilbao Vizcaya Argentaria, S.A., Italian branch (BBVA) Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 21 (Right to object), Article 24 (Responsibility of the controller) Decision: Administrative fine, Compliance order Website topics: Basic principles, Data subjects rights, Marketing Summary of the Decision Origin of the case The Italian Data P",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_bbva_eur_5_508_000_for_failing_to_respect_a_customers_objection_to_direc",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-bbva-eur-5-508-000-for-failing-to-respect-a-customers-objection-to-direct_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-bbva-eur-5-508-000-for-failing-to-respect-a-customers-objection-to-direct_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-09",
      "titulo": "Italian DPA fines BBVA EUR 5 508 000 for failing to respect a customer’s objection to direct marketing",
      "descricao": "Background information Date of final decision: 3 July 2026 National case Controller: Banco Bilbao Vizcaya Argentaria, S.A., Italian branch (BBVA) Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 21 (Right to object), Article 24 (Responsibility of the controller) Decision: Administrative fine, Compliance order Key words: Website topics: Basic principles, Data subjects rights, Marketing Summary of the Decision Origin of the case The Ita",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_italian_dpa_fines_bbva_eur_5_508_000_for_failing_to_respect_a_customers_objection_to_direc",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/italian-dpa-fines-bbva-eur-5-508-000-for-failing-to-respect-a-customers-objection-to-direct_en",
      "url_oficial": "https://www.edpb.europa.eu/news/italian-dpa-fines-bbva-eur-5-508-000-for-failing-to-respect-a-customers-objection-to-direct_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:eb78ce14cb391900",
      "valor_novo": "sha1:c766541a62d43123",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-16",
      "timestamp_execucao": "2026-10-16T06:52:23-03:00",
      "id_execucao": "run_2026_10_16_0652"
    },
    {
      "data": "2026-10-08",
      "titulo": "Swedish DPA fines Miljödata i Karlskrona approximately EUR 160 000 for insufficient technical and organisational measures to ensure information security",
      "descricao": "Background information Date of final decision: 22/09/2026 National case Legal Reference(s): Article 32 (Security of processing) Decision: Administrative fine Website topics: Cybersecurity, personal data breaches Summary of the Decision Origin of the case In August 2025, the IT service provider Miljödata was targeted in a cyberattack, during which a malicious actor gained access to a large volume of personal data and subsequently published data on the darknet. According to the company, the incident affected 2.2 million individuals. Among Miljödata’s customers affected by the attack are a majori",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_swedish_dpa_fines_miljodata_i_karlskrona_approximately_eur_160_000_for_insufficient_techni",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/swedish-dpa-fines-miljodata-i-karlskrona-approximately-eur-160-000-for-insufficient-technical_en",
      "url_oficial": "https://www.edpb.europa.eu/news/swedish-dpa-fines-miljodata-i-karlskrona-approximately-eur-160-000-for-insufficient-technical_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T12:50:26-03:00",
      "id_execucao": "run_2026_10_08_1250"
    },
    {
      "data": "2026-10-08",
      "titulo": "Swedish DPA fines Miljödata i Karlskrona approximately EUR 160 000 for insufficient technical and organisational measures to ensure information security",
      "descricao": "Background information Date of final decision: 22/09/2026 National case Legal Reference(s): Article 32 (Security of processing) Decision: Administrative fine Key words: Cybersecurity, personal data breaches Summary of the Decision Origin of the case In August 2025, the IT service provider Miljödata was targeted in a cyberattack, during which a malicious actor gained access to a large volume of personal data and subsequently published data on the darknet. According to the company, the incident affected 2.2 million individuals. Among Miljödata’s customers affected by the attack are a majority of",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_swedish_dpa_fines_miljodata_i_karlskrona_approximately_eur_160_000_for_insufficient_techni",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/swedish-dpa-fines-miljodata-i-karlskrona-approximately-eur-160-000-for-insufficient-technical_en",
      "url_oficial": "https://www.edpb.europa.eu/news/swedish-dpa-fines-miljodata-i-karlskrona-approximately-eur-160-000-for-insufficient-technical_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:6b069527163002e7",
      "valor_novo": "sha1:5d4baafb58e9db70",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-16",
      "timestamp_execucao": "2026-10-16T06:52:23-03:00",
      "id_execucao": "run_2026_10_16_0652"
    },
    {
      "data": "2026-10-08",
      "titulo": "Speech by Commissioner Albuquerque (by video message) for the EIF Financial Institutions Shareholder Group Annual Meeting",
      "descricao": "European Commission Speech Online, 09 Oct 2026 Good morning, ladies and gentlemen. Let me start by thanking our hosts Marjut, José, and Manuel for inviting me to join you today. It's rare to have so many ins...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2052",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2052",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2052",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-08",
      "titulo": "Hellenic DPA decision on a data breach involving E.E.T.A.A. S.A. as processor for the Ministry of Social Cohesion and Family Affairs",
      "descricao": "Background information Date of final decision: 28/07/2026 National case Controller: Ministry of Social Cohesion and Family Affairs Legal Reference(s): Article 25 (Data protection by design and by default), Article 28 (Processor), Article 32 (Security of processing), Article 33 (Notification of a personal data breach to the supervisory authority) and Article 34 (Communication of a personal data breach to the data subject) Decision: Administrative fine, Compliance order, Summary of the Decision Origin of the case The Hellenic Data Protection Authority (DPA) investigated a large-scale personal da",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_hellenic_dpa_decision_on_a_data_breach_involving_eetaa_sa_as_processor_for_the_ministry_of",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/hellenic-dpa-decision-on-a-data-breach-involving-eetaa-sa-as-processor-for-the-ministry-of_en",
      "url_oficial": "https://www.edpb.europa.eu/news/hellenic-dpa-decision-on-a-data-breach-involving-eetaa-sa-as-processor-for-the-ministry-of_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T12:50:26-03:00",
      "id_execucao": "run_2026_10_08_1250"
    },
    {
      "data": "2026-10-08",
      "titulo": "Hellenic DPA decision on a data breach involving E.E.T.A.A. S.A. as processor for the Ministry of Social Cohesion and Family Affairs",
      "descricao": "Background information Date of final decision: 28/07/2026 National case Controller: Ministry of Social Cohesion and Family Affairs Legal Reference(s): Article 25 (Data protection by design and by default), Article 28 (Processor), Article 32 (Security of processing), Article 33 (Notification of a personal data breach to the supervisory authority) and Article 34 (Communication of a personal data breach to the data subject) Decision: Administrative fine, Compliance order Key words: Fines, Data subject rights Summary of the Decision Origin of the case The Hellenic Data Protection Authority (DPA) i",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_hellenic_dpa_decision_on_a_data_breach_involving_eetaa_sa_as_processor_for_the_ministry_of",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/hellenic-dpa-decision-on-a-data-breach-involving-eetaa-sa-as-processor-for-the-ministry-of_en",
      "url_oficial": "https://www.edpb.europa.eu/news/hellenic-dpa-decision-on-a-data-breach-involving-eetaa-sa-as-processor-for-the-ministry-of_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:eb693757bc82fe55",
      "valor_novo": "sha1:b63a445c9d4931b9",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-16",
      "timestamp_execucao": "2026-10-16T06:52:23-03:00",
      "id_execucao": "run_2026_10_16_0652"
    },
    {
      "data": "2026-10-08",
      "titulo": "Dutch DPA fines Uber EUR 824 990 000 for unlawful automated decision-making and insufficient information on profiling",
      "descricao": "Background information Cross-border case Legal Reference(s): Article 22 (Automated individual decision making, including profiling) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine Key words: Automated decision making, profiling and online tracking, fines Summary of the Decision The Autoriteit Persoonsgegevens (AP), the Dutch data protection authority, imposes a fine of EUR 824 990 000 on Uber. The reason for this is that the AP has ruled that Uber made fully automated decisions about drivers. In case of suspicion",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_dutch_dpa_fines_uber_eur_824_990_000_for_unlawful_automated_decision_making_and_insufficie",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/dutch-dpa-fines-uber-eur-824-990-000-for-unlawful-automated-decision-making-and-insufficient_en",
      "url_oficial": "https://www.edpb.europa.eu/news/dutch-dpa-fines-uber-eur-824-990-000-for-unlawful-automated-decision-making-and-insufficient_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T12:50:26-03:00",
      "id_execucao": "run_2026_10_08_1250"
    },
    {
      "data": "2026-10-08",
      "titulo": "Dutch DPA fines Uber EUR 824 990 000 for unlawful automated decision-making and insufficient information on profiling",
      "descricao": "Background information Cross-border case Controller: Uber B.V Legal Reference(s): Article 22 (Automated individual decision making, including profiling) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine Key words: Automated decision making, profiling and online tracking, fines Summary of the Decision The Autoriteit Persoonsgegevens (AP), the Dutch data protection authority, imposes a fine of EUR 824 990 000 on Uber. The reason for this is that the AP has ruled that Uber made fully automated decisions about drivers.",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_dutch_dpa_fines_uber_eur_824_990_000_for_unlawful_automated_decision_making_and_insufficie",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/dutch-dpa-fines-uber-eur-824-990-000-for-unlawful-automated-decision-making-and-insufficient_en",
      "url_oficial": "https://www.edpb.europa.eu/news/dutch-dpa-fines-uber-eur-824-990-000-for-unlawful-automated-decision-making-and-insufficient_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:eff572de6dbc2ca1",
      "valor_novo": "sha1:19a4f1dc94b8482a",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-09",
      "timestamp_execucao": "2026-10-09T08:55:04-03:00",
      "id_execucao": "run_2026_10_09_0855"
    },
    {
      "data": "2026-10-05",
      "titulo": "Commission registers European Citizens' Initiative for sovereign European AI domains",
      "descricao": "European Commission Press release Brussels, 06 Oct 2026 Today, the European Commission registered the European Citizens' Initiative (ECI) entitled ‘Creation of a European Digital Space (.IA) for Sovereign AI Governance'.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2064",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2064",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2064",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T12:25:33-03:00",
      "id_execucao": "run_2026_10_06_1225"
    },
    {
      "data": "2026-10-01",
      "titulo": "Speech by Commissioner Lahbib at the North Atlantic Council",
      "descricao": "European Commission Speech Brussels, 01 Oct 2026 Let's take a quick look at today's reality. A drone entering our airspace. Cyberattacks on our hospitals. Disinformation targeting our elections. Sabotage plots...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_2035",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2035",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_2035",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T08:38:24-03:00",
      "id_execucao": "run_2026_10_01_0838"
    },
    {
      "data": "2026-10-01",
      "titulo": "Europe must scale up research and innovation to remain competitive, new Commission report says",
      "descricao": "European Commission Press release Brussels, 01 Oct 2026 The European Commission published today the 2026 edition of the Science, Research and Innovation Performance of the EU report, providing a comprehensive assessment of Europe's research and innovation landscape.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2041",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2041",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2041",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T08:38:24-03:00",
      "id_execucao": "run_2026_10_01_0838"
    },
    {
      "data": "2026-10-01",
      "titulo": "Commission delivers more than €210 million to support over 700 researchers to build their careers in Europe",
      "descricao": "European Commission Press release Brussels, 01 Oct 2026 More than 700 additional researchers will be able to build their careers in Europe thanks to an additional boost of over €210 million to the Marie Skłodowska-Curie Actions (MSCA) – one of Europe's flagship programmes for research careers. The funding is part of Choose Europe, the European Commission's initiative to position the EU as the main global magnet for scientific talent, research, and technological innovation.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2039",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2039",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2039",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T08:38:24-03:00",
      "id_execucao": "run_2026_10_01_0838"
    },
    {
      "data": "2026-09-30",
      "titulo": "Three in four EU employees faced cyber threats at work, new Eurobarometer finds",
      "descricao": "European Commission Press release Brussels, 30 Sep 2026 Three in four employees in the European Union encountered suspicious emails, messages or links at work, according to a new Eurobarometer survey published by the European Commission today. The results were released as European Cybersecurity Month begins across all 27 Member States.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2020",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2020",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2020",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T08:11:09-03:00",
      "id_execucao": "run_2026_09_30_0811"
    },
    {
      "data": "2026-09-29",
      "titulo": "EU support to research and innovation increases with additional €500 million for research programme Horizon Europe*",
      "descricao": "European Commission Press release Brussels, 29 Sep 2026 Today, the European Commission allocated an additional €500 million to Horizon Europe, the EU's flagship research and innovation programme, for 2026 and 2027.",
      "tipo": "alteração de texto",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2004",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2004",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2004",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:9f1aa8f40c9c630c",
      "valor_novo": "sha1:652e47cf125da713",
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T18:00:51-03:00",
      "id_execucao": "run_2026_09_29_1800"
    },
    {
      "data": "2026-09-29",
      "titulo": "EU support to research and innovation increases with additional €500 million for research programme Horizon Europe",
      "descricao": "European Commission Press release Brussels, 29 Sep 2026 Today, the European Commission allocated an additional €500 million to Horizon Europe, the EU's flagship research and innovation programme, for 2026 and 2027.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_2004",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2004",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_2004",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T08:23:06-03:00",
      "id_execucao": "run_2026_09_29_0823"
    },
    {
      "data": "2026-09-29",
      "titulo": "Discours de la Commissaire Lahbib au Parlement fédéral Belge",
      "descricao": "European Commission Discours Brussels, 29 Sep 2026 C'est un plaisir d'être de retour au Parlement belge, l'enceinte où les échanges sont toujours enrichissants, j'ai pu y aiguiser mon combat politique… J'ai un p...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_fr_speech_26_2001",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/fr/speech_26_2001",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/fr/speech_26_2001",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T08:23:06-03:00",
      "id_execucao": "run_2026_09_29_0823"
    },
    {
      "data": "2026-09-28",
      "titulo": "Remarks by Commissioner McGrath at the General Assembly of the United Nations' Side-Event on Shaping Democratic Agency over the course of AI Development",
      "descricao": "European Commission Speech New York, 28 Sep 2026 Excellencies, distinguished guests, ladies and gentlemen, It's a pleasure to join you at this important United Nations discussion on how countries can shape the...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_1997",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1997",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1997",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-28",
      "timestamp_execucao": "2026-09-28T13:59:41-03:00",
      "id_execucao": "run_2026_09_28_1359"
    },
    {
      "data": "2026-09-24",
      "titulo": "Opening remarks by Commissioner Hansen at the “EU AgRI 2040” Agricultural Research and Innovation Conference",
      "descricao": "European Commission Speech Brussels, 24 Sep 2026 Commissioner Zaharieva, dear Ekaterina, Distinguished speakers and panellists, Dear participants, It is a real pleasure to open with you all, the fourth EU Agri...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_1968",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1968",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1968",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T07:03:05-03:00",
      "id_execucao": "run_2026_09_24_0703"
    },
    {
      "data": "2026-09-23",
      "titulo": "The Irish Data Protection Commission fines Google EUR 403 000 000 following Inquiry into Google’s processing of location data",
      "descricao": "Background information Date of final decision: 21 September 2026 National case Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 6 (Lawfulness of processing), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine, compliance order Key words: GDPR enforcement, technology, accountability, data subjects rights Summary of the Decision Origin of the case The Irish Da",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_the_irish_data_protection_commission_fines_google_403_000_000_eur_following_inquiry_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/the-irish-data-protection-commission-fines-google-403-000-000-eur-following-inquiry_en",
      "url_oficial": "https://www.edpb.europa.eu/news/the-irish-data-protection-commission-fines-google-403-000-000-eur-following-inquiry_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:8a4494639da8da63",
      "valor_novo": "sha1:5773d4fe57e6c94e",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T14:23:01-03:00",
      "id_execucao": "run_2026_10_05_1423"
    },
    {
      "data": "2026-09-23",
      "titulo": "The Irish Data Protection Commission fines Google 403 000 000 EUR following Inquiry into Google’s processing of location data",
      "descricao": "Background information Date of final decision: 21 September 2026 National case Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 6 (Lawfulness of processing), Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject) and Article 13 (Information to be provided where personal data are collected from the data subject) Decision: Administrative fine, compliance order Key words: GDPR enforcement, technology, accountability, data subjects rights Summary of the Decision Origin of the case The Irish Da",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_the_irish_data_protection_commission_fines_google_403_000_000_eur_following_inquiry_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/the-irish-data-protection-commission-fines-google-403-000-000-eur-following-inquiry_en",
      "url_oficial": "https://www.edpb.europa.eu/news/the-irish-data-protection-commission-fines-google-403-000-000-eur-following-inquiry_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T07:00:31-03:00",
      "id_execucao": "run_2026_09_23_0700"
    },
    {
      "data": "2026-09-22",
      "titulo": "Speech by President von der Leyen at the high-level dialogue on ‘Protecting Children's Rights facing Artificial Intelligence'",
      "descricao": "European Commission Speech New York, 23 Sep 2026 Thank you very much for convening this meeting, it is absolutely high time. I would like to tell you a little bit about what we are doing here in the European U...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_1942",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1942",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1942",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T07:00:31-03:00",
      "id_execucao": "run_2026_09_23_0700"
    },
    {
      "data": "2026-09-22",
      "titulo": "Commissioner Roswall's speech at the 9th meeting of the Zero Pollution Stakeholder Platform",
      "descricao": "European Commission Speech Brussels, 22 Sep 2026 Good morning, ladies and gentlemen, partners, friends. Welcome to the launch of the renewed Zero Pollution Stakeholder Platform. Let me especially welcome ...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_1935",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1935",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1935",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T06:58:50-03:00",
      "id_execucao": "run_2026_09_22_0658"
    },
    {
      "data": "2026-09-21",
      "titulo": "EDPB harmonises fining methodology and adopts final DSA-GDPR guidelines",
      "descricao": "Brussels, 21 September – During its latest plenary, the EDPB has adopted guidelines on the application of the power to impose administrative fines in relation to other corrective powers under the GDPR and the final version of its guidelines on the interplay between the Digital Services Act (DSA) and the GDPR. The new EDPB guidelines are a major step in further aligning how Data Protection Authorities decide whether an administrative fine should be imposed, either on its own or alongside other corrective measures. The GDPR significantly increased the corrective powers of DPAs, with fines servin",
      "tipo": "nova guideline",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_harmonises_fining_methodology_and_adopts_final_dsa_gdpr_guidelines_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-09-21",
      "titulo": "EDPB harmonises fining methodology and adopts final DSA-GDPR guidelines",
      "descricao": "Brussels, 21 September – During its latest plenary, the EDPB has adopted guidelines on the application of the power to impose administrative fines in relation to other corrective powers under the GDPR and the final version of its guidelines on the interplay between the Digital Services Act (DSA) and the GDPR . The new EDPB guidelines are a major step in further aligning how Data Protection Authorities decide whether an administrative fine should be imposed, either on its own or alongside other corrective measures. The GDPR significantly increased the corrective powers of DPAs, with fines servi",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_harmonises_fining_methodology_and_adopts_final_dsa_gdpr_guidelines_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:5af34d54eabc6c24",
      "valor_novo": "sha1:e5d11e48d6df3b8b",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T06:58:50-03:00",
      "id_execucao": "run_2026_09_22_0658"
    },
    {
      "data": "2026-09-21",
      "titulo": "EDPB harmonises fining methodology and adopts final DSA-GDPR guidelines",
      "descricao": "Brussels, 21 September – During its latest plenary, the EDPB has adopted guidelines on the application of the power to impose administrative fines in relation to other corrective powers under the GDPR and the final version of its guidelines on interplay between the Digital Service Act (DSA) and the GDPR . The new EDPB guidelines are a major step in further aligning how Data Protection Authorities decide whether an administrative fine should be imposed, either on its own or alongside other corrective measures. The GDPR significantly increased the corrective powers of DPAs, with fines serving as",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_harmonises_fining_methodology_and_adopts_final_dsa_gdpr_guidelines_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-harmonises-fining-methodology-and-adopts-final-dsa-gdpr-guidelines_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:e5d11e48d6df3b8b",
      "valor_novo": "sha1:d1e1dc9a969fb478",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T10:38:57-03:00",
      "id_execucao": "run_2026_09_22_1038"
    },
    {
      "data": "2026-09-21",
      "titulo": "Daily News 21 / 09 / 2026",
      "descricao": "European Commission Daily news Brussels, 21 Sep 2026 Commission enhances energy efficiency and sustainability of data centres in the EU The European Commission proposed today a common rating scheme for data centre...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_mex_26_1918",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_1918",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/mex_26_1918",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-09-21",
      "titulo": "Commissioner Roswall's speech at the Water Resilience Stakeholder Platform",
      "descricao": "European Commission Speech Brussels, 21 Sep 2026 Distinguished guests, dear colleagues. The Water Resilience Strategy is based on a simple but powerful principle – that we can never truly deliver water resi...",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_speech_26_1924",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1924",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/speech_26_1924",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "revisar",
      "revisao_pendente": true,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-09-21",
      "titulo": "2025/2058(INI): título oficial atualizado",
      "descricao": "Título passou de “Copyright and generative artificial intelligence — opportunities and challenges” para “2025/2058(INI)”.",
      "tipo": "atualização cadastral",
      "proposicao": "ue_2025_2058_ini",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "campo_alterado": "titulo",
      "valor_anterior": "Copyright and generative artificial intelligence — opportunities and challenges",
      "valor_novo": "2025/2058(INI)",
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-09-21",
      "titulo": "2021/0106(COD): título oficial atualizado",
      "descricao": "Título passou de “Regulation laying down harmonised rules on artificial intelligence (Artificial Intelligence Act)” para “2021/0106(COD)”.",
      "tipo": "atualização cadastral",
      "proposicao": "ue_2021_0106_cod",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2021-0106?format=application/ld%2Bjson",
      "campo_alterado": "titulo",
      "valor_anterior": "Regulation laying down harmonised rules on artificial intelligence (Artificial Intelligence Act)",
      "valor_novo": "2021/0106(COD)",
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2021-0106?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-09-20",
      "titulo": "Commission enhances energy efficiency and sustainability of data centres in the EU",
      "descricao": "European Commission Press release Brussels, 21 Sep 2026 The European Commission proposed today a common rating scheme for data centres aimed at increasing transparency on their energy use and supporting their sustainable integration into Europe's energy system.",
      "tipo": "novo comunicado oficial",
      "orgao": "eu_commission",
      "item": "eu_commission_ec_europa_eu_commission_presscorner_detail_en_ip_26_1667",
      "fonte": "Comissão Europeia — Press Corner e Have Your Say — comunicados oficiais (Press Corner, RSS)",
      "fonte_url": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_1667",
      "url_oficial": "https://ec.europa.eu/commission/presscorner/detail/en/ip_26_1667",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-09-11",
      "titulo": "Failure to respect the rights of individuals: The CNIL fined EXTIA EUR 300 000",
      "descricao": "Background information Date of final decision: 21 July 2026 National case Legal Reference(s): Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 17 (Right to erasure ‘right to be forgotten’) Decision: Administrative fine Key words: Data subject rights Summary of the Decision Origin of the case EXTIA, which specialises in IT and engineering, recruits consultants for various technical projects from its client companies. In 2024, the French Data Protection Authority (CNIL) received several complaints from former employees",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_failure_to_respect_the_rights_of_individuals_the_cnil_fined_extia_eur_300_000_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/failure-to-respect-the-rights-of-individuals-the-cnil-fined-extia-eur-300-000_en",
      "url_oficial": "https://www.edpb.europa.eu/news/failure-to-respect-the-rights-of-individuals-the-cnil-fined-extia-eur-300-000_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T14:23:01-03:00",
      "id_execucao": "run_2026_10_05_1423"
    },
    {
      "data": "2026-09-11",
      "titulo": "Failure to respect the rights of individuals: The CNIL fined EXTIA 300 000 EUR",
      "descricao": "Background information Date of final decision: 21 July 2026 National case Legal Reference(s): Article 12 (Transparent information, communication and modalities for the exercise of the rights of the data subject), Article 17 (Right to erasure ‘right to be forgotten’) Decision: Administrative fine Key words: Data subject rights Summary of the Decision Origin of the case EXTIA, which specialises in IT and engineering, recruits consultants for various technical projects from its client companies. In 2024, the French Data Protection Authority (CNIL) received several complaints from former employees",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_failure_to_respect_the_rights_of_individuals_the_cnil_fined_extia_300_000_eur_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/failure-to-respect-the-rights-of-individuals-the-cnil-fined-extia-300-000-eur_en",
      "url_oficial": "https://www.edpb.europa.eu/news/failure-to-respect-the-rights-of-individuals-the-cnil-fined-extia-300-000-eur_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-09-09",
      "titulo": "Health data breach: the CNIL fined Hôpital Privé de la Loire EUR 500 000",
      "descricao": "Background information Date of final decision: 3 September 2026 National case Controller: Hôpital Privé de la Loire Legal Reference: Article 32 (Security of processing), Article 34 (Communication of a personal data breach to the data subject), Decision: Administrative fine Keywords: Cybersecurity, Personal data breaches, Health and research Summary of the Decision Origin of the case In summer 2025, an attacker managed to connect to the Computerised Patient Summary (DPI) of the Hôpital Privé de la Loire (Loire’s private hospital), which centralises all the data of the individuals under care. It",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_health_data_breach_the_cnil_fined_hopital_prive_de_la_loire_eur_500_000_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/health-data-breach-the-cnil-fined-hopital-prive-de-la-loire-eur-500-000_en",
      "url_oficial": "https://www.edpb.europa.eu/news/health-data-breach-the-cnil-fined-hopital-prive-de-la-loire-eur-500-000_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T14:23:01-03:00",
      "id_execucao": "run_2026_10_05_1423"
    },
    {
      "data": "2026-09-09",
      "titulo": "Health data breach: the CNIL fined Hôpital Privé de la Loire 500 000 EUR",
      "descricao": "Background information Date of final decision: 3 September 2026 National case Controller: Hôpital Privé de la Loire Legal Reference: Article 32 (Security of processing), Article 34 (Communication of a personal data breach to the data subject), Decision: Administrative fine Keywords: Cybersecurity, Personal data breaches, Health and research Summary of the Decision Origin of the case In summer 2025, an attacker managed to connect to the Computerised Patient Summary (DPI) of the Hôpital Privé de la Loire (Loire’s private hospital), which centralises all the data of the individuals under care. It",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_health_data_breach_the_cnil_fined_hopital_prive_de_la_loire_500_000_eur_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/health-data-breach-the-cnil-fined-hopital-prive-de-la-loire-500-000-eur_en",
      "url_oficial": "https://www.edpb.europa.eu/news/health-data-breach-the-cnil-fined-hopital-prive-de-la-loire-500-000-eur_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-09-03",
      "titulo": "Data Protection Commission announces Final Decision following Inquiry into the Health Service Executive (HSE)",
      "descricao": "Background information Date of final decision: 28 August 2026 National case Legal Reference(s): Article 5 (Principles relating to processing of personal data), Article 32 (Security of processing), Article 33 (Notification of a personal data breach to the supervisory authority), Article 34 (Communication of a personal data breach to the data subject) Decision: Administrative fine, Compliance order, Communication order personal data breach Key words: GDPR enforcement, Data subjects rights, Fines, Health and research Summary of the Decision Origin of the case This Inquiry commenced on 24 May 2024",
      "tipo": "enforcement",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_data_protection_commission_announces_final_decision_following_inquiry_into_the_health_serv",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/data-protection-commission-announces-final-decision-following-inquiry-into-the-health-service_en",
      "url_oficial": "https://www.edpb.europa.eu/news/data-protection-commission-announces-final-decision-following-inquiry-into-the-health-service_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "nova guideline",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T17:33:01-03:00",
      "id_execucao": "run_2026_09_21_1733"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T06:58:50-03:00",
      "id_execucao": "run_2026_09_22_0658"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T10:38:57-03:00",
      "id_execucao": "run_2026_09_22_1038"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T16:52:20-03:00",
      "id_execucao": "run_2026_09_22_1652"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T07:00:31-03:00",
      "id_execucao": "run_2026_09_23_0700"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T10:50:09-03:00",
      "id_execucao": "run_2026_09_23_1050"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T16:47:49-03:00",
      "id_execucao": "run_2026_09_23_1647"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T07:03:05-03:00",
      "id_execucao": "run_2026_09_24_0703"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T10:45:53-03:00",
      "id_execucao": "run_2026_09_24_1045"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T17:06:13-03:00",
      "id_execucao": "run_2026_09_24_1706"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T07:13:01-03:00",
      "id_execucao": "run_2026_09_25_0713"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T11:08:47-03:00",
      "id_execucao": "run_2026_09_25_1108"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T17:07:06-03:00",
      "id_execucao": "run_2026_09_25_1707"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T06:53:01-03:00",
      "id_execucao": "run_2026_09_26_0653"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T10:21:56-03:00",
      "id_execucao": "run_2026_09_26_1021"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T16:21:29-03:00",
      "id_execucao": "run_2026_09_26_1621"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T07:34:37-03:00",
      "id_execucao": "run_2026_09_27_0734"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T11:16:13-03:00",
      "id_execucao": "run_2026_09_27_1116"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: overview of topics available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:ac89070ea719aaad",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T16:51:48-03:00",
      "id_execucao": "run_2026_09_27_1651"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-28",
      "timestamp_execucao": "2026-09-28T08:42:52-03:00",
      "id_execucao": "run_2026_09_28_0842"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-28",
      "timestamp_execucao": "2026-09-28T13:59:41-03:00",
      "id_execucao": "run_2026_09_28_1359"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T08:23:06-03:00",
      "id_execucao": "run_2026_09_29_0823"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T12:03:57-03:00",
      "id_execucao": "run_2026_09_29_1203"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T18:00:51-03:00",
      "id_execucao": "run_2026_09_29_1800"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T08:11:09-03:00",
      "id_execucao": "run_2026_09_30_0811"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T12:15:33-03:00",
      "id_execucao": "run_2026_09_30_1215"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T17:58:38-03:00",
      "id_execucao": "run_2026_09_30_1758"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T08:38:24-03:00",
      "id_execucao": "run_2026_10_01_0838"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T12:38:35-03:00",
      "id_execucao": "run_2026_10_01_1238"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T18:18:02-03:00",
      "id_execucao": "run_2026_10_01_1818"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T08:07:19-03:00",
      "id_execucao": "run_2026_10_02_0807"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T11:57:34-03:00",
      "id_execucao": "run_2026_10_02_1157"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T17:56:56-03:00",
      "id_execucao": "run_2026_10_02_1756"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T07:25:42-03:00",
      "id_execucao": "run_2026_10_03_0725"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T10:53:05-03:00",
      "id_execucao": "run_2026_10_03_1053"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T16:23:05-03:00",
      "id_execucao": "run_2026_10_03_1623"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T08:07:25-03:00",
      "id_execucao": "run_2026_10_04_0807"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T11:20:46-03:00",
      "id_execucao": "run_2026_10_04_1120"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T16:47:19-03:00",
      "id_execucao": "run_2026_10_04_1647"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T09:18:05-03:00",
      "id_execucao": "run_2026_10_05_0918"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T14:23:01-03:00",
      "id_execucao": "run_2026_10_05_1423"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T09:02:44-03:00",
      "id_execucao": "run_2026_10_06_0902"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T12:25:33-03:00",
      "id_execucao": "run_2026_10_06_1225"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T18:12:28-03:00",
      "id_execucao": "run_2026_10_06_1812"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T08:48:22-03:00",
      "id_execucao": "run_2026_10_07_0848"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T12:45:15-03:00",
      "id_execucao": "run_2026_10_07_1245"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T18:32:26-03:00",
      "id_execucao": "run_2026_10_07_1832"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T09:03:19-03:00",
      "id_execucao": "run_2026_10_08_0903"
    },
    {
      "data": "2026-07-30",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: agenda now available",
      "descricao": "Brussels, 30 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Who can participate? The EDPB and the European Commission welcome participat",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law-0_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:b376184e0ea66969",
      "valor_novo": "sha1:27d90c0b6c82a82c",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T12:50:26-03:00",
      "id_execucao": "run_2026_10_08_1250"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T17:33:01-03:00",
      "id_execucao": "run_2026_09_21_1733"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T06:58:50-03:00",
      "id_execucao": "run_2026_09_22_0658"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T10:38:57-03:00",
      "id_execucao": "run_2026_09_22_1038"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-22",
      "timestamp_execucao": "2026-09-22T16:52:20-03:00",
      "id_execucao": "run_2026_09_22_1652"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T07:00:31-03:00",
      "id_execucao": "run_2026_09_23_0700"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T10:50:09-03:00",
      "id_execucao": "run_2026_09_23_1050"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-23",
      "timestamp_execucao": "2026-09-23T16:47:49-03:00",
      "id_execucao": "run_2026_09_23_1647"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T07:03:05-03:00",
      "id_execucao": "run_2026_09_24_0703"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T10:45:53-03:00",
      "id_execucao": "run_2026_09_24_1045"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-24",
      "timestamp_execucao": "2026-09-24T17:06:13-03:00",
      "id_execucao": "run_2026_09_24_1706"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T07:13:01-03:00",
      "id_execucao": "run_2026_09_25_0713"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T11:08:47-03:00",
      "id_execucao": "run_2026_09_25_1108"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-25",
      "timestamp_execucao": "2026-09-25T17:07:06-03:00",
      "id_execucao": "run_2026_09_25_1707"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T06:53:01-03:00",
      "id_execucao": "run_2026_09_26_0653"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T10:21:56-03:00",
      "id_execucao": "run_2026_09_26_1021"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-26",
      "timestamp_execucao": "2026-09-26T16:21:29-03:00",
      "id_execucao": "run_2026_09_26_1621"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T07:34:37-03:00",
      "id_execucao": "run_2026_09_27_0734"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T11:16:13-03:00",
      "id_execucao": "run_2026_09_27_1116"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:ac89070ea719aaad",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-27",
      "timestamp_execucao": "2026-09-27T16:51:48-03:00",
      "id_execucao": "run_2026_09_27_1651"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-28",
      "timestamp_execucao": "2026-09-28T08:42:52-03:00",
      "id_execucao": "run_2026_09_28_0842"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-28",
      "timestamp_execucao": "2026-09-28T13:59:41-03:00",
      "id_execucao": "run_2026_09_28_1359"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T08:23:06-03:00",
      "id_execucao": "run_2026_09_29_0823"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T12:03:57-03:00",
      "id_execucao": "run_2026_09_29_1203"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-29",
      "timestamp_execucao": "2026-09-29T18:00:51-03:00",
      "id_execucao": "run_2026_09_29_1800"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T08:11:09-03:00",
      "id_execucao": "run_2026_09_30_0811"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T12:15:33-03:00",
      "id_execucao": "run_2026_09_30_1215"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-30",
      "timestamp_execucao": "2026-09-30T17:58:38-03:00",
      "id_execucao": "run_2026_09_30_1758"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T08:38:24-03:00",
      "id_execucao": "run_2026_10_01_0838"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T12:38:35-03:00",
      "id_execucao": "run_2026_10_01_1238"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-01",
      "timestamp_execucao": "2026-10-01T18:18:02-03:00",
      "id_execucao": "run_2026_10_01_1818"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T08:07:19-03:00",
      "id_execucao": "run_2026_10_02_0807"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T11:57:34-03:00",
      "id_execucao": "run_2026_10_02_1157"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-02",
      "timestamp_execucao": "2026-10-02T17:56:56-03:00",
      "id_execucao": "run_2026_10_02_1756"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T07:25:42-03:00",
      "id_execucao": "run_2026_10_03_0725"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T10:53:05-03:00",
      "id_execucao": "run_2026_10_03_1053"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-03",
      "timestamp_execucao": "2026-10-03T16:23:05-03:00",
      "id_execucao": "run_2026_10_03_1623"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T08:07:25-03:00",
      "id_execucao": "run_2026_10_04_0807"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T11:20:46-03:00",
      "id_execucao": "run_2026_10_04_1120"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-04",
      "timestamp_execucao": "2026-10-04T16:47:19-03:00",
      "id_execucao": "run_2026_10_04_1647"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T09:18:05-03:00",
      "id_execucao": "run_2026_10_05_0918"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-05",
      "timestamp_execucao": "2026-10-05T14:23:01-03:00",
      "id_execucao": "run_2026_10_05_1423"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T09:02:44-03:00",
      "id_execucao": "run_2026_10_06_0902"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T12:25:33-03:00",
      "id_execucao": "run_2026_10_06_1225"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-06",
      "timestamp_execucao": "2026-10-06T18:12:28-03:00",
      "id_execucao": "run_2026_10_06_1812"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T08:48:22-03:00",
      "id_execucao": "run_2026_10_07_0848"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T12:45:15-03:00",
      "id_execucao": "run_2026_10_07_1245"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-07",
      "timestamp_execucao": "2026-10-07T18:32:26-03:00",
      "id_execucao": "run_2026_10_07_1832"
    },
    {
      "data": "2026-07-23",
      "titulo": "Stakeholder event on guidelines on the interplay between data protection and competition law: save the date",
      "descricao": "Brussels, 23 July – The EDPB and the European Commission organise a remote stakeholder event in the context of their joint work on upcoming guidelines on the interplay between competition and data protection . The event will take place on 15 October 2026 and is an opportunity for stakeholders to inform and support the ongoing work on this topic. The event reflects the EDPB’s commitment to stakeholder engagement and cross-regulatory cooperation, as outlined in the Helsinki statement and in the EDPB Strategy 2024-2027 . Join the event to have your say This is your chance to contribute directly t",
      "tipo": "alteração de texto",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_stakeholder_event_on_guidelines_on_the_interplay_between_data_protection_and_competition_l",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "url_oficial": "https://www.edpb.europa.eu/news/stakeholder-event-on-guidelines-on-the-interplay-between-data-protection-and-competition-law_en",
      "campo_alterado": "texto",
      "valor_anterior": "sha1:27d90c0b6c82a82c",
      "valor_novo": "sha1:b376184e0ea66969",
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-10-08",
      "timestamp_execucao": "2026-10-08T09:03:19-03:00",
      "id_execucao": "run_2026_10_08_0903"
    },
    {
      "data": "2026-07-17",
      "titulo": "EDPB calls for legal basis for cross-regulatory information sharing",
      "descricao": "Dublin, 17 July– At a high-level meeting in Dublin on 16 and 17 July 2026, the European Data Protection Board (EDPB) called for a clear legal basis for the sharing of information among regulators with different competences. The Board also discussed how to further expand efforts to support a consistent application of the General Data Protection Regulation (GDPR), including through more intense cooperation between Data Protection Authorities (DPAs). A clear legal basis for efficient cross-regulatory cooperation The Board underlines the growing need in the current regulatory environment for effec",
      "tipo": "nova orientação oficial",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_calls_for_legal_basis_for_cross_regulatory_information_sharing_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-calls-for-legal-basis-for-cross-regulatory-information-sharing_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-calls-for-legal-basis-for-cross-regulatory-information-sharing_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-14",
      "titulo": "EDPB requires Belgian DPA to handle the merits of NOYB cookie banner complaint",
      "descricao": "Brussels, 14 July–The EDPB has published its binding decision of 28 May 2026 under Art.65(1)(a) GDPR*. The decision concerns a dispute submitted by the Belgian Data Protection Authority (DPA) about a complaint against Vlaamse Radio-en Televisieomroeporganisatie (VRT) – a public broadcasting company based in Belgium. The complaint was lodged with the Austrian DPA by the Austrian-based NGO Noyb on behalf of an individual. It concerns the use of cookie banners on the website of VRT . The Belgian DPA, acting as Lead Supervisory Authority (LSA), submitted a draft decision proposing to dismiss the c",
      "tipo": "nova orientação oficial",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_requires_belgian_dpa_to_handle_the_merits_of_noyb_cookie_banner_complaint_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-requires-belgian-dpa-to-handle-the-merits-of-noyb-cookie-banner-complaint_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-requires-belgian-dpa-to-handle-the-merits-of-noyb-cookie-banner-complaint_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-08",
      "titulo": "EDPB sheds light on anonymisation and web scraping for generative AI and adopts final version of guidelines on blockchain",
      "descricao": "Brussels, 8 July– During its latest plenary, the EDPB has adopted guidelines on anonymisation and guidelines on web scraping in the context of generative AI. In addition, the Board has adopted the final version of its guidelines on the processing of personal data through blockchain technologies. Understanding anonymous data The new EDPB guidelines bring clarity to the notion of anonymous data , taking also into account the ruling of the Court of Justice of the EU in the case C-413/23 P EDPS v SRB of 4 September 2025 and other CJEU jurisprudence. The guidelines mark a significant milestone in c",
      "tipo": "nova guideline",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_sheds_light_on_anonymisation_and_web_scraping_for_generative_ai_and_adopts_final_vers",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-sheds-light-on-anonymisation-and-web-scraping-for-generative-ai-and-adopts-final-version_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-sheds-light-on-anonymisation-and-web-scraping-for-generative-ai-and-adopts-final-version_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-07-01",
      "titulo": "EDPB and AMLA to develop Joint Guidelines on partnerships for information sharing",
      "descricao": "Brussels/Frankfurt, 1 July – The EDPB and the Anti-Money Laundering Authority (AMLA) are working together to bring greater clarity to a question of growing importance for industry and authorities alike: how to share information to fight financial crime while protecting personal data. Why information sharing matters The fight against financial crime depends on cooperation, and information sharing can help detect and prevent money laundering and terrorist financing. Art. 75 of the AML Regulation makes this possible, allowing companies and professionals covered by anti-money laundering rules to s",
      "tipo": "nova guideline",
      "orgao": "edpb",
      "item": "edpb_edpb_europa_eu_news_edpb_and_amla_to_develop_joint_guidelines_on_partnerships_for_information_sharing_en",
      "fonte": "EDPB — European Data Protection Board — notícias e guidelines (RSS oficial)",
      "fonte_url": "https://www.edpb.europa.eu/news/edpb-and-amla-to-develop-joint-guidelines-on-partnerships-for-information-sharing_en",
      "url_oficial": "https://www.edpb.europa.eu/news/edpb-and-amla-to-develop-joint-guidelines-on-partnerships-for-information-sharing_en",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "relevancia": "forte",
      "revisao_pendente": false,
      "data_deteccao": "2026-09-21",
      "timestamp_execucao": "2026-09-21T07:45:40-03:00",
      "id_execucao": "run_2026_09_21_0745"
    },
    {
      "data": "2026-03-10",
      "titulo": "2058/2025 INI procedimento 2025/2058(INI): resultado de votação no plenário (registro incorporado)",
      "descricao": "Em 2026-03-10, ficha oficial do procedimento (2025/2058(INI)): resultado de votação no plenário — evento já constava na ficha oficial antes desta execução e foi incorporado ao dataset agora.",
      "tipo": "votação",
      "proposicao": "ue_2025_2058_ini",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "campo_alterado": "ultima_movimentacao",
      "valor_anterior": "2026-03-10 — resolução adotada pelo plenário",
      "valor_novo": "2026-03-10 — resultado de votação no plenário",
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2026-03-10",
      "titulo": "2025/2058(INI): situação atualizada",
      "descricao": "Situação passou de “Resolução adotada pelo Plenário — 2026-03-10” para “Votado no plenário (resultado registado) — 2026-03-10”.",
      "tipo": "votação",
      "proposicao": "ue_2025_2058_ini",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "campo_alterado": "situacao",
      "valor_anterior": "Resolução adotada pelo Plenário — 2026-03-10",
      "valor_novo": "Votado no plenário (resultado registado) — 2026-03-10",
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2025-2058?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T12:18:34-03:00",
      "id_execucao": "run_2026_09_21_1218"
    },
    {
      "data": "2025-03-13",
      "titulo": "Novo procedimento monitorado: 2025/2060(INI)",
      "descricao": "2025/2060(INI) (Registro automático a partir de fontes oficiais; aguardando curadoria.)",
      "tipo": "novo procedimento",
      "proposicao": "ue_2025_2060_ini",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2025-2060?format=application/ld%2Bjson",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2025-2060?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T17:33:01-03:00",
      "id_execucao": "run_2026_09_21_1733"
    },
    {
      "data": "2025-03-13",
      "titulo": "Novo procedimento monitorado: 2025/2056(INI)",
      "descricao": "2025/2056(INI) (Registro automático a partir de fontes oficiais; aguardando curadoria.)",
      "tipo": "novo procedimento",
      "proposicao": "ue_2025_2056_ini",
      "fonte_url": "https://data.europarl.europa.eu/api/v2/procedures/2025-2056?format=application/ld%2Bjson",
      "campo_alterado": null,
      "valor_anterior": null,
      "valor_novo": null,
      "data_deteccao": "2026-09-21",
      "fonte": "Parlamento Europeu — Open Data Portal v2",
      "url_oficial": "https://data.europarl.europa.eu/api/v2/procedures/2025-2056?format=application/ld%2Bjson",
      "timestamp_execucao": "2026-09-21T17:33:01-03:00",
      "id_execucao": "run_2026_09_21_1733"
    }
  ],
  "execucoes": [
    {
      "id": "run_2026_10_25_1614",
      "data_hora": "2026-10-25T16:14:12-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 32,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1467,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 7.4,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 19.0
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 20.98,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 19.3
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.3
          }
        }
      },
      "fim": "2026-10-25T16:14:44-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T16:14:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T16:14:43-03:00",
          "ultima_execucao_ok": "2026-10-25T16:14:44-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T16:14:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T16:14:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T16:14:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T16:14:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 13.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T16:14:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T16:14:12-03:00",
          "ultima_execucao_ok": "2026-10-25T16:14:12-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T16:14:12-03:00",
          "ultima_execucao_ok": "2026-10-25T16:14:12-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 29,
        "falhas": 13,
        "cache": 0,
        "tempo_total": 9.34,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.29
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.42
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.38
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.61
          },
          "eu_parliament": {
            "chamadas": 9,
            "falhas": 5,
            "tempo_total": 4.8
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.12
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_25_1020",
      "data_hora": "2026-10-25T10:20:31-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 4.8,
        "descoberta_procedimentos": 4.0,
        "fontes_multiorgao": 13.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 14.6,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 12.95
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.08
          }
        }
      },
      "fim": "2026-10-25T10:20:54-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T10:20:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T10:20:52-03:00",
          "ultima_execucao_ok": "2026-10-25T10:20:54-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T10:20:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T10:20:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T10:20:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T10:20:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T10:20:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T10:20:31-03:00",
          "ultima_execucao_ok": "2026-10-25T10:20:31-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T10:20:31-03:00",
          "ultima_execucao_ok": "2026-10-25T10:20:31-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 8.22,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.23
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.43
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.66
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.64
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.41
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.64
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.21
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_25_0649",
      "data_hora": "2026-10-25T06:49:46-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 31,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1468,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 12.4,
        "descoberta_procedimentos": 3.9,
        "fontes_multiorgao": 13.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 23.48,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.54
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 22.23
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.03
          }
        }
      },
      "fim": "2026-10-25T06:50:17-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T06:50:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T06:50:15-03:00",
          "ultima_execucao_ok": "2026-10-25T06:50:17-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T06:50:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T06:50:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T06:50:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.1,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-25T06:50:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-25T06:50:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T06:49:46-03:00",
          "ultima_execucao_ok": "2026-10-25T06:49:46-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-25T06:49:46-03:00",
          "ultima_execucao_ok": "2026-10-25T06:49:46-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 8.51,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.41
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.32
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.12
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.54
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.36
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.97
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_24_1558",
      "data_hora": "2026-10-24T15:58:20-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 50,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1449,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 1.6,
        "descoberta_procedimentos": 4.1,
        "fontes_multiorgao": 42.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.12,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.89
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.57
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.42
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.23
          }
        }
      },
      "fim": "2026-10-24T15:59:10-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T15:58:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T15:59:08-03:00",
          "ultima_execucao_ok": "2026-10-24T15:59:10-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T15:59:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T15:58:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T15:58:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T15:58:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 36.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T15:58:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T15:58:20-03:00",
          "ultima_execucao_ok": "2026-10-24T15:58:20-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T15:58:20-03:00",
          "ultima_execucao_ok": "2026-10-24T15:58:20-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 37.88,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.34
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.29
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.46
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.13
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 32.36
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.68
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.62
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_24_0954",
      "data_hora": "2026-10-24T09:54:22-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 25,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1474,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 3.8,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 15.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.41,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.11
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.47
          }
        }
      },
      "fim": "2026-10-24T09:54:48-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T09:54:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T09:54:46-03:00",
          "ultima_execucao_ok": "2026-10-24T09:54:48-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T09:54:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T09:54:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T09:54:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T09:54:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T09:54:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T09:54:22-03:00",
          "ultima_execucao_ok": "2026-10-24T09:54:22-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T09:54:22-03:00",
          "ultima_execucao_ok": "2026-10-24T09:54:22-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 10.05,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.36
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.62
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.57
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.32
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.97
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.45
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_24_0633",
      "data_hora": "2026-10-24T06:33:32-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 29,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1470,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 2.9,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 20.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.44,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.92
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.48
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.09
          }
        }
      },
      "fim": "2026-10-24T06:34:02-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T06:33:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T06:33:59-03:00",
          "ultima_execucao_ok": "2026-10-24T06:34:02-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T06:34:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T06:33:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T06:33:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-24T06:33:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 13.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-24T06:33:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T06:33:32-03:00",
          "ultima_execucao_ok": "2026-10-24T06:33:32-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-24T06:33:32-03:00",
          "ultima_execucao_ok": "2026-10-24T06:33:32-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 28,
        "falhas": 12,
        "cache": 0,
        "tempo_total": 13.63,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.33
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.44
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.55
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.73
          },
          "eu_parliament": {
            "chamadas": 8,
            "falhas": 4,
            "tempo_total": 7.23
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.68
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_23_1704",
      "data_hora": "2026-10-23T17:04:08-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 31,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1468,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 4.3,
        "descoberta_procedimentos": 3.8,
        "fontes_multiorgao": 21.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 14.9,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.97
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.49
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 13.41
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.06
          }
        }
      },
      "fim": "2026-10-23T17:04:39-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T17:04:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T17:04:37-03:00",
          "ultima_execucao_ok": "2026-10-23T17:04:39-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T17:04:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T17:04:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T17:04:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T17:04:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 16.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T17:04:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T17:04:08-03:00",
          "ultima_execucao_ok": "2026-10-23T17:04:08-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T17:04:08-03:00",
          "ultima_execucao_ok": "2026-10-23T17:04:08-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 29,
        "falhas": 13,
        "cache": 0,
        "tempo_total": 12.0,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.19
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.27
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.18
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.42
          },
          "eu_parliament": {
            "chamadas": 9,
            "falhas": 5,
            "tempo_total": 6.97
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.7
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.27
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_23_1047",
      "data_hora": "2026-10-23T10:47:04-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 24,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1475,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 5.9,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 13.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 18.93,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.65
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 17.21
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.13
          }
        }
      },
      "fim": "2026-10-23T10:47:29-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T10:47:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T10:47:27-03:00",
          "ultima_execucao_ok": "2026-10-23T10:47:29-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T10:47:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T10:47:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T10:47:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T10:47:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T10:47:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T10:47:04-03:00",
          "ultima_execucao_ok": "2026-10-23T10:47:04-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T10:47:04-03:00",
          "ultima_execucao_ok": "2026-10-23T10:47:04-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 7.88,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.37
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.23
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.53
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.84
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.09
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.03
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_23_0705",
      "data_hora": "2026-10-23T07:05:47-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 22,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1477,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 4.0,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 12.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.32,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.68
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.89
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.64
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.1
          }
        }
      },
      "fim": "2026-10-23T07:06:10-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T07:05:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T07:06:07-03:00",
          "ultima_execucao_ok": "2026-10-23T07:06:09-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T07:06:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T07:05:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T07:05:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-23T07:06:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-23T07:05:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T07:05:47-03:00",
          "ultima_execucao_ok": "2026-10-23T07:05:47-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-23T07:05:47-03:00",
          "ultima_execucao_ok": "2026-10-23T07:05:47-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 7.17,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.5
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.35
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.3
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.86
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.16
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.07
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_22_1716",
      "data_hora": "2026-10-22T17:16:49-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.6,
        "descoberta_procedimentos": 4.8,
        "fontes_multiorgao": 13.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.9,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.21
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.63
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.27
          }
        }
      },
      "fim": "2026-10-22T17:17:11-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T17:16:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T17:17:09-03:00",
          "ultima_execucao_ok": "2026-10-22T17:17:11-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T17:17:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T17:16:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T17:16:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T17:17:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T17:16:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T17:16:49-03:00",
          "ultima_execucao_ok": "2026-10-22T17:16:49-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T17:16:49-03:00",
          "ultima_execucao_ok": "2026-10-22T17:16:49-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 8.92,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.47
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.61
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.86
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.45
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.45
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.28
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_22_1104",
      "data_hora": "2026-10-22T11:04:27-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 29,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1470,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 8.8,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 14.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 16.4,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 14.26
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.27
          }
        }
      },
      "fim": "2026-10-22T11:04:57-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T11:04:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T11:04:54-03:00",
          "ultima_execucao_ok": "2026-10-22T11:04:57-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T11:04:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T11:04:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 3,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T11:04:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T11:04:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T11:04:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T11:04:27-03:00",
          "ultima_execucao_ok": "2026-10-22T11:04:27-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T11:04:27-03:00",
          "ultima_execucao_ok": "2026-10-22T11:04:27-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 9.69,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.33
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.51
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.55
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.0
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.04
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.47
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_22_0713",
      "data_hora": "2026-10-22T07:13:04-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 20,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1479,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.8,
        "fontes_multiorgao": 13.0
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.77,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.88
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.33
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.44
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.12
          }
        }
      },
      "fim": "2026-10-22T07:13:25-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 166
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T07:13:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T07:13:23-03:00",
          "ultima_execucao_ok": "2026-10-22T07:13:25-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T07:13:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T07:13:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 3,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 27,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T07:13:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-22T07:13:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-22T07:13:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T07:13:04-03:00",
          "ultima_execucao_ok": "2026-10-22T07:13:04-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-22T07:13:04-03:00",
          "ultima_execucao_ok": "2026-10-22T07:13:04-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 8.11,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.44
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.58
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.42
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.2
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.44
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.25
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 1
    },
    {
      "id": "run_2026_10_21_1720",
      "data_hora": "2026-10-21T17:20:31-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 29,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1470,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 7.6,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 15.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 18.4,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 16.15
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.38
          }
        }
      },
      "fim": "2026-10-21T17:21:00-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 165
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T17:20:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: HTML indisponível: https://digital-strategy.ec.europa.eu/en/news?type=5%7C13 (HTTP 403); página da AI Office (políticas e ações): HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/ai-office (HTTP 403); AI Act — quadro regulatório e implementação: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai (HTTP 403); General-Purpose AI — página oficial: HTML indisponível: https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T17:20:58-03:00",
          "ultima_execucao_ok": "2026-10-21T17:21:00-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T17:20:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T17:20:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 26,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T17:20:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T17:20:50-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T17:20:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T17:20:31-03:00",
          "ultima_execucao_ok": "2026-10-21T17:20:31-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T17:20:31-03:00",
          "ultima_execucao_ok": "2026-10-21T17:20:31-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 11,
        "cache": 0,
        "tempo_total": 10.39,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 5,
            "tempo_total": 0.39
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.36
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.9
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.89
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.31
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.11
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.43
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_21_1105",
      "data_hora": "2026-10-21T11:05:48-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 43,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1456,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 16.6,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 20.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 29.26,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 27.17
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.11
          }
        }
      },
      "fim": "2026-10-21T11:06:31-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 165
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T11:06:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T11:06:29-03:00",
          "ultima_execucao_ok": "2026-10-21T11:06:31-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T11:06:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T11:06:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 26,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T11:06:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T11:06:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 11.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T11:06:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T11:05:48-03:00",
          "ultima_execucao_ok": "2026-10-21T11:05:48-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T11:05:48-03:00",
          "ultima_execucao_ok": "2026-10-21T11:05:48-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 28,
        "falhas": 7,
        "cache": 0,
        "tempo_total": 13.92,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.17
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.61
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.78
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.9
          },
          "eu_parliament": {
            "chamadas": 8,
            "falhas": 4,
            "tempo_total": 5.78
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.1
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.58
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_21_0711",
      "data_hora": "2026-10-21T07:11:47-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 19,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1480,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.0,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 12.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.21,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.7
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.62
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.29
          }
        }
      },
      "fim": "2026-10-21T07:12:06-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 165
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T07:11:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T07:12:04-03:00",
          "ultima_execucao_ok": "2026-10-21T07:12:06-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T07:12:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T07:11:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 26,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T07:11:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-21T07:11:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-21T07:11:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T07:11:47-03:00",
          "ultima_execucao_ok": "2026-10-21T07:11:47-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-21T07:11:47-03:00",
          "ultima_execucao_ok": "2026-10-21T07:11:47-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.38,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.54
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.25
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.58
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.78
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.69
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.76
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_20_1707",
      "data_hora": "2026-10-20T17:07:09-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 4.9,
        "fontes_multiorgao": 15.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.45,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.25
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.31
          }
        }
      },
      "fim": "2026-10-20T17:07:33-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T17:07:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T17:07:30-03:00",
          "ultima_execucao_ok": "2026-10-20T17:07:33-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T17:07:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T17:07:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T17:07:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T17:07:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T17:07:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T17:07:09-03:00",
          "ultima_execucao_ok": "2026-10-20T17:07:09-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T17:07:09-03:00",
          "ultima_execucao_ok": "2026-10-20T17:07:09-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.54,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.16
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.37
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.82
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.0
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.87
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.51
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_20_1049",
      "data_hora": "2026-10-20T10:49:37-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 24,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1475,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.8,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 15.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.4,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.04
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.32
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.23
          }
        }
      },
      "fim": "2026-10-20T10:50:02-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T10:49:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T10:49:59-03:00",
          "ultima_execucao_ok": "2026-10-20T10:50:02-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T10:50:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T10:49:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T10:49:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T10:49:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T10:49:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T10:49:37-03:00",
          "ultima_execucao_ok": "2026-10-20T10:49:37-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T10:49:37-03:00",
          "ultima_execucao_ok": "2026-10-20T10:49:37-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.18,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.11
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.5
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.68
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.46
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.24
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.26
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_20_0705",
      "data_hora": "2026-10-20T07:05:55-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 40,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1459,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 22.8,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 12.3
      },
      "http": {
        "chamadas": 19,
        "cache": 0,
        "falhas": 2,
        "tempo_total": 43.5,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.99
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 2,
            "tempo_total": 1.65
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-10-20T07:06:36-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T07:06:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T07:06:34-03:00",
          "ultima_execucao_ok": "2026-10-20T07:06:36-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T07:06:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T07:06:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T07:06:25-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-20T07:06:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T07:06:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-20T07:05:55-03:00",
          "ultima_execucao_ok": "2026-10-20T07:05:55-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-20T07:05:55-03:00",
          "ultima_execucao_ok": "2026-10-19T18:13:35-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 2,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.15,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.6
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.44
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.44
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.19
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.93
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.6
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.95
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_19_1813",
      "data_hora": "2026-10-19T18:13:35-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 43,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1456,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.1,
        "descoberta_procedimentos": 19.5,
        "fontes_multiorgao": 21.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.6,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 15.77
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.74
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.36
          }
        }
      },
      "fim": "2026-10-19T18:14:19-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T18:13:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T18:14:17-03:00",
          "ultima_execucao_ok": "2026-10-19T18:14:19-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T18:14:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T18:14:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T18:14:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T18:14:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T18:13:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.1,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T18:13:35-03:00",
          "ultima_execucao_ok": "2026-10-19T18:13:35-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T18:13:35-03:00",
          "ultima_execucao_ok": "2026-10-19T18:13:35-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 16.57,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.34
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.06
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.84
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.75
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.61
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.19
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_19_1251",
      "data_hora": "2026-10-19T12:51:24-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 44,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1455,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.0,
        "descoberta_procedimentos": 4.9,
        "fontes_multiorgao": 37.0
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.69,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.32
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.41
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.31
          }
        }
      },
      "fim": "2026-10-19T12:52:08-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T12:51:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T12:52:07-03:00",
          "ultima_execucao_ok": "2026-10-19T12:52:08-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T12:52:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T12:51:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T12:51:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T12:51:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 31.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T12:51:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T12:51:24-03:00",
          "ultima_execucao_ok": "2026-10-19T12:51:24-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T12:51:24-03:00",
          "ultima_execucao_ok": "2026-10-19T12:51:24-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 31.88,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.31
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.36
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.92
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 26.82
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.83
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.88
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_19_0747",
      "data_hora": "2026-10-19T07:47:49-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.0,
        "descoberta_procedimentos": 4.0,
        "fontes_multiorgao": 14.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.15,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.55
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.52
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.1
          }
        }
      },
      "fim": "2026-10-19T07:48:10-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 163
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T07:47:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T07:48:08-03:00",
          "ultima_execucao_ok": "2026-10-19T07:48:10-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T07:48:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T07:47:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 3.1,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 24,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T07:47:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.1,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-19T07:48:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-19T07:47:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T07:47:49-03:00",
          "ultima_execucao_ok": "2026-10-19T07:47:49-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-19T07:47:49-03:00",
          "ultima_execucao_ok": "2026-10-19T07:47:49-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.51,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.16
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.31
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.13
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.07
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.76
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.42
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_18_1553",
      "data_hora": "2026-10-18T15:53:10-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 38,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1461,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.0,
        "descoberta_procedimentos": 20.4,
        "fontes_multiorgao": 15.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 20.15,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 16.92
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.4
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.16
          }
        }
      },
      "fim": "2026-10-18T15:53:49-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T15:53:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T15:53:47-03:00",
          "ultima_execucao_ok": "2026-10-18T15:53:49-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T15:53:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T15:53:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T15:53:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T15:53:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T15:53:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T15:53:10-03:00",
          "ultima_execucao_ok": "2026-10-18T15:53:10-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T15:53:10-03:00",
          "ultima_execucao_ok": "2026-10-18T15:53:10-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.67,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.87
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.33
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.56
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.62
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.86
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.59
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.84
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_18_0946",
      "data_hora": "2026-10-18T09:46:46-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 19,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1480,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 0.9,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 12.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 3.63,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.02
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-10-18T09:47:06-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T09:46:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T09:47:04-03:00",
          "ultima_execucao_ok": "2026-10-18T09:47:06-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T09:47:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T09:46:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T09:46:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T09:46:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T09:46:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T09:46:46-03:00",
          "ultima_execucao_ok": "2026-10-18T09:46:46-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T09:46:46-03:00",
          "ultima_execucao_ok": "2026-10-18T09:46:46-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.47,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.46
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.51
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.17
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.94
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.83
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_18_0639",
      "data_hora": "2026-10-18T06:39:10-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 42,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1457,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.6,
        "descoberta_procedimentos": 19.7,
        "fontes_multiorgao": 19.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 22.11,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.0
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 16.15
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.71
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.22
          }
        }
      },
      "fim": "2026-10-18T06:39:53-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T06:39:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T06:39:50-03:00",
          "ultima_execucao_ok": "2026-10-18T06:39:53-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T06:39:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T06:39:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T06:39:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-18T06:39:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-18T06:39:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.0,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T06:39:10-03:00",
          "ultima_execucao_ok": "2026-10-18T06:39:10-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-18T06:39:10-03:00",
          "ultima_execucao_ok": "2026-10-18T06:39:10-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.64,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.34
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.0
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.4
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.29
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.4
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.39
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.82
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_17_1548",
      "data_hora": "2026-10-17T15:48:10-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament, eurlex.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 2.2,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 13.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.22,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.0
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.22
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.22
          }
        }
      },
      "fim": "2026-10-17T15:48:32-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T15:48:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T15:48:29-03:00",
          "ultima_execucao_ok": "2026-10-17T15:48:32-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T15:48:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T15:48:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T15:48:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T15:48:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T15:48:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 5,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; atos do Jornal Oficial — série L (RSS oficial): RSS sem itens reconhecíveis: https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T15:48:10-03:00",
          "ultima_execucao_ok": "2026-10-17T15:48:10-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T15:48:10-03:00",
          "ultima_execucao_ok": "2026-10-17T15:48:10-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament",
        "eurlex"
      ],
      "fontes_parciais": [
        "eu_commission"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.85,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.22
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.49
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.67
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.96
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.43
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.15
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_17_1255",
      "data_hora": "2026-10-17T12:55:07-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 1.1,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 14.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.82,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.85
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.19
          }
        }
      },
      "fim": "2026-10-17T12:55:29-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T12:55:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T12:55:27-03:00",
          "ultima_execucao_ok": "2026-10-17T12:55:29-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T12:55:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T12:55:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T12:55:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T12:55:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T12:55:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T12:55:07-03:00",
          "ultima_execucao_ok": "2026-10-17T12:55:07-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T12:55:07-03:00",
          "ultima_execucao_ok": "2026-10-17T12:55:07-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.68,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.13
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.38
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.49
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.43
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.81
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.04
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.4
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_17_0923",
      "data_hora": "2026-10-17T09:23:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 4.7,
        "fontes_multiorgao": 15.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.95,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.64
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.31
          }
        }
      },
      "fim": "2026-10-17T09:23:28-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T09:23:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.9,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T09:23:26-03:00",
          "ultima_execucao_ok": "2026-10-17T09:23:28-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T09:23:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T09:23:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T09:23:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T09:23:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T09:23:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T09:23:05-03:00",
          "ultima_execucao_ok": "2026-10-17T09:23:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T09:23:05-03:00",
          "ultima_execucao_ok": "2026-10-17T09:23:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.49,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.9
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.76
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.19
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.41
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.09
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.18
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_17_0623",
      "data_hora": "2026-10-17T06:23:31-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.1,
        "descoberta_procedimentos": 5.1,
        "fontes_multiorgao": 13.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.67,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.16
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.03
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.64
          }
        }
      },
      "fim": "2026-10-17T06:23:52-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T06:23:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T06:23:50-03:00",
          "ultima_execucao_ok": "2026-10-17T06:23:52-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T06:23:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T06:23:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T06:23:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-17T06:23:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-17T06:23:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T06:23:31-03:00",
          "ultima_execucao_ok": "2026-10-17T06:23:31-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-17T06:23:31-03:00",
          "ultima_execucao_ok": "2026-10-17T06:23:31-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.83,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.08
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.63
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.81
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.41
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.36
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_16_1641",
      "data_hora": "2026-10-16T16:41:31-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 47,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1452,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 10.5,
        "descoberta_procedimentos": 21.8,
        "fontes_multiorgao": 14.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 59.01,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 18.11
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 39.95
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.29
          }
        }
      },
      "fim": "2026-10-16T16:42:19-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T16:42:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T16:42:17-03:00",
          "ultima_execucao_ok": "2026-10-16T16:42:19-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T16:42:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T16:42:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T16:42:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T16:42:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T16:42:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T16:41:31-03:00",
          "ultima_execucao_ok": "2026-10-16T16:41:31-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T16:41:31-03:00",
          "ultima_execucao_ok": "2026-10-16T16:41:31-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.2,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.69
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.51
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.42
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.68
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.94
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.0
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_16_1030",
      "data_hora": "2026-10-16T10:30:30-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 27,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1472,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 3.1,
        "descoberta_procedimentos": 4.1,
        "fontes_multiorgao": 18.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.79,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 7.02
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.05
          }
        }
      },
      "fim": "2026-10-16T10:30:58-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T10:30:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T10:30:56-03:00",
          "ultima_execucao_ok": "2026-10-16T10:30:58-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T10:30:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T10:30:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 7.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T10:30:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T10:30:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T10:30:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T10:30:30-03:00",
          "ultima_execucao_ok": "2026-10-16T10:30:30-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T10:30:30-03:00",
          "ultima_execucao_ok": "2026-10-16T10:30:30-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 13.76,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.09
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.2
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 7.47
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.68
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.32
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_16_0652",
      "data_hora": "2026-10-16T06:52:23-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 34,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1465,
      "fases_segundos": {
        "agenda_consultas": 3.3,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 9.4,
        "fontes_multiorgao": 20.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 12.89,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 2.73
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 5.52
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.02
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.6
          }
        }
      },
      "fim": "2026-10-16T06:52:58-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 161
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T06:52:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T06:52:52-03:00",
          "ultima_execucao_ok": "2026-10-16T06:52:58-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 0,
          "duracao_segundos": 4.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T06:52:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T06:52:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T06:52:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-16T06:52:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-16T06:52:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T06:52:23-03:00",
          "ultima_execucao_ok": "2026-10-16T06:52:23-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-16T06:52:23-03:00",
          "ultima_execucao_ok": "2026-10-16T06:52:23-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 15.08,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 2.42
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.83
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.65
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.8
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.4
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 4.58
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.4
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 1,
        "edps": 0
      },
      "mudancas_multiorgao": 5
    },
    {
      "id": "run_2026_10_15_1701",
      "data_hora": "2026-10-15T17:01:20-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 27,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1472,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.4,
        "descoberta_procedimentos": 5.9,
        "fontes_multiorgao": 17.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 10.57,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.44
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.92
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-10-15T17:01:47-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 156
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T17:01:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T17:01:45-03:00",
          "ultima_execucao_ok": "2026-10-15T17:01:47-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T17:01:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T17:01:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 2.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 22,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T17:01:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T17:01:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T17:01:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T17:01:20-03:00",
          "ultima_execucao_ok": "2026-10-15T17:01:20-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T17:01:20-03:00",
          "ultima_execucao_ok": "2026-10-15T17:01:20-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 12.26,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 2.06
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.43
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.38
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.7
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.37
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.6
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 1
    },
    {
      "id": "run_2026_10_15_1039",
      "data_hora": "2026-10-15T10:39:47-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 18,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1481,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 0.8,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 11.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 3.26,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.7
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.15
          }
        }
      },
      "fim": "2026-10-15T10:40:05-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 155
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T10:39:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T10:40:03-03:00",
          "ultima_execucao_ok": "2026-10-15T10:40:05-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T10:40:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T10:39:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T10:39:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T10:39:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T10:39:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T10:39:47-03:00",
          "ultima_execucao_ok": "2026-10-15T10:39:47-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T10:39:47-03:00",
          "ultima_execucao_ok": "2026-10-15T10:39:47-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 6.9,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.3
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.53
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.82
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.95
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.01
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_15_0657",
      "data_hora": "2026-10-15T06:57:07-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 19,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1480,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 11.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.48,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.62
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.24
          }
        }
      },
      "fim": "2026-10-15T06:57:26-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 153
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T06:57:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T06:57:25-03:00",
          "ultima_execucao_ok": "2026-10-15T06:57:26-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T06:57:25-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T06:57:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T06:57:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-15T06:57:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-15T06:57:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T06:57:07-03:00",
          "ultima_execucao_ok": "2026-10-15T06:57:07-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-15T06:57:07-03:00",
          "ultima_execucao_ok": "2026-10-15T06:57:07-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 6.79,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.59
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.47
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.48
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.68
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.86
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.95
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_14_1719",
      "data_hora": "2026-10-14T17:19:10-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.1,
        "fontes_multiorgao": 14.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.88,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.16
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.05
          }
        }
      },
      "fim": "2026-10-14T17:19:31-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 153
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T17:19:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T17:19:29-03:00",
          "ultima_execucao_ok": "2026-10-14T17:19:31-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T17:19:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T17:19:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T17:19:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T17:19:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T17:19:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T17:19:10-03:00",
          "ultima_execucao_ok": "2026-10-14T17:19:10-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T17:19:10-03:00",
          "ultima_execucao_ok": "2026-10-14T17:19:10-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.31,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.27
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.26
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.35
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.95
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.52
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.7
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.26
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_14_1100",
      "data_hora": "2026-10-14T11:00:10-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 40,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1459,
      "fases_segundos": {
        "agenda_consultas": 1.2,
        "atualizacao_procedimentos": 10.3,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 24.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 28.44,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.61
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 26.74
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.16
          }
        }
      },
      "fim": "2026-10-14T11:00:51-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 153
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T11:00:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 3.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T11:00:49-03:00",
          "ultima_execucao_ok": "2026-10-14T11:00:51-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T11:00:50-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T11:00:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 11.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T11:00:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T11:00:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T11:00:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T11:00:10-03:00",
          "ultima_execucao_ok": "2026-10-14T11:00:10-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T11:00:10-03:00",
          "ultima_execucao_ok": "2026-10-14T11:00:10-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 19.71,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 3.52
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.25
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.56
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 11.47
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.96
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.99
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.96
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_14_0715",
      "data_hora": "2026-10-14T07:15:12-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 32,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1467,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 4.6,
        "descoberta_procedimentos": 9.3,
        "fontes_multiorgao": 16.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 20.88,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 5.66
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 13.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.36
          }
        }
      },
      "fim": "2026-10-14T07:15:44-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 153
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T07:15:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T07:15:41-03:00",
          "ultima_execucao_ok": "2026-10-14T07:15:44-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T07:15:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T07:15:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T07:15:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-14T07:15:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-14T07:15:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T07:15:12-03:00",
          "ultima_execucao_ok": "2026-10-14T07:15:12-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-14T07:15:12-03:00",
          "ultima_execucao_ok": "2026-10-14T07:15:12-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.42,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.16
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.42
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.69
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.48
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.83
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.31
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.53
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_13_1831",
      "data_hora": "2026-10-13T18:31:20-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 30,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1469,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 7.9,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 17.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 28.22,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 26.51
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.28
          }
        }
      },
      "fim": "2026-10-13T18:31:50-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 151
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T18:31:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T18:31:48-03:00",
          "ultima_execucao_ok": "2026-10-13T18:31:50-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T18:31:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T18:31:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 18,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T18:31:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T18:31:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 10.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T18:31:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T18:31:20-03:00",
          "ultima_execucao_ok": "2026-10-13T18:31:20-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T18:31:20-03:00",
          "ultima_execucao_ok": "2026-10-13T18:31:20-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 12.24,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.56
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.25
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.74
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.61
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 6.1
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.99
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.99
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_13_1324",
      "data_hora": "2026-10-13T13:24:37-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 33,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1466,
      "fases_segundos": {
        "agenda_consultas": 4.1,
        "atualizacao_procedimentos": 1.6,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 23.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 9.47,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 3.48
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.1
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.79
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.11
          }
        }
      },
      "fim": "2026-10-13T13:25:11-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 151
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T13:24:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T13:25:08-03:00",
          "ultima_execucao_ok": "2026-10-13T13:25:11-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 21,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T13:25:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T13:24:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 9.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 18,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T13:24:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T13:25:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T13:24:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T13:24:37-03:00",
          "ultima_execucao_ok": "2026-10-13T13:24:37-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T13:24:37-03:00",
          "ultima_execucao_ok": "2026-10-13T13:24:37-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 18.08,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.36
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 1.13
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 9.72
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.12
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.53
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 1,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_13_0943",
      "data_hora": "2026-10-13T09:43:36-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 20,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1479,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.1,
        "fontes_multiorgao": 13.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.13,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.64
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.6
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.13
          }
        }
      },
      "fim": "2026-10-13T09:43:57-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 149
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T09:43:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T09:43:55-03:00",
          "ultima_execucao_ok": "2026-10-13T09:43:57-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T09:43:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T09:43:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 17,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T09:43:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-13T09:43:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-13T09:43:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T09:43:36-03:00",
          "ultima_execucao_ok": "2026-10-13T09:43:36-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-13T09:43:36-03:00",
          "ultima_execucao_ok": "2026-10-13T09:43:36-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.44,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.65
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.99
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.33
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.04
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 1
    },
    {
      "id": "run_2026_10_12_1511",
      "data_hora": "2026-10-12T15:11:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 22,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1477,
      "fases_segundos": {
        "agenda_consultas": 2.1,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 5.2,
        "fontes_multiorgao": 14.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.73,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.52
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.85
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.35
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.0
          }
        }
      },
      "fim": "2026-10-12T15:11:28-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 148
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T15:11:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T15:11:25-03:00",
          "ultima_execucao_ok": "2026-10-12T15:11:28-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T15:11:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-12T15:11:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 17,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T15:11:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T15:11:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-12T15:11:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T15:11:05-03:00",
          "ultima_execucao_ok": "2026-10-12T15:11:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T15:11:05-03:00",
          "ultima_execucao_ok": "2026-10-12T15:11:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.15,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.32
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.39
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.22
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.95
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.52
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_12_1011",
      "data_hora": "2026-10-12T10:11:33-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 34,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1465,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 12.7,
        "descoberta_procedimentos": 4.1,
        "fontes_multiorgao": 16.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 31.43,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.62
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 29.66
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.12
          }
        }
      },
      "fim": "2026-10-12T10:12:08-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 148
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T10:11:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T10:12:05-03:00",
          "ultima_execucao_ok": "2026-10-12T10:12:08-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 20,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T10:12:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-12T10:11:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 3.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 17,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T10:11:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-12T10:11:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-12T10:11:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T10:11:33-03:00",
          "ultima_execucao_ok": "2026-10-12T10:11:33-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-12T10:11:33-03:00",
          "ultima_execucao_ok": "2026-10-12T10:11:33-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.05,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.3
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.37
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.71
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.45
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.73
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 1,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_10_11_1732",
      "data_hora": "2026-10-11T17:32:48-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament, eurlex.",
      "duracao_segundos": 36,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1463,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 12.4,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 17.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 36.72,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 34.9
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.15
          }
        }
      },
      "fim": "2026-10-11T17:33:24-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T17:33:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T17:33:22-03:00",
          "ultima_execucao_ok": "2026-10-11T17:33:24-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T17:33:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-11T17:33:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T17:33:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T17:33:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 10.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T17:33:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 5,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; atos do Jornal Oficial — série L (RSS oficial): RSS indisponível: https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222 (HTTP 403); AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T17:32:48-03:00",
          "ultima_execucao_ok": "2026-10-11T17:32:48-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T17:32:48-03:00",
          "ultima_execucao_ok": "2026-10-11T17:32:48-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament",
        "eurlex"
      ],
      "fontes_parciais": [
        "eu_commission"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 7,
        "cache": 0,
        "tempo_total": 12.62,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.37
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 1,
            "tempo_total": 0.25
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.35
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.47
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 6.14
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.69
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.35
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_11_1203",
      "data_hora": "2026-10-11T12:03:27-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 35,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1464,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 9.0,
        "descoberta_procedimentos": 4.7,
        "fontes_multiorgao": 20.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 16.12,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.18
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 13.88
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.23
          }
        }
      },
      "fim": "2026-10-11T12:04:03-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T12:03:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T12:04:01-03:00",
          "ultima_execucao_ok": "2026-10-11T12:04:03-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T12:04:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-11T12:03:50-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T12:03:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T12:03:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-11T12:03:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T12:03:27-03:00",
          "ultima_execucao_ok": "2026-10-11T12:03:27-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T12:03:27-03:00",
          "ultima_execucao_ok": "2026-10-11T12:03:27-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 15.63,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.13
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.41
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.64
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.12
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.16
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.01
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.16
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_11_0825",
      "data_hora": "2026-10-11T08:25:19-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 42,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1457,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.7,
        "descoberta_procedimentos": 19.7,
        "fontes_multiorgao": 18.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 23.39,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.98
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 16.06
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.04
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.31
          }
        }
      },
      "fim": "2026-10-11T08:26:01-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T08:25:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T08:25:59-03:00",
          "ultima_execucao_ok": "2026-10-11T08:26:01-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T08:26:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-11T08:25:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T08:25:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-11T08:25:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-11T08:25:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T08:25:19-03:00",
          "ultima_execucao_ok": "2026-10-11T08:25:19-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-11T08:25:19-03:00",
          "ultima_execucao_ok": "2026-10-11T08:25:19-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 13.28,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.29
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.38
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.74
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.19
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.69
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.9
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.09
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_10_1718",
      "data_hora": "2026-10-10T17:18:25-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 47,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1452,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 4.7,
        "descoberta_procedimentos": 18.3,
        "fontes_multiorgao": 23.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 26.15,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.85
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.51
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 10.38
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.4
          }
        }
      },
      "fim": "2026-10-10T17:19:13-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T17:18:50-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T17:19:11-03:00",
          "ultima_execucao_ok": "2026-10-10T17:19:13-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T17:19:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T17:18:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T17:18:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T17:18:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 12.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T17:18:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T17:18:25-03:00",
          "ultima_execucao_ok": "2026-10-10T17:18:25-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T17:18:25-03:00",
          "ultima_execucao_ok": "2026-10-10T17:18:25-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 18.1,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.16
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.17
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.68
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.84
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 8.15
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.7
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.4
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_10_1141",
      "data_hora": "2026-10-10T11:41:44-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 59,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1440,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 15.0,
        "descoberta_procedimentos": 23.2,
        "fontes_multiorgao": 19.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 43.03,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 19.77
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 22.26
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.07
          }
        }
      },
      "fim": "2026-10-10T11:42:43-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T11:42:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T11:42:41-03:00",
          "ultima_execucao_ok": "2026-10-10T11:42:43-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T11:42:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T11:42:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T11:42:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T11:42:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T11:42:25-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T11:41:44-03:00",
          "ultima_execucao_ok": "2026-10-10T11:41:44-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T11:41:44-03:00",
          "ultima_execucao_ok": "2026-10-10T11:41:44-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.68,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.68
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.94
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.72
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.2
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.13
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.29
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_10_0811",
      "data_hora": "2026-10-10T08:11:46-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 36,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1463,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 18.2,
        "fontes_multiorgao": 15.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.5,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.7
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.59
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.19
          }
        }
      },
      "fim": "2026-10-10T08:12:22-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T08:12:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T08:12:21-03:00",
          "ultima_execucao_ok": "2026-10-10T08:12:22-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T08:12:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T08:12:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T08:12:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-10T08:12:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-10T08:12:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.7,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T08:11:46-03:00",
          "ultima_execucao_ok": "2026-10-10T08:11:46-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-10T08:11:46-03:00",
          "ultima_execucao_ok": "2026-10-10T08:11:46-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.34,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.74
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.58
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.66
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.05
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.57
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.0
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_09_1813",
      "data_hora": "2026-10-09T18:13:54-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 40,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1459,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 19.0,
        "fontes_multiorgao": 18.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 20.01,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.82
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 15.48
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.5
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.21
          }
        }
      },
      "fim": "2026-10-09T18:14:34-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T18:14:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T18:14:32-03:00",
          "ultima_execucao_ok": "2026-10-09T18:14:34-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T18:14:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T18:14:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T18:14:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T18:14:25-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T18:14:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T18:13:54-03:00",
          "ultima_execucao_ok": "2026-10-09T18:13:54-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T18:13:54-03:00",
          "ultima_execucao_ok": "2026-10-09T18:13:54-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 13.2,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.39
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.68
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.29
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.57
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.19
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_09_1232",
      "data_hora": "2026-10-09T12:32:47-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 55,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1444,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 12.5,
        "descoberta_procedimentos": 21.5,
        "fontes_multiorgao": 19.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 40.5,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 18.06
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 21.34
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.12
          }
        }
      },
      "fim": "2026-10-09T12:33:42-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T12:33:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T12:33:40-03:00",
          "ultima_execucao_ok": "2026-10-09T12:33:42-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T12:33:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T12:33:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T12:33:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T12:33:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T12:33:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.7,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T12:32:47-03:00",
          "ultima_execucao_ok": "2026-10-09T12:32:47-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T12:32:47-03:00",
          "ultima_execucao_ok": "2026-10-09T12:32:47-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.52,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.41
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.72
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.58
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.23
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.7
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.14
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_09_0855",
      "data_hora": "2026-10-09T08:55:04-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 28,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1471,
      "fases_segundos": {
        "agenda_consultas": 1.9,
        "atualizacao_procedimentos": 3.7,
        "descoberta_procedimentos": 5.5,
        "fontes_multiorgao": 17.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 14.31,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.25
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.91
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 10.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.33
          }
        }
      },
      "fim": "2026-10-09T08:55:32-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 145
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T08:55:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T08:55:29-03:00",
          "ultima_execucao_ok": "2026-10-09T08:55:32-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 4,
          "erros": 0,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 19,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T08:55:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T08:55:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 3.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T08:55:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-09T08:55:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-09T08:55:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T08:55:04-03:00",
          "ultima_execucao_ok": "2026-10-09T08:55:04-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-09T08:55:04-03:00",
          "ultima_execucao_ok": "2026-10-09T08:55:04-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 12.27,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.46
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.85
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.75
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.5
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.81
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.34
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.56
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 4,
        "edps": 0
      },
      "mudancas_multiorgao": 6
    },
    {
      "id": "run_2026_10_08_1828",
      "data_hora": "2026-10-08T18:28:41-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 40,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1459,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.1,
        "descoberta_procedimentos": 17.9,
        "fontes_multiorgao": 19.0
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.84,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.04
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.42
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.23
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.14
          }
        }
      },
      "fim": "2026-10-08T18:29:22-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 139
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T18:29:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T18:29:20-03:00",
          "ultima_execucao_ok": "2026-10-08T18:29:22-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T18:29:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T18:29:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T18:29:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T18:29:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T18:29:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T18:28:41-03:00",
          "ultima_execucao_ok": "2026-10-08T18:28:41-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T18:28:41-03:00",
          "ultima_execucao_ok": "2026-10-08T18:28:41-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 13.91,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.24
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.18
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.44
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.07
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.36
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 0
    },
    {
      "id": "run_2026_10_08_1250",
      "data_hora": "2026-10-08T12:50:26-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 42,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1457,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 6.0,
        "descoberta_procedimentos": 18.2,
        "fontes_multiorgao": 16.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 25.28,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.5
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 9.76
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.37
          }
        }
      },
      "fim": "2026-10-08T12:51:08-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 139
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T12:50:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T12:51:06-03:00",
          "ultima_execucao_ok": "2026-10-08T12:51:08-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 3,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 15,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T12:51:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T12:50:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T12:50:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T12:50:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T12:50:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.0,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T12:50:26-03:00",
          "ultima_execucao_ok": "2026-10-08T12:50:26-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T12:50:26-03:00",
          "ultima_execucao_ok": "2026-10-08T12:50:26-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.73,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.99
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.43
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.28
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.26
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.02
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 3,
        "edps": 0
      },
      "mudancas_multiorgao": 4
    },
    {
      "id": "run_2026_10_08_0903",
      "data_hora": "2026-10-08T09:03:19-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 29,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1470,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 5.1,
        "descoberta_procedimentos": 6.4,
        "fontes_multiorgao": 16.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.99,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.74
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 15.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.37
          }
        }
      },
      "fim": "2026-10-08T09:03:48-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 135
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T09:03:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T09:03:45-03:00",
          "ultima_execucao_ok": "2026-10-08T09:03:48-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T09:03:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T09:03:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T09:03:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-08T09:03:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-08T09:03:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T09:03:19-03:00",
          "ultima_execucao_ok": "2026-10-08T09:03:19-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-08T09:03:19-03:00",
          "ultima_execucao_ok": "2026-10-08T09:03:19-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.1,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.3
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.65
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.96
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.39
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.86
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.45
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.49
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_07_1832",
      "data_hora": "2026-10-07T18:32:26-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 50,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1449,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 10.8,
        "descoberta_procedimentos": 19.2,
        "fontes_multiorgao": 18.9
      },
      "http": {
        "chamadas": 18,
        "cache": 0,
        "falhas": 1,
        "tempo_total": 42.12,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 15.68
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 1,
            "tempo_total": 19.2
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.14
          }
        }
      },
      "fim": "2026-10-07T18:33:17-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 133
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T18:32:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T18:33:15-03:00",
          "ultima_execucao_ok": "2026-10-07T18:33:17-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T18:33:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T18:33:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T18:33:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T18:33:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T18:32:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.1,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T18:32:26-03:00",
          "ultima_execucao_ok": "2026-10-07T18:32:26-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T18:32:26-03:00",
          "ultima_execucao_ok": "2026-10-07T12:45:15-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 1,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 13.96,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.2
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.13
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.7
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.5
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.32
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.88
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.23
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_07_1245",
      "data_hora": "2026-10-07T12:45:15-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 29,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1470,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 4.9,
        "descoberta_procedimentos": 6.1,
        "fontes_multiorgao": 17.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 14.55,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.43
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 10.81
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.33
          }
        }
      },
      "fim": "2026-10-07T12:45:45-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 131
      },
      "descoberta_candidatos": 1,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T12:45:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T12:45:42-03:00",
          "ultima_execucao_ok": "2026-10-07T12:45:45-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T12:45:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T12:45:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T12:45:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T12:45:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 9.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T12:45:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T12:45:15-03:00",
          "ultima_execucao_ok": "2026-10-07T12:45:15-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T12:45:15-03:00",
          "ultima_execucao_ok": "2026-10-07T12:45:15-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 12.0,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.04
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.18
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.8
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 5.1
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.31
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_07_0848",
      "data_hora": "2026-10-07T08:48:22-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.8,
        "descoberta_procedimentos": 5.0,
        "fontes_multiorgao": 15.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.9,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.56
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.2
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.13
          }
        }
      },
      "fim": "2026-10-07T08:48:46-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 129
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T08:48:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T08:48:43-03:00",
          "ultima_execucao_ok": "2026-10-07T08:48:46-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T08:48:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T08:48:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T08:48:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-07T08:48:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-07T08:48:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T08:48:22-03:00",
          "ultima_execucao_ok": "2026-10-07T08:48:22-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-07T08:48:22-03:00",
          "ultima_execucao_ok": "2026-10-07T08:48:22-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.13,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.9
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.48
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.38
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.76
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.88
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.15
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.58
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_06_1812",
      "data_hora": "2026-10-06T18:12:28-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 53,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1446,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 9.0,
        "descoberta_procedimentos": 23.3,
        "fontes_multiorgao": 20.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 47.87,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.91
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 19.43
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 27.04
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.5
          }
        }
      },
      "fim": "2026-10-06T18:13:22-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 127
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T18:13:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T18:13:20-03:00",
          "ultima_execucao_ok": "2026-10-06T18:13:22-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T18:13:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-06T18:13:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T18:13:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T18:13:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-06T18:13:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.7,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T18:12:28-03:00",
          "ultima_execucao_ok": "2026-10-06T18:12:28-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T18:12:28-03:00",
          "ultima_execucao_ok": "2026-10-06T18:12:28-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 15.02,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.24
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.68
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.51
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.43
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.88
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.23
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_06_1225",
      "data_hora": "2026-10-06T12:25:33-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament, eurlex.",
      "duracao_segundos": 84,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1415,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 3.0,
        "descoberta_procedimentos": 5.8,
        "fontes_multiorgao": 74.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 13.72,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.98
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.33
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 10.29
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.13
          }
        }
      },
      "fim": "2026-10-06T12:26:58-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 125
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T12:25:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T12:26:54-03:00",
          "ultima_execucao_ok": "2026-10-06T12:26:58-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T12:26:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-06T12:26:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 3.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 14,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T12:26:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T12:26:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 9.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T12:25:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 5,
          "duracao_segundos": 55.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; atos do Jornal Oficial — série L (RSS oficial): RSS indisponível: https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222 (TimeoutError: The read operation timed out); AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T12:25:33-03:00",
          "ultima_execucao_ok": "2026-10-06T12:25:33-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T12:25:33-03:00",
          "ultima_execucao_ok": "2026-10-06T12:25:33-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament",
        "eurlex"
      ],
      "fontes_parciais": [
        "eu_commission"
      ],
      "http_fontes": {
        "chamadas": 29,
        "falhas": 9,
        "cache": 0,
        "tempo_total": 64.77,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.23
          },
          "eurlex": {
            "chamadas": 6,
            "falhas": 3,
            "tempo_total": 50.93
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.59
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.78
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.92
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.13
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 2.19
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_10_06_0902",
      "data_hora": "2026-10-06T09:02:44-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 25,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1474,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 6.1,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 13.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 16.82,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 14.92
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.32
          }
        }
      },
      "fim": "2026-10-06T09:03:10-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 122
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T09:02:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T09:03:07-03:00",
          "ultima_execucao_ok": "2026-10-06T09:03:10-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T09:03:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-06T09:02:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T09:02:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-06T09:03:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-06T09:02:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T09:02:44-03:00",
          "ultima_execucao_ok": "2026-10-06T09:02:44-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-06T09:02:44-03:00",
          "ultima_execucao_ok": "2026-10-06T09:02:44-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.13,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.48
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.57
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.73
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.35
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.93
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.05
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_05_1423",
      "data_hora": "2026-10-05T14:23:01-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 40,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1459,
      "fases_segundos": {
        "agenda_consultas": 1.2,
        "atualizacao_procedimentos": 5.3,
        "descoberta_procedimentos": 17.8,
        "fontes_multiorgao": 16.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 24.13,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.61
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.14
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 9.09
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.28
          }
        }
      },
      "fim": "2026-10-05T14:23:42-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 120
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T14:23:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T14:23:40-03:00",
          "ultima_execucao_ok": "2026-10-05T14:23:42-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 2,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 12,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T14:23:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-05T14:23:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T14:23:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T14:23:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-05T14:23:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.1,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T14:23:01-03:00",
          "ultima_execucao_ok": "2026-10-05T14:23:01-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T14:23:01-03:00",
          "ultima_execucao_ok": "2026-10-05T14:23:01-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.49,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.01
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.09
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.56
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.73
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.34
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.82
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.94
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 2,
        "edps": 0
      },
      "mudancas_multiorgao": 5
    },
    {
      "id": "run_2026_10_05_0918",
      "data_hora": "2026-10-05T09:18:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 24,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1475,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 4.4,
        "descoberta_procedimentos": 4.7,
        "fontes_multiorgao": 13.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.46,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.68
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.18
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.4
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.19
          }
        }
      },
      "fim": "2026-10-05T09:18:29-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 115
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T09:18:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T09:18:28-03:00",
          "ultima_execucao_ok": "2026-10-05T09:18:29-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T09:18:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-05T09:18:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T09:18:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-05T09:18:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-05T09:18:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T09:18:05-03:00",
          "ultima_execucao_ok": "2026-10-05T09:18:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-05T09:18:05-03:00",
          "ultima_execucao_ok": "2026-10-05T09:18:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.5,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.37
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.3
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.33
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.0
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.92
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_04_1647",
      "data_hora": "2026-10-04T16:47:19-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 5.9,
        "fontes_multiorgao": 12.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.02,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.21
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.77
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.4
          }
        }
      },
      "fim": "2026-10-04T16:47:40-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 113
      },
      "descoberta_candidatos": 1,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T16:47:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T16:47:39-03:00",
          "ultima_execucao_ok": "2026-10-04T16:47:40-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T16:47:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T16:47:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T16:47:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T16:47:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T16:47:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T16:47:19-03:00",
          "ultima_execucao_ok": "2026-10-04T16:47:19-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T16:47:19-03:00",
          "ultima_execucao_ok": "2026-10-04T16:47:19-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.39,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.51
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.61
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.73
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.09
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.83
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_04_1120",
      "data_hora": "2026-10-04T11:20:46-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 5.5,
        "fontes_multiorgao": 13.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.23,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 2.06
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.34
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-10-04T11:21:08-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 111
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T11:20:55-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T11:21:05-03:00",
          "ultima_execucao_ok": "2026-10-04T11:21:08-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T11:21:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T11:20:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T11:20:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T11:20:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T11:20:56-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T11:20:46-03:00",
          "ultima_execucao_ok": "2026-10-04T11:20:46-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T11:20:46-03:00",
          "ultima_execucao_ok": "2026-10-04T11:20:46-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.72,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.96
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.43
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.45
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.98
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 1.93
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.92
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.05
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_04_0807",
      "data_hora": "2026-10-04T08:07:25-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 14.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.38,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.83
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.15
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.27
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.14
          }
        }
      },
      "fim": "2026-10-04T08:07:46-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 109
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T08:07:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T08:07:44-03:00",
          "ultima_execucao_ok": "2026-10-04T08:07:46-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T08:07:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T08:07:35-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T08:07:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-04T08:07:37-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-04T08:07:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T08:07:25-03:00",
          "ultima_execucao_ok": "2026-10-04T08:07:25-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-04T08:07:25-03:00",
          "ultima_execucao_ok": "2026-10-04T08:07:25-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.19,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.11
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.58
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.64
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.02
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.6
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.88
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.36
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_03_1623",
      "data_hora": "2026-10-03T16:23:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 43,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1456,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 21.0,
        "fontes_multiorgao": 19.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 22.43,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.91
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 17.32
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.37
          }
        }
      },
      "fim": "2026-10-03T16:23:49-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 107
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T16:23:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T16:23:46-03:00",
          "ultima_execucao_ok": "2026-10-03T16:23:49-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T16:23:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T16:23:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T16:23:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T16:23:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T16:23:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T16:23:05-03:00",
          "ultima_execucao_ok": "2026-10-03T16:23:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T16:23:05-03:00",
          "ultima_execucao_ok": "2026-10-03T16:23:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.66,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.2
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.88
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.7
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.17
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.85
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.3
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.56
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_03_1053",
      "data_hora": "2026-10-03T10:53:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 5.5,
        "fontes_multiorgao": 15.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.13,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.06
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.83
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.83
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.43
          }
        }
      },
      "fim": "2026-10-03T10:53:29-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 105
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T10:53:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T10:53:26-03:00",
          "ultima_execucao_ok": "2026-10-03T10:53:29-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T10:53:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T10:53:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T10:53:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T10:53:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T10:53:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T10:53:05-03:00",
          "ultima_execucao_ok": "2026-10-03T10:53:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T10:53:05-03:00",
          "ultima_execucao_ok": "2026-10-03T10:53:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.94,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.43
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.46
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.55
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.46
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.93
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.75
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.36
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_03_0725",
      "data_hora": "2026-10-03T07:25:42-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 21,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1478,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 13.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.2,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.01
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.23
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.2
          }
        }
      },
      "fim": "2026-10-03T07:26:03-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 103
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T07:25:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T07:26:01-03:00",
          "ultima_execucao_ok": "2026-10-03T07:26:03-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T07:26:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T07:25:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T07:25:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-03T07:25:54-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-03T07:25:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T07:25:42-03:00",
          "ultima_execucao_ok": "2026-10-03T07:25:42-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-03T07:25:42-03:00",
          "ultima_execucao_ok": "2026-10-03T07:25:42-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.72,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.34
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.6
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.13
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.53
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.99
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.06
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_02_1756",
      "data_hora": "2026-10-02T17:56:56-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 26,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1473,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 6.4,
        "descoberta_procedimentos": 4.0,
        "fontes_multiorgao": 14.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 10.71,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.09
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.47
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 8.93
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.21
          }
        }
      },
      "fim": "2026-10-02T17:57:22-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 101
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T17:57:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T17:57:20-03:00",
          "ultima_execucao_ok": "2026-10-02T17:57:22-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T17:57:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T17:57:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T17:57:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T17:57:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T17:57:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T17:56:56-03:00",
          "ultima_execucao_ok": "2026-10-02T17:56:56-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T17:56:56-03:00",
          "ultima_execucao_ok": "2026-10-02T17:56:56-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.56,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.87
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.43
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.6
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.92
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.29
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_02_1157",
      "data_hora": "2026-10-02T11:57:34-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 20,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1479,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.8,
        "descoberta_procedimentos": 4.9,
        "fontes_multiorgao": 12.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.79,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.19
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.52
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.43
          }
        }
      },
      "fim": "2026-10-02T11:57:54-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 99
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T11:57:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T11:57:52-03:00",
          "ultima_execucao_ok": "2026-10-02T11:57:54-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T11:57:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T11:57:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T11:57:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T11:57:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T11:57:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T11:57:34-03:00",
          "ultima_execucao_ok": "2026-10-02T11:57:34-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T11:57:34-03:00",
          "ultima_execucao_ok": "2026-10-02T11:57:34-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.42,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.6
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.24
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.78
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.19
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.16
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_02_0807",
      "data_hora": "2026-10-02T08:07:19-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 22,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1477,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.3,
        "descoberta_procedimentos": 4.0,
        "fontes_multiorgao": 14.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.87,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.0
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.57
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.23
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.08
          }
        }
      },
      "fim": "2026-10-02T08:07:41-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 97
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T08:07:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T08:07:39-03:00",
          "ultima_execucao_ok": "2026-10-02T08:07:41-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T08:07:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T08:07:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T08:07:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-02T08:07:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-02T08:07:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T08:07:19-03:00",
          "ultima_execucao_ok": "2026-10-02T08:07:19-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-02T08:07:19-03:00",
          "ultima_execucao_ok": "2026-10-02T08:07:19-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 9.06,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.19
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.64
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.83
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.65
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.66
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_01_1818",
      "data_hora": "2026-10-01T18:18:02-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 19,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1480,
      "fases_segundos": {
        "agenda_consultas": 1.2,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 12.8
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.47,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.64
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.09
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.53
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.2
          }
        }
      },
      "fim": "2026-10-01T18:18:21-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 95
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T18:18:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T18:18:19-03:00",
          "ultima_execucao_ok": "2026-10-01T18:18:21-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T18:18:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T18:18:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T18:18:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T18:18:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T18:18:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T18:18:02-03:00",
          "ultima_execucao_ok": "2026-10-01T18:18:02-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T18:18:02-03:00",
          "ultima_execucao_ok": "2026-10-01T18:18:02-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 7.7,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.5
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.58
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.84
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.19
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.98
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_01_1238",
      "data_hora": "2026-10-01T12:38:35-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 24,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1475,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 4.8,
        "fontes_multiorgao": 17.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.98,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.29
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.53
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.19
          }
        }
      },
      "fim": "2026-10-01T12:39:00-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 93
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T12:38:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T12:38:58-03:00",
          "ultima_execucao_ok": "2026-10-01T12:39:00-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T12:38:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403); nenhum canal respondeu — press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T12:38:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T12:38:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T12:38:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T12:38:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T12:38:35-03:00",
          "ultima_execucao_ok": "2026-10-01T12:38:35-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T12:38:35-03:00",
          "ultima_execucao_ok": "2026-10-01T12:38:35-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 9,
        "cache": 0,
        "tempo_total": 12.04,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.97
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.43
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.66
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.77
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 3.6
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.12
          },
          "edps": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 1.49
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_10_01_0838",
      "data_hora": "2026-10-01T08:38:24-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.5,
        "descoberta_procedimentos": 3.9,
        "fontes_multiorgao": 16.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.39,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.04
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.56
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.74
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.06
          }
        }
      },
      "fim": "2026-10-01T08:38:48-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 91
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T08:38:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T08:38:46-03:00",
          "ultima_execucao_ok": "2026-10-01T08:38:48-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T08:38:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T08:38:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 3,
          "erros": 3,
          "duracao_segundos": 2.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 13,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T08:38:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.1,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-10-01T08:38:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 9.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-10-01T08:38:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T08:38:24-03:00",
          "ultima_execucao_ok": "2026-10-01T08:38:24-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-10-01T08:38:24-03:00",
          "ultima_execucao_ok": "2026-10-01T08:38:24-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 11.24,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.27
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.13
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.78
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.74
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.33
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 3,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 5
    },
    {
      "id": "run_2026_09_30_1758",
      "data_hora": "2026-09-30T17:58:38-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 20,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1479,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 13.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.15,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.92
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.35
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.21
          }
        }
      },
      "fim": "2026-09-30T17:58:59-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 86
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T17:58:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T17:58:58-03:00",
          "ultima_execucao_ok": "2026-09-30T17:58:59-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T17:58:58-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T17:58:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T17:58:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T17:58:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.7,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T17:58:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T17:58:38-03:00",
          "ultima_execucao_ok": "2026-09-30T17:58:38-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T17:58:38-03:00",
          "ultima_execucao_ok": "2026-09-30T17:58:38-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.8,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.25
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.49
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.65
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.18
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.82
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_30_1215",
      "data_hora": "2026-09-30T12:15:33-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 42,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1457,
      "fases_segundos": {
        "agenda_consultas": 1.2,
        "atualizacao_procedimentos": 22.8,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 13.4
      },
      "http": {
        "chamadas": 18,
        "cache": 0,
        "falhas": 1,
        "tempo_total": 24.52,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.61
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.09
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 1,
            "tempo_total": 2.55
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-09-30T12:16:15-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 84
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T12:16:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T12:16:13-03:00",
          "ultima_execucao_ok": "2026-09-30T12:16:15-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T12:16:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T12:16:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T12:16:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T12:16:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T12:16:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T12:15:33-03:00",
          "ultima_execucao_ok": "2026-09-30T12:15:33-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T12:15:33-03:00",
          "ultima_execucao_ok": "2026-09-30T08:11:09-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 1,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.26,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.33
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.51
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.88
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.6
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.19
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.94
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_30_0811",
      "data_hora": "2026-09-30T08:11:09-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 22,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1477,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.8,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 15.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 7.28,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.82
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.33
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.32
          }
        }
      },
      "fim": "2026-09-30T08:11:32-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 82
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T08:11:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T08:11:29-03:00",
          "ultima_execucao_ok": "2026-09-30T08:11:32-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T08:11:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T08:11:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 3.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T08:11:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-30T08:11:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-30T08:11:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T08:11:09-03:00",
          "ultima_execucao_ok": "2026-09-30T08:11:09-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-30T08:11:09-03:00",
          "ultima_execucao_ok": "2026-09-30T08:11:09-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.1,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.42
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.58
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.17
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.67
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.87
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.36
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_29_1800",
      "data_hora": "2026-09-29T18:00:51-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 43,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1456,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 11.7,
        "descoberta_procedimentos": 4.9,
        "fontes_multiorgao": 25.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.33,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.53
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 16.66
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.1
          }
        }
      },
      "fim": "2026-09-29T18:01:35-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 79
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T18:01:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 3.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T18:01:32-03:00",
          "ultima_execucao_ok": "2026-09-29T18:01:35-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T18:01:33-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T18:01:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T18:01:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T18:01:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 15.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T18:01:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T18:00:51-03:00",
          "ultima_execucao_ok": "2026-09-29T18:00:51-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T18:00:51-03:00",
          "ultima_execucao_ok": "2026-09-29T18:00:51-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 19.85,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 3.35
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.59
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.82
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.33
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 10.55
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.14
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_29_1203",
      "data_hora": "2026-09-29T12:03:57-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 28,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1471,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 3.0,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 19.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 12.0,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.83
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.01
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 9.96
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-09-29T12:04:26-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 76
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T12:04:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 3.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T12:04:24-03:00",
          "ultima_execucao_ok": "2026-09-29T12:04:26-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T12:04:25-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T12:04:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 2,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 3.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T12:04:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T12:04:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.9,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T12:04:10-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T12:03:57-03:00",
          "ultima_execucao_ok": "2026-09-29T12:03:57-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T12:03:57-03:00",
          "ultima_execucao_ok": "2026-09-29T12:03:57-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.83,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 3.62
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.57
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.74
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.38
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.4
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.32
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_29_0823",
      "data_hora": "2026-09-29T08:23:06-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 22,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1477,
      "fases_segundos": {
        "agenda_consultas": 1.2,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 15.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.1,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.5
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.14
          }
        }
      },
      "fim": "2026-09-29T08:23:29-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 74
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T08:23:13-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T08:23:27-03:00",
          "ultima_execucao_ok": "2026-09-29T08:23:29-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T08:23:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T08:23:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 3,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T08:23:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-29T08:23:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 10.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-29T08:23:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T08:23:06-03:00",
          "ultima_execucao_ok": "2026-09-29T08:23:06-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-29T08:23:06-03:00",
          "ultima_execucao_ok": "2026-09-29T08:23:06-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 10.79,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.52
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.39
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.21
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 5.55
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.1
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 4
    },
    {
      "id": "run_2026_09_28_1359",
      "data_hora": "2026-09-28T13:59:41-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 26,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1473,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.1,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 19.9
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.71,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.68
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.92
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.96
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.15
          }
        }
      },
      "fim": "2026-09-28T14:00:07-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 70
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T13:59:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-28T14:00:05-03:00",
          "ultima_execucao_ok": "2026-09-28T14:00:07-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T14:00:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-28T13:59:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 7,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T13:59:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T13:59:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 14.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-28T13:59:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-28T13:59:41-03:00",
          "ultima_execucao_ok": "2026-09-28T13:59:41-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-28T13:59:41-03:00",
          "ultima_execucao_ok": "2026-09-28T13:59:41-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 28,
        "falhas": 7,
        "cache": 0,
        "tempo_total": 13.23,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.47
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.3
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.05
          },
          "eu_parliament": {
            "chamadas": 8,
            "falhas": 4,
            "tempo_total": 8.0
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.91
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_28_0842",
      "data_hora": "2026-09-28T08:42:52-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 43,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1456,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 22.9,
        "descoberta_procedimentos": 5.0,
        "fontes_multiorgao": 13.9
      },
      "http": {
        "chamadas": 18,
        "cache": 0,
        "falhas": 1,
        "tempo_total": 24.88,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.42
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 1,
            "tempo_total": 2.43
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.33
          }
        }
      },
      "fim": "2026-09-28T08:43:35-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 67
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T08:43:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-28T08:43:33-03:00",
          "ultima_execucao_ok": "2026-09-28T08:43:35-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T08:43:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-28T08:43:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T08:43:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-28T08:43:26-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 6.8,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-28T08:43:22-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-28T08:42:52-03:00",
          "ultima_execucao_ok": "2026-09-28T08:42:52-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-28T08:42:52-03:00",
          "ultima_execucao_ok": "2026-09-27T11:16:13-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 1,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.77,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.88
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.62
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.54
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.59
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.31
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.02
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_27_1651",
      "data_hora": "2026-09-27T16:51:48-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 33,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1466,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 7.8,
        "descoberta_procedimentos": 4.0,
        "fontes_multiorgao": 20.4
      },
      "http": {
        "chamadas": 19,
        "cache": 0,
        "falhas": 2,
        "tempo_total": 20.79,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.63
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 2,
            "tempo_total": 11.07
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.1
          }
        }
      },
      "fim": "2026-09-27T16:52:21-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 65
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T16:52:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T16:52:19-03:00",
          "ultima_execucao_ok": "2026-09-27T16:52:21-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T16:52:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T16:52:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T16:52:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T16:52:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 13.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T16:52:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T16:51:48-03:00",
          "ultima_execucao_ok": "2026-09-27T16:51:48-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T16:51:48-03:00",
          "ultima_execucao_ok": "2026-09-27T11:16:13-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 2,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 28,
        "falhas": 7,
        "cache": 0,
        "tempo_total": 13.75,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.97
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.4
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.34
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.43
          },
          "eu_parliament": {
            "chamadas": 8,
            "falhas": 4,
            "tempo_total": 7.57
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.33
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_27_1116",
      "data_hora": "2026-09-27T11:16:13-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 44,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1455,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 2.3,
        "descoberta_procedimentos": 21.4,
        "fontes_multiorgao": 19.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 24.52,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.65
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 17.88
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.82
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.17
          }
        }
      },
      "fim": "2026-09-27T11:16:58-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 63
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T11:16:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T11:16:56-03:00",
          "ultima_execucao_ok": "2026-09-27T11:16:58-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T11:16:57-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T11:16:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T11:16:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T11:16:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T11:16:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 5.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T11:16:13-03:00",
          "ultima_execucao_ok": "2026-09-27T11:16:13-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T11:16:13-03:00",
          "ultima_execucao_ok": "2026-09-27T11:16:13-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 14.58,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.41
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.49
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.84
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 4.11
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.84
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.08
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_27_0734",
      "data_hora": "2026-09-27T07:34:37-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 33,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1466,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 2.6,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 24.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.92,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.06
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.54
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.27
          }
        }
      },
      "fim": "2026-09-27T07:35:10-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 61
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T07:34:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T07:35:08-03:00",
          "ultima_execucao_ok": "2026-09-27T07:35:10-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T07:35:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T07:34:49-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T07:34:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-27T07:34:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 16.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-27T07:34:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T07:34:37-03:00",
          "ultima_execucao_ok": "2026-09-27T07:34:37-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-27T07:34:37-03:00",
          "ultima_execucao_ok": "2026-09-27T07:34:37-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 19.17,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.51
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.47
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.75
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.88
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 11.56
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.27
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_26_1621",
      "data_hora": "2026-09-26T16:21:29-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 23,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1476,
      "fases_segundos": {
        "agenda_consultas": 1.5,
        "atualizacao_procedimentos": 3.8,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 14.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 15.51,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.91
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.77
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 13.69
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.15
          }
        }
      },
      "fim": "2026-09-26T16:21:53-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 59
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T16:21:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T16:21:51-03:00",
          "ultima_execucao_ok": "2026-09-26T16:21:53-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T16:21:52-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T16:21:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T16:21:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T16:21:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T16:21:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T16:21:29-03:00",
          "ultima_execucao_ok": "2026-09-26T16:21:29-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T16:21:29-03:00",
          "ultima_execucao_ok": "2026-09-26T16:21:29-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 8.92,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.27
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.42
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.5
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.24
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.69
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.64
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.16
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_26_1021",
      "data_hora": "2026-09-26T10:21:56-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 25,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1474,
      "fases_segundos": {
        "agenda_consultas": 1.7,
        "atualizacao_procedimentos": 1.3,
        "descoberta_procedimentos": 4.8,
        "fontes_multiorgao": 17.5
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.17,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.13
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.33
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.57
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.16
          }
        }
      },
      "fim": "2026-09-26T10:22:22-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 57
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T10:22:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T10:22:19-03:00",
          "ultima_execucao_ok": "2026-09-26T10:22:22-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T10:22:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T10:22:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T10:22:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T10:22:12-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T10:22:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T10:21:56-03:00",
          "ultima_execucao_ok": "2026-09-26T10:21:56-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T10:21:56-03:00",
          "ultima_execucao_ok": "2026-09-26T10:21:56-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 12.33,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.56
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.59
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 2.36
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.51
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.81
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.25
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.25
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_26_0653",
      "data_hora": "2026-09-26T06:53:01-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 1 fichas consultadas, 1 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 1,
      "procedimentos_atualizados": 1,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 1,
      "proposicoes_atualizadas": 1,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [
        "ue_2021_0106_cod: ficha indisponível na API v2 do Parlamento",
        "ue_2025_2060_ini: ficha indisponível na API v2 do Parlamento",
        "ue_2025_2056_ini: ficha indisponível na API v2 do Parlamento"
      ],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 60,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1439,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 31.5,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 23.0
      },
      "http": {
        "chamadas": 21,
        "cache": 0,
        "falhas": 7,
        "tempo_total": 75.73,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.76
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.89
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 1,
            "falhas": 7,
            "tempo_total": 1.42
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.15
          }
        }
      },
      "fim": "2026-09-26T06:54:02-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 1,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 25.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 55
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T06:53:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T06:54:00-03:00",
          "ultima_execucao_ok": "2026-09-26T06:54:02-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T06:54:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T06:53:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T06:53:41-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-26T06:53:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 16.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T06:53:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-26T06:53:01-03:00",
          "ultima_execucao_ok": "2026-09-26T06:53:01-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-26T06:53:01-03:00",
          "ultima_execucao_ok": "2026-09-25T17:07:06-03:00",
          "itens_consultados": 1,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 2,
          "falhas_http": 7,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 6,
        "cache": 0,
        "tempo_total": 17.87,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.32
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.4
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.59
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.98
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 11.69
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.11
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_25_1707",
      "data_hora": "2026-09-25T17:07:06-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 28,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1471,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 7.4,
        "fontes_multiorgao": 17.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 9.25,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 4.04
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.11
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.09
          }
        }
      },
      "fim": "2026-09-25T17:07:34-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 53
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T17:07:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T17:07:31-03:00",
          "ultima_execucao_ok": "2026-09-25T17:07:34-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T17:07:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403); nenhum canal respondeu — press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-25T17:07:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.4,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T17:07:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T17:07:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 10.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-25T17:07:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T17:07:06-03:00",
          "ultima_execucao_ok": "2026-09-25T17:07:06-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T17:07:06-03:00",
          "ultima_execucao_ok": "2026-09-25T17:07:06-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 9,
        "cache": 0,
        "tempo_total": 12.73,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.37
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.38
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.32
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.39
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 5.74
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.1
          },
          "edps": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 1.43
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_25_1108",
      "data_hora": "2026-09-25T11:08:47-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 30,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1469,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 4.5,
        "descoberta_procedimentos": 5.8,
        "fontes_multiorgao": 18.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 19.58,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.03
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.7
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 16.03
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.82
          }
        }
      },
      "fim": "2026-09-25T11:09:18-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 51
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T11:08:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T11:09:13-03:00",
          "ultima_execucao_ok": "2026-09-25T11:09:18-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T11:09:14-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 3.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403); nenhum canal respondeu — press releases (listagem oficial): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/press-releases_en (HTTP 403); notícias oficiais (listagem): HTML indisponível: https://www.edps.europa.eu/press-publications/press-news/news_en (HTTP 403); publicações (opiniões e guidelines): HTML indisponível: https://www.edps.europa.eu/data-protection/our-work/publications_en (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-25T11:09:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T11:09:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T11:09:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 7.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-25T11:09:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T11:08:47-03:00",
          "ultima_execucao_ok": "2026-09-25T11:08:47-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T11:08:47-03:00",
          "ultima_execucao_ok": "2026-09-25T11:08:47-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 27,
        "falhas": 9,
        "cache": 0,
        "tempo_total": 13.7,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.18
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.58
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.77
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.23
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 2.69
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.08
          },
          "edps": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 3.17
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_25_0713",
      "data_hora": "2026-09-25T07:13:01-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament, eurlex.",
      "duracao_segundos": 106,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1393,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.9,
        "descoberta_procedimentos": 4.9,
        "fontes_multiorgao": 97.7
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 8.7,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.01
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.17
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 6.13
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.4
          }
        }
      },
      "fim": "2026-09-25T07:14:47-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 49
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T07:13:09-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T07:14:44-03:00",
          "ultima_execucao_ok": "2026-09-25T07:14:47-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T07:14:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-25T07:14:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T07:14:31-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T07:14:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 10.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "falha",
          "ultima_tentativa": "2026-09-25T07:13:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 5,
          "duracao_segundos": 80.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "atos do Jornal Oficial — série L (RSS oficial)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; atos do Jornal Oficial — série L (RSS oficial): RSS indisponível: https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222 (TimeoutError: The read operation timed out); AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T07:13:01-03:00",
          "ultima_execucao_ok": "2026-09-25T07:13:01-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-25T07:13:01-03:00",
          "ultima_execucao_ok": "2026-09-25T07:13:01-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament",
        "eurlex"
      ],
      "fontes_parciais": [
        "eu_commission"
      ],
      "http_fontes": {
        "chamadas": 29,
        "falhas": 9,
        "cache": 0,
        "tempo_total": 88.15,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.54
          },
          "eurlex": {
            "chamadas": 6,
            "falhas": 3,
            "tempo_total": 75.85
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.57
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.31
          },
          "eu_parliament": {
            "chamadas": 7,
            "falhas": 3,
            "tempo_total": 5.46
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.88
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.54
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_24_1706",
      "data_hora": "2026-09-24T17:06:13-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 35,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1464,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 3.3,
        "descoberta_procedimentos": 18.3,
        "fontes_multiorgao": 12.3
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 27.36,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.99
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 14.64
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 11.38
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.33
          }
        }
      },
      "fim": "2026-09-24T17:06:49-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 47
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T17:06:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T17:06:46-03:00",
          "ultima_execucao_ok": "2026-09-24T17:06:49-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T17:06:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T17:06:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T17:06:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T17:06:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T17:06:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.0,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T17:06:13-03:00",
          "ultima_execucao_ok": "2026-09-24T17:06:13-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T17:06:13-03:00",
          "ultima_execucao_ok": "2026-09-24T17:06:13-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 11.62,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.1
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.97
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.73
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.25
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.44
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.42
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_24_1045",
      "data_hora": "2026-09-24T10:45:53-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 24,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1475,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 4.3,
        "fontes_multiorgao": 17.1
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.31,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.02
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.62
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 3.34
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.34
          }
        }
      },
      "fim": "2026-09-24T10:46:17-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 45
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T10:46:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T10:46:15-03:00",
          "ultima_execucao_ok": "2026-09-24T10:46:17-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T10:46:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T10:46:03-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.7,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T10:46:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T10:46:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 9.0,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T10:46:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T10:45:53-03:00",
          "ultima_execucao_ok": "2026-09-24T10:45:53-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T10:45:53-03:00",
          "ultima_execucao_ok": "2026-09-24T10:45:53-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 16.57,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.39
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.48
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.71
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.73
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 8.98
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.71
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.57
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_24_0703",
      "data_hora": "2026-09-24T07:03:05-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 38,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1461,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 9.0,
        "descoberta_procedimentos": 4.7,
        "fontes_multiorgao": 23.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 35.34,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.23
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 33.22
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.21
          }
        }
      },
      "fim": "2026-09-24T07:03:43-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 43
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T07:03:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 17.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T07:03:41-03:00",
          "ultima_execucao_ok": "2026-09-24T07:03:43-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T07:03:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T07:03:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 6,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T07:03:38-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-24T07:03:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-24T07:03:37-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T07:03:05-03:00",
          "ultima_execucao_ok": "2026-09-24T07:03:05-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-24T07:03:05-03:00",
          "ultima_execucao_ok": "2026-09-24T07:03:05-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 22.75,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 17.05
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.53
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.46
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.63
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.27
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.03
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_23_1647",
      "data_hora": "2026-09-23T16:47:49-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 2 fichas consultadas, 2 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 2,
      "procedimentos_atualizados": 2,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 2,
      "proposicoes_atualizadas": 2,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [
        "ue_2021_0106_cod: ficha indisponível na API v2 do Parlamento",
        "ue_2025_2056_ini: ficha indisponível na API v2 do Parlamento"
      ],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 35,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1464,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 22.0,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 8.0
      },
      "http": {
        "chamadas": 19,
        "cache": 0,
        "falhas": 4,
        "tempo_total": 39.58,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 2,
            "falhas": 4,
            "tempo_total": 1.25
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.32
          }
        }
      },
      "fim": "2026-09-23T16:48:25-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 2,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 50.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 40
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T16:48:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T16:48:23-03:00",
          "ultima_execucao_ok": "2026-09-23T16:48:25-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T16:48:24-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T16:48:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 0,
          "itens_descartados": 10,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.9,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 5,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T16:48:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T16:48:20-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T16:48:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T16:47:49-03:00",
          "ultima_execucao_ok": "2026-09-23T16:47:49-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T16:47:49-03:00",
          "ultima_execucao_ok": "2026-09-23T10:50:09-03:00",
          "itens_consultados": 2,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 3,
          "falhas_http": 4,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 7.39,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.78
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.56
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.25
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.88
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 2.22
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.89
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_23_1050",
      "data_hora": "2026-09-23T10:50:09-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 16,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1483,
      "fases_segundos": {
        "agenda_consultas": 1.8,
        "atualizacao_procedimentos": 1.0,
        "descoberta_procedimentos": 4.2,
        "fontes_multiorgao": 9.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 4.72,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.19
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.49
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.67
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.39
          }
        }
      },
      "fim": "2026-09-23T10:50:25-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 38
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T10:50:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T10:50:22-03:00",
          "ultima_execucao_ok": "2026-09-23T10:50:25-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T10:50:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T10:50:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.3,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 5,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T10:50:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T10:50:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T10:50:17-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T10:50:09-03:00",
          "ultima_execucao_ok": "2026-09-23T10:50:09-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T10:50:09-03:00",
          "ultima_execucao_ok": "2026-09-23T10:50:09-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 8.71,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.45
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.74
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.25
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.47
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.21
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.54
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_23_0700",
      "data_hora": "2026-09-23T07:00:31-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 52,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1447,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 38.8,
        "descoberta_procedimentos": 4.5,
        "fontes_multiorgao": 8.1
      },
      "http": {
        "chamadas": 19,
        "cache": 0,
        "falhas": 2,
        "tempo_total": 62.42,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.73
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.92
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 2,
            "tempo_total": 20.5
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.27
          }
        }
      },
      "fim": "2026-09-23T07:01:24-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 36
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T07:01:16-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 2.1,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T07:01:22-03:00",
          "ultima_execucao_ok": "2026-09-23T07:01:24-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 0,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 10,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T07:01:23-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T07:01:19-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 5,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T07:01:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-23T07:01:21-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T07:01:18-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.3,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-23T07:00:31-03:00",
          "ultima_execucao_ok": "2026-09-23T07:00:31-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-23T07:00:31-03:00",
          "ultima_execucao_ok": "2026-09-22T16:52:20-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 2,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex",
        "parlamento"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 7.42,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 2.05
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.28
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.41
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.82
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.27
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.72
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 0.87
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 1,
        "edps": 0
      },
      "mudancas_multiorgao": 4
    },
    {
      "id": "run_2026_09_22_1652",
      "data_hora": "2026-09-22T16:52:20-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 34,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1465,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 18.7,
        "fontes_multiorgao": 13.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 20.49,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 15.09
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.36
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.22
          }
        }
      },
      "fim": "2026-09-22T16:52:55-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 32
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T16:52:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T16:52:52-03:00",
          "ultima_execucao_ok": "2026-09-22T16:52:55-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T16:52:53-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T16:52:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 4,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T16:52:47-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T16:52:51-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T16:52:43-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T16:52:20-03:00",
          "ultima_execucao_ok": "2026-09-22T16:52:20-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T16:52:20-03:00",
          "ultima_execucao_ok": "2026-09-22T16:52:20-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 12.8,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.41
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.23
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.88
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.24
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.59
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.07
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.38
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_22_1038",
      "data_hora": "2026-09-22T10:38:57-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 15,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1484,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 1.4,
        "descoberta_procedimentos": 5.0,
        "fontes_multiorgao": 7.4
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 6.47,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.66
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.53
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.13
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.13
          }
        }
      },
      "fim": "2026-09-22T10:39:12-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 30
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T10:39:05-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.7,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T10:39:10-03:00",
          "ultima_execucao_ok": "2026-09-22T10:39:12-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 9,
          "itens_descartados": 1,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 1.0,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 9
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T10:39:11-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T10:39:07-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 4,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T10:39:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.4,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T10:39:08-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T10:39:06-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T10:38:57-03:00",
          "ultima_execucao_ok": "2026-09-22T10:38:57-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T10:38:57-03:00",
          "ultima_execucao_ok": "2026-09-22T10:38:57-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 6.59,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.74
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.45
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.37
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.58
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.25
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 1.0
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.2
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_22_0658",
      "data_hora": "2026-09-22T06:58:50-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 4 fichas consultadas, 4 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 4,
      "procedimentos_atualizados": 4,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 4,
      "proposicoes_atualizadas": 4,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 26,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1473,
      "fases_segundos": {
        "agenda_consultas": 1.4,
        "atualizacao_procedimentos": 2.8,
        "descoberta_procedimentos": 4.8,
        "fontes_multiorgao": 17.2
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 9.62,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.81
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.23
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 7.35
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.23
          }
        }
      },
      "fim": "2026-09-22T06:59:16-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 4,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 27
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T06:58:59-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T06:59:12-03:00",
          "ultima_execucao_ok": "2026-09-22T06:59:16-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 2.2,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T06:59:15-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.3,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T06:59:02-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 1,
          "itens_descartados": 9,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 2.0,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 1
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 4,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T06:59:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-22T06:59:04-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 8.6,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-22T06:59:00-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.6,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T06:58:50-03:00",
          "ultima_execucao_ok": "2026-09-22T06:58:50-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-22T06:58:50-03:00",
          "ultima_execucao_ok": "2026-09-22T06:58:50-03:00",
          "itens_consultados": 4,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 16.54,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.45
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.62
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.49
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.97
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 8.58
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 2.17
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.26
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 4
    },
    {
      "id": "run_2026_09_21_1733",
      "data_hora": "2026-09-21T17:33:01-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 4,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 2 fichas consultadas, 2 procedimentos atualizados, 2 novos, 2 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 2,
      "procedimentos_atualizados": 2,
      "novos_procedimentos": 2,
      "proposicoes_verificadas": 2,
      "proposicoes_atualizadas": 2,
      "novas_proposicoes": 2,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 2,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 38,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1461,
      "fases_segundos": {
        "agenda_consultas": 3.5,
        "atualizacao_procedimentos": 1.2,
        "descoberta_procedimentos": 21.4,
        "fontes_multiorgao": 13.0
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 23.95,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 2.86
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 15.61
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 5.25
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.25
          }
        }
      },
      "fim": "2026-09-21T17:33:40-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 2,
      "proposicoes_monitoradas": 4,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 50.0,
      "snapshot_dataset": {
        "proposicoes_total": 4,
        "por_situacao": {
          "em_tramitacao": 4
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 23
      },
      "descoberta_candidatos": 3,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T17:33:27-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T17:33:38-03:00",
          "ultima_execucao_ok": "2026-09-21T17:33:40-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T17:33:39-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T17:33:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.8,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 3,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T17:33:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T17:33:36-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.5,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T17:33:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 4.7,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T17:33:01-03:00",
          "ultima_execucao_ok": "2026-09-21T17:33:01-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T17:33:01-03:00",
          "ultima_execucao_ok": "2026-09-21T17:33:01-03:00",
          "itens_consultados": 2,
          "novidades": 2,
          "erros": 0,
          "chamadas_http": 5,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 12.31,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.79
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 4.68
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.53
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.81
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 1.54
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.8
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.16
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 0,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 2
    },
    {
      "id": "run_2026_09_21_1218",
      "data_hora": "2026-09-21T12:18:34-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 2,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 2 fichas consultadas, 2 procedimentos atualizados, 0 novos, 4 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 2,
      "procedimentos_atualizados": 2,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 2,
      "proposicoes_atualizadas": 2,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 4,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)",
        "Parlamento Europeu — Open Data Portal v2 (eventos do procedimento)",
        "Parlamento Europeu — Open Data Portal v2 (procedures, ficha do dossiê)"
      ],
      "erros": [],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament.",
      "duracao_segundos": 27,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1472,
      "fases_segundos": {
        "agenda_consultas": 1.6,
        "atualizacao_procedimentos": 2.0,
        "descoberta_procedimentos": 4.6,
        "fontes_multiorgao": 19.7
      },
      "http": {
        "chamadas": 15,
        "cache": 0,
        "falhas": 0,
        "tempo_total": 5.19,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 1.05
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 1.08
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 2.8
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.27
          }
        }
      },
      "fim": "2026-09-21T12:19:02-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 2,
      "proposicoes_monitoradas": 2,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 100.0,
      "snapshot_dataset": {
        "proposicoes_total": 2,
        "por_situacao": {
          "em_tramitacao": 2
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 19
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T12:18:42-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T12:19:00-03:00",
          "ultima_execucao_ok": "2026-09-21T12:19:02-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 0,
          "duracao_segundos": 0.9,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T12:19:01-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.4,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T12:18:46-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 3,
          "itens_descartados": 7,
          "itens_duplicados": 0,
          "revisao_pendente": 1,
          "novidades": 1,
          "erros": 3,
          "duracao_segundos": 2.5,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 3
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 3,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T12:18:45-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T12:18:48-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 11.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: ModuleNotFoundError: No module named 'eu_parsers'; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T12:18:44-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 1.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T12:18:34-03:00",
          "ultima_execucao_ok": "2026-09-21T12:18:34-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T12:18:34-03:00",
          "ultima_execucao_ok": "2026-09-21T12:18:34-03:00",
          "itens_consultados": 2,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 3,
          "falhas_http": 0,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:api/v2/procedures",
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 4,
        "cache": 0,
        "tempo_total": 19.06,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 1.19
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.19
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.84
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 2.46
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 1,
            "tempo_total": 11.05
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.94
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.39
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 1,
        "eu_parliament": 0,
        "edpb": 0,
        "edps": 0
      },
      "mudancas_multiorgao": 3
    },
    {
      "id": "run_2026_09_21_0745",
      "data_hora": "2026-09-21T07:45:40-03:00",
      "tipo": "atualizacao",
      "status": "parcial",
      "motor": {
        "orcamento_segundos": 1500,
        "max_novas": 25,
        "workers": 5,
        "http_concorrencia": 4
      },
      "procedimentos_monitorados": 2,
      "sugestoes_curadoria": [],
      "resumo": "Verificação automática: 0 fichas consultadas, 0 procedimentos atualizados, 0 novos, 0 mudanças detectadas, 0 eventos adicionados.",
      "procedimentos_verificados": 0,
      "procedimentos_atualizados": 0,
      "novos_procedimentos": 0,
      "proposicoes_verificadas": 0,
      "proposicoes_atualizadas": 0,
      "novas_proposicoes": 0,
      "novas_leis_regulamentos": 0,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Comissão Europeia — Have Your Say (agenda de consultas)",
        "EUR-Lex — busca oficial (descoberta de procedimentos)"
      ],
      "erros": [
        "ue_2021_0106_cod: ficha indisponível na API v2 do Parlamento",
        "ue_2025_2058_ini: ficha indisponível na API v2 do Parlamento"
      ],
      "observacao": "Nada foi inventado: todos os registros novos ou alterados citam a URL oficial. Registros automáticos aguardam curadoria editorial. Status global: PARCIAL — fontes com falha: ai_office, edps, eu_council, eu_parliament, parlamento.",
      "duracao_segundos": 54,
      "orcamento_segundos": 1500,
      "orcamento_restante_segundos": 1445,
      "fases_segundos": {
        "agenda_consultas": 1.3,
        "atualizacao_procedimentos": 42.4,
        "descoberta_procedimentos": 4.4,
        "fontes_multiorgao": 6.6
      },
      "http": {
        "chamadas": 17,
        "cache": 0,
        "falhas": 4,
        "tempo_total": 81.85,
        "por_endpoint": {
          "comissao:info/law/better-regulation": {
            "chamadas": 2,
            "falhas": 0,
            "tempo_total": 0.67
          },
          "eurlex:search.html": {
            "chamadas": 10,
            "falhas": 0,
            "tempo_total": 0.95
          },
          "parlamento:api/v2/procedures": {
            "chamadas": 0,
            "falhas": 4,
            "tempo_total": 0.0
          },
          "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.14
          }
        }
      },
      "fim": "2026-09-21T07:46:35-03:00",
      "procedimentos_pendentes": 0,
      "procedimentos_distintos_verificados": 0,
      "proposicoes_monitoradas": 2,
      "proposicoes_pendentes": 0,
      "cobertura_pct": 0.0,
      "snapshot_dataset": {
        "proposicoes_total": 2,
        "por_situacao": {
          "em_tramitacao": 2
        },
        "normas_total": 2,
        "eventos_total": 1,
        "mudancas_registradas": 12
      },
      "descoberta_candidatos": 0,
      "descoberta_adiada": 0,
      "fontes_monitoradas": {
        "ai_office": {
          "nome": "European AI Office — Comissão Europeia (digital-strategy)",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T07:46:28-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://digital-strategy.ec.europa.eu/en/news?type=5%7C13",
            "https://digital-strategy.ec.europa.eu/en/policies/ai-office",
            "https://digital-strategy.ec.europa.eu/en/policies/regulatory-framework-ai",
            "https://digital-strategy.ec.europa.eu/en/policies/general-purpose-ai",
            "https://digital-strategy.ec.europa.eu/en/ai-act"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "notícias e comunicados do portal",
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "canais_falhos_obrigatorios": [
            "notícias e comunicados do portal"
          ],
          "canais_opcionais_falhos": [
            "página da AI Office (políticas e ações)",
            "AI Act — quadro regulatório e implementação",
            "General-Purpose AI — página oficial",
            "AI Act — página do serviço"
          ],
          "erro_detalhe": "notícias e comunicados do portal: ModuleNotFoundError: No module named 'eu_parsers'; página da AI Office (políticas e ações): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — quadro regulatório e implementação: ModuleNotFoundError: No module named 'eu_parsers'; General-Purpose AI — página oficial: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "edpb": {
          "nome": "EDPB — European Data Protection Board",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T07:46:33-03:00",
          "ultima_execucao_ok": "2026-09-21T07:46:35-03:00",
          "itens_consultados": 10,
          "itens_relevantes": 10,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 9,
          "erros": 0,
          "duracao_segundos": 0.8,
          "endpoints": [
            "https://www.edpb.europa.eu/feed/news_en"
          ],
          "canais_detalhe": [
            {
              "canal": "notícias e guidelines (RSS oficial)",
              "url": "https://www.edpb.europa.eu/feed/news_en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 10
            }
          ],
          "canais_ok": [
            "notícias e guidelines (RSS oficial)"
          ],
          "canais_falhos": [],
          "canais_falhos_obrigatorios": [],
          "canais_opcionais_falhos": [],
          "erro_detalhe": null,
          "atos_registrados": 9,
          "atos_descartados_por_retencao": 0
        },
        "edps": {
          "nome": "EDPS — European Data Protection Supervisor",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T07:46:34-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://www.edps.europa.eu/press-publications/press-news/press-releases_en",
            "https://www.edps.europa.eu/press-publications/press-news/news_en",
            "https://www.edps.europa.eu/data-protection/our-work/publications_en"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "press releases (listagem oficial)",
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "canais_falhos_obrigatorios": [
            "press releases (listagem oficial)"
          ],
          "canais_opcionais_falhos": [
            "notícias oficiais (listagem)",
            "publicações (opiniões e guidelines)"
          ],
          "erro_detalhe": "press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'; nenhum canal respondeu — press releases (listagem oficial): ModuleNotFoundError: No module named 'eu_parsers'; notícias oficiais (listagem): ModuleNotFoundError: No module named 'eu_parsers'; publicações (opiniões e guidelines): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_commission": {
          "nome": "Comissão Europeia — Press Corner e Have Your Say",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T07:46:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 10,
          "itens_relevantes": 2,
          "itens_descartados": 8,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 2,
          "erros": 3,
          "duracao_segundos": 1.6,
          "endpoints": [
            "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=1",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?page=2",
            "https://ec.europa.eu/info/law/better-regulation/have-your-say/initiatives_en?keywords={topico}"
          ],
          "canais_detalhe": [
            {
              "canal": "comunicados oficiais (Press Corner, RSS)",
              "url": "https://ec.europa.eu/commission/presscorner/api/rss?language=en",
              "itens_brutos": 10,
              "amostra_hierarquia": [],
              "itens_relevantes": 2
            }
          ],
          "canais_ok": [
            "comunicados oficiais (Press Corner, RSS)"
          ],
          "canais_falhos": [
            "consultas públicas e calls for evidence (Have Your Say)",
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "canais_falhos_obrigatorios": [
            "consultas públicas e calls for evidence (Have Your Say)"
          ],
          "canais_opcionais_falhos": [
            "consultas públicas (Have Your Say, página 2)",
            "consultas por tema (Have Your Say, keywords)"
          ],
          "erro_detalhe": "consultas públicas e calls for evidence (Have Your Say): ModuleNotFoundError: No module named 'eu_parsers'; consultas públicas (Have Your Say, página 2): ModuleNotFoundError: No module named 'eu_parsers'; consultas por tema (Have Your Say, keywords): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 2,
          "atos_descartados_por_retencao": 0
        },
        "eu_council": {
          "nome": "Conselho da UE — Registro público de documentos",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T07:46:30-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 4,
          "duracao_segundos": 0.5,
          "endpoints": [
            "https://www.consilium.europa.eu/en/documents/public-register/latest/",
            "https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2",
            "https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "últimos documentos adicionados ao registro",
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "canais_falhos_obrigatorios": [
            "últimos documentos adicionados ao registro"
          ],
          "canais_opcionais_falhos": [
            "últimos documentos (página 2)",
            "documentos legislativos preparatórios (página 1)"
          ],
          "erro_detalhe": "últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403); nenhum canal respondeu — últimos documentos adicionados ao registro: HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/ (HTTP 403); últimos documentos (página 2): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/latest/?page=2 (HTTP 403); documentos legislativos preparatórios (página 1): HTML indisponível: https://www.consilium.europa.eu/en/documents/public-register/preparatory-legislative-documents/ (HTTP 403)",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eu_parliament": {
          "nome": "Parlamento Europeu — Open Data Portal v2 / Legislative Train",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T07:46:32-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "itens_relevantes": 0,
          "itens_descartados": 0,
          "itens_duplicados": 0,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 6,
          "duracao_segundos": 1.1,
          "endpoints": [
            "https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson",
            "https://data.europarl.europa.eu/api/v2/procedures?text={topico}&limit=25&format=application/ld%2Bjson",
            "https://www.europarl.europa.eu/legislative-train/theme-a-europe-fit-for-the-digital-age",
            "https://www.europarl.europa.eu/legislative-train/file-artificial-intelligence-act",
            "https://www.europarl.europa.eu/news/en/press-room?keywords={topico}"
          ],
          "canais_detalhe": [],
          "canais_ok": [],
          "canais_falhos": [
            "API v2 — procedimentos do termo parlamentar corrente",
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "canais_falhos_obrigatorios": [
            "API v2 — procedimentos do termo parlamentar corrente"
          ],
          "canais_opcionais_falhos": [
            "API v2 — procedimentos de IA (busca por texto)",
            "Legislative Train — Europe fit for the digital age",
            "Legislative Train — unicidade e poderes de execução",
            "sala de imprensa — por tema"
          ],
          "erro_detalhe": "API v2 — procedimentos do termo parlamentar corrente: JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?parliamentary_term=10&limit=100&format=application/ld%2Bjson; API v2 — procedimentos de IA (busca por texto): JSON indisponível: https://data.europarl.europa.eu/api/v2/procedures?text=artificial%20intelligence&limit=25&format=application/ld%2Bjson; Legislative Train — Europe fit for the digital age: ModuleNotFoundError: No module named 'eu_parsers'; Legislative Train — unicidade e poderes de execução: ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex": {
          "nome": "EUR-Lex — Jornal Oficial da União Europeia (Publications Office)",
          "status": "parcial",
          "ultima_tentativa": "2026-09-21T07:46:29-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 100,
          "itens_relevantes": 0,
          "itens_descartados": 1,
          "itens_duplicados": 99,
          "revisao_pendente": 0,
          "novidades": 0,
          "erros": 3,
          "duracao_segundos": 0.2,
          "endpoints": [
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={year}",
            "https://eur-lex.europa.eu/search.html?text=%22{topico}%22&scope=EURLEX&type=quick&amount=25&page=1&DD_YEAR={prev_year}",
            "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
            "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02024R1689-20260727"
          ],
          "canais_detalhe": [
            {
              "canal": "atos do Jornal Oficial — série L (RSS oficial)",
              "url": "https://eur-lex.europa.eu/EN/display-feed.rss?rssId=222",
              "itens_brutos": 100,
              "amostra_hierarquia": [],
              "itens_relevantes": 0
            }
          ],
          "canais_ok": [
            "atos do Jornal Oficial — série L (RSS oficial)"
          ],
          "canais_falhos": [
            "busca por tema (legislação do ano corrente)",
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "canais_falhos_obrigatorios": [
            "busca por tema (legislação do ano corrente)"
          ],
          "canais_opcionais_falhos": [
            "busca por tema (legislação do ano anterior)",
            "AI Act — versão consolidada (ato âncora)"
          ],
          "erro_detalhe": "busca por tema (legislação do ano corrente): ModuleNotFoundError: No module named 'eu_parsers'; busca por tema (legislação do ano anterior): ModuleNotFoundError: No module named 'eu_parsers'; AI Act — versão consolidada (ato âncora): ModuleNotFoundError: No module named 'eu_parsers'",
          "atos_registrados": 0,
          "atos_descartados_por_retencao": 0
        },
        "eurlex_motor": {
          "nome": "EUR-Lex — busca oficial (motor legislativo)",
          "status": "ok",
          "ultima_tentativa": "2026-09-21T07:45:40-03:00",
          "ultima_execucao_ok": "2026-09-21T07:45:40-03:00",
          "itens_consultados": 10,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 10,
          "falhas_http": 0,
          "endpoints": [
            "https://eur-lex.europa.eu/"
          ],
          "canais_ok": [
            "eurlex_motor:search.html"
          ],
          "canais_falhos": [],
          "erro_detalhe": null
        },
        "parlamento": {
          "nome": "Parlamento Europeu — Open Data Portal v2 (motor legislativo)",
          "status": "falha",
          "ultima_tentativa": "2026-09-21T07:45:40-03:00",
          "ultima_execucao_ok": null,
          "itens_consultados": 0,
          "novidades": 0,
          "erros": 0,
          "chamadas_http": 1,
          "falhas_http": 4,
          "endpoints": [
            "https://data.europarl.europa.eu/"
          ],
          "canais_ok": [
            "parlamento:legislative-train/theme-a-europe-fit-for-the-digital-age"
          ],
          "canais_falhos": [
            "parlamento:api/v2/procedures"
          ],
          "erro_detalhe": null
        }
      },
      "status_global": "PARCIAL",
      "fontes_falha": [
        "ai_office",
        "edps",
        "eu_council",
        "eu_parliament",
        "parlamento"
      ],
      "fontes_parciais": [
        "eu_commission",
        "eurlex"
      ],
      "http_fontes": {
        "chamadas": 25,
        "falhas": 5,
        "cache": 0,
        "tempo_total": 6.05,
        "por_orgao": {
          "ai_office": {
            "chamadas": 5,
            "falhas": 0,
            "tempo_total": 0.83
          },
          "eurlex": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 0.21
          },
          "eu_council": {
            "chamadas": 3,
            "falhas": 3,
            "tempo_total": 0.5
          },
          "eu_commission": {
            "chamadas": 4,
            "falhas": 0,
            "tempo_total": 1.6
          },
          "eu_parliament": {
            "chamadas": 5,
            "falhas": 2,
            "tempo_total": 1.05
          },
          "edpb": {
            "chamadas": 1,
            "falhas": 0,
            "tempo_total": 0.79
          },
          "edps": {
            "chamadas": 3,
            "falhas": 0,
            "tempo_total": 1.07
          }
        }
      },
      "novidades_multiorgao": {
        "ai_office": 0,
        "eurlex": 0,
        "eu_council": 0,
        "eu_commission": 2,
        "eu_parliament": 0,
        "edpb": 9,
        "edps": 0
      },
      "mudancas_multiorgao": 12
    },
    {
      "id": "bootstrap_ue_2026_09_18",
      "data_hora": "2026-09-18T10:00:00-03:00",
      "fim": "2026-09-18T10:00:00-03:00",
      "tipo": "bootstrap",
      "status": "concluida",
      "resumo": "Carga inicial curada do monitor UE: dados extraídos manualmente de fontes oficiais verificadas em 18/09/2026 (Open Data Portal do Parlamento Europeu — API v2, EUR-Lex, comunicados institucionais do Parlamento e do Conselho, portal Have Your Say e feed do EDPB). Primeira execução automática seguirá este registro.",
      "procedimentos_monitorados": 2,
      "procedimentos_pendentes": [],
      "procedimentos_distintos_verificados": 2,
      "cobertura_pct": 100.0,
      "procedimentos_verificados": 2,
      "procedimentos_atualizadas": 0,
      "procedimentos_atualizados": 0,
      "novos_procedimentos": 0,
      "novas_leis_regulamentos": 1,
      "mudancas_detectadas": 0,
      "eventos_adicionados": 0,
      "fontes_consultadas": [
        "Parlamento Europeu — Open Data Portal v2 (procedures/2021-0106)",
        "EUR-Lex — CELEX 32024R1689 e 52021PC0206",
        "Comunicado do Parlamento Europeu — adoção no plenário (13/03/2024)",
        "Comunicado do Conselho da UE — aprovação final (21/05/2024)",
        "Comissão Europeia — Have Your Say (consultas abertas)",
        "EDPB — feed oficial de notícias"
      ],
      "erros": [],
      "sugestoes_curadoria": [],
      "fontes_monitoradas": {},
      "observacao": "Registro de carga inicial (curadoria). Nada foi inventado: todos os registros citam a URL oficial."
    }
  ]
}
