Skip to content

Katselmointi, auditointi ja korjaus

Opi 6-kierroksen katselmointimalli, auditointiportti ja systemaattinen korjaustyönkulku — plus learnings.md oppimisen tallentamiseen.

AI Builders
Intermediate
30 min

Katselmointi, auditointi ja korjaus

Viimeinen vaihe DSDA-prosessissa on auditointi. Tämä oppitunti käsittelee 6-kierroksen katselmoinnin, auditointiportin ja systemaattisen korjaustyönkulun — sekä miten oppimiset tallennetaan tiimin hyödyksi.

6-kierroksen katselmointi

Jokainen muutos käy läpi kuusi fokusaluetta:

6-kierroksen katselmointi

6-kierroksen katselmointi on systemaattinen laaduntarkistus, jossa jokainen kierros keskittyy yhteen aspektiin: speksien noudattaminen, testikattavuus, turvallisuus, arkkitehtuuri, suorituskyky ja lopullinen tuomio. Kierrokset estävät "näyttää hyvältä" -arvioinnin korvaamasta perusteellisen analyysin.

Kierros 1: Speksien noudattaminen

Kysymys: Täyttyvätkö kaikki hyväksymiskriteerit?

  • Käy läpi jokainen AC erikseen
  • Merkitse: ✅ Täytetty / ❌ Puuttuu / ⚠️ Osittain
  • Jos yksikin AC puuttuu → FAIL

Kierros 2: Testikattavuus

Kysymys: Onko jokaiselle AC:lle testi?

  • Vertaa speksin AC:t → todelliset testit
  • Tarkista edge caset ja virhetilanteet
  • Mittaa kattavuus numeerisesti

Kierros 3: Turvallisuus

Kysymys: Input-validointi, autentikointi, salaisuudet?

  • Onko käyttäjäsyöte validoitu?
  • Onko autentikointi ja autorisaatio tarkistettu?
  • Onko salaisuuksia koodissa tai lokeissa?
  • Onko SQL-injektio, XSS tai CSRF huomioitu?

Kierros 4: Arkkitehtuuri

Kysymys: Noudatetaanko projektimalleja?

  • Noudattaako koodi olemassa olevia arkkitehtuurimalleja?
  • Ovatko riippuvuudet oikeansuuntaisia?
  • Onko koodia duplikoitu?

Kierros 5: Suorituskyky

Kysymys: Kyselyt, välimuisti, bundle-koko?

  • N+1 kyselyt?
  • Tarpeettomat renderöinnit?
  • Bundle-koon kasvu?
  • Indeksit tietokantakyselyille?

Kierros 6: Tuomio

Vaihtoehdot:

TuomioMerkitysJatkotoimenpide
HYVÄKSYKaikki OKMerge / deploy
PYYDÄ MUUTOKSIAPieniä korjauksiaFix → uusi katselmointi
ESTÄVakavia ongelmiaPalaa speksivaiheeseen

Auditointiportti

Auditointiportti on viimeinen tarkistuspiste ennen kuin muutos hyväksytään tuotantoon.

Auditointiportin tarkistuslistamarkdown
## Audit Gate

### Completeness
- [ ] All ACs met (from Spec)
- [ ] No partial implementations

### Quality
- [ ] 6-pass review completed
- [ ] All issues resolved
- [ ] No BLOCK findings remaining

### Documentation
- [ ] Docs updated to reflect changes
- [ ] content-plan.md updated
- [ ] Code comments adequate

### Testing
- [ ] All tests passing
- [ ] Coverage meets target
- [ ] No skipped tests

### Final
- [ ] PASS / FAIL
- [ ] Sign-off: [reviewer]

Korjaustyönkulku

Kun katselmointi löytää ongelmia, seuraa systemaattista korjausprosessia:

Fix-työnkulkutext
Kerää konteksti → Muodosta hypoteesi → Validoi → Korjaa → Dokumentoi

3 yrityksen sääntö

Älä koskaan luuppaa saman ongelman kanssa yli 3 kertaa ilman ihmisen syötettä.

Jos korjaus ei toimi 3 yrityksellä:

  1. Pysähdy
  2. Dokumentoi mitä yritit
  3. Pyydä ihmiseltä ohjausta
  4. Kirjaa ratkaisu learnings.md:iin

Pro-vinkki

3 yrityksen sääntö estää AI:ta (ja kehittäjiä) hukkaamasta aikaa väärään suuntaan. Jokainen yritys pitäisi olla merkittävästi erilainen — ei sama asia uudestaan pienellä muutoksella.

learnings.md — Tiimin muisti

learnings.md on projektin oppimispäiväkirja. Tarkista se AINA ENSIMMÄISENÄ kun kohtaat virheen.

learnings.md-pohjamarkdown
## [Päivämäärä]: [Lyhyt kuvaus]

### Konteksti
[Milloin/missä tämä tapahtui]

### Oire
[Mitä näit]

### Juurisyy
[Miksi se tapahtui]

### Ratkaisu
[Miten korjattiin]

### Ennaltaehkäisy
[Miten estetään jatkossa]

Esimerkkejä

Esimerkki: learnings.mdmarkdown
## 2026-03-15: Supabase RLS-politiikka esti admin-pääsyn

### Konteksti
Guild admin -toiminnot eivät toimineet testausympäristössä.

### Oire
403 Forbidden kaikille admin API-kutsuille.

### Juurisyy
RLS-politiikka tarkisti 'admin' roolin guild_memberships-taulusta,
mutta testidata ei sisältänyt admin-roolia.

### Ratkaisu
Lisättiin admin-rooli seed_test_data.sql-tiedostoon.

### Ennaltaehkäisy
Lisätty tarkistuslista: varmista testidata kattaa kaikki roolit.

learnings.md

learnings.md on projektin kollektiivinen muisti — dokumentti johon kirjataan opitut asiat, ratkotut ongelmat ja niiden juurisyyt. Se on ensimmäinen paikka johon katsotaan kun kohdataan ongelma. Ajan myötä siitä tulee korvaamaton resurssi, joka estää saman virheen toistamisen.

Katselmointiagentin rooli

SaaEi saa
Lukea kaikkea (koodi, testit, dokumentaatio)Muokata toteutuskoodia
Kirjoittaa katselmointiraporttejaOhittaa auditoinnin kierroksia
Antaa tuomion (HYVÄKSY/PYYDÄ/ESTÄ)Hyväksyä ilman perusteluja
Tietovisa

Miksi '3 yrityksen sääntö' on tärkeä AI-avusteisessa korjaustyössä?

Suorita 6-kierroksen katselmointi

Valitse äskettäinen muutoksesi (tai avoimen lähdekoodin PR) ja suorita täysi 6-kierroksen katselmointi: 1) Speksien noudattaminen, 2) Testikattavuus, 3) Turvallisuus, 4) Arkkitehtuuri, 5) Suorituskyky, 6) Tuomio. Kirjoita 1-sivuinen raportti.

Moduulin yhteenveto

Brownfield-moduulissa opit:

  1. Greenfield vs. Brownfield — 80 % työkuormasta on brownfieldiä
  2. DSDA-prosessi — Document → Spec → Develop → Audit
  3. 3-tasoinen dokumentaatio — T1 → T2 → T3 + content-plan.md
  4. Perustellut speksit — Jokainen väite viittaa todelliseen lähteeseen
  5. Katselmointi ja auditointi — 6 kierrosta + portti + learnings.md

Seuraavassa moduulissa siirrymme AI-agentteihin: miten suunnitella ja rakentaa autonomisia agentteja, jotka käyttävät työkaluja, muistia ja tiedonhakua.

Sign in to track your progress

Questions & Answers

Log in to participate in the discussion