# Sorun bildirme: Devoplus kaynaklı sorunu Devoplus ekibine iletmek

Geliştirme sırasında sorunun uygulamanın kodundan değil **Devoplus'tan** kaynaklandığını gördüğünüzde (SDK ya da `one`
komutu, doğrulama ve yayın hattı, Devoplus servisleri ya da belgeler) bunu `one_report_issue` aracıyla Devoplus ekibine
bildirin. Rapor sorunu kayda geçirir; kendiliğinden hiçbir şeyi düzeltmez, izin vermez, yayını başlatmaz ya da durdurmaz.

Rapor yalnız Devoplus One MCP sunucusundan gönderilir; komut satırı karşılığı yoktur.

## Ne zaman

| Durum | Ne yapılır |
|---|---|
| SDK ya da `one` komutu belgede yazandan farklı davranıyor | `category: "sdk"` raporu |
| Hat (one-ci) belgeye uygun kodu durduruyor ya da nedenini söylemeden düşüyor (`one_pipeline_status` günlüğüne baktıktan sonra) | `category: "ci"` raporu |
| Devoplus servisi, Portal ya da Devoplus One bağlantısı beklenmedik hata veriyor | `category: "platform"` raporu |
| Belge yanlış, eksik ya da kendisiyle çelişiyor | `category: "docs"` raporu |
| Yukarıdakilere girmeyen, Devoplus kaynaklı başka bir sorun | `category: "other"` raporu |
| Uygulamanın kendi kod hatası | Rapor açmayın; kodu düzeltin |
| Eksik izin, kurulum, DEXA sorgusu ya da yetki alanı | Rapor değil, erişim talebi (`/docs/access-requests.md`) |

## Göndermeden önce

1. **Yeniden üretin.** Sorunu yeniden üretin ve adımlarını yazın. Yeniden üretemediğiniz bir sorun için rapor açmayın.
2. **Devoplus kaynaklı olduğunu doğrulayın.** İlgili belgeyi okuyun (`/docs/sdk.md`, `/docs/publishing.md`, ...), SDK'nın
   güncel olduğunu denetleyin (`pnpm list @devoplus/one-sdk`, `npm view @devoplus/one-sdk dist-tags`); çalışan uygulamada
   `one_app_health`, düşen hatta `one_pipeline_status` çıktısına bakın.
3. **Aynı sorunu daha önce bildirdiniz mi?** `one_my_issue_reports` ile raporlarınıza bakın; açık bir rapor varsa yenisini
   açmayın.
4. **Kullanıcıya özetleyin ve açık onayını alın.** Sade dille: ne bozuk, işi nasıl etkiliyor, Devoplus'a ne gönderilecek
   (başlık, açıklama, eklenecek bağlam). Örnek: "Devoplus ekibine şu sorunu bildirmek istiyorum: uygulamayı derleyen komut
   belgeye uygun ayar dosyasını reddediyor. Rapora SDK sürümü ve hata satırı eklenecek, kişisel bilgi eklenmeyecek.
   Göndereyim mi?" Kullanıcı açıkça onaylamadan `confirm: true` göndermeyin; araç onaysız raporu göndermez.
5. **Gönderin ve bildirin.** "Sorunu Devoplus ekibine bildirdim; durumunu takip edeceğim." Rapor beklerken başka bir yolla
   ilerlenebiliyorsa kullanıcıyla birlikte o yolu düşünün.

## Alanlar

| Alan | Ne yazılır |
|---|---|
| `title` | Kısa başlık: neyin bozuk olduğu |
| `description` | Ne beklendi, ne oldu, sorun hangi koşulda görülüyor |
| `category` | `sdk`, `ci`, `platform`, `docs`, `other` (yukarıdaki tablo) |
| `severity` | `blocker` (iş ilerleyemiyor), `major` (ilerlenebiliyor ama ciddi), `minor` (küçük) |
| `appSlug` | İsteğe bağlı: sorunun görüldüğü uygulamanın kısa adı (manifest `app.slug`). Bu portala kurulu olmalıdır; emin değilseniz boş bırakın |
| `context` | İsteğe bağlı: `sdkVersion`, `ciVersion`, `client` (yapay zeka aracınızın adı ve sürümü), `manifestSummary`, `recentErrors` (hata satırları, her biri ayrı öğe), `steps` (yeniden üretme adımları) |
| `confirm` | Kullanıcı özeti görüp onayladıysa `true`; sunucuya gönderilmez |

Bağlamı yalnız sizin verdiğiniz alanlar oluşturur; araç ortam değişkeni, dosya ya da oturum bilgisi okuyup rapora eklemez.
Uzunluk sınırlarını sunucu denetler; red gelirse yanıttaki alan metnine göre düzeltip yeniden gönderin. Gönderen kişi ve
portal oturumdan gelir; rapora portal ya da kişi bilgisi yazmayın. `appSlug` verilirse sunucu kurulumun son yayın isteğini
rapora kendisi ekleyebilir.

## Neler yazılmaz

- Sır, belirteç (JWT, `Bearer` ile başlayan değer), parola, API anahtarı, adresin içindeki gizli değer.
- Kişisel veri: ad, e-posta, telefon, kimlik numarası; manifest özetinde sahip e-postası.
- Müşteri ya da ERP kaydı, uygulamanın veritabanındaki satırlar.

Hata satırından bunları çıkarın; satırın tamamı kişisel veriyse o satırı göndermeyin. Sunucu serbest metindeki gizli
değerleri, belirteçleri ve e-posta adreslerini ayrıca maskeler; buna güvenip yazmayın.

## Raporu kim görür, durumlar

Raporu siz, portalınızın şirket yöneticisi ve Devoplus ekibi görür (Devoplus Console). Durumu yalnız Devoplus ekibi
değiştirir ve isterse bir not yazar; durumu `one_my_issue_reports` ile izleyin (`id` verirseniz tek raporu notuyla okur).

| Durum | Anlamı |
|---|---|
| Açık (`open`) | Rapor alındı, henüz incelenmedi |
| İnceleniyor (`inReview`) | Devoplus ekibi inceliyor |
| Çözüldü (`resolved`) | Devoplus ekibi raporu sonuçlandırdı; notu kullanıcıya olduğu gibi iletin |

## Hatalar

| Durum | Ne olur |
|---|---|
| Kullanıcı onayı yok (`confirm` verilmedi) | Rapor gönderilmez; özetleyip onay alın |
| Alan eksik ya da uzun | 400; yanıttaki alan metnine göre düzeltip yeniden gönderin |
| `appSlug` bu portala kurulu bir uygulama değil | 400 `ONE-APP-E-131`; kısa adı denetleyin ya da alanı boş bırakın |
| Kişi başına saatte 20 rapor aşıldı | 429 `ONE-APP-E-129`; araç ne zaman yeniden denenebileceğini yazar |
| Oturumda portal yok | 403 `ONE-APP-E-128`; kullanıcı yeniden giriş yapıp portal seçmeli |
| Rapor yok ya da görme yetkiniz yok | 404 `ONE-APP-E-130` |
| Vekalet ya da Yerine Görüntüle oturumu | Rapor gönderilmez; kullanıcı kendi oturumuyla bağlanmalı |
