Siirry sisältöön

Antipatternit ja operatiivinen kuri

Slop at Scale, Prompt Drift, Bag-of-Agents, 3 AM Liability, Missing Observability. Jokainen tuottavuustyökalu voi muuttua vastuuvelaksi — tehtaat tarvitsevat tuotantotason operatiivisen kurin. Mitigointistrategiat ja tarkistuslista.

SW Builders
Edistynyt
45 min

"Every productivity tool can become a liability multiplier. Factories need production-grade operational discipline."

Olet rakentanut factoryn. Se toimii. Tiimi hyväksyi sen. Kuukauden päästä kysytään: "Miksi prod kaatui?" — ja vastaus on hämmentävä.

Tässä oppitunnissa: 5 yleisintä antipatternia, miten tunnistat ne ja miten suojaudut.

Antipattern 1: Slop at Scale

Slop at Scale

"Slop at Scale" tarkoittaa, että factory tuottaa korkean volyymin matalan laadun outputtia, joka kuitenkin läpäisee tarkistukset. Yksittäin kukin tuotos näyttää OK:lta, mutta kokonaisuus on roska — koska tarkistukset eivät mittaa oikeaa asiaa.

Esimerkki: PR-katselmointi-agentti, joka hyväksyy 95 % PR:istä, koska sen check on "no merge conflicts". Tiimi mergaa kaikki, koodikanta degeneroi, mutta KPI näyttää "agent saved 200 hours".

OireMitigointi
Korkea läpäisyaste, alhainen lopputuotteen laatuMitä mittaat — esim. post-merge bug rate, ei vain "passed checks"
"Tarkistus läpäisty" mutta ihmiset kommenteissa "tämä ei toimi"Lisää merkityksellisiä testejä: integraatio + e2e + property-based
Sama bugi toistuu kuukaudessaLisää human review gate kriittisille polkuille

Pro-vinkki

Sääntö: Jos check ei voi epäonnistua oikeasti, se ei ole check. Esim. "code compiles" on triviaali — se on minimi. Oikeat checks: "ei uusia n+1 queryjä", "p95 latency alle 200ms", "covers AC1-AC4 jotka spec määrittelee".

Antipattern 2: Prompt Drift

Esimerkki: Tiimin viisi kehittäjää kopioi factoryn kotonaan ja säätää promptia "vain vähän". Kuukauden päästä viisi versiota. Toinen tiimi yrittää uusintaa onnistunutta ajoa — ei onnistu, koska prompt on muuttunut.

OireMitigointi
"Eilen toimi, tänään ei"Version-control policy files — git, ei copy-paste
Ei voi reproducea ajoaPin model version — älä käytä "latest"
Eri tiiminjäsenet eri tuloksiaSingle source of truth factory-määritelmälle
Sääntö: factory-policy on commit-osoitebash
# Versioitavissa, reproducible
git rev-parse HEAD               # 7c3f2a1
ls .factory/policies/            # analyzer.json, planner.json, ...

# Aja factory tietyllä versiolla
factory run --policy-rev 7c3f2a1 --spec my-spec.json

# Aja factory eri versiolla rinnakkain — vertaile
factory run --policy-rev 9b8d4e2 --spec my-spec.json

Antipattern 3: Bag-of-Agents

Esimerkki: Kaksi agenttia muokkaa samaa tiedostoa rinnakkain. Toinen lisää loggingin riville 42, toinen muuttaa rivin 42 logiikkaa. Merge konflikti, mutta kumpikaan agentti ei tiedä toisesta.

OireMitigointi
Agentit duplikoivat tai konfliktoivat työtäSingle orchestration layer — ei rinnakkaisia ajoja samaan resourceen ilman lukitusta
"Kuka muutti tämän?" → ei vastaustaHandoff contracts — kuka antaa työn kenelle, missä formaatissa
Agentti A:n output ei sovi agentti B:n inputiksiStrukturoidut JSON-rajapinnat roolien välille
Handoff contract — Analyzer → Plannerjson
{
"from_role": "analyzer",
"to_role": "planner",
"version": "v1.2",
"schema": {
  "type": "object",
  "required": ["findings", "context"],
  "properties": {
    "findings": {
      "type": "array",
      "items": {
        "required": ["file", "issue", "severity"]
      }
    },
    "context": {
      "type": "object",
      "required": ["repo_root", "branch"]
    }
  }
}
}

Antipattern 4: 3 AM Liability

