Lessons Learned (System Rules) Lessons Learned — System Rules Last Verified: 2026-02-17 | Owner: John This document captures critical lessons from system operations, mistakes, and their fixes. Every lesson represents a real failure and the systematic fix that followed. 2026-02-16: NIKAD build od self-generated spec-a bez CEO approval Problem: John je na DROP projektu sam napravio UI/UX spec (competitor analysis, 3 dizajn opcije), pa odmah krenuo graditi full app — 97 fajlova, 24K LOC. Bez ijednog Alemovog odobrenja na spec. Rezultat: kod zaglavljen na wrong git branch, prazan drop-app/ dir, wasted tokens, Alem ne zna šta je napravljeno. Root Cause: Nedostajao approval gate između faze Research/Spec i faze Build. John je tretirao self-generated spec kao odobren spec. Pravilo (ZAKON): Research → OK, radi slobodno Spec/Proposal draft → OK, radi slobodno BUILD → STOP. Explicit CEO odobrenje na spec PRIJE prvog LOC. Ako CEO nije pregledao spec, spec NE POSTOJI kao basis za build. Self-generated spec ≠ Approved spec. NIKAD. Recovery: fontelepay/ auto-backup branch merged to master. Kod recovered. Fix nivo: Rule (ovaj fajl) + HiveMind + MEMORY.md. Idealan fix bi bio hook koji blokira build bez approved spec — ali approval gate je human decision, teško za hook. Lekcija: AI može napraviti spec, ali samo čovjek može ODOBRITI spec. Bez odobrenja, build je gubitak resursa. 2026-02-08: Next Steps MORAJU postati MC taskovi Problem: Session log imao "Next Steps" ali nikad nisam kreirao MC taskove za njih. Rezultat: 2 akcije (Edita MC onboarding + Mini SSH update) izgubljene jer niko ne čita session log automatski. Root Cause: Session-save workflow zapisuje next steps u markdown ali nema korak koji ih pretvara u MC taskove. Fix: PRAVILO — prije kraja sesije, svaki "Next Step" iz session state-a MORA postati mc.js add task. Session state je za kontekst, MC je za akciju. Ako nije u MC-u, ne postoji. Lekcija: Passive documentation (markdown) ≠ active tracking (MC). Ako nešto treba biti urađeno, mora biti task. 2026-02-04: Task Management + Problem Solving Enforcement Problem: Skip-ovao sam task tracking i problem solving proces, delegirao agenta bez proper requirements gathering, agent riješio pogrešan problem. Root Cause Analysis: Nisam dodao task u tasks.db Nisam pratio problem-solving.md proces (koraci 1-6) Spawn-ovao agenta sa PRVIM rješenjem (email infrastructure umjesto client communication system) Agent radio PLAN fazu solo - trebalo John + client Nisam završio Next Steps iz SESSION-STATE Impact: Alem dobio pogrešno rješenje, izgubljeno vrijeme, "veći problem" kreiran Solution Implemented: Kreiran ~/system/tools/start-task.sh - mandatory validation script Update MEMORY.md sa CORE PROTOCOL sekcijom Dokumentovano u lessons-learned.md boot.sh reminder dodan Validation: start-task.sh blokira izvršenje ako nisu zadovoljeni koraci 1-4 Checklist forsira: task.db entry → problem solving (1-6) → company delegation check MEMORY.md učitava se na session start sa reminder-om Prevention: NIKAD ne radim ništa bez bash ~/system/tools/start-task.sh prvo Script deterministic - ne mogu skip-ovati boot.sh prikazuje reminder na session start Key Mantras: "Prvo rješenje" ≠ "Najbolje rješenje" Research PRIJE implementacije (WebSearch 2+ izvora) 2-3 opcije UVIJEK, ne samo jedna PLAN phase = John + client, ne agent solo More Lessons For complete list of lessons learned, see ~/system/rules/lessons-learned.md in the system.