Stenogram Sejmu · 2026-07-29

Wojciech Wrochna

Kadencja 10 · posiedzenie 63 · wypowiedź 104

Brak głosu imiennego z tego dnia, który potwierdzałby klub mówcy.

Pełna wypowiedź

10. kadencja, 63. posiedzenie, 1. dzień (29-07-2026) 5. punkt porządku dziennego: Sprawozdanie Komisji do Spraw Deregulacji oraz Komisji do Spraw Energii, Klimatu i Aktywów Państwowych o komisyjnym projekcie ustawy zmieniającej ustawę o zmianie ustawy - Prawo energetyczne oraz niektórych innych ustaw (druki nr 2750 i 2793). Sekretarz Stanu w Ministerstwie Energii Wojciech Wrochna: Bardzo dziękuję. Szanowna Pani Marszałek! Szanowni Państwo! Postaram się bardzo krótko, ale precyzyjnie, odpowiedzieć na te pytania. Na początek powiem kilka zdań o samej ustawie. Jest to rewolucyjna ustawa zmieniająca model funkcjonowania przyłączania do sieci. Jej celem jest pozbycie się projektów widmo, które blokują przyłączanie źródeł do sieci i w konsekwencji blokują możliwości rozwoju nowych źródeł, w tym tych, które są w stanie zapewnić nam tanią energię, czyli źródeł odnawialnych i magazynów. Projekty blokujące, które długo trwają, oczywiście generują dodatkowe, istotne koszty. Ta ustawa to zmienia, co już przynosi skutki i pozytywne rezultaty. Jest ona chwalona oraz bardzo dobrze oceniana zarówno przez sektor, jak i naszych partnerów z Unii Europejskiej. Do tego często, czy to przez komisję, czy przez innych operatorów, jest stawiana jako wzór rozwiązań, które należy przyjmować. W konsekwencji uważamy, jesteśmy przekonani, że ta ustawa to naprawdę dobre rozwiązanie. Jeśli chodzi o poprawkę, która jest dzisiaj omawiana - tutaj chciałbym podziękować komisji, która to rozwiązanie zaproponowała - to, szanowni państwo, jest to poprawka, która nie jest związana z pierwotną propozycją i przedłożeniem rządowym. To przedłożenie rządowe, które zostało skierowane do Sejmu, zawierało inne rozwiązania. Te rozwiązania były spójne i nie zawierały żadnych wątpliwości interpretacyjnych. Wątpliwości interpretacyjne pojawiły się w związku z poprawką, która została wprowadzona na etapie prac senackich. Poprawka ta, za zgodą rządu, spowodowała wydłużenie okresu przejściowego dla projektów w toku. Uznaliśmy, że to rozwiązanie, które zostało zaproponowane w Senacie, chcąc pójść jeszcze na rękę przedsiębiorcom, jest rozwiązaniem zasadnym. Problemem jest to, że poprawka, która legislacyjnie też jest poprawna, spowodowała nawet nie tyle wątpliwości interpretacyjne, ile pewną rozbieżność pomiędzy celem poprawki, która została wprowadzona w Senacie, a jej możliwą literalną wykładnią. Chcąc wrócić do celu i uniknięcia wątpliwości w zakresie możliwych wykładni w treści poprawki zgłoszonej w Senacie do tej ustawy, zgadzamy się z tym, co zaproponowała tutaj Komisja. Zróbmy poprawkę, która w precyzyjny sposób doprowadzi do tego, że cel poprawki wprowadzonej w Senacie zostanie wypełniony. Ta ustawa może dzisiaj funkcjonować bez żadnego problemu i bez żadnych wątpliwości interpretacyjnych. Te wątpliwości interpretacyjne są, powtórzę raz jeszcze, związane z celem poprawki, który został wprowadzony w Senacie. W konsekwencji jesteśmy za tym, żeby tę poprawkę przyjąć i żeby te wątpliwości zostały rozstrzygnięte w taki sposób, że cel tej poprawki senackiej zostanie uwzględniony i zaimplementowany. Jednocześnie chcę zwrócić uwagę na to, że skala konsekwencji dzisiaj obowiązującego przepisu jest stosunkowo niewielka. W obecnej chwili te dzisiaj obowiązujące przepisy obejmują tylko i wyłącznie najstarsze umowy i sprawne wprowadzenie tej poprawki, przyjęcie przez Sejm, Senat i podpisanie przez prezydenta, spowoduje, na co oczywiście mamy nadzieję, że istotnych problemów ze stosowaniem tej ustawy w zakresie wielkości, liczby przedsiębiorców objętych tym pierwotnym rozwiązaniem nie będzie. Ilu przedsiębiorców skorzysta z tej zmiany, nad którą dzisiaj procedujemy, o której rozmawiamy? Wszyscy ci, którzy są objęci procedurami przyłączeniowymi. W poprawce, którą w tej chwili omawiamy, zaproponowane są rozwiązania, które wstecznie dotyczą wszystkich projektów objętych tymi procedurami. W konsekwencji nie doprowadzi to do żadnych zmian, które byłyby nieintencjonalne w kontekście poprawki zgłoszonej przez Senat. Takie rozwiązanie, pomimo że działa z mocą wsteczną, jest dla adresatów normy prawnej korzystne, jest w 100% rozwiązaniem akceptowalnym z perspektywy konstytucyjnej. Jeżeli chodzi o przedsiębiorców, którzy zostali już objęci konsekwencjami tej ustawy i ponieśli wyższe opłaty, to oczywiście wszystko to, co zostało wpłacone w większej wysokości, będzie podlegać zwrotowi - tak jak powiedziałem, w stosunku do wszystkich przedsiębiorców, którzy wnieśli takie wyższe wpłaty. Jeżeli chodzi o wpływ na taryfy dynamiczne, pojawiło się takie pytanie, to szanowni państwo, ta ustawa wprost tego nie dotyczy. Odblokowanie potencjału przyłączania nowych źródeł, obniżanie taryf jest oczywiście potencjalną możliwą konsekwencją tej ustawy, ale pośrednią, dlatego że na ilość dostępnych i oferowanych taryf dynamicznych wpływa polityka operatorów i możliwość kształtowania ich w taki sposób. Natomiast ta ustawa, dynamizując możliwość transformacji polskiego systemu, na pewno pozytywnie się do tego może przyczynić. Było pytanie, co prawda również w stosunkowo niewielki sposób powiązane bezpośrednio z ustawą, dotyczące rozwoju małych reaktorów jądrowych, ale bardzo chętnie na nie odpowiem. Ta ustawa z perspektywy małych reaktorów jądrowych czy jakichkolwiek źródeł, dla których chce się uzyskać warunki przyłączenia, w związku z tym, że porządkuje się system, w praktyce powoduje, że będzie dostępne więcej mocy przyłączeniowej, i jest tak naprawdę ułatwieniem dla wszystkich typów inwestorów we wszystkie typy źródeł. Jeżeli chodzi o małe reaktory jądrowe, tam gdzie zostały złożone wnioski o wydanie warunków przyłączenia, a obecnie mamy złożony tylko jeden wniosek, warunki zostały wydane. Z perspektywy możliwości uzyskiwania warunków przyłączenia i procedowania tego typu inwestycji to się zadziało, warunki zostały wydane. Sieć nie ogranicza możliwości rozwoju małych reaktorów jądrowych. Było kilka tego typu pytań dotyczących tego, jak ta ustawa wpływa na rozwój sieci, a jak rozwój sieci wpływa na system elektroenergetyczny. Szanowni państwo, umożliwienie przyłączania większej liczby źródeł, umożliwienie przyłączania tych źródeł bez blokowania wydawania warunków przyłączenia generuje niższe koszty dla systemu, powoduje, że projekty, które są bardziej zaawansowane, które są z finansowaniem, a w konsekwencji realizowane w krótkim czasie i tańsze, będą realizowane. Powinno to doprowadzić do optymalnego alokowania mocy przyłączeniowych do lepszych projektów, obniżania ceny i w perspektywie średnio- i długoterminowej do tego, że rozwój sieci będzie optymalny, a jeżeli będzie optymalny, będzie oczywiście tańszy, co przełoży się na mniejsze czy korzystniejsze taryfy i niższe koszty energii. Ostatnie dwa pytania. Pytanie w zakresie infrastruktury cyfrowej rozumiem na dwa sposoby. Po pierwsze, chodzi o to, w jaki sposób infrastruktura cyfrowa, w jaki sposób wykorzystanie nowoczesnych źródeł mogą wpływać na rozwój sieci. Oczywiście budowa centrów danych, głęboka analityka przy wykorzystaniu sztucznej inteligencji optymalizuje i ma możliwość optymalizowania zarówno funkcjonowania sieci na co dzień, jak i planowania rozwoju sieci. Z drugiej strony przyłączanie i budowa nowoczesnej infrastruktury cyfrowej są elementami, które również są objęte tą ustawą, nowelizacją, o której dzisiaj rozmawiamy. Bo sprawny rozwój sieci to jest również możliwość lepszego, sprawniejszego i tańszego przyłączania do sieci tego typu instalacji, oczywiście pośrednio. Mówimy tutaj o instalacjach odbiorczych. Ostatnia kwestia, która się pojawiła, też w dosyć pośredni sposób związana z ustawą, dotyczy kosztów energii w Polsce i wpływu polityki unijnej na koszty energii. Ten wpływ oczywiście istnieje. Jest to związane z politykami energetycznymi, z politykami klimatycznymi, które w Unii Europejskiej obowiązują już od początku tego wieku. To nie jest nowy pomysł, system ETS funkcjonuje już od dziesiątków lat. Istotą i celem mądrej polityki energetycznej powinno być to, żeby w warunkach regulacyjnych, w jakich się znajdujemy, umieć doprowadzić do rozwiązań, które tę cenę będą obniżać, czyli optymalizować miks źródeł wytwórczych, obniżać koszty systemowe w takich warunkach, w jakich funkcjonujemy. Rozumiem nośność polityczną haseł typu: wyjdźmy z europejskiego systemu uprawnień do emisji CO2, szanowni państwo. Natomiast z jednej strony nie jest to zakres zadań Ministerstwa Energii, nie chcę się o tym wprost wypowiadać. Z drugiej strony wszyscy ci, którzy wiedzą, w jaki sposób funkcjonuje Unia Europejska, powinni mieć jasną świadomość tego, że unijnej polityki energetycznej, polityki klimatycznej, która jest decydowana na poziomie Unii Europejskiej większością kwalifikowaną, nie jesteśmy w stanie wypowiedzieć indywidualnie. Zamiast tworzyć pomysły, które w mojej ocenie są trudne do zrealizowania, mówię tutaj o osobistym podejściu, trzeba szukać takich rozwiązań, które będą zapewniać optymalne scenariusze rozwoju polskiej energetyki. Dzisiaj jeśli chodzi o rozwój źródeł, które są w stanie generować niskie koszty energii, to jest to przede wszystkim lądowa energetyka wiatrowa. To są dane, to są fakty, trudno z nimi dyskutować. Aczkolwiek podkreślam to cały czas, patrzymy na wytwarzanie kosztu energii całościowo. Polityka energetyczna Polski, nad którą pracujemy, będzie patrzeć na koszty systemowe, nie tylko na levelized cost of electricity, czyli ten koszt wytworzenia, ale na wszystkie koszty systemowe, które są związane z funkcjonowaniem źródeł o różnej charakterystyce i różnych typów źródeł. Uspokajam wszystkich państwa, że zarówno źródła sterowalne, jak i źródła niesterowalne w takim zakresie, w jakim wpływają kosztowo na system energetyczny, będą odpowiednio uwzględniane i ich dobór poprzez polityki państwowe i regulacyjne będzie działał tak, żeby optymalizować koszt systemowy i obniżać cenę energii rozumianą całościowo, czyli cenę energii i wszystkie opłaty systemowe dla odbiorcy indywidualnego. W ten sposób powinna funkcjonować mądra, racjonalna i pragmatyczna polityka energetyczna. Szanowni Państwo! Pani Marszałek! Dziękuję bardzo. (Oklaski) Przebieg posiedzenia

