# FREEHAND Part-1 — Fable Elmaları + Görev Dağıtımı

**Kaynak:** `C:\AIOS\.claude\worktrees\adoring-cerf-94ec6c\projeler\noxus\enver\freehand\`  
**Hedef yüzey:** `https://tarim.online/aios` (üst karakalem) · `/tohum` dokunulmaz (alt matris)  
**Tarih:** 2026-09-02 · CR-D124

---

## 1. Fable'den Mantıklı Elmalar (alınacak)

| Elma | Freehand kaynağı | /aios'a uyum | Neden |
|------|------------------|--------------|-------|
| **Deterministik kalem** | `gur()` · `telestration smooth` | ✅ Zaten var | TV + LLM okunabilirlik; Math.random yasak |
| **text2vec ilkesi** | `freehand.py` `glyph_paths` | ✅ Felsefe | "Yaz, sonra vektöre çevir" — etiketler trace edilmez |
| **Faz + gecikme** | `procedural_anim` · aios ADIM 2–8 | ✅ Zaten var | Sırayla büyüme = canlı, hepsi birden = sahte |
| **Tarama gölge** | karakalem.js hatching | ✅ Zaten var | Fill yok; kurşun kalem doğal sonucu |
| **Katman birleştirici** | `assemble` · `image_layer` | ⚠️ Part-2 | Tohum + etiket + dış vektör katmanı |
| **Telestration araç seti** | `telestration.js` pen/arrow/curve | ⚠️ SVG'ye çevir | Canvas değil; path olarak ADIM 9+ anotasyon |
| **Animasyonlu SVG export** | `freehand_export.py` SMIL | ⚠️ Part-2 | Büyüme karelerini dışa aktarma |
| **3B maç tiyatrosu** | `match3d_anim` · Three.js | ❌ Ayrı lane | gospor/replay; /aios doktrinine aykırı |
| **CV tracking → pitch** | `freehand_pitch.py` · YOLO | ❌ Ayrı lane | Tarım tohumu ≠ futbol sahası |

---

## 2. Alınmayacak Elmalar (dürüst sınır)

- Canvas overlay telestration **olduğu gibi** — /aios "sıfır piksel" şartını kırar
- Three.js / WebGL / GLB oyuncu mesh — üst yüzey karakalem değil
- Football-specific tracking JSON — tarım hikâyesiyle bağlantısız
- OCR/layout otomasyonu — Part-2 veya ayrı servis (`freehand_service.py`)

---

## 3. Görev + Dosya Dağıtımı

### K37 — FREEHAND-AIOS-KOPRU (CR · bu tur)
| Dosya | İş |
|-------|-----|
| `web/betik/aios_karakalem_kopru.js` | Ortak karakalem çekirdeği (gur · yumusat · yol · fazSirali) |
| `web/aios.html` + `web/aios/index.html` | Köprü script yükle · inline gur/yumusat → `AiosKarakalem` |
| `tarim.arastirmalar/5/ilham5/FREEHAND_PART1_ELMALAR.md` | Bu belge |

### K38 — TEXT2VEC ETIKET (AG · Part-2 sonrası)
| Dosya | İş |
|-------|-----|
| `freehand.py` → `tarim.online/tools/freehand_bridge.py` | `glyph_paths` thin wrapper |
| `/api/freehand/text2vec` | POST `{metin, px, x, y}` → SVG path fragment |
| `/aios` ADIM 9 | Tohum altı etiket: font outline, trace yok |

### K39 — KATMAN ASSEMBLER (FB/HS · Part-2)
| Dosya | İş |
|-------|-----|
| `freehand.py` `assemble` | Tohum SVG + metin katmanı + (opsiyonel) raster arka plan |
| `hasat/karakalem.js` | `window.Karakalem` ile /aios ortak geometri API |

### K40 — TELESTRATION→SVG (PZ · Part-2)
| Dosya | İş |
|-------|-----|
| `telestration.js` mantığı | Canvas yerine saf `<path>` anotasyon katmanı |
| `?anotasyon=1` modu | Gizli; sandbox için ggmes oda köprüsü |

### K41 — GÜMRÜK (CR/Kimi)
| Kontrol | Beklenen |
|---------|----------|
| `canli_uc` | `/aios` 200 · köprü JS 200 |
| `dogrula` K41 | `/aios` karakalem + `/tohum` ayrımı |
| NO-FAKE | Three.js / canvas / Math.random yok |

---

## 4. Part-2 İsteği (Kaptan'a)

Part-1 (**freehand/**) işlendi. **Part-2 dosya yolunu** gönder:
- İkinci çalışmanın tam path'i
- Varsa `karakalem.js` veya `vektor3d.js` güncel sürümü
- text2vec için tercih edilen font (varsayılan: Segoe UI / serif UI)

Part-2 gelince: K38–K40 paralel açılır; CR gümrük + ölçüm.

---

## 5. Sandbox prob (Part-1 sonrası)

```
GET https://tarim.online/aios
GET https://tarim.online/betik/aios_karakalem_kopru.js
GET https://tarim.online/tohum
```

Tarayıcı konsolu: `AiosKarakalem.surum` → `FH-P1-2026-09-02`
