Instruction file imported from navikt/crm-arbeidsforhold (
.github/instructions/agentic-development.instructions.md). Copyright stays with the author.
Agentisk utvikling i crm-arbeidsforhold
Nav-prinsipp
Følg Nav sine Copilot-prinsipp frå navikt/copilot:
- Bruk små, fokuserte endringar og eksisterande mønster.
- Start med deterministisk, lokal validering før breiare undersøking.
- Bevar utviklarens forståing: forklar arkitekturval, tradeoffs og raud-sone-logikk.
- Be om avklaring ved uklare krav og stopp før handlingar som krev menneskeleg godkjenning.
- Ver tydeleg på kva som er verifisert, kva som er blokkert, og kva som berre er ei antaking.
TDD-gate
Ved ny funksjonalitet eller feilretting skal agenten bruke red-green-refactor i vertikale skiver:
- Avklar krav, observabel åtferd og testseam før kode.
- Skriv ein test som uttrykkjer åtferda og køyr han slik at han feilar, når testmiljøet støttar dette.
- Skriv minste implementasjon som gjer testen grøn.
- Køyr same fokuserte test etter kvar endring.
- Refaktorer først når åtferdstesten er grøn, og køyr testen på nytt.
- Køyr relevant breiare validering før arbeidet blir kalla ferdig.
For Apex må agenten skilje mellom lokal Jest-validering og org-avhengig Apex-validering. Dersom ein Apex-test ikkje kan kompilerast eller køyrast utan ein autentisert org, skal agenten dokumentere dette og aldri hevde at testen er grøn.
Før og etter kode
Før endring:
- Finn næraste implementasjon, test og gjeldande instruks.
- Identifiser om fila ligg i hovudpakkja eller ei pakke-eigd referansemappe.
- Klassifiser arbeidet som grøn sone eller raud sone. Kjernelogikk, tilgang, personvern, autentisering og arkitektur krev ekstra menneskeleg gjennomgang.
Etter endring:
- Vis kva test eller validering som blei køyrd.
- Forklar arkitekturval og viktige tradeoffs kort.
- Marker kode som utviklaren må forstå særleg grundig.
- Køyr security-review før commit, push eller pull request når endringa rører secrets, auth, tilgang, persondata, callouts, metadata-tilgang eller GitHub Actions.
Menneskeleg kontroll
Org-oppretting, pakkeinstallasjon, deploy, pakkeoppretting, pakke-promotering og endring av CI/auth krev eksplisitt godkjenning frå brukaren. Agenten skal ikkje finne på org-alias, Salesforce-ID-ar, installasjonsnøklar eller avhengigheitsversjonar.
Nav AI-policy
- Bruk berre GitHub Copilot Business gjennom Nav-organisasjonen til Nav-arbeid. Private Copilot-abonnement og frittståande AI-kodeverktøy er ikkje tillatne.
- Alle modellar som er tilgjengelege gjennom Copilot Business kan brukast, men utviklaren er ansvarleg for resultatet.
- Agent mode og lokale agentar skal køyre isolert med
cplteller ei tilsvarande sandbox-løysing. Agentar med uavgrensa tilgang til Nav-utstyr er ikkje tillatne. - Bruk berre MCP-serverar som er godkjende i Nav sin verktøykatalog.
- Coding agent kan berre brukast til avgrensa oppgåver og må alltid ende i menneskeleg gjennomgang og godkjenning av PR før merge.
- Utviklaren skal forstå og kritisk vurdere generert kode, skrive testar, bruke code review og køyre relevante sikkerheitskontrollar.
- Ver ekstra varsam i raud sone: debugging, nye konsept, kjernelogikk, tilgang, persondata og sikkerheitskritisk kode.