Otwórz zachowany oryginał · Źródło urzędowe

Dowód treści wypowiedzi

Dowód kolejności na liście dnia

Kontekst w stenogramie

  1. Wcześniej · wypowiedź 102 Anna Kwiecień 10. kadencja, 63. posiedzenie, 1. dzień (29-07-2026) 5. punkt porządku dziennego: Sprawozdanie Komisji do Spraw Deregulacji oraz Komisji do Spraw Energii, Klimatu i Aktywów Państwowych o komisyjnym projekcie ustawy zmieniającej ustawę o zmi
  2. Wcześniej · wypowiedź 103 Włodzimierz Skalik 10. kadencja, 63. posiedzenie, 1. dzień (29-07-2026) 5. punkt porządku dziennego: Sprawozdanie Komisji do Spraw Deregulacji oraz Komisji do Spraw Energii, Klimatu i Aktywów Państwowych o komisyjnym projekcie ustawy zmieniającej ustawę o zmi
  3. Później · wypowiedź 105 Ryszard Petru 10. kadencja, 63. posiedzenie, 1. dzień (29-07-2026) 5. punkt porządku dziennego: Sprawozdanie Komisji do Spraw Deregulacji oraz Komisji do Spraw Energii, Klimatu i Aktywów Państwowych o komisyjnym projekcie ustawy zmieniającej ustawę o zmi
  4. Później · wypowiedź 106 Jerzy Meysztowicz 10. kadencja, 63. posiedzenie, 1. dzień (29-07-2026) 5. punkt porządku dziennego: Sprawozdanie Komisji do Spraw Deregulacji oraz Komisji do Spraw Energii, Klimatu i Aktywów Państwowych o komisyjnym projekcie ustawy zmieniającej ustawę o zmi
