Negdje u zapisu klijenta, usred obične bilješke o običnom pozivu, nalazi se rečenica poput ove: “Proračun je trenutno stisnut, dogovoreno je da ćemo im se javiti za dva mjeseca da ponovno razmotrimo.”
Napisana jednom. Nikad više pogledana. Ne zato što je netko zaboravio da je važna, nego zato što ništa na njoj nije izgledalo kao zadatak. Nije bila unos u kalendaru. Nije bila podsjetnik. Bila je samo rečenica, radeći ono što rečenice u bilješkama rade: stoje tu, tehnički istinite, funkcionalno nevidljive.
Htjeli smo znati može li sustav to sam uočiti, bez da se itko mora sjetiti vratiti se i ručno pretvoriti rečenicu u zadatak.
Što smo zapravo napravili, a što namjerno nismo
Instinkt kod ovakve značajke je pustiti AI da sam odradi cijeli posao — pročita bilješku, izračuna datum, odluči je li rok prekoračen, možda čak i skicira podsjetnik. Umjesto toga smo to namjerno podijelili.
Jedini posao modela je razumijevanje jezika: pročitati nedavne bilješke klijenta i prepoznati obećanje usmjereno na budućnost, nešto poput “ponovno ćemo razmotriti za dva mjeseca” ili “javit ćemo se nakon njihove sjednice uprave.” Procjenjuje podrazumijevano odgađanje jednostavnim riječima. To je sve. Svaki stvarni izračun datuma — rok, je li danas prošao taj rok — odvija se nakon toga u običnom, determinističkom kodu. Model nikad ne računa i nikad ne donosi konačnu odluku o tome što je prekoračeno. On čita. Kod odlučuje.
Ta podjela je važnija nego što zvuči. Razumijevanje jezika točno je vrsta nejasnog, kontekstualno ovisnog zadatka u kojem je model dobar. Računanje datuma točno je vrsta zadatka u kojem ne želite da model improvizira, ni malo.
Stvarni test
Nismo samo provjerili vraća li endpoint nešto što izgleda razumno. Napisali smo pravu bilješku na pravom zapisu klijenta: “…dogovoreno je da ćemo im se javiti za 2 mjeseca da ponovno razmotrimo proračun.” Pozvali smo endpoint. Ispravno je izvukao obećanje, izračunao podrazumijevano odgađanje od 60 dana i došao do roka točno 60 dana od stvarnog vremenskog žiga bilješke, ispravno označenog kao još nije prekoračen.
Malo, i upravo to je poanta. Sustavu nije trebalo reći da postoji obećanje koje treba pronaći. Pročitao je rečenicu koju je osoba napisala za sebe, ne za obrazac, i iz nje izvukao pravi rok.
Dio koji je lako previdjeti
Bilješke u Craft11 mogu se samo dodavati. Nitko ih ne uređuje, nitko ih ne briše, čak ni Stark. Isto je načelo koje čuva iskrenost sirove strane svakog zapisa: ono što ste stvarno napisali ostaje točno onako kako ste to napisali. Kad smo poslije morali ukloniti testnu bilješku, nije postojao gumb za brisanje kojeg bismo pritisnuli, jer ga ni ne bi trebalo biti. Trebala je izravna operacija nad bazom podataka, prvo potvrđena, odmah nakon uklonjena.
To je za nas mala neugodnost tijekom testiranja. Isti je razlog zbog kojeg je značajka prepoznavanja obećanja uopće pouzdana: čita stvarno, nepromijenjeno, neočišćeno ljudsko pisanje, a ne njegovu sanitiziranu verziju.
Zašto se ovo uopće isplati raditi
Ništa od ovoga ne zamjenjuje upravitelja zadataka. Zamjenjuje specifičan, tihi način na koji stvari propadnu — kad je jedini zapis obećanja rečenica koju nitko neće ponovno pročitati. Sustav ne treba da pišete drugačije, strukturirate bilješke ili se sjećate da nešto označite. Samo treba da zapišete što se zapravo dogodilo, onako kako biste to napisali sami sebi, a on se pobrine za uočavanje.