Esimerkki: Factory deployaa kello 03:00 tuotantoon. Kukaan ei näe deploymentia. Aamulla devit huomaavat: 14 PR:ää mergetty yön aikana, kaksi rikkoo tuotantoa, kukaan ei tiedä mitä ne tekivät.

OireMitigointi
Yöllä tehtyjä deploymentteja, joita kukaan ei katseleApproval gates kriittisille operaatioille (deploy, DB-migration)
Outputtia jota kukaan ei katselmoinutTime-windows: factory ajaa autonomisesti vain työaikoina
Compliance-tiimi suuttuuDecision trace: jokainen agent decision lokitetaan + accessible audit reportille

Sääntö: Jos ihminen ei katselmoisi muutosta tunnin sisällä, älä anna factoryn ajaa sitä autonomisesti.

Antipattern 5: Missing Observability

Esimerkki: Factory polttaa $400 viikossa. Kukaan ei tiedä, mihin se menee — yhteen scriptiin? Kaikkiin yhtä lailla? Yhteen tiettyyn agenttiin? Ei lokia, ei dashboardia, ei aavistusta.

OireMitigointi
Ei tiedetä per-run kustannustaPer-call cost tracking — pakollinen kenttä lokissa
Ei nähdä trendejäDashboards: cost/run, success rate, p95 duration
Bugi tuotannossa, ei voi debugataStructured logs alusta lähtien (ei jälkeenpäin)
"Onko factory parantunut?" → no ideaA/B-testit policy-versioiden välillä
Minimi observability per runjson
{
"run_id": "run_20260615_142301_abc",
"factory_version": "policy-v1.2.3",
"spec_id": "add-timeout",
"started_at": "2026-06-15T14:23:01Z",
"ended_at": "2026-06-15T14:24:18Z",
"status": "success",
"iterations": 2,
"tokens_total": 4821,
"cost_usd": 0.041,
"decisions": [
  {"iter": 1, "agent": "builder", "action": "edit", "ms": 1840},
  {"iter": 1, "agent": "checker", "result": "tests_failed", "ms": 12100},
  {"iter": 2, "agent": "builder", "action": "edit", "ms": 612},
  {"iter": 2, "agent": "checker", "result": "all_passed", "ms": 11800}
],
"outcome": {"merged": true, "pr_url": "https://github.com/example-org/example-repo/pull/421"}
}

Operatiivinen kuri — tarkistuslista

Ennen kuin julistat factoryn "tuotantovalmiiksi", käy läpi:

TarkistusMiksi
Policy on git-versioituReproducoitavuus
Model version pinnattu (ei "latest")Reproducoitavuus
Structured logs ajoittain (JSON)Debugattavuus
Per-run cost mitattuBilan hallinta
Approval gate kriittisille operaatioilleRiski
Time-windows: ei autonomista yölläRiski
Meaningful checks (ei vain "compiles")Laatu
Handoff contracts agenttien välilläKonfliktit
Dashboards: success rate, cost trendOperaatiot
Rollback-suunnitelma jos factory rikkoutuuLiiketoiminnan jatkuvuus
Tietovisa

Tiimin factory hyväksyy 98 % PR:istä, mutta production-bugit kaksinkertaistuivat viime kuussa. Mikä antipattern todennäköisesti?

Tietovisa

Factory kustannusbill nousi 3x kuukaudessa ilman selitystä. Mistä aloitat?

Mini-audit: Factoryn tarkistuslista

Käy läpi yllä oleva tarkistuslista (10 kohtaa) viimeisimmälle agent-rakennelmalle, jonka teit (Sessio 3 -harjoitus). Kuinka moni läpäisi? Mikä on suurin riski?

Yhteenveto

5 antipatternia, 1 ydinviesti:

Factory ei korvaa kuria — se vaatii sitä. Ilman version controlia, observabilityä, approval gateja ja merkityksellisiä checksejä factory on vain kalliimpi tapa tehdä virheitä nopeammin.

  • 🚨 Slop at Scale → merkityksellisiä testejä, post-outcome-mittarit
  • 🌊 Prompt Drift → version-controlled policies, pinned models
  • 🤹 Bag-of-Agents → single orchestration, handoff contracts
  • 🌙 3 AM Liability → approval gates, time-windows
  • 👻 Missing Observability → structured logs päivänä 1, dashboards

Seuraavassa oppitunnissa: Yhteenveto, retro ja portfolio — miten paketoit kolmen viikon työn ja puhut siitä työhaastattelussa.

Kirjaudu seurataksesi edistymistäsi

Kirjaudu sisään

Kysymykset ja vastaukset

Kirjaudu sisään osallistuaksesi keskusteluun