1. (2.08ms; exec 2.05 + fetch 0.03; rows 1) SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, d…
2. (0.79ms; exec 0.78 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
3. (0.74ms; exec 0.72 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3443 ORDER BY ordinal
4. (0.84ms; exec 0.82 + fetch 0.03; rows 4) SELECT statement.object_id, statement.statement_number, statement.speaker_name, dayStatement.ordinal FROM sejm_transcrip…
5. (0.86ms; exec 0.85 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
6. (0.59ms; exec 0.58 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
7. (0.38ms; exec 0.37 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3441 ORDER BY ordinal
8. (0.64ms; exec 0.64 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
9. (0.61ms; exec 0.59 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
10. (0.5ms; exec 0.49 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3442 ORDER BY ordinal
11. (0.73ms; exec 0.72 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
12. (0.56ms; exec 0.55 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
13. (0.4ms; exec 0.39 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3444 ORDER BY ordinal
14. (0.67ms; exec 0.67 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
15. (0.66ms; exec 0.65 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
16. (1.52ms; exec 1.5 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3445 ORDER BY ordinal
17. (1.77ms; exec 1.76 + fetch 0.01; rows 0) SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_vote…
toggle
1. (2.08ms; exec 2.05 + fetch 0.03; rows 1) SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, day.object_id AS day_id, day.term, day.proceeding_number, day.source_date, day.current_revision_id AS day_revision_id, dayStatement.ordinal, dayEvidence.id AS list_evidence_id, dayEvidence.selector_type AS list_selector_type, dayEvidence.selector AS list_selector, dayFetch.id AS list_fetch_id, dayFetch.requested_url AS list_source_url, dayArtifact.sha256 AS list_sha256, binding.artifact_id, binding.evidence_id AS transcript_evidence_id, transcriptEvidence.selector_type AS transcript_selector_type, transcriptEvidence.selector AS transcript_selector, transcriptFetch.id AS transcript_fetch_id, transcriptFetch.requested_url AS transcript_source_url, artifact.sha256 AS transcript_sha256, artifact.detected_mime, artifact.byte_size FROM sejm_statements s JOIN sejm_transcript_days day ON day.object_id = s.transcript_day_id LEFT JOIN sejm_mp_identities mp ON mp.term = day.term AND mp.mp_number = s.source_member_id LEFT JOIN sejm_transcript_day_statements dayStatement ON dayStatement.day_id = day.object_id AND dayStatement.day_revision_id = day.current_revision_id AND dayStatement.statement_id = s.object_id LEFT JOIN evidence dayEvidence ON dayEvidence.id = dayStatement.evidence_id LEFT JOIN fetches dayFetch ON dayFetch.id = dayEvidence.fetch_id LEFT JOIN artifacts dayArtifact ON dayArtifact.id = dayEvidence.artifact_id LEFT JOIN documents document ON document.owner_object_id = day.object_id AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', s.statement_number) LEFT JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) LEFT JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL LEFT JOIN evidence transcriptEvidence ON transcriptEvidence.id = binding.evidence_id LEFT JOIN fetches transcriptFetch ON transcriptFetch.id = transcriptEvidence.fetch_id LEFT JOIN artifacts artifact ON artifact.id = binding.artifact_id WHERE s.object_id = 13995 LIMIT 1
2. (0.79ms; exec 0.78 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 14077 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
3. (0.74ms; exec 0.72 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3443 ORDER BY ordinal
4. (0.84ms; exec 0.82 + fetch 0.03; rows 4) SELECT statement.object_id, statement.statement_number, statement.speaker_name, dayStatement.ordinal FROM sejm_transcript_day_statements dayStatement JOIN sejm_statements statement ON statement.object_id = dayStatement.statement_id WHERE dayStatement.day_id = 13890 AND dayStatement.day_revision_id = 13480 AND dayStatement.ordinal BETWEEN 102 AND 106 AND statement.object_id <> 13995 ORDER BY dayStatement.ordinal
5. (0.86ms; exec 0.85 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13890 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 102) LIMIT 1
6. (0.59ms; exec 0.58 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 14065 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
7. (0.38ms; exec 0.37 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3441 ORDER BY ordinal
8. (0.64ms; exec 0.64 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13890 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 103) LIMIT 1
9. (0.61ms; exec 0.59 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 14066 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
10. (0.5ms; exec 0.49 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3442 ORDER BY ordinal
11. (0.73ms; exec 0.72 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13890 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 105) LIMIT 1
12. (0.56ms; exec 0.55 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 14078 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
13. (0.4ms; exec 0.39 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3444 ORDER BY ordinal
14. (0.67ms; exec 0.67 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13890 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 106) LIMIT 1
15. (0.66ms; exec 0.65 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 14079 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
16. (1.52ms; exec 1.5 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3445 ORDER BY ordinal
17. (1.77ms; exec 1.76 + fetch 0.01; rows 0) SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_votes vote ON vote.object_id = individual.vote_id AND vote.current_revision_id = individual.vote_revision_id JOIN object_revisions revision ON revision.id = vote.current_revision_id JOIN evidence e ON e.id = individual.evidence_id JOIN fetches f ON f.id = e.fetch_id WHERE vote.term = 10 AND vote.sitting_number = 63 AND individual.mp_number = 0 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-29' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
Top slow:
2.08ms SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.objec…
1.77ms SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes indiv…
1.52ms SELECT source_text FROM text_segments WHERE extraction_id = 3445 ORDER BY ordinal
toggle
2.08ms SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, day.object_id AS day_id, day.term, day.proceeding_number, day.source_date, day.current_revision_id AS day_revision_id, dayStatement.ordinal, dayEvidence.id AS list_evidence_id, dayEvidence.selector_type AS list_selector_type, dayEvidence.selector AS list_selector, dayFetch.id AS list_fetch_id, dayFetch.requested_url AS list_source_url, dayArtifact.sha256 AS list_sha256, binding.artifact_id, binding.evidence_id AS transcript_evidence_id, transcriptEvidence.selector_type AS transcript_selector_type, transcriptEvidence.selector AS transcript_selector, transcriptFetch.id AS transcript_fetch_id, transcriptFetch.requested_url AS transcript_source_url, artifact.sha256 AS transcript_sha256, artifact.detected_mime, artifact.byte_size FROM sejm_statements s JOIN sejm_transcript_days day ON day.object_id = s.transcript_day_id LEFT JOIN sejm_mp_identities mp ON mp.term = day.term AND mp.mp_number = s.source_member_id LEFT JOIN sejm_transcript_day_statements dayStatement ON dayStatement.day_id = day.object_id AND dayStatement.day_revision_id = day.current_revision_id AND dayStatement.statement_id = s.object_id LEFT JOIN evidence dayEvidence ON dayEvidence.id = dayStatement.evidence_id LEFT JOIN fetches dayFetch ON dayFetch.id = dayEvidence.fetch_id LEFT JOIN artifacts dayArtifact ON dayArtifact.id = dayEvidence.artifact_id LEFT JOIN documents document ON document.owner_object_id = day.object_id AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', s.statement_number) LEFT JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) LEFT JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL LEFT JOIN evidence transcriptEvidence ON transcriptEvidence.id = binding.evidence_id LEFT JOIN fetches transcriptFetch ON transcriptFetch.id = transcriptEvidence.fetch_id LEFT JOIN artifacts artifact ON artifact.id = binding.artifact_id WHERE s.object_id = 13995 LIMIT 1
1.77ms SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_votes vote ON vote.object_id = individual.vote_id AND vote.current_revision_id = individual.vote_revision_id JOIN object_revisions revision ON revision.id = vote.current_revision_id JOIN evidence e ON e.id = individual.evidence_id JOIN fetches f ON f.id = e.fetch_id WHERE vote.term = 10 AND vote.sitting_number = 63 AND individual.mp_number = 0 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-29' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
1.52ms SELECT source_text FROM text_segments WHERE extraction_id = 3445 ORDER BY ordinal
N+1 candidates:
5× (3.21ms) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing…
5× (3.54ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (2.9ms) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON versi…
toggle
5× (3.21ms) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = ? AND run.state = ? ORDER BY CASE extraction.quality_state WHEN ? THEN ? WHEN ? THEN ? ELSE ? END, run.finished_at DESC, extraction.id DESC LIMIT ?
5× (3.54ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (2.9ms) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = ? AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = ? AND document.document_kind = ? AND document.source_document_key = CONCAT(?, ?) LIMIT ?
PHP: 19.9ms | App: 19.8ms | DB: 14.3ms (17, rows: 19) [exec: 14.1ms, fetch: 0.2ms] | View: 0.4ms (1) | Mem: 2MB (peak: 2MB) | Files: 20
toggle files
(0.35ms) /app/templates/speeches/show.php
/app/public/index.php
/app/vendor/autoload.php
/app/vendor/composer/autoload_real.php
/app/vendor/composer/platform_check.php
/app/vendor/composer/ClassLoader.php
/app/vendor/composer/autoload_static.php
/app/vendor/symfony/deprecation-contracts/function.php
/app/vendor/symfony/polyfill-php83/bootstrap.php
/app/lib/PFrame.php
/app/config/credentials/local.php
/app/src/Http/PublicResponseCache.php
/app/src/Http/AuthRoutes.php
/app/src/Http/ReviewDecisionRoutes.php
/app/src/Http/TopicDecisionRoutes.php
/app/src/Http/WatchRoutes.php
/app/src/Http/SpeechController.php
/app/src/Overview/SpeechReadModel.php
/app/src/Text/TextSearch.php
/app/templates/layout.php