Stenogram Sejmu · 2026-07-30

Jarosław Urbaniak

Kadencja 10 · posiedzenie 63 · wypowiedź 7

Profil posła

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

Pełna wypowiedź

10. kadencja, 63. posiedzenie, 2. dzień (30-07-2026) 14., 15. i 16. punkt porządku dziennego: 14. Sprawozdanie Komisji Finansów Publicznych w sprawie sprawozdania z wykonania budżetu państwa za okres od dnia 1 stycznia do dnia 31 grudnia 2025 r. wraz z przedstawioną przez Najwyższą Izbę Kontroli analizą wykonania budżetu państwa i założeń polityki pieniężnej w 2025 r. oraz komisyjnym projektem uchwały w przedmiocie absolutorium (druki nr 2629, 2681 i 2817). 15. Sprawozdanie z działalności Narodowego Banku Polskiego w 2025 roku wraz ze sprawozdaniem Komisji Finansów Publicznych (druki nr 2627 i 2687). 16. Sprawozdanie Komisji Finansów Publicznych o przedstawionej przez Prezesa Rady Ministrów Informacji o poręczeniach i gwarancjach udzielonych w 2025 roku przez Skarb Państwa, niektóre osoby prawne oraz Bank Gospodarstwa Krajowego (druki nr 2582 i 2718). Poseł Jarosław Urbaniak: Panie Marszałku! Panie i Panowie Ministrowie! Panowie Prezesi! Wysoki Sejmie! Budżet za 2025 r. został wykonany odpowiedzialnie. (Poseł Przemysław Czarnek: Ha, ha, ha!) To słowo jeszcze nie padło. (Poseł Piotr Kaleta: Geniusz.) (Głos z sali: Brawo, brawo!) Myślę, że debata budżetowa - kolejny raz to podkreślam i kieruję te słowa do już w tej chwili dwóch klubów PiS-owskich - to debata, która przez lata w polskim parlamencie była debatą poważną, bez takich chichotów. (Poseł Przemysław Czarnek: Przepraszam, ale ja się cieszę.) Była debatą o liczbach, statystykach, wykonanych zadaniach, wykonanych planach, a nie o śmiechach i propagandzie. (Poseł Przemysław Czarnek: Panie pośle, proszę się nie przejmować, ja się cieszę z tego, że...) Sformułowanie, które tu już dzisiaj padło, że budżet nie był w kryzysie w 2025 r., jest prawdziwe, ale niesprawiedliwe. Nie wolno uczniowi, który zdaje prawie perfekcyjnie, mówić tylko i wyłącznie, że zdał do następnej klasy. Budżet w 2025 r. był wykonywany w bardzo burzliwym otoczeniu, o czym bardzo często się zapomina. Ta atmosfera, która jest w Sejmie, w Senacie, w przestrzeni publicznej, w domach naszych, w domach polskich obywateli, że jest spokój i że można do tego spokoju się przyzwyczaić, jest nieprawdziwa. Od ponad 4 lat za naszą granicą trwa regularna wojna i dzisiaj, 30 lipca, łatwiej nam o tym pamiętać, bo efektem zintensyfikowanego ataku Rosjan na zachodnią Ukrainę jest atak na Polskę. Panie Czarnek, to w pana okręgu wyborczym coś spadło. (Poseł Przemysław Czarnek: Panie Urbaniak, akurat byłem wtedy, kiedy wasz alarm wył, i nie wiedzieliśmy, o co chodzi, więc niech pan się nie mądruje na ten temat, dobrze? Zaraz panu powiem, co tam się wydarzyło.) (Poseł Witold Zembaczyński: Wszystko wie z Rosji.) Bezpośredni przekaz. Pan to zawsze umie ładnie coś powiedzieć. (Poseł Przemysław Czarnek: Posłucha pan z chęcią.) Nie posłucham. Jest wojna za granicą i ten budżet został bardzo dobrze wykonany pomimo tej wojny, pomimo recesji u wielu naszych gospodarczych partnerów, kryzysu gospodarczego, także u naszego największego partnera gospodarczego, u Niemców. Został bardzo dobrze wykonany pomimo niestabilnej sytuacji geopolitycznej i gospodarczej na świecie, nie tylko na Wschodzie, ale także na Zachodzie. Zaskakujące nas o poranku informacje o tym, że prezydent Trump wprowadził nowe cła dla nowych krajów, i oczekiwanie, czy na końcu tej listy, którą dzisiaj podaje Trump, będzie Unia Europejska, czyli Polska także, są mocno niepokojące. Taka jest sytuacja. To jest niestabilność, to jest burzliwe otoczenie. Taka jest w ekonomii definicja tego zjawiska. Ten budżet został bardzo dobrze wykonany także w aspekcie wewnętrznym. I to nie jest uwaga do was. To jest zadanie opozycji, żeby krytykować, znajdować jakieś heheszki, śmiać się, wskazywać drobiazgi, niewykonania. Ale właśnie dzisiaj przed momentem zobaczyliśmy, jak ten budżet został bardzo dobrze wykonany przy bardzo kiepskiej, a wręcz napastliwej momentami współpracy z Narodowym Bankiem Polskim. To jest dość symboliczne. Pan prezes przemawiał prawie 20 minut, o 5 minut dłużej, niż miał czasu, i przez te 20 minut, przedstawiając sprawozdanie o działalności Narodowego Banku Polskiego w 2025 r., nie zdążył powiedzieć, jaki był wynik Narodowego Banku Polskiego. (Oklaski) To jest symbol współpracy. To, że mamy pana prezesa Sobonia, serdecznie dziękujemy za obecność, jest też symboliczne. Raz - przypadek. Drugi raz - przypadek. Ale to jest polski narodowy parlament. Kiedy ostatnio, panie marszałku, prezes Narodowego Banku Polskiego był tutaj, w polskim parlamencie i składał sprawozdanie z działalności Narodowego Banku Polskiego? To też pokazuje, jak to wewnętrzne otoczenie rządu jest burzliwe. To jest pytanie akurat już do opozycji, bo ja wiem, czego zapomniał powiedzieć pan prezes Soboń. Tego, że była ogromna strata w Narodowym Banku Polskim, za którą wy chcieliście kupować sprzęt dla wojska. A więc to nie jest tak, że my, rząd, Polacy oczekujemy odpowiedzi. Cały świat, wszyscy ekonomiści, byli, obecni i przyszli, oczekują odpowiedzi na waszą genialną propozycję, jak za stratę można kupować cokolwiek, w tym sprzęt wojskowy. (Oklaski) Budżet na rok 2026... (Wypowiedź poza mikrofonem) Panie pośle, czy ja naprawdę pana tak bardzo denerwuję, że musi mi pan przeszkadzać? (Poseł Zbigniew Krzysztof Kuźmiuk: Nie.) (Poseł Piotr Kaleta: Tak, tak.) (Poseł Przemysław Czarnek: A widzi pan zdenerwowanego posła Kuźmiuka?) Pana bardziej. (Poseł Przemysław Czarnek: To niech pan zmieni okulary.) Panie marszałku, mogę prosić o pomoc? Wicemarszałek Krzysztof Bosak: Bardzo proszę posłów, żeby nie szemrali, tylko słuchali wystąpienia pana posła, bo zaraz będą wystąpienia przedstawicieli innych klubów i też będziecie chcieli przemawiać we względnej ciszy. Tak że proszę kontynuować, panie pośle. Poseł Jarosław Urbaniak: Nadal będę używał tego sformułowania, że budżet na 2025 r. został wykonany odpowiedzialnie, bo zapewnił ciągłość finansowania zadań, które zostały postawione przed rządem w 2025 r. Dzisiaj, właśnie po tym rosyjskim ataku na zachodnią Ukrainę i jakimś nieszczęściu, które stało się w powiecie biłgorajskim, warto podkreślić wydatki na obronność. Jesteśmy liderem w zakresie wydawania w ramach NATO pieniędzy na obronność. To są ogromne nakłady, które są potrzebne, których musimy dokonywać i których nie może uśpić właśnie ta atmosfera, że na razie w Polsce nie ma wojny. Na razie, ale ta dzisiejsza rakieta chyba trochę tę perspektywę zmienia. Ten budżet został wykonany odpowiedzialnie, ponieważ jest ciągłość wykonywania zadań inwestycyjnych. To jest świetne pole do dyskusji z dzisiejszą opozycją, bo realizowaliśmy w 2025 r. intensywnie i realnie inwestycje zarówno drogowe, kolejowe, jak i energetyczne. Bo chciałem się zapytać opozycji: A co tam w CPK poza gadaniem? A co tam w elektrowni Ostrołęka poza gadaniem? A gdzie są te promy dla polskich armatorów poza gadaniem? (Głos z sali: A gdzie elektrownia jądrowa w Koninie?) A gdzie ten 1 mln elektrycznych samochodów i zera poza gadaniem? W tym przypadku poza wycinką tysięcy drzew. I najważniejsze, myślę, w tej debacie, jak pan tak intensywnie chce ze mną, panie pośle Czarnek, dyskutować: Gdzie mieszkanie+? (Poseł Andrzej Kryj: A w Ameryce biją Murzynów.) Bo gdzie program willa+, to akurat wszyscy dobrze wiemy, panie Czarnek. (Oklaski) (Poseł Przemysław Czarnek: Ale co wiecie?) My nie gadamy, ale działamy. (Poseł Andrzej Kryj: I Polskę zadłużamy.) W Porcie Polska łopaty już są. Infrastruktura kolejowa się rozbudowuje, czego świetnym przykładem jest przywrócone połączenie do Łomży. Ogromne nakłady na inwestycje drogowe. I to nie jest tak, że my tu będziemy o tym mówić. Polacy widzą, że te ogromne nakłady inwestycyjne na infrastrukturę są, jeżdżąc po Polsce, ponieważ widzą spycharki, widzą koparki, widzą hałdy kruszywa. To wszystko już realnie się dzieje. Polska jest w budowie. Rozbudowaliśmy porty morskie, dzięki czemu niedawno pierwszy raz ogromny statek mógł wpłynąć do Portu Gdynia. (Poseł Czesław Hoc: Pacjenci też się cieszą, wszyscy.) Dobrze wykonany budżet to nie tylko liczby, lecz także realne korzyści dla obywateli. Te realne korzyści dla obywateli to inwestycje w infrastrukturę, która służy wszystkim nam, to inwestycje w obronność, która służy absolutnie naszemu bezpieczeństwu. Ale czasami koszula bliższa ciału. Na koniec tylko chciałbym powiedzieć skromnie, że ludzie myślą o własnej portmonetce. Realny wzrost płac. W zeszłym roku to 5,5%. Realny, przy uwzględnieniu inflacji. A za ostatnie 2 lata 15%. I dla was przypomnienie, żebyście przestali się śmiać i zaczęli myśleć: w 2023 r. wynosił on 1,6%. Rządzić trzeba umieć. 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ź 5 Janusz Cichoń 10. kadencja, 63. posiedzenie, 2. dzień (30-07-2026) 14., 15. i 16. punkt porządku dziennego: 14. Sprawozdanie Komisji Finansów Publicznych w sprawie sprawozdania z wykonania budżetu państwa za okres od dnia 1 stycznia do dnia 31 grudnia 20
  2. Wcześniej · wypowiedź 6 Zofia Czernow 10. kadencja, 63. posiedzenie, 2. dzień (30-07-2026) 14., 15. i 16. punkt porządku dziennego: 14. Sprawozdanie Komisji Finansów Publicznych w sprawie sprawozdania z wykonania budżetu państwa za okres od dnia 1 stycznia do dnia 31 grudnia 20
  3. Później · wypowiedź 8 Przemysław Czarnek 10. kadencja, 63. posiedzenie, 2. dzień (30-07-2026) 14., 15. i 16. punkt porządku dziennego: 14. Sprawozdanie Komisji Finansów Publicznych w sprawie sprawozdania z wykonania budżetu państwa za okres od dnia 1 stycznia do dnia 31 grudnia 20
  4. Później · wypowiedź 9 Mateusz Morawiecki 10. kadencja, 63. posiedzenie, 2. dzień (30-07-2026) 14., 15. i 16. punkt porządku dziennego: 14. Sprawozdanie Komisji Finansów Publicznych w sprawie sprawozdania z wykonania budżetu państwa za okres od dnia 1 stycznia do dnia 31 grudnia 20
1. (3.65ms; exec 3.61 + fetch 0.04; 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. (3.76ms; exec 3.73 + fetch 0.03; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
3. (0.8ms; exec 0.79 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2892 ORDER BY ordinal
4. (1.32ms; exec 1.29 + fetch 0.03; rows 4) SELECT statement.object_id, statement.statement_number, statement.speaker_name, dayStatement.ordinal FROM sejm_transcrip…
5. (0.98ms; exec 0.97 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
6. (0.88ms; exec 0.87 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
7. (0.57ms; exec 0.56 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2890 ORDER BY ordinal
8. (0.77ms; exec 0.76 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
9. (0.97ms; exec 0.96 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
10. (0.73ms; exec 0.72 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2891 ORDER BY ordinal
11. (1.25ms; exec 1.24 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
12. (1.01ms; exec 1 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
13. (2.43ms; exec 2.4 + fetch 0.03; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2893 ORDER BY ordinal
14. (1.58ms; exec 1.56 + fetch 0.03; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
15. (1.52ms; exec 1.49 + fetch 0.03; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
16. (2.19ms; exec 2.16 + fetch 0.03; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2894 ORDER BY ordinal
17. (3.73ms; exec 3.7 + fetch 0.03; rows 0) SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_vote…
toggle
1. (3.65ms; exec 3.61 + fetch 0.04; 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 = 12238 LIMIT 1
2. (3.76ms; exec 3.73 + fetch 0.03; 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 = 11223 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.8ms; exec 0.79 + fetch 0.02; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2892 ORDER BY ordinal
4. (1.32ms; exec 1.29 + 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 = 12230 AND dayStatement.day_revision_id = 11798 AND dayStatement.ordinal BETWEEN 5 AND 9 AND statement.object_id <> 12238 ORDER BY dayStatement.ordinal
5. (0.98ms; exec 0.97 + 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 = 12230 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 5) LIMIT 1
6. (0.88ms; exec 0.87 + 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 = 11221 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.57ms; exec 0.56 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2890 ORDER BY ordinal
8. (0.77ms; exec 0.76 + 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 = 12230 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 6) LIMIT 1
9. (0.97ms; exec 0.96 + 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 = 11222 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.73ms; exec 0.72 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2891 ORDER BY ordinal
11. (1.25ms; exec 1.24 + 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 = 12230 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 8) LIMIT 1
12. (1.01ms; exec 1 + 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 = 11224 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. (2.43ms; exec 2.4 + fetch 0.03; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2893 ORDER BY ordinal
14. (1.58ms; exec 1.56 + fetch 0.03; 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 = 12230 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 9) LIMIT 1
15. (1.52ms; exec 1.49 + fetch 0.03; 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 = 11229 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. (2.19ms; exec 2.16 + fetch 0.03; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 2894 ORDER BY ordinal
17. (3.73ms; exec 3.7 + fetch 0.03; 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 = 403 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-30' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
Top slow:
3.76ms SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run …
3.73ms SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes indiv…
3.65ms SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.objec…
toggle
3.76ms SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 11223 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.73ms 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 = 403 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-30' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
3.65ms 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 = 12238 LIMIT 1
N+1 candidates:
5× (8.14ms) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing…
5× (6.72ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (4.58ms) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON versi…
toggle
5× (8.14ms) 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× (6.72ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (4.58ms) 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: 45.4ms | App: 45.1ms | DB: 28.2ms (17, rows: 19) [exec: 27.8ms, fetch: 0.3ms] | View: 0.4ms (1) | Mem: 2MB (peak: 2MB) | Files: 20
toggle files
(0.36ms) /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