dynamisk-rettsstat/BIDRA.md
Kjell Tore Guttormsen 24996d66bd
docs: mark the work as finished
README and BIDRA.md state that the work is finished and that no new
versions are planned; 0.1.2 is the last version. CHANGELOG has an entry
without a version. The plugin itself (skills, model, core, reference
output) is unchanged, so there is no new tag or release.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
2026-11-11 20:57:46 +01:00

75 lines
4.8 KiB
Markdown

# Bidra med en forbedring
Modellen er en første versjon, og notatet *Den dynamiske rettsstaten* er skrevet som en invitasjon til videre arbeid.
Har du forbedret modellen, rettet en feil eller prøvd den mot data, tas det gjerne imot. Denne siden sier hvordan du
sender det, og hva et bidrag må ha for at det kan vurderes.
Arbeidet er avsluttet (november 2026), og det er ikke planlagt nye versjoner. Et bidrag blir derfor ikke nødvendigvis
tatt inn her. Lisensen (MIT) lar deg gi ut din egen utgave.
## Slik sender du det
Repositoryet ligger på en egen Forgejo-server der utenforstående ikke kan registrere seg, så bidrag kommer på
e-post: **hello@fromaitochitta.com**.
Send:
1. **Endringen**, som en patch eller som de endrede filene.
- Har du klonet repositoryet med git, lag patchen med `git format-patch origin/main` (én fil per commit).
- Har du en arbeidskopi fra pluginen (`rettsstat-modell/`), kan du legge den i git før du endrer noe
(`git init`, `git add -A`, `git commit -m "utgangspunkt"`) og lage patchen med `git format-patch -1` etter at
endringen er committet. Uten git: send filene du har endret eller lagt til, med stien i kopien.
2. **Utskriften fra kontrollen** på modellen med endringen:
`python3 modell/kjor.py kontroll` i arbeidskopien eller klonen (den fulle, ikke `--rask`, og med numpy og scipy,
så alle seks delene er kjørt). Kontrollen måler mot notatets egne sjekksummer, som står fast i
`modell/kontroll.py`; endre ikke den fila eller `fasit/`.
3. **Scenariofilene** som viser hva endringen gjør, og gjerne sammendragene kjøringene skrev.
4. **En kort forklaring**: hva endringen gjør, hvorfor (hypotesen, gjerne med kilde), og hva kjøringene viser.
## Hva et bidrag må ha
- **Én mekanisme eller én endring om gangen.** To endringer i samme bidrag gjør det umulig å si hva som ga hvilket
utslag.
- **For en utvidelse** (en ny mekanisme i `modell/utvidelser/`): et grensetilfelle som gjenskaper kjernen eksakt
(største avvik `0.0`), og en test som viser det. `grensetilfelle()` og grensesnittet står i `docs/utvidelser.md`;
testen av grensetilfellet følger med automatisk. Oppgi `GJENSKAPER_NOTATET` når standardverdiene gjenskaper noen
av notatets scenariofiler, så sjekkes grensetilfellet også mot notatets datafiler, og legg gjerne til en test av
det mekanismen gjør utenfor grensetilfellet. Kontrollen skal si «bit for bit som notatet» eller «innenfor
toleranse». Sier den at utvidelsen ikke gjenskaper kjernen i grensetilfellet, er utvidelsen feil.
- **For en endring i kjernen** (`modell/kjerne/`): listen over notatets resultater som flytter seg (kontrollen sier
hvilke datafiler, utskrifter og scenariofiler, og hvor mye), hvilken figur eller tabell i notatet de hører til
(`docs/modellkart.md`, del (d)), og hvorfor det er ment. Kjernen er en kopi av notatets kode, så en endring der
må også inn i notatets repository før den kan tas inn i pluginen.
- **Ingen persondata og ingen data fra enkeltsaker.** Modellen brukes på kategorier og aggregerte tall. Data til
kalibrering må være aggregerte og ha en oppgitt kilde.
- **Påstander bygger på kjøringer.** Et bidrag som sier at modellen «gir» noe, har med kjøringen som viser det.
## Det som er særlig velkomment
Veiplanen i avsnitt 10 i notatet har åtte punkter. Disse kan gjøres i modellen:
- **Kalibrering mot norske data** (punkt 5), blant annet politiets metningsnivå `K_sat` per sakstype, virkningen av
ulike reaksjonsformer og om det finnes rekrutteringsterskler i bestemte kategorier.
- **Estimering av faktisk reaktivitet og forsinkelse** i budsjett- og prioriteringsprosessene, og av
stabilitetsgrensen for en inkrementell regel (punkt 2).
- **En kjedemodell med kø og frafall i alle fire ledd**, flere sakstyper, ulike behandlingstider og tilbakeløp
(punkt 3). I dag har bare domstolen kø.
- **Simuleringer med målestøy, skjevhet og parameterusikkerhet** (punkt 4). I dag antar alle simuleringene et
feilfritt estimat.
- **Kostnadsfunksjoner i kroner** og en nytte-kostnadsvurdering av tiltakene, med forebygging som alternativ
(punkt 6).
- **En romlig versjon** med forskyvning mellom distrikter, og en modellprediktiv styring av hele tiltaksvektoren
(punkt 8).
Punkt 1 (flaskehalsdiagnose av hele kjeden på norske tall) og punkt 7 (beslutningsrettigheter, hjemler og
budsjettmekanikk) er ikke modellkode, men innspill til dem tas også imot. Det samme gjelder rettelser, også små.
## Lisens
Bidrag tas inn under MIT-lisensen, som resten av pluginen (`LICENSE`). Ved å sende et bidrag sier du deg enig i det,
og i at du har rett til å gi det under den lisensen.
## Hva du kan vente deg
Dette er et privat prosjekt uten fast bemanning. Det er ikke lovet noe svar innen en bestemt tid, og ikke at et
bidrag blir tatt inn. Bidrag som følger punktene over, er lettest å vurdere.