Documentation Index
Fetch the complete documentation index at: https://harness.lokomotif.ai/llms.txt
Use this file to discover all available pages before exploring further.
12 dosya, 800 satır, sıfır tamamlanma
Görev tek cümle: “Kullanıcı kimlik doğrulamayı ekle.” Düzenek (harness) çizmediği için ajan iki saatte şunları yapar — veritabanı şemasını değiştirir, üç route yazar, frontend formunu kurar, hata middleware’ini refactor eder, e-posta servisinin yapılandırmasına dokunur, parola sıfırlama akışını yarıda iskeletler. Oturum bitince repo bu hale gelmiştir:- 12 değiştirilmiş dosya
- ~800 satır kod
- Uçtan uca geçen senaryo: 0/5
- Final tamamlanma: %0
Tez
Aşırıya kaçma ile yarım bırakma rastlantı değil, simbiyozdur: aynı madalyonun iki yüzü, aynı ekonominin iki sonucu. Kanban’dan ödünç alınan WIP=1 kuralı ile Little’s Law’un sayısal kaldıracı, Düzenek Mühendisliği (Harness Engineering) içinde birleşince bu simbiyoz kırılır. Düzenek tek bir cümleyle özetlenir: bir an’da yalnız bir feature aktif, ve aktif feature uçtan uca doğrulanmadan ikinci feature başlatılamaz.Tek tabak disiplini
Simbiyoz — neden iki başarısızlık aynı kişide yan yana durur
İki uç görünüşte zıttır, ekonomileri aynıdır:- Bir sonraki fikri üretmek ucuzdur. Birkaç yüz token, sıfır risk. Yeni bir fonksiyon iskeleti yazmak ajan için en düşük direnç yoludur.
- Bir şeyi gerçekten bitirmek pahalıdır. Edge-case bulma, gerçek HTTP isteği atma, test yazma, hatayı izleme. Saatler.
Little’s Law — matematik tarafımızda
Kuyruk teorisinin en eski formülü:- L = sistemde aynı anda olan iş (WIP)
- λ = tamamlanma hızı (feature/saat)
- W = ortalama lead time (bir feature’ın başlangıçtan
passing’e geçişine kadar süre)
”Done” yeniden tanımlanır
Yarım bırakmanın altındaki kavramsal hata “done”un yanlış tanımlanmasıdır. Düzenek dilinde:Done, “kod yazıldı” değildir. “Davranış doğrulandı”dır.Anthropic’in Effective harnesses for long-running agents yazısı bunu kalın çizgilerle koyar: ajan testleri kaldıramaz veya düzenleyemez, çünkü “this could lead to missing or buggy functionality.” Doğrulama browser otomasyonu (Puppeteer MCP gibi) ile “as a human user would” yapılır — birim test değil, uçtan uca davranış. Kod yazımı bir adımdır; doğrulanma başka bir adımdır. Düzenek aradaki uçurumu kapatır.
Mekanizma — üç destekleyici parça
1) Feature DAG — dört durumlu makine
Feature listesi düz markdown değil, durum makinesidir. Dört durum:not_started— henüz başlanmadıactive— şu an üzerinde çalışılıyor (yalnız bir tane!)blocked— açık soru veya bağımlılık engelipassing— uçtan uca doğrulama scripti yeşil
passing’e çevrilir. Liste bir kez kuruldu mu, ajanın “yeni bir fikrim var” diyebileceği serbest alan yoktur — yapacağı iş listededir, sıradadır, doğrulanabilirdir.
2) VCR — Verified Completion Rate
Düzeneğin izlediği basit oran:AGENTS.md’ye yazılır, doğrulama scripti uygular, ajanın değiştirme yetkisi yoktur. Aşırıya kaçma kapısı mekanik olarak kapatılır.
3) Geri basınç (backpressure)
HumanLayer’in context-efficient backpressure yazısı kavramı kısa devre yapar: ajan ~75k tokenlık “smart zone”da en iyi çalışır; üstüne çıktığı an “dumb zone”a geçer. Her bitmemiş feature, her gereksiz log satırı bu zonu doldurur. Düzenek görevi: değer üretmeyen her şeyi sıkıştır, bitmemiş işin görünür kalmasını sağla. Geçmemiş feature sayısı sistem basıncıdır. Sıfır basınç = proje tamam. Pozitif basınç = bitirilmeyi bekleyen iş var. Yeni feature ancak basınç düştükçe eklenir.Ralph pattern — minimal düzenek referansı
Ralph (Geoffrey Huntley) bir düzeneğin minimum işleyen halidir:- Tek görev döngüsü — her iterasyonda yalnız bir iş. WIP=1, mekanik olarak.
- Deterministik prompt stack — her loop’a aynı dosyalar aynı sırada bindirilir:
@PROMPT.md,@fix_plan.md,@specs/*,@AGENTS.md. Bağlam rastgele şişmez, dikkat dağılmaz. - Sınırlı paralel subagent — arama/yazma için 500’e kadar, ama build/test için yalnız 1. Doğrulama tarafında paralellik yok; buradaki tek darboğaz geri basıncı korumak için bilinçli.
Sayılarla
Aynı 8 feature, iki düzenek sözleşmesi altında koşturuldu. Sayılar bir iç ölçümden (Claude Sonnet, 4 oturum/koşum):| Kuruluş | E2E geçen | Final tamamlanma | Dokunulan dosya | Ortalama lead time |
|---|---|---|---|---|
| Sınırsız WIP (buffet) | 1,6/8 (%20) | 3/8 (%37,5) | 31 | 2,4 saat |
| WIP=1 + VCR (tek tabak) | 8/8 (%100) | 7/8 (%87,5) | 9 | 0,6 saat |
- Anthropic claude-code-sandboxing: kurallı sınırlar onay isteklerini %84 azalttı. Sınır koymak hız kaybı değil hız kazancı.
- HumanLayer: “every line of
PASS src/utils/helper.test.tsis waste” — gürültü token = kaybedilen dikkat.
Pratik
AGENTS.md içine konacak blok
Feature kaydı — dörtlü zorunluluk
behavior, verification, state, evidence — olmadan feature, feature değildir; sadece bir niyettir. OpenHands ekibinin prompt-injection yazısı confirmation-mode’un tek başına “security theater” olduğunu söyler; aynı mantık burada — durum etiketi tek başına bir şey ifade etmez, doğrulama kanıtı ifade eder.
Pratik kontrol listesi
-
docs/features.jsonmevcut, makine-okunabilir (JSON). - Her feature’da
behavior,verification,state,evidencedördü tam. - Aynı anda yalnız 1 feature
active; doğrulama scripti bunu zorlar. - VCR hesaplanıyor; VCR sub 1 iken yeni aktivasyon mekanik olarak yasak.
-
AGENTS.md’de WIP=1 kuralı yazılı ve ajanın değiştiremeyeceği bölümde. - Build/test paralelliği 1’e kilitli; arama/yazma paralelliği sınırlı (Ralph kuralı).
- Geri basınç görünür: bitmemiş feature sayısı dashboard’da/log’da.
Müfredat içindeki yeri
Ders 06 init fazından bir feature listesi çıkarmıştı; bu ders listenin tüketim kuralını koydu — WIP=1, VCR, geri basınç. Aşırıya kaçma ile yarım bırakmanın simbiyozu, ekonominin doğal yokuşunu mekanik bir kilitle ters çevirir. Ders 08 — Özellik Listesi Bir Primitiftir aynı listeyi bir veri yapısı olarak resmileştirir: scheduler, verifier, handoff reporter ve progress tracker hep onun üzerinde çalışır. Pratik karşılığı: Proje 04 — Geri Bildirim Halkası. WIP=1 ve VCR’ı doğrulama scriptiyle birlikte gerçek bir koşumda kurarsınız.Kaynaklar
- Anthropic — Effective harnesses for long-running agents (feature listesi, “one feature at a time”, 200+ feature örneği, e2e doğrulama).
- HumanLayer — Context-efficient backpressure (75k “smart zone”, gürültü-token = kaybedilen dikkat, deterministik filtreleme).
- Geoffrey Huntley — Ralph (WIP=1 loop, deterministik prompt stack, 500/1 paralellik asimetrisi, 297 vaka).
- Anthropic — Claude Code sandboxing (kurallı sınır + %84 onay isteği azalması; sınır = hız).
- OpenHands — Mitigating prompt injection attacks in software agents (confirmation mode tek başına yetersiz; sınır + kanıt birlikte gerekir).