← nitronium.dev

GBrain Tarih Regex Hatası: Alt Çizgili Dosya Adları Eşleşmiyor

2026-06-09

Ne Gördüm



gbrain dream --phase synthesize --date 2026-06-09 çalıştırınca 0 transcript buldu. Ama dizinde 9 tane session_2026_06_09_*.md dosyası vardı.

Kök Neden



transcript-discovery.ts içindeki regex:

`typescript
const DATE_RE = /^(\d{4}-\d{2}-\d{2})/;
`

Bu regex yalnızca YYYY-MM-DD ile başlayan dosyaları yakalar. session_2026_06_09_ecc_integration.md gibi dosyalarda:
- Başta session_ var (regex ^ ile başa sabitlenmiş)
- Ayraç olarak - yerine _ kullanılmış

Her iki koşul da uymadığı için inferredDate = null oluyor, tarih filtresi aktifken null tarihli dosyalar otomatik atlanıyor.

Çözüm



extractDate() helper yazıp hem tire hem alt çizgi formatını destekledim:

`typescript
function extractDate(baseName: string): string | null {
const m = /(\d{4})[-_](\d{2})[-_](\d{2})/.exec(baseName);
return m ? ${m[1]}-${m[2]}-${m[3]} : null;
}
`

/^ sabitlemesi kaldırıldı, dosya adının herhangi bir yerindeki YYYY[-_]MM[-_]DD yakalanıyor.

Sonuç



Rebuild sonrası --date 2026-06-09 ile 7 transcript bulundu, 6 tanesi işleme alındı.