Metode og kilder
Slik jobber vi
Folkefakta er bygget på åpne, offentlige datakilder. Hver påstand på siden kan spores tilbake til en kilde du selv kan etterprøve.
Voteringsdata fra Stortinget.no
Alle saker, voteringer og stemmegivninger på Folkefakta hentes direkte fra Stortingets åpne API. Vi henter ikke data fra andre nettsteder eller sekundærkilder — det er bare det offisielle parlamentet selv som er sannhetskilden.
Hva henter vi?
- Saker — tittel, type (lovsak, budsjett, representantforslag), saksgang, fremsettelsesdato og status.
- Voteringer — tidspunkt, vedtak (vedtatt/forkastet), aggregerte for/mot-tall.
- Stemmegivninger per representant — hvem stemte hva, inkludert fravær.
- Komitéarbeid — innstillinger, merknader og hvilken komité saken er behandlet i.
- Partier og representanter — gjeldende sammensetning av Stortinget per sesjon.
Hvor ofte oppdateres det?
Vi synkroniserer hver time mellom kl. 06 og 20 på hverdager, og kjører en full synkronisering hver natt kl. 04. Når en votering foregår på Stortinget, er den vanligvis i Folkefakta innen en time.
Når dataene er feil
Vi endrer ikke noe ved Stortingets data. Hvis Stortinget retter en avstemming eller oppdaterer en saksbeskrivelse, plukkes endringen opp automatisk i neste synkronisering. Hvis du oppdager noe vi viser feil — meld fra til kontakt@folkefakta.no.
Statistisk grunnlag fra SSB
Statistisk sentralbyrå er Norges offisielle statistikkprodusent. Vi bruker SSBs åpne API til å koble saker til faktiske tall — om befolkning, økonomi, sysselsetting, klimagassutslipp og kommunale tjenester.
Hva bruker vi det til?
Når Stortinget vedtar en lov om f.eks. boligbygging, er det relevant å se hvor mange boliger som faktisk bygges over tid. Når det vedtas en pakke for sysselsetting, vil vi vite hvordan arbeidsledigheten utvikler seg. SSB-data gir konteksten som flytter en sak fra «vedtak på papiret» til «slik gikk det i praksis».
Tabeller vi bruker
- Nasjonalregnskap og budsjett — for økonomiske saker.
- Befolkning og demografi — for innvandring, helse, eldreomsorg.
- Klimagassutslipp — tabell 13931, for klimasaker.
- KOSTRA — kommunale nøkkeltall — skole, barnehage, eldreomsorg per kommune.
- Sysselsetting og arbeidsmarked — for nærings- og arbeidslivssaker.
Slik kobles tallene til en sak
Når en sak analyseres, ser systemet på sakens kategori og innhold og henter relevante SSB-tabeller automatisk. Tallene vises som tidsserier slik at du kan se utviklingen før og etter et vedtak — uten at vi trekker konklusjoner for deg.
Lovreferanser fra Lovdata
Når en sak endrer en lov, ønsker vi å vise akkurat hvilken paragraf som endres — ikke bare at «arbeidsmiljøloven endres», men hvilken bestemmelse, hvordan teksten ser ut før og etter, og når endringen trer i kraft.
Hva vi henter
- Lovreferanser som nevnes i en sak (lov, kapittel, paragraf).
- Gjeldende lovtekst på Lovdata, slik at lenkene alltid peker på den oppdaterte versjonen.
- Dato for ikrafttredelse når det er vedtatt.
Hvorfor det er viktig
Stortinget vedtar mer enn 200 lovendringer i en typisk sesjon. Mange av dem er små og tekniske; noen få endrer hverdagen til hundretusener. Ved å koble vedtak til konkrete paragrafer, blir det mulig å se hva som faktisk endres — ikke bare hva politikerne sier i salen.
Begrensninger
Tolkning av lovtekst er en juridisk faglig oppgave. Folkefakta er ikke en juridisk tjeneste, og vi tar ikke stilling til hvordan en bestemt paragraf skal forstås i en konkret sak. Hvis det er tvil — kontakt en advokat.
KI-analyse: hva modellen faktisk gjør
Stortinget behandler tusenvis av saker per periode, og hvert parti har flere hundre løfter i programmet. Å lese alt manuelt går ikke. Vi bruker en språkmodell (Claude Sonnet fra Anthropic) til to oppgaver: oppsummere hver sak etter et fast skjema, og koble løfter til saker. Modellen får aldri lov til å finne på data eller endre stemmetall — den er bundet til et JSON-skjema vi har skrevet selv, og som du kan lese i sin helhet lenger ned.
To pass per sak
- Strukturerte felt. Kategori, alvorlighetsgrad, økonomisk omfang, koalisjonsmønster, hvem som berøres — alt må passe inn i ferdigdefinerte enums. Modellen kan ikke finne på en ny kategori.
- Narrative felt. Sammendrag, bakgrunn, hva som står på spill, hverdagseffekter, koalisjonsdynamikk. Hvert felt har en hard maxlengde og en regel om at vedtatte forslag må komme før forkastede.
Harde regler i prompten
- Lead with what was adopted. Hvis noe ble vedtatt, må sammendraget åpne med det — aldri med «forkastet» eller «nedstemt».
- 2+ vedtatte voteringer dekkes alle. Modellen kan ikke utelate en vedtatt sak fordi den er liten.
- Hvis du ikke vet, utelat eller skriv «unclear». Hallusinering er forbudt — tomme felt er tillatt.
- Norsk bokmål, nøytral tone.
Hva modellen ikke gjør
- Den oppretter ikke saker eller løfter — bare kobler og oppsummerer det som allerede finnes i Stortingets data.
- Den endrer ikke voteringstall, sakstekst eller løfteformuleringer.
- Den vurderer ikke om en politikk er god eller dårlig — bare om en sak tester et løfte, og hvordan partiet stemte.
Selve prompten
Dette er hele skjemaet vi sender til modellen for hver sak. Det er det eneste settet med instruksjoner som styrer kategorisering, sammendrag og koalisjonsanalyse. Vil du se den nyeste versjonen lokalt? Kjør node scripts/pipeline/print-analysis-schema.js --prompt.
Laster prompt…
Snapshot fra scripts/pipeline/print-analysis-schema.js --prompt. Skjemaet versjoneres som v2.0.0 og oppdateres når vi endrer det.
Redaksjonell kontroll
Folkefakta gjør et bevisst kompromiss: KI-analysen av enkeltsaker går automatisk så lenge den holder seg innenfor skjemaet beskrevet under KI-analyse. Redaksjonell kontroll skjer på to nivåer — strukturelt på inngangen og manuelt på utgangen — ikke per enkeltsak. Vi vil heller være åpne om hvor vi har et menneske i loopen, enn å påstå mer kvalitetskontroll enn vi gjør.
Hvor mennesker faktisk er i loopen
- Strukturelle skinner i prompten. Det vi kontrollerer på vegne av leseren er hvordan modellen får lov til å svare: faste enums, harde maxlengder, krav om å lede med vedtak, forbud mot hallusinering. Hvis svaret ikke passer i skjemaet, lagres det ikke. Du kan lese hele prompten på KI-analyse-siden.
- Manuell godkjenning av redaksjonelle artikler. Saker som dukker opp på Innsikt er ikke automatisk publisert. Et utkast (skrevet av en agent eller manuelt) lander som et draft i tabellen
folkefakta_posts, en webhook varsler en redaktør i Discord, og artikkelen publiseres bare når noen klikker «Godkjenn». Avviste utkast publiseres aldri. Hele rutinen er dokumentert idocs/PUBLISHING.md, og koden ligger iscripts/pipeline/publish-post.jsogsrc/app/api/posts/[action]/route.ts. - Spot-check via
quality-review.js. Et eget script rangerer høyrisiko-elementer i køen: alle stemt mot eget løfte-koblinger, koblinger med lav modellscore, og innmeldte feil fra leserne. Skriptet kjøres på etterspørsel av redaksjonen, ikke på fast intervall.
Hva vi ikke gjør (per i dag)
- Vi godkjenner ikke hver enkeltsak manuelt før den vises på Saker. Det er for mye volum.
- Vi har ikke ukentlige tilfeldige stikkprøver med fast prosent. Spot-sjekking skjer rundt høyrisiko-elementer og innmeldte feil.
- Vi har ikke en åpen redaksjonsdashboard for utenforstående. Det kommer.
Hva betyr «riktig»?
Vi prøver å holde oss til det som er etterprøvbart: stemte partiet for eller mot? Sier løfteteksten det vi sier den sier? Er saken faktisk relevant? Vi tar ikke stilling til om en politikk er klok eller dårlig — det er ditt eget skjønn.
quality-review.js rangerer, så de blir lest.
Åpenhet om feil
Når vi retter en feil, oppdateres saken og analysen kjøres på nytt. Større rettelser eller systematiske mønstre dokumenteres som artikler på Innsikt. Vi skjuler ikke at vi tar feil — det er en del av det å være en åpen kilde.
Slik klassifiserer vi løftene
Hver kobling mellom et løfte og en sak får én av fem kategorier. Vi har holdt antallet bevisst lavt for at det skal være mulig å forstå hva som menes — og bevisst nyansert nok til at vi ikke tvinger fram falske svart-hvitt-vurderinger.
Vi kategoriserer. Du konkluderer.
Folkefakta gir deg fakta og kategorier. Vi gir deg ikke en samlet score eller en «vinner» — det er ditt eget politiske skjønn å avgjøre hvor viktig hvert løfte er, og hva en helhetsvurdering av et parti sier deg.