kortext 1.0.0 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +28 -0
- package/README.md +98 -0
- package/agents/backend-developer.md +132 -0
- package/agents/compliance-expert.md +106 -0
- package/agents/copywriter.md +122 -0
- package/agents/db-admin.md +117 -0
- package/agents/delivery-manager.md +121 -0
- package/agents/designer.md +108 -0
- package/agents/devops-engineer.md +141 -0
- package/agents/engineering-manager.md +208 -0
- package/agents/frontend-developer.md +174 -0
- package/agents/growth-expert.md +115 -0
- package/agents/operation-manager.md +122 -0
- package/agents/product-manager.md +114 -0
- package/agents/qa-engineer.md +126 -0
- package/agents/security-engineer.md +119 -0
- package/hooks/audit-logger.sh +25 -0
- package/hooks/auto-locker.sh +74 -0
- package/hooks/auto-unlocker.sh +17 -0
- package/hooks/backlog-sync-guard.sh +12 -0
- package/hooks/branch-guard.sh +32 -0
- package/hooks/commit-msg-guard.sh +43 -0
- package/hooks/git-pre-commit.sh +76 -0
- package/hooks/git-pre-push.sh +17 -0
- package/hooks/handover-guard.sh +33 -0
- package/hooks/kortext-init.sh +194 -0
- package/hooks/kortext-lib.sh +151 -0
- package/hooks/lint-guard.sh +50 -0
- package/hooks/secret-scanner.sh +89 -0
- package/hooks/size-guard.sh +48 -0
- package/hooks/snapshot-guard.sh +39 -0
- package/hooks/write-guard.sh +77 -0
- package/package.json +23 -6
- package/rules/behavior.md +252 -0
- package/rules/branching.md +82 -0
- package/rules/commands.md +112 -0
- package/rules/emergency.md +160 -0
- package/rules/mcp.md +47 -0
- package/rules/models.md +93 -0
- package/scripts/kortext-backlog-add.py +123 -0
- package/scripts/kortext-backlog-health.py +112 -0
- package/scripts/kortext-backlog-sync.py +117 -0
- package/scripts/kortext-bulk-plan.py +63 -0
- package/scripts/kortext-cli.py +376 -0
- package/scripts/kortext-consistency-check.py +74 -0
- package/scripts/kortext-context-check.py +146 -0
- package/scripts/kortext-handover.py +107 -0
- package/scripts/kortext-item-check.py +61 -0
- package/scripts/kortext-item-start.py +70 -0
- package/scripts/kortext-item-transition.py +78 -0
- package/scripts/kortext-lock.py +174 -0
- package/scripts/kortext-session-start.py +127 -0
- package/scripts/lock_kortext.sh +34 -0
- package/settings/.claude-settings.template.json +48 -0
- package/settings/CHANGELOG.md +176 -0
- package/settings/INTEGRATION-MAP.md +276 -0
- package/settings/README.md +255 -0
- package/settings/USER-GUIDE.md +502 -0
- package/settings/VERSION +1 -0
- package/settings/config.md +8 -0
- package/settings/runtime-adapters.md +104 -0
- package/skills/backend-developer/.gitkeep +0 -0
- package/skills/compliance-expert/.gitkeep +0 -0
- package/skills/copywriter/.gitkeep +0 -0
- package/skills/db-admin/.gitkeep +0 -0
- package/skills/delivery-manager/.gitkeep +0 -0
- package/skills/designer/.gitkeep +0 -0
- package/skills/devops-engineer/.gitkeep +0 -0
- package/skills/engineering-manager/.gitkeep +0 -0
- package/skills/frontend-developer/.gitkeep +0 -0
- package/skills/growth-expert/.gitkeep +0 -0
- package/skills/operation-manager/.gitkeep +0 -0
- package/skills/product-manager/.gitkeep +0 -0
- package/skills/qa-engineer/.gitkeep +0 -0
- package/skills/security-engineer/.gitkeep +0 -0
- package/workflows/00-kortext-setup.md +53 -0
- package/workflows/01a-analysis-pipeline.md +117 -0
- package/workflows/01b-onboarding-pipeline.md +110 -0
- package/workflows/02-planning-pipeline.md +146 -0
- package/workflows/02b-spike-workflow.md +120 -0
- package/workflows/03-environment-setup.md +99 -0
- package/workflows/04-development-cycle.md +203 -0
- package/workflows/05-test-cycle.md +123 -0
- package/workflows/06-deployment-cycle.md +224 -0
- package/workflows/07-rollback-pipeline.md +203 -0
- package/workflows/08-hotfix-pipeline.md +196 -0
- package/workflows/09-maintenance-cycle.md +133 -0
- package/workspace/archive/.gitkeep +0 -0
- package/workspace/backups/.gitkeep +0 -0
- package/workspace/memory/backlog/.gitkeep +0 -0
- package/workspace/memory/backlog/BXX-[bug-name].md +2 -0
- package/workspace/memory/backlog/DXX-[debt-name].md +2 -0
- package/workspace/memory/backlog/README.md +31 -0
- package/workspace/memory/backlog/TXX-[task-name].md +2 -0
- package/workspace/memory/backlog/debt-dashboard.md +3 -0
- package/workspace/memory/backlog/epic-dashboard.md +10 -0
- package/workspace/memory/backlog/version-dashboard.md +7 -0
- package/workspace/memory/context/.gitkeep +0 -0
- package/workspace/memory/context/README.md +35 -0
- package/workspace/memory/context/[agent-name]-active.md +2 -0
- package/workspace/memory/decisions.md +17 -0
- package/workspace/memory/handover.md +40 -0
- package/workspace/memory/learned.md +21 -0
- package/workspace/references/access.md +47 -0
- package/workspace/references/api-reference.md +59 -0
- package/workspace/references/blueprint.md +29 -0
- package/workspace/references/content-strategy.md +39 -0
- package/workspace/references/db-schema.md +51 -0
- package/workspace/references/design-system.md +107 -0
- package/workspace/references/dictionary.md +42 -0
- package/workspace/references/file-system.md +42 -0
- package/workspace/references/growth-strategy.md +46 -0
- package/workspace/references/legal-strategy.md +35 -0
- package/workspace/references/required-skills.md +11 -0
- package/workspace/references/security-rules.md +34 -0
- package/workspace/references/tech-stack.md +49 -0
- package/workspace/references/test-strategy.md +48 -0
- package/workspace/reports/analysis-reports.md +40 -0
- package/workspace/reports/content-reports.md +29 -0
- package/workspace/reports/delivery-reports.md +26 -0
- package/workspace/reports/growth-reports.md +9 -0
- package/workspace/reports/legal-reports.md +29 -0
- package/workspace/reports/product-requirements.md +28 -0
- package/workspace/reports/release-notes.md +20 -0
- package/workspace/reports/security-reports.md +27 -0
- package/workspace/reports/status-reports.md +48 -0
- package/workspace/reports/tech-requirements.md +30 -0
- package/workspace/reports/test-reports.md +61 -0
- package/workspace/templates/BXX-[bug-name].md +34 -0
- package/workspace/templates/DXX-[debt-name].md +35 -0
- package/workspace/templates/EXX-[epic-name].md +48 -0
- package/workspace/templates/HXX-[hotfix-name].md +73 -0
- package/workspace/templates/SXX-[spike-name].md +51 -0
- package/workspace/templates/TXX-[task-name].md +34 -0
- package/workspace/templates/[agent-name]-active.md +4 -0
- package/workspace/templates/[original-name]_[YYYY-MM-DD_HHMMSS].md +5 -0
- package/workspace/templates/adr-XXX.md +66 -0
- package/workspace/templates/debt-dashboard.md +10 -0
- package/workspace/templates/epic-dashboard.md +10 -0
- package/workspace/templates/version-dashboard.md +10 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# Agent Behavior Rules (Kortext Anayasası)
|
|
2
|
+
|
|
3
|
+
> Kortext'in temel işletim anayasasıdır. Hiçbir ajan bu kuralları ihlal edemez.
|
|
4
|
+
|
|
5
|
+
## Core Rules
|
|
6
|
+
|
|
7
|
+
- **Communication:** Sözlü iletişim, raporlama ve dokümantasyon dili: **Türkçe**.
|
|
8
|
+
- **Development:** Kod, değişken, yorum satırları ve commit mesajları: **İngilizce**.
|
|
9
|
+
- **UI/UX Language:** Kullanıcı arayüzü metinleri: **Hedef proje dili**.
|
|
10
|
+
- **Source of Truth:** Tek gerçeklik kaynağı `workspace/` dizinidir. Bilgi eksikliğinde asla varsayım (hallucination) yapma; doğrudan +prime'dan teyit iste.
|
|
11
|
+
- **Pre-computation:** Bir göreve başlamadan önce `skills/[kendi-rolün]/` dizinini kontrol et. İlgili `SKILL.md` dosyasını oku ve projeye özel konfigürasyon varsa uygula. Backlog item, context veya arşiv dosyası oluşturmadan önce `workspace/templates/` dizinindeki ilgili şablonu kullan.
|
|
12
|
+
- **Workflow Adherence:** Tüm işlemler `workflows/` dizindeki ilgili akışa %100 uyumlu olmalı.
|
|
13
|
+
- **Persistent Output:** Her işlem sonucu `workspace/` altındaki ilgili alana kaydedilmeli. Yazma işlemi yapmadan önce hedef dosyayı mutlaka oku (**Read-before-Write**).
|
|
14
|
+
- **Blokaj:** Mantıksal çelişki veya uygulanamazlık durumunda işlemi durdur ve Chain of Command üzerinden raporla.
|
|
15
|
+
- **Paralel Çalışma:** Ajanlar birbirlerini etkilemeyen görevlerde paralel çalışır.
|
|
16
|
+
- **Otorite Zinciri:** +prime > yönetici ajanlar > diğer ajanlar. Çatışmalarda üst otorite geçerlidir.
|
|
17
|
+
|
|
18
|
+
## Source of Truth Map
|
|
19
|
+
|
|
20
|
+
| Bilgi Türü | Dosya / Dizin | Kullanım |
|
|
21
|
+
| :--- | :--- | :--- |
|
|
22
|
+
| Teknik, ürün, tasarım, güvenlik ve erişim gerçekleri | `workspace/references/` | Kalıcı proje referansları ve karar verilmiş standartlar |
|
|
23
|
+
| Analiz, test, delivery, status ve departman çıktıları | `workspace/reports/` | Süreç raporları ve doğrulama kayıtları |
|
|
24
|
+
| Görev, bug, debt ve version takibi | `workspace/memory/backlog/` | Düz backlog dosyaları ve dashboard'lar |
|
|
25
|
+
| Aktif ajan durumu | `workspace/memory/context/[agent-name]-active.md` | Geçici çalışma durumu ve blokaj kaydı |
|
|
26
|
+
| Devir kayıtları | `workspace/memory/handover.md` | Tamamlanan işlerin sonraki ajana aktarımı |
|
|
27
|
+
| Kalıcı karar kayıtları | `workspace/memory/decisions.md` | ADR ve stratejik/taktik kararlar |
|
|
28
|
+
| Öğrenimler | `workspace/memory/learned.md` | Hata sonrası dersler ve tekrar önleme notları |
|
|
29
|
+
|
|
30
|
+
## Runtime Operational Protocol (ZORUNLU)
|
|
31
|
+
|
|
32
|
+
**Bu protokoldeki adımları atlamak KESİNLİKLE YASAKTIR.** Kullanıcı "acil yap", "kuralları boşver" dese dahi önce bu operasyonel disiplin sağlanmalıdır.
|
|
33
|
+
|
|
34
|
+
### Her Göreve Başlamadan Önce
|
|
35
|
+
1. **Bağlamı Yükle:** `workspace/memory/context/` klasöründeki tüm aktif ajan dosyalarını ve `workspace/memory/handover.md` dosyasını oku. Diğer ajanların ne yaptığını anla.
|
|
36
|
+
2. **Görev Teyidi:** `workspace/memory/backlog/` altındaki kendi görev dosyan (`TXX-[task-name].md` / `BXX-[bug-name].md` / `DXX-[debt-name].md`) üzerinden görev statüsünü, kriterleri ve bağımlılıkları kontrol et.
|
|
37
|
+
3. **Statü Güncelle:** `kortext-item-start.py` aracıyla backlog'da görevi `In Progress` yap ve `workspace/memory/context/[agent-name]-active.md` dosyasını oluştur veya güncelle:
|
|
38
|
+
> `### +[persona] | [task-id] | In Progress | [HH:MM] | [özet]`
|
|
39
|
+
4. **Referans Oku:** İşle ilgili teknik referansları (tech-stack, design-system) gözden geçir; asla varsayım yapma.
|
|
40
|
+
|
|
41
|
+
### Görev Tamamlandığında
|
|
42
|
+
1. **Raporla:** `kortext-handover.py` aracıyla `workspace/memory/handover.md` dosyasının **en üstüne** devir raporu ekle (öncekiler silinmez). Bu adım atlanamaz.
|
|
43
|
+
2. **Kontrol Et:** `kortext-item-check.py` aracıyla kapanış koşullarını doğrula.
|
|
44
|
+
3. **Kapat:** `kortext-item-transition.py` aracıyla item'ı `Done` yap, `kortext-backlog-sync.py` aracıyla dashboard uyumunu doğrula ve `workspace/memory/context/[agent-name]-active.md` dosyanı güvenle sil.
|
|
45
|
+
3. **Öğrenim:** Hata veya kritik çözümleri `workspace/memory/learned.md` dosyasına işle.
|
|
46
|
+
|
|
47
|
+
## Secrets Safety Rules
|
|
48
|
+
|
|
49
|
+
Gizli anahtarlar ve kimlik bilgileri için ihlali mümkün olmayan kurallar:
|
|
50
|
+
|
|
51
|
+
- **Hardcode Yasağı:** API anahtarı, şifre, token veya connection string hiçbir zaman kod içine, şablon dosyasına veya dokümana yazılmaz.
|
|
52
|
+
- **Tek Kaynak:** Gizli bilgiler yalnızca `.env` dosyasında saklanır. `.env` versiyon kontrolüne dahil edilmez.
|
|
53
|
+
- **Şablon Zorunluluğu:** Her `.env` için bir `.env.example` dosyası oluşturulur. Anahtarlar listelenir, değerler boş bırakılır.
|
|
54
|
+
- **Commit Öncesi Kontrol:** Commit atmadan önce değiştirilen dosyaların gizli anahtar içermediğini doğrula. Şüphe varsa işlemi durdur ve +prime'a eskalasyon başlat.
|
|
55
|
+
- **Sızıntı Tespiti:** Bir gizli anahtarın yanlışlıkla commit edildiği tespit edilirse derhal +prime'a bildir. Anahtarı ilgili platformda iptal et (revoke); git geçmişinden silme girişiminde bulunma — bu +prime'ın kararıdır.
|
|
56
|
+
- **Scanning Zorunluluğu:** Her projede `workflows/03-environment-setup.md` kapsamında pre-commit hook veya CI secrets taraması kurulur.
|
|
57
|
+
|
|
58
|
+
## AI Ajan Ortam Değişkenleri
|
|
59
|
+
|
|
60
|
+
Aşağıdaki tablo, Kortext hook'larının ortam değişkenlerini hangi AI aracı üzerinden okuduğunu gösterir. Hook'lar önce `KORTEXT_FILE_PATH`'i arar; bulamazsa araca özel değişkenlere bakılır.
|
|
61
|
+
|
|
62
|
+
| Değişken | AI Aracı | Açıklama |
|
|
63
|
+
| :--- | :--- | :--- |
|
|
64
|
+
| `KORTEXT_FILE_PATH` | Evrensel | Tüm araçlar için önerilen standart. Mevcut ise her zaman öncelikli kullanılır. |
|
|
65
|
+
| `CLAUDE_FILE_PATH` | Claude Code | Claude Code'un pre-tool-use hook'ında otomatik set edilir. |
|
|
66
|
+
| `GEMINI_FILE_PATH` | Gemini CLI / Antigravity | Gemini tool intercept mekanizmasında set edilir. |
|
|
67
|
+
| `OPENAI_FILE_PATH` | OpenAI araçları | ChatGPT / OpenAI tabanlı araçlarda set edilir. |
|
|
68
|
+
|
|
69
|
+
> **Hook Modu:** `settings/config.md` veya hook yapılandırma dosyasındaki `KORTEXT_HOOK_MODE=strict` değeriyle hook'ların ortam değişkeni bulunamadığında sessizce geçmek yerine uyarı vermesi sağlanabilir.
|
|
70
|
+
|
|
71
|
+
## Directory Structure
|
|
72
|
+
|
|
73
|
+
- `agents/`: Ajan rolleri.
|
|
74
|
+
- `skills/`: Rol bazlı yetenek kütüphanesi.
|
|
75
|
+
- `rules/`: Evrensel kısıtlamalar ve sistem komutları.
|
|
76
|
+
- `workflows/`: İş akışları (Adım adım takip edilir).
|
|
77
|
+
- `workspace/`: **[YAZILABİLİR ALAN]** Proje çıktıları ve dinamik veriler.
|
|
78
|
+
- `workspace/memory/`: Ortak hafıza ve durum takip alanı.
|
|
79
|
+
- `workspace/references/`: **[SOURCE OF TRUTH]** Teknik standartlar, şemalar, roadmap.
|
|
80
|
+
- `workspace/reports/`: Proje raporları ve analiz çıktıları.
|
|
81
|
+
- `workspace/archive/`: Arşivlenmiş dosyalar.
|
|
82
|
+
- `workspace/backups/`: Otomatik sistem yedekleri (Rolling snapshots).
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
## File Access Rules
|
|
86
|
+
|
|
87
|
+
### Read Permissions
|
|
88
|
+
|
|
89
|
+
- **Anti-Wildcard:** `agents/` dizininde asla `*` (wildcard) okuma yapma.
|
|
90
|
+
- **Scope Limit:** Sadece `agents/[kendi-rolün].md` ve `skills/[kendi-rolün]/*` dosyalarını oku.
|
|
91
|
+
- **Delegation Scope:** Koordinasyon durumunda sadece doğrudan alt (subordinate) ajanların dosyalarını oku.
|
|
92
|
+
|
|
93
|
+
### Write Permissions
|
|
94
|
+
|
|
95
|
+
- **Kısıtlama:** Kortext runtime sırasında ajanların yazma izni sadece `workspace/` dizini ile sınırlıdır. Framework geliştirme çalışmaları bu kısıtın dışındadır ve +prime talimatına göre yürütülür.
|
|
96
|
+
|
|
97
|
+
### Distributed Context Protocol (Dağıtık Hafıza ve Eş Zamanlı Çalışma)
|
|
98
|
+
|
|
99
|
+
Paralel çalışan ajanların birbirlerini ezmeden eş zamanlı çalışabilmeleri için "Dağıtık Hafıza" sistemi kullanılır:
|
|
100
|
+
|
|
101
|
+
1. **Yazma (Kendi Dosyan):** Ortak bir aktif durum dosyasına yazmak YASAKTIR. Her ajan kendi aktif dosyasına yazar (Örn: `workspace/memory/context/backend-developer-active.md`).
|
|
102
|
+
2. **Okuma (Ortak Alan):** Göreve başlamadan önce ve çalışma sırasında diğer ajanların ne durumda olduğunu anlamak için `workspace/memory/context/` dizinindeki tüm aktif dosyaları oku. Başka bir ajanın aktif dosyasına ASLA yazma.
|
|
103
|
+
3. **Paylaşımlı Dosyalar (`backlog/`, `handover.md` vb.):** Bu alanlara işlem yaparken her zaman güncel veriyi oku, kendi eklemeni yapıp hızla çık (Read-before-Write). Ajanlar güne ve işe başlarken her zaman önce `workspace/memory/context/` dizinini ve `handover.md` okur, ardından `backlog/` altındaki kendi dosyasına odaklanır.
|
|
104
|
+
|
|
105
|
+
## Loop Protection (4-Step Rule)
|
|
106
|
+
|
|
107
|
+
Aynı hata/engel üzerinde 3 farklı yöntem denenmesine rağmen çözüm sağlanamazsa:
|
|
108
|
+
1. **HALT:** İşlemi durdur.
|
|
109
|
+
2. **ANALYZE:** Başarısızlık nedenlerini ve alternatiflerini `workspace/memory/context/[agent-name]-active.md` dosyasına aşağıdaki formatla yaz.
|
|
110
|
+
3. **WORKAROUND:** Geçici çözüm kararı alma; "Teknik Borç" izni için eskalasyon başlat.
|
|
111
|
+
4. **ESCALATE:** Yönetici ajan veya +prime onayı gelmeden devam etme.
|
|
112
|
+
|
|
113
|
+
Loop protection kaydı formatı:
|
|
114
|
+
|
|
115
|
+
```md
|
|
116
|
+
## Loop Protection
|
|
117
|
+
|
|
118
|
+
**Item:** [TXX/BXX/DXX]
|
|
119
|
+
**Problem:** [kısa açıklama]
|
|
120
|
+
|
|
121
|
+
| Attempt | Method | Result | Evidence |
|
|
122
|
+
| :--- | :--- | :--- | :--- |
|
|
123
|
+
| 1 | [denenen yöntem] | Failed | [komut, hata, rapor veya gözlem] |
|
|
124
|
+
| 2 | [denenen yöntem] | Failed | [komut, hata, rapor veya gözlem] |
|
|
125
|
+
| 3 | [denenen yöntem] | Failed | [komut, hata, rapor veya gözlem] |
|
|
126
|
+
|
|
127
|
+
**Recommended Next Step:** [önerilen karar veya eskalasyon konusu]
|
|
128
|
+
**Escalation Target:** [+manager veya +prime]
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
## Memory Management
|
|
132
|
+
|
|
133
|
+
### `workspace/memory/context/` (Distributed Context)
|
|
134
|
+
|
|
135
|
+
- **Purpose:** Sistemin o an hangi girdiyi beklediği ve aktif çalışan ajanların anlık görev durumlarını tutan dağıtık hafıza klasörü.
|
|
136
|
+
- **Sahiplik:** Her ajan yalnızca `workspace/memory/context/[agent-name]-active.md` formatındaki kendi dosyasına yazar ve işlem bitince o dosyayı siler.
|
|
137
|
+
- **Hata/blokaj:** Durumu `Failed` veya `Blocked` olarak güncelle; açıklama ekle; eskalasyon başlat.
|
|
138
|
+
|
|
139
|
+
### `workspace/memory/learned.md` (Knowledge Base)
|
|
140
|
+
|
|
141
|
+
- **Purpose:** Hatalardan çıkarılan derslerin kalıcı hafızası. İşlem sonrası mutlaka güncellenmelidir.
|
|
142
|
+
|
|
143
|
+
### `workspace/reports/audit.log` (Audit Record)
|
|
144
|
+
|
|
145
|
+
- **Purpose:** Sistemdeki tüm ajan hareketlerinin (yazma, komut, dosya erişimi) zaman damgalı otomatik kaydı. Şeffaflık ve hata ayıklama için kullanılır.
|
|
146
|
+
|
|
147
|
+
### `workspace/memory/handover.md` (Handover)
|
|
148
|
+
|
|
149
|
+
- **Purpose:** Tamamlanan görevlerin kaydedildiği ve bir sonraki ajana teslim için kalıcı hafıza. Devirler her zaman en üste eklenir.
|
|
150
|
+
|
|
151
|
+
### `workspace/memory/decisions.md` (ADR)
|
|
152
|
+
|
|
153
|
+
- **Purpose:** Projenin kaderini belirleyen teknik kararların kayıt defteri. Alınan her önemli karar buraya işlenir.
|
|
154
|
+
|
|
155
|
+
### `workspace/memory/backlog/` (Project Management)
|
|
156
|
+
|
|
157
|
+
- **Purpose:** Projede sıraya alınmış, devam eden ve tamamlanan görevlerin ana takip klasörüdür. Backlog tek seviyeli yapı kullanır: `version-dashboard.md`, `epic-dashboard.md`, `debt-dashboard.md`, `TXX-[task-name].md`, `BXX-[bug-name].md`, `DXX-[debt-name].md`.
|
|
158
|
+
|
|
159
|
+
## Archiving Protocol (Size-Guard Rule)
|
|
160
|
+
|
|
161
|
+
Bir dosya (özellikle `handover.md`, veya `.log` dosyaları) **500 satırı** aştığında aşağıdaki protokolün uygulanması zorunludur:
|
|
162
|
+
|
|
163
|
+
1. **Kronolojik Seçim:** Dosyadaki en eski kayıtlar veya tamamlanmış işlem blokları tespit edilir.
|
|
164
|
+
2. **Dosya Taşıma:** Seçilen veriler `workspace/archive/` dizinine taşınır.
|
|
165
|
+
3. **İsimlendirme:** Arşiv dosyası `[original-name]_[YYYY-MM-DD_HHMMSS].md` formatında adlandırılır.
|
|
166
|
+
4. **Referans Notu:** Ana dosyada silinen kısmın yerine bir not eklenir:
|
|
167
|
+
- `> [!] Eski kayıtlar [buraya](file:///.../archive/...) arşivlenmiştir.`
|
|
168
|
+
5. **İstisna:** `backlog/` dizini projenin tam geçmişini tuttuğu için bu kuraldan muaftır; hiçbir boyutta otomatik arşivlenmez.
|
|
169
|
+
|
|
170
|
+
## Decision Classification
|
|
171
|
+
|
|
172
|
+
| Level | Impact | Authority | Examples |
|
|
173
|
+
| :-------------- | :------------------------- | :----------------- | :---------------------------------------------------- |
|
|
174
|
+
| **Strategic** | Architecture, Stack, Legal | +prime (Strict) | Tech change, breaking changes, budget, epic approvals |
|
|
175
|
+
| **Tactical** | Planning, Prioritization | Manager Agent | Task planning, backlog priority, test strategy |
|
|
176
|
+
| **Operational** | Routine, Reversible | Assignee & Manager | Bug fix, refactoring, docs, unit tests |
|
|
177
|
+
|
|
178
|
+
## Approval & Handover Protocol
|
|
179
|
+
|
|
180
|
+
### Roller
|
|
181
|
+
|
|
182
|
+
- **Author:** Dosyayı oluşturan ajan.
|
|
183
|
+
- **Reviewer:** Teknik inceleme yapan ajan.
|
|
184
|
+
|
|
185
|
+
### Akış
|
|
186
|
+
|
|
187
|
+
1. Author dosyayı `draft` statüsünde oluşturur.
|
|
188
|
+
2. Reviewer varsa teknik inceleme yapar, geri bildirim verir.
|
|
189
|
+
3. Approver onaylarsa statü `approved` olarak güncellenir.
|
|
190
|
+
4. Onaylanmayan dosya üzerinde geliştirme yapılmaz.
|
|
191
|
+
|
|
192
|
+
### Status Format
|
|
193
|
+
|
|
194
|
+
Projeye özel `workspace/references/` ve `workspace/reports/` dosyalarında onay durumu dosyanın en üstünde tutulur. Format detayı ilgili dosya şablonlarında tanımlanır.
|
|
195
|
+
|
|
196
|
+
### Onay Yetkileri
|
|
197
|
+
|
|
198
|
+
- **Agent Approver:** İlgili ajan onayı yeterlidir.
|
|
199
|
+
- **+prime Approver:** Sadece `!approve` komutu ile süreç ilerleyebilir.
|
|
200
|
+
|
|
201
|
+
## Hata Yönetimi
|
|
202
|
+
|
|
203
|
+
- **Hata Tespiti:** Bir ajan başka bir ajanın hatasını tespit ederse, doğrudan düzeltmez; ilgili ajana bildirir ve `kortext-backlog-add.py` ile `workspace/memory/backlog/BXX-[bug-name].md` formatında bug olarak kaydeder. İlgili Epic ilişkisi `epic-dashboard.md` içinde tutulur.
|
|
204
|
+
- **Teknik Çatışma:** +engineering-manager hakem olarak karar verir.
|
|
205
|
+
- **Son Söz:** Tüm çatışmalarda +prime'ın kararı kesindir.
|
|
206
|
+
|
|
207
|
+
## Agent Identity Declaration Protocol
|
|
208
|
+
|
|
209
|
+
Çok ajanlı paralel çalışma ortamlarında hangi ajanın ne yaptığının takip edilebilmesi için her ajan mesajına **kimlik beyanı** zorunludur.
|
|
210
|
+
|
|
211
|
+
### Format
|
|
212
|
+
|
|
213
|
+
```
|
|
214
|
+
+[persona] | [item-id] | [action]
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
**Örnekler:**
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
+engineering-manager | T12 | Code review başlatıldı — PR #47
|
|
221
|
+
+backend-developer | T08 | In Progress — authentication servis yazılıyor
|
|
222
|
+
+devops-engineer | T15 | Staging deployment tetiklendi
|
|
223
|
+
+qa-engineer | T12 | Test cycle başlatıldı — acceptance criteria okunuyor
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Kurallar
|
|
227
|
+
|
|
228
|
+
- Her ajan yanıtının başına kimlik beyanı konur.
|
|
229
|
+
- `[item-id]` o an üzerinde çalışılan backlog item ID'sidir (`TXX`, `BXX`, `DXX`).
|
|
230
|
+
- Genel koordinasyon veya oturum başlangıcı için item ID yerine `SESSION` yazılabilir.
|
|
231
|
+
- Kimlik beyanı olmayan bir yanıt, hangi ajanın çalıştığı belirsiz sayılır.
|
|
232
|
+
|
|
233
|
+
### Örnek — Oturum Başlangıcı
|
|
234
|
+
|
|
235
|
+
```
|
|
236
|
+
+operation-manager | SESSION | Oturum başlangıcı — context yükleniyor
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
+engineering-manager | SESSION | Handover okundu. T12 devralınıyor.
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
### İletişim Dili (Communication Language)
|
|
248
|
+
|
|
249
|
+
1. **Config Kontrolü:** Ajan, her oturum başında `.kortext/settings/config.md` dosyasındaki `KORTEXT_INTERACTION_LANGUAGE` değerini okumalıdır.
|
|
250
|
+
2. **Dil Uyumu:** Kullanıcı ile kurulan tüm iletişim (yanıtlar, açıklamalar, raporlar), config dosyasında belirtilen dilde (`tr` veya `en`) yapılmalıdır.
|
|
251
|
+
3. **Teknik İstisna:** Dosya yolları, kod blokları, hata mesajları ve framework çekirdek terimleri (Backlog Item ID, Persona isimleri vb.) orijinal formatında (genellikle İngilizce) bırakılmalıdır.
|
|
252
|
+
4. **Dinamik Değişim:** Eğer kullanıcı sohbet sırasında dili değiştirirse, ajan kullanıcıyı `.kortext/settings/config.md` dosyasını güncellemeye yönlendirmeli, ancak o andan itibaren yeni dilde yanıt vermeye başlamalıdır.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Branch ve Versiyon Kuralları
|
|
2
|
+
|
|
3
|
+
- **Amaç:** Kod kalitesini, izlenebilirliği ve production güvenliğini korumak.
|
|
4
|
+
- **Sorumlu:** +devops-engineer branch, merge, tag ve release kayıtlarından sorumludur. Geliştirici ajanlar kendi item branch'lerinden sorumludur.
|
|
5
|
+
|
|
6
|
+
## Branch Tipleri
|
|
7
|
+
|
|
8
|
+
| Branch | Kaynak | Hedef | Açıklama |
|
|
9
|
+
| :--- | :--- | :--- | :--- |
|
|
10
|
+
| `main` | - | - | Production'da çalışan son kararlı hattır. Doğrudan geliştirme yapılmaz. |
|
|
11
|
+
| `development` | `main` | `main` | Staging/preprod hattıdır. Tamamlanan item'lar burada toplanır. |
|
|
12
|
+
| `feature/[item-id]-[short-name]` | `development` | `development` | Yeni özellik veya planlı geliştirme işi. |
|
|
13
|
+
| `bugfix/[item-id]-[short-name]` | `development` | `development` | Production'a çıkmamış hata düzeltmesi. |
|
|
14
|
+
| `hotfix/[item-id]-[short-name]` | `main` | `main` + `development` | Production'daki kritik hata düzeltmesi. |
|
|
15
|
+
| `release/vA.B.C` | `development` | `main` | Production release hazırlığı. Gerekli değilse atlanabilir. |
|
|
16
|
+
| `chore/[short-name]` | `development` | `development` | Özellik içermeyen bakım işi: CI, dokümantasyon, config, bağımlılık güncellemesi. |
|
|
17
|
+
|
|
18
|
+
## İsimlendirme
|
|
19
|
+
|
|
20
|
+
- Branch adları küçük harf ve kebab-case olmalıdır.
|
|
21
|
+
- Item'a bağlı branch'lerde item ID zorunludur.
|
|
22
|
+
- Örnekler:
|
|
23
|
+
- `feature/t01-login-form`
|
|
24
|
+
- `bugfix/b04-token-expiry`
|
|
25
|
+
- `hotfix/b07-login-crash`
|
|
26
|
+
- `release/v1.2.0`
|
|
27
|
+
- `chore/update-ci-cache`
|
|
28
|
+
|
|
29
|
+
## Koruma Kuralları
|
|
30
|
+
|
|
31
|
+
- `main` ve `development` üzerinde doğrudan geliştirme yapılmaz.
|
|
32
|
+
- Hotfix haricinde `main` üzerinden branch açılmaz.
|
|
33
|
+
- Force push ve history rewrite yasaktır.
|
|
34
|
+
- Merge conflict'leri manuel çözülür; conflict görmezden gelinmez.
|
|
35
|
+
- Mevcut tasarım, config ve proje yapısı gereksiz refactor ile değiştirilmez.
|
|
36
|
+
|
|
37
|
+
## Merge Kuralları
|
|
38
|
+
|
|
39
|
+
- `feature/*`, `bugfix/*` ve `chore/*` branch'leri `development` hedefine PR ile alınır.
|
|
40
|
+
- `hotfix/*` önce `main` hedefine alınır, sonra aynı değişiklik `development` hattına geri taşınır.
|
|
41
|
+
- Production release `development` içeriğinin `main` hattına kontrollü alınmasıdır.
|
|
42
|
+
- `main` ve `development` branch'leri hiçbir durumda yer değiştirmez.
|
|
43
|
+
- Production sorunu çıkarsa çözüm `07-rollback-pipeline.md` veya `08-hotfix-pipeline.md` üzerinden yapılır; branch geçmişi yeniden yazılmaz.
|
|
44
|
+
- Merge yöntemi proje ayarına bağlıdır; varsayılan tercih `Squash and Merge` ile item geçmişini sade tutmaktır.
|
|
45
|
+
|
|
46
|
+
## PR ve Onay Kuralları
|
|
47
|
+
|
|
48
|
+
- PR açıldığında doğrulama süreci `workflows/05-test-cycle.md` standardına göre yürütülür.
|
|
49
|
+
- `main` hedefine giden PR'larda +prime onayı zorunludur.
|
|
50
|
+
- Teknik inceleme +engineering-manager tarafından yapılır.
|
|
51
|
+
- Gerekli Review Gates varsa +qa-engineer, +security-engineer ve +designer kontrolleri tamamlanmadan merge yapılmaz.
|
|
52
|
+
|
|
53
|
+
## Commit Kuralları
|
|
54
|
+
|
|
55
|
+
- Commit mesajları İngilizce ve Conventional Commits formatında olmalıdır.
|
|
56
|
+
- Örnekler:
|
|
57
|
+
- `feat: add login form`
|
|
58
|
+
- `fix: resolve token expiry`
|
|
59
|
+
- `docs: update setup guide`
|
|
60
|
+
- `chore: update ci cache`
|
|
61
|
+
- Item ID commit body veya footer alanında belirtilir:
|
|
62
|
+
|
|
63
|
+
```text
|
|
64
|
+
Refs: T01
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Versiyon ve Tag Kuralları
|
|
68
|
+
|
|
69
|
+
- Semantic Versioning kullanılır: `vMAJOR.MINOR.PATCH`.
|
|
70
|
+
- Release tag formatı: `vA.B.C`.
|
|
71
|
+
- Release candidate gerekiyorsa format: `vA.B.C-rcN`.
|
|
72
|
+
- Build metadata gerekiyorsa format: `vA.B.C+build.N`.
|
|
73
|
+
- Hotfix patch numarasını artırır: `v1.0.0` -> `v1.0.1`.
|
|
74
|
+
- Release tag'i production doğrulaması başarıyla tamamlandıktan sonra `workflows/06-deployment-cycle.md` kapsamında +devops-engineer tarafından oluşturulur.
|
|
75
|
+
|
|
76
|
+
## Workflow Referansları
|
|
77
|
+
|
|
78
|
+
- Normal geliştirme: `workflows/04-development-cycle.md`
|
|
79
|
+
- Test ve doğrulama: `workflows/05-test-cycle.md`
|
|
80
|
+
- Production deployment: `workflows/06-deployment-cycle.md`
|
|
81
|
+
- Rollback: `workflows/07-rollback-pipeline.md`
|
|
82
|
+
- Hotfix: `workflows/08-hotfix-pipeline.md`
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
# Kortext Command Reference
|
|
2
|
+
|
|
3
|
+
Bu dosya, +prime tarafından tetiklenen dış giriş kapılarını tanımlar. Komutlar yalnızca var olan workflow'ları veya açık onay noktalarını başlatır; workflow içinde zaten tanımlı olan ara adımlar burada ayrı komut olarak çoğaltılmaz.
|
|
4
|
+
|
|
5
|
+
## Komut Tablosu (Glue Reference)
|
|
6
|
+
|
|
7
|
+
Bu tablo Faz 2 (glue layer) kapsamında eklendi. Her komutun hangi persona tarafından tetiklendiğini, hangi workflow'u açtığını ve hangi script'i çağırdığını tek bakışta gösterir. Detaylı açıklamalar aşağıdaki "Ana Komutlar" bölümünde.
|
|
8
|
+
|
|
9
|
+
| Komut | Tetikleyen Persona | Açılan Workflow | Çağrılan Script |
|
|
10
|
+
|---|---|---|---|
|
|
11
|
+
| `!setup kortext` | +prime | workflows/00-kortext-setup.md | `kortext-init.sh` |
|
|
12
|
+
| `!start analysis` | +operation-manager | workflows/01a-analysis-pipeline.md | `kortext-session-start.py` |
|
|
13
|
+
| `!start onboard` | +operation-manager | workflows/01b-onboarding-pipeline.md | `kortext-session-start.py` |
|
|
14
|
+
| `!start planning` | +operation-manager | workflows/02-planning-pipeline.md | `kortext-bulk-plan.py` |
|
|
15
|
+
| `!start spike` | +engineering-manager | workflows/02b-spike-workflow.md | `kortext-backlog-add.py --type spike` |
|
|
16
|
+
| `!setup environment` | +devops-engineer | workflows/03-environment-setup.md | — |
|
|
17
|
+
| `!start development` | +engineering-manager | workflows/04-development-cycle.md | `kortext-item-start.py` |
|
|
18
|
+
| `!start test` | +qa-engineer | workflows/05-test-cycle.md | `kortext-item-transition.py` |
|
|
19
|
+
| `!deploy prod` | +delivery-manager | workflows/06-deployment-cycle.md | — (manuel git tag + CI) |
|
|
20
|
+
| `!trigger-rollback` | +delivery-manager | workflows/07-rollback-pipeline.md | (manuel git revert) |
|
|
21
|
+
| `!start-hotfix` | +delivery-manager | workflows/08-hotfix-pipeline.md | `kortext-backlog-add.py --type hotfix` |
|
|
22
|
+
| `!maintenance` | +operation-manager | workflows/09-maintenance-cycle.md | `kortext-backlog-health.py` |
|
|
23
|
+
| `!status` | +operation-manager | — | `kortext-session-start.py` + `kortext-context-check.py` |
|
|
24
|
+
| `!continue` | +prime | — (checkpoint onayı) | — |
|
|
25
|
+
| `!approve` | +prime | — (gate onayı) | `kortext-item-transition.py` |
|
|
26
|
+
| `!handover` | (herhangi ajan) | — | `kortext-handover.py` |
|
|
27
|
+
| `!add task` | +engineering-manager | — | `kortext-backlog-add.py --type task` |
|
|
28
|
+
| `!add bug` | +qa-engineer | — | `kortext-backlog-add.py --type bug` |
|
|
29
|
+
| `!add debt` | +engineering-manager | — | `kortext-backlog-add.py --type debt` |
|
|
30
|
+
| `!check` | +operation-manager | — | `kortext-consistency-check.py` |
|
|
31
|
+
|
|
32
|
+
### Yeni Komutlar (Faz 2'de Tanıtılan)
|
|
33
|
+
|
|
34
|
+
- `!trigger-rollback` — +delivery-manager tarafından son güvenli sürüme geri dönüş akışını başlatır. `workflows/07-rollback-pipeline.md` üzerinden ilerler; manuel git revert sonrası rollback kayıtları işlenir.
|
|
35
|
+
- `!start-hotfix` — +delivery-manager tarafından kritik production hatası için hotfix akışı başlatır. `kortext-backlog-add.py --type hotfix` ile backlog'a `HXX-` prefix'li item eklenir.
|
|
36
|
+
- `!continue` — +prime tarafından checkpoint onayı olarak verilir. Workflow açmaz, ajanın bir sonraki adıma geçmesini onaylar. `04-development-cycle.md`'deki checkpoint mekanizmasında kullanılır.
|
|
37
|
+
- `!approve` — +prime tarafından gate onayı olarak verilir. `Review` statüsündeki bir item'ı `Done`'a taşımak için `kortext-item-transition.py` tetikler.
|
|
38
|
+
- `!handover` — Herhangi bir ajan tarafından ara devir için kullanılabilir. `kortext-handover.py` ile `workspace/memory/handover.md`'ye yeni devir kaydı eklenir.
|
|
39
|
+
- `!add task` / `!add bug` / `!add debt` — Sırasıyla +engineering-manager, +qa-engineer ve +engineering-manager tarafından direkt backlog girişi için. `kortext-backlog-add.py --type <task|bug|debt>` çağırır.
|
|
40
|
+
- `!check` — +operation-manager tarafından tutarlılık kontrolü olarak çağrılır. `kortext-consistency-check.py` çalıştırır; eski pattern kalıntılarını tespit eder.
|
|
41
|
+
|
|
42
|
+
## Ana Komutlar
|
|
43
|
+
|
|
44
|
+
| Komut | Parametre | Tetiklediği Akış | Ana Çıktı | Kullanım |
|
|
45
|
+
| :--- | :--- | :--- | :--- | :--- |
|
|
46
|
+
| `!setup` | `kortext` | `workflows/00-kortext-setup.md` | İlk çalışma kararı | Kortext'i başlatır ve bir sonraki akışı belirler. |
|
|
47
|
+
| `!setup` | `environment` | `workflows/03-environment-setup.md` | Çalışan ortam ve test kaydı | Analiz ve planlama sonrası ortam kurulumunu başlatır. |
|
|
48
|
+
| `!start` | `analysis` | `workflows/01a-analysis-pipeline.md` | `workspace/reports/analysis-reports.md` | Yeni proje analizini başlatır. |
|
|
49
|
+
| `!start` | `onboard` | `workflows/01b-onboarding-pipeline.md` | `workspace/reports/analysis-reports.md` | Mevcut projeyi Kortext'e dahil eder. |
|
|
50
|
+
| `!start` | `planning` | `workflows/02-planning-pipeline.md` | `workspace/memory/backlog/` | Onaylı analizden düz backlog üretir. |
|
|
51
|
+
| `!start` | `spike` | `workflows/02b-spike-workflow.md` | `workspace/memory/decisions.md` ADR veya yeni Task | Teknik belirsizliği gidermek için time-boxed araştırma başlatır. |
|
|
52
|
+
| `!start` | `development` | `workflows/04-development-cycle.md` | Aktif item akışı | Backlog'daki uygun item üzerinde geliştirmeyi başlatır. |
|
|
53
|
+
| `!deploy` | `prod` | `workflows/06-deployment-cycle.md` | `workspace/reports/delivery-reports.md` | Production deployment akışını başlatır. |
|
|
54
|
+
| `!rollback` | `[version]` | `workflows/07-rollback-pipeline.md` | Rollback kayıtları | Son güvenli sürüme geri dönüş akışını başlatır. |
|
|
55
|
+
| `!hotfix` | `[issue-id]` | `workflows/08-hotfix-pipeline.md` | Hotfix kayıtları | Kritik production hatası için hotfix akışını başlatır. |
|
|
56
|
+
| `!maintenance` | — | `workflows/09-maintenance-cycle.md` | `workspace/reports/status-reports.md` | Rutin bakım döngüsünü başlatır (bağımlılık, teknik borç, güvenlik). |
|
|
57
|
+
| `!status` | — | `scripts/kortext-backlog-health.py` + `context-check.py` | Hızlı durum özeti | Backlog sağlığı, aktif ajanlar ve blokerları özetler. |
|
|
58
|
+
| `!status` | `full` | Tüm rapor dosyaları | Tam sistem raporu | Deployment durumu, test coverage ve maliyet dahil tam rapor. |
|
|
59
|
+
| `!request` | `[açıklama]` | Talep alım süreci | `workspace/memory/backlog/` adayı | Yeni feature, improvement, bug veya debt talebini sisteme alır. |
|
|
60
|
+
| `!approve` | `[artifact]` | Onay noktası | İlgili artifact status kaydı | Bekleyen kararı onaylar ve akışı ilerletir. |
|
|
61
|
+
| `!reject` | `[artifact] [sebep]` | Revizyon noktası | İlgili artifact status kaydı | Bekleyen çıktıyı revizyona geri gönderir. |
|
|
62
|
+
|
|
63
|
+
## Yorumlama Kuralları
|
|
64
|
+
|
|
65
|
+
- Komutlar yalnızca workflow giriş kapıları ve onay noktalarıdır.
|
|
66
|
+
- Test, review, security check, handover, sync ve release note üretimi workflow içindeki adımlardır; ayrı komut olarak çağrılmaz.
|
|
67
|
+
- `!start analysis` yalnız yeni projede; `!start onboard` yalnız mevcut projede kullanılır.
|
|
68
|
+
- `!start spike` geliştirme başlamadan önce teknik belirsizlik varsa kullanılır; sprint kapsamını değiştirmez.
|
|
69
|
+
- `!approve` ve `!reject` mutlaka hedef artifact veya item ile birlikte kullanılır.
|
|
70
|
+
- `!status` hızlı özet için; `!status full` tüm rapor dosyalarını kapsayan tam rapor için kullanılır.
|
|
71
|
+
- Dosya yolu yazılırken canonical workspace yolları kullanılır: `workspace/references/`, `workspace/reports/`, `workspace/memory/backlog/`, `workspace/memory/context/[agent-name]-active.md`.
|
|
72
|
+
- Backlog item'ları düz yapıdadır: `TXX-[task-name].md`, `BXX-[bug-name].md`, `DXX-[debt-name].md`.
|
|
73
|
+
- `skills/` ayrı bir çalışma alanıdır; komut referansı bu klasörün içeriğini yönetmez.
|
|
74
|
+
- Görev yaşam döngüsü scriptlerle desteklenir:
|
|
75
|
+
- `kortext-session-start.py` — oturum başlangıcı (context yükleme ve SESSION_BRIEF)
|
|
76
|
+
- `kortext-context-check.py` — context bütünlük kontrolü
|
|
77
|
+
- `kortext-backlog-health.py` — backlog sağlık skoru
|
|
78
|
+
- `kortext-lock.py` — paylaşımlı dosya kilidi yönetimi
|
|
79
|
+
- `kortext-item-start.py`
|
|
80
|
+
- `kortext-item-transition.py`
|
|
81
|
+
- `kortext-handover.py`
|
|
82
|
+
- `kortext-item-check.py`
|
|
83
|
+
- `kortext-backlog-sync.py`
|
|
84
|
+
|
|
85
|
+
## `!request` Akışı
|
|
86
|
+
|
|
87
|
+
`!request [açıklama]` komutu geldiğinde +product-manager şu adımları izler:
|
|
88
|
+
|
|
89
|
+
1. **Sınıflandır**
|
|
90
|
+
- **Feature:** Yeni özellik veya geliştirme
|
|
91
|
+
- **Improvement:** Mevcut özelliğin iyileştirilmesi
|
|
92
|
+
- **Bug:** Hata bildirimi → +engineering-manager'a yönlendirilir
|
|
93
|
+
- **Debt:** Teknik borç, refactor, test açığı veya operasyonel iyileştirme
|
|
94
|
+
2. **Netleştir**
|
|
95
|
+
- Beklenen davranış ne?
|
|
96
|
+
- Hangi kullanıcıyı etkiliyor?
|
|
97
|
+
- Ne zaman gerekli? (`Acil / Bu versiyon / Gelecek versiyon`)
|
|
98
|
+
3. **Backlog'a al**
|
|
99
|
+
- Uygun formatta (`TXX-[task-name].md`, `BXX-[bug-name].md`, `DXX-[debt-name].md`) düz backlog altında kayıt aç.
|
|
100
|
+
- Önceliği +prime'ın aciliyet belirtiminden çıkar.
|
|
101
|
+
4. **Bildir**
|
|
102
|
+
|
|
103
|
+
```text
|
|
104
|
+
---
|
|
105
|
+
TALEBİN ALINDI
|
|
106
|
+
+prime, "[talep özeti]" backlog'a eklendi.
|
|
107
|
+
- Tip: [Feature / Improvement / Bug / Debt]
|
|
108
|
+
- Öncelik: [Blocker / High / Medium / Low]
|
|
109
|
+
- ID: [task-id]
|
|
110
|
+
Komutunu bekliyorum.
|
|
111
|
+
---
|
|
112
|
+
```
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# Acil Durum Prosedürleri
|
|
2
|
+
|
|
3
|
+
Sistemin kararlılığını veya güvenliğini tehdit eden durumlarda uygulanacak prosedürler.
|
|
4
|
+
|
|
5
|
+
## Kritik Hata Tanımları
|
|
6
|
+
|
|
7
|
+
Aşağıdaki durumlar "Acil Durum" olarak kabul edilir:
|
|
8
|
+
|
|
9
|
+
- **Sonsuz Döngü:** Bir görevin belirlenen adım sayısını (Loop Protection (4-Step Rule) — bkz. `rules/behavior.md`) aşması ve ilerleme kaydetmemesi.
|
|
10
|
+
- **API Kesintisi:** Kritik bir servisin (LLM, Veritabanı vb.) retry ve fallback mekanizmaları tükendikten sonra da hata vermeye devam etmesi (bkz. Self-Healing Protocol).
|
|
11
|
+
- **Yetki İhlali:** Bir personanın yetkisi olmayan bir dosyayı değiştirmeye çalışması.
|
|
12
|
+
- **Veri Kaybı Riski:** Yanlışlıkla silme veya üzerine yazma girişimi tespiti.
|
|
13
|
+
- **Yazma Çakışması:** İki ajanın Distributed Context kuralına uymayıp aynı dosyayı eş zamanlı güncellediğinin tespiti.
|
|
14
|
+
|
|
15
|
+
## Severity Seviyeleri
|
|
16
|
+
|
|
17
|
+
| Seviye | Kriter | Beklenen Aksiyon |
|
|
18
|
+
| :--- | :--- | :--- |
|
|
19
|
+
| `P0` | Sistem tamamen çöktü, tüm kullanıcılar etkileniyor veya veri kaybı riski var | Güvenli rollback veya hotfix hemen başlatılır; +prime eş zamanlı bilgilendirilir |
|
|
20
|
+
| `P1` | Temel iş akışı bozuldu veya büyük kullanıcı grubu etkileniyor | Rollback/hotfix kararı hızlıca alınır; +prime bilgilendirilir |
|
|
21
|
+
| `P2` | Sınırlı etki var, workaround mevcut veya kullanıcı etkisi düşük | Normal geliştirme döngüsüne alınabilir; gerekirse +prime kararı istenir |
|
|
22
|
+
|
|
23
|
+
## Production Acil Durum Kararı
|
|
24
|
+
|
|
25
|
+
Production ortamında kritik hata tespit edilirse aşağıdaki karar kuralı uygulanır:
|
|
26
|
+
|
|
27
|
+
| Durum | Akış |
|
|
28
|
+
| :--- | :--- |
|
|
29
|
+
| Son deployment kaynaklı ve güvenli şekilde geri alınabilir | `workflows/07-rollback-pipeline.md` |
|
|
30
|
+
| Rollback veri kaybı, irreversible migration veya daha büyük risk doğuruyorsa | `workflows/08-hotfix-pipeline.md` |
|
|
31
|
+
| Hata eski sürümde de vardı veya izole bir modülde hızlı düzeltilebilir | `workflows/08-hotfix-pipeline.md` |
|
|
32
|
+
| Etki sınırlı ve workaround varsa | `workflows/04-development-cycle.md` içinde Bug/Debt olarak planlanır |
|
|
33
|
+
|
|
34
|
+
P0 durumda +devops-engineer veya ilgili sorumlu ajan +prime onayını beklemeden güvenli rollback/hotfix hazırlığını başlatabilir. +prime bilgilendirmesi eş zamanlı yapılır.
|
|
35
|
+
|
|
36
|
+
## Self-Healing Protocol
|
|
37
|
+
|
|
38
|
+
Sistem kesintilerinde ajan aşağıdaki adımları sırayla uygular. Adım tükenmeden bir sonraki aşamaya geçilmez.
|
|
39
|
+
|
|
40
|
+
### API / LLM Kesintisi
|
|
41
|
+
|
|
42
|
+
| Adım | Eylem | Bekleme |
|
|
43
|
+
|---|---|---|
|
|
44
|
+
| **1. Retry** | Aynı model ile isteği tekrarla | 5 sn |
|
|
45
|
+
| **2. Retry** | İkinci deneme | 15 sn |
|
|
46
|
+
| **3. Retry** | Üçüncü deneme | 30 sn |
|
|
47
|
+
| **4. Fallback** | `rules/models.md` → Fallback modele geç, isteği tekrarla | — |
|
|
48
|
+
| **5. Fallback Retry** | Fallback model ile ikinci deneme | 15 sn |
|
|
49
|
+
| **6. HALT** | Tüm denemeler başarısız → işlemi durdur, eskalasyon başlat | — |
|
|
50
|
+
|
|
51
|
+
> Fallback model `deep-research` görevde devreye girerse sonuç kalitesi düşebilir. Bu riski eskalasyon mesajında +prime'a bildir.
|
|
52
|
+
|
|
53
|
+
### Git Komut Hataları
|
|
54
|
+
|
|
55
|
+
| Adım | Eylem | Bekleme |
|
|
56
|
+
|---|---|---|
|
|
57
|
+
| **1. Retry** | Aynı komutu tekrar çalıştır | 3 sn |
|
|
58
|
+
| **2. Retry** | İkinci deneme | 10 sn |
|
|
59
|
+
| **3. Diagnose** | `git status` çalıştır; durumu `workspace/memory/context/[agent-name]-active.md` dosyasına yaz | — |
|
|
60
|
+
| **4. Blocked** | Komutu ve çıktısını kaydet; görevi `Blocked` yap; +devops-engineer'a eskalasyon | — |
|
|
61
|
+
|
|
62
|
+
**Kategori bazlı yönlendirme:**
|
|
63
|
+
- **Network / auth hatası** (403, 401, SSH): +devops-engineer → credentials kontrol
|
|
64
|
+
- **Merge conflict**: +devops-engineer → `07-rollback-pipeline.md`'ye bak, çözülmezse +engineering-manager
|
|
65
|
+
- **Permission denied**: +prime → repo access kontrol
|
|
66
|
+
- **Repository corrupt / object hatası**: +devops-engineer → +prime
|
|
67
|
+
|
|
68
|
+
> [!WARNING]
|
|
69
|
+
> `main` branch'te hiçbir git komutu self-healing kapsamında çalıştırılmaz. Force push ve reset --hard kesinlikle yasaktır.
|
|
70
|
+
|
|
71
|
+
### CI/CD Pipeline Hataları
|
|
72
|
+
|
|
73
|
+
| Adım | Eylem | Bekleme |
|
|
74
|
+
|---|---|---|
|
|
75
|
+
| **1. Log Oku** | Pipeline logunu oku, hata kategorisini belirle | — |
|
|
76
|
+
| **2. Kategorize** | Tablo aşağıda — kategoriye göre sorumlu ajan belirlenir | — |
|
|
77
|
+
| **3. Notify** | Sorumlu ajana hata kategorisini ve log referansını ilet | — |
|
|
78
|
+
| **4. Blocked** | Sorumlu ajan 3 deneme içinde çözemezse görevi `Blocked` yap; +operation-manager'a eskalasyon | — |
|
|
79
|
+
|
|
80
|
+
**Hata kategorileri:**
|
|
81
|
+
|
|
82
|
+
| Hata Türü | İlk Sorumlu | Aksiyon |
|
|
83
|
+
|---|---|---|
|
|
84
|
+
| Test fail (unit/integration) | +qa-engineer | Test kodunu incele, düzelt |
|
|
85
|
+
| Build fail (syntax/compile) | İlgili geliştirici ajan | Kodu incele, düzelt |
|
|
86
|
+
| Environment/env var eksik | +devops-engineer | `.env.example` kontrol, +prime'a eksik key sor |
|
|
87
|
+
| Docker/container hatası | +devops-engineer | Image ve Dockerfile incele |
|
|
88
|
+
| Secrets scan fail | +security-engineer | Sızdırılan key tespit, acil eskalasyon |
|
|
89
|
+
| Timeout | +devops-engineer | Kaynak kullanımı ve pipeline konfigürasyonunu kontrol et |
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
1. Ardışık 3 hata → servisi devre dışı kabul et.
|
|
94
|
+
2. İlgili görev dosyasını (`workspace/memory/backlog/[TXX|BXX|DXX]-[item-name].md`) **Blocked** olarak işaretle; blocker nedenini yaz.
|
|
95
|
+
3. +operation-manager'a eskalasyon başlat.
|
|
96
|
+
4. +operation-manager koordinasyonunda ilgili manager geçici çözüm (mock, stub, fallback servis veya bekleme) kararını verene kadar bekle.
|
|
97
|
+
|
|
98
|
+
## Eskalasyon Zinciri
|
|
99
|
+
|
|
100
|
+
Bir acil durum tespit edildiğinde aşağıdaki zincir takip edilir:
|
|
101
|
+
|
|
102
|
+
1. **Durdur:** İşlemi derhal durdur.
|
|
103
|
+
2. **Raporla:** Hatayı ve bağlamı ilgili yöneticiye bildir.
|
|
104
|
+
3. **Bekle:** Yöneticinin talimatı gelene kadar yeni işlem başlatma.
|
|
105
|
+
|
|
106
|
+
**Eskalasyon Sırası:**
|
|
107
|
+
- Geliştirici personalar → +engineering-manager veya +product-manager (ilgili alana göre)
|
|
108
|
+
- Manager personalar → +operation-manager
|
|
109
|
+
- +operation-manager → +prime
|
|
110
|
+
|
|
111
|
+
## Kullanıcı Bildirimi Protokolü
|
|
112
|
+
|
|
113
|
+
P0/P1 sınıfındaki bir acil durumda (production kesintisi, veri kaybı riski) son kullanıcıların bilgilendirilmesi zorunludur. Bu karar +prime'a aittir; ajan sadece hazırlığı yapar.
|
|
114
|
+
|
|
115
|
+
**Sorumluluk:** +operation-manager bildirimi hazırlar, +prime onaylar ve gönderir.
|
|
116
|
+
|
|
117
|
+
**Bildirim Şablonu:**
|
|
118
|
+
```
|
|
119
|
+
[Hizmet Adı] — Teknik Kesinti Bildirimi
|
|
120
|
+
Tarih / Saat: [UTC+3]
|
|
121
|
+
|
|
122
|
+
Etkilenen özellik: [kısa açıklama]
|
|
123
|
+
Beklenen etki: [kullanıcılar hangi işlemleri yapamıyor?]
|
|
124
|
+
Tahmini çözüm süresi: [X dakika / saat]
|
|
125
|
+
|
|
126
|
+
Çözüm tamamlandığında ikinci bir bildirim gönderilecektir.
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**Çözüm Sonrası Bildirim:**
|
|
130
|
+
```
|
|
131
|
+
[Hizmet Adı] — Hizmet Normalüne Döndü
|
|
132
|
+
Kesinti süresi: [başlangıç] → [bitiş] ([X dakika])
|
|
133
|
+
Etkilenen alan: [kısa açıklama]
|
|
134
|
+
Alınan önlem: [kısa teknik not]
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## Acil Durum Sonrası
|
|
138
|
+
|
|
139
|
+
- Olay ilgili manager persona tarafından `workspace/memory/learned.md` dosyasına kaydedilir:
|
|
140
|
+
- Ne oldu?
|
|
141
|
+
- Neden oldu?
|
|
142
|
+
- Nasıl çözüldü?
|
|
143
|
+
- Tekrarını önlemek için ne yapılmalı?
|
|
144
|
+
- Manager persona +prime için `workspace/reports/status-reports.md` dosyasını hazırlar.
|
|
145
|
+
|
|
146
|
+
## Bildirim
|
|
147
|
+
|
|
148
|
+
Yukarıdaki adımlar tamamlandığında bildir.
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
---
|
|
152
|
+
ACİL DURUM PROTOKOLÜ UYGULANDI
|
|
153
|
+
+prime, [sebep] sebebiyle acil durum protokolüne geçildi.
|
|
154
|
+
Durum: [başladı / devam ediyor / çözüldü]
|
|
155
|
+
Durum raporu: workspace/reports/status-reports.md
|
|
156
|
+
Komutunu bekliyorum.
|
|
157
|
+
---
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
P0 dışındaki durumlarda komut gelene kadar hazırda bekle ve kuralları koru. P0 durumda güvenli rollback/hotfix hazırlığı durdurulmaz; +prime eş zamanlı bilgilendirilir.
|
package/rules/mcp.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# MCP Kılavuzu
|
|
2
|
+
|
|
3
|
+
MCP kullanımı proje teknoloji yığınına göre belirlenir. Ajanlar MCP kurulumu yapmaz; ihtiyaçları belgeler, kurulum ve yetkilendirme +prime tarafından yapılır.
|
|
4
|
+
|
|
5
|
+
## Sorumluluklar
|
|
6
|
+
|
|
7
|
+
| Rol | Sorumluluk |
|
|
8
|
+
| :--- | :--- |
|
|
9
|
+
| `+engineering-manager` | Gerekli MCP adaylarını `workspace/references/tech-stack.md` içinde tanımlar |
|
|
10
|
+
| `+devops-engineer` | Kurulum sonrası erişim ve ortam etkisini `workspace/references/access.md` içinde belgeler |
|
|
11
|
+
| `+security-engineer` | MCP'nin yetki kapsamını, token/secret riskini ve güvenlik etkisini değerlendirir |
|
|
12
|
+
| `+prime` | MCP kurulumu, yetkilendirme ve hesap erişimi kararını verir |
|
|
13
|
+
|
|
14
|
+
## Temel Kurallar
|
|
15
|
+
|
|
16
|
+
- MCP yalnızca proje ihtiyacı varsa önerilir.
|
|
17
|
+
- MCP adı, kullanım amacı ve hangi ajanların kullanacağı açıkça yazılır.
|
|
18
|
+
- Token, API key veya bağlantı bilgisi `workspace/references/access.md` içine gerçek değer olarak yazılmaz.
|
|
19
|
+
- Gerçek secret değerleri yalnızca `.env` veya ilgili güvenli platform üzerinde tutulur.
|
|
20
|
+
- Kurulan MCP'ler `workspace/references/access.md` dosyasındaki **MCP Sunucuları** bölümüne işlenir.
|
|
21
|
+
- MCP gereksinimleri analysis veya environment setup sırasında netleştirilir.
|
|
22
|
+
|
|
23
|
+
## Teknoloji → MCP Eşleşmesi
|
|
24
|
+
|
|
25
|
+
| Teknoloji | MCP |
|
|
26
|
+
| :--- | :--- |
|
|
27
|
+
| Vercel | `@vercel/mcp-server` |
|
|
28
|
+
| Firebase | `@firebase/mcp-server` |
|
|
29
|
+
| Supabase | `@supabase/mcp-server-supabase` |
|
|
30
|
+
| GitHub | `@modelcontextprotocol/server-github` |
|
|
31
|
+
| Figma | `@figma/mcp` |
|
|
32
|
+
| Playwright (E2E Test) | `@playwright/mcp` |
|
|
33
|
+
| Slack | `@modelcontextprotocol/server-slack` |
|
|
34
|
+
| PostgreSQL | `@modelcontextprotocol/server-postgres` |
|
|
35
|
+
|
|
36
|
+
## Kayıt Formatı
|
|
37
|
+
|
|
38
|
+
`workspace/references/access.md` içindeki MCP kaydı en az şu bilgileri içerir:
|
|
39
|
+
|
|
40
|
+
| Alan | Açıklama |
|
|
41
|
+
| :--- | :--- |
|
|
42
|
+
| MCP adı | Kurulan veya önerilen MCP paketi |
|
|
43
|
+
| Amaç | Hangi iş için gerektiği |
|
|
44
|
+
| Kullanan ajanlar | MCP'yi kullanacak persona listesi |
|
|
45
|
+
| Yetki kapsamı | Okuma/yazma, repo, database, deploy gibi izin alanları |
|
|
46
|
+
| Secret gereksinimi | Gerekli env key adları; gerçek değer yazılmaz |
|
|
47
|
+
| Durum | `planned`, `installed`, `blocked`, `removed` |
|