create-devoplus-one-app 0.1.0-next.158 → 0.1.0-next.166

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-devoplus-one-app",
3
- "version": "0.1.0-next.158",
3
+ "version": "0.1.0-next.166",
4
4
  "description": "Yeni bir Devoplus One uygulaması iskeleti üretir: manifest, SDK'lı giriş noktası, Portal köprülü kabuk, veritabanı migration'ı ve AGENTS.md",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -3,6 +3,10 @@
3
3
  Bu dosya, bu uygulamayı geliştiren AI aracına (Claude Code, Codex vb.) yöneliktir. Kurallar bağlayıcıdır; bir
4
4
  kuralın gerekçesi SDK belgesinde ya da platform karar defterindedir (aşağıda "Kaynaklar").
5
5
 
6
+ Kullanıcıya soru sorarken ortamınız seçenekli soru kartı gösterebiliyorsa (örneğin Claude Code'da `AskUserQuestion`)
7
+ soruları kartla ve iş dilinde 2-4 şıkla sorun; önerdiğiniz şıkkı ilk sıraya koyup "(önerilen)" yazın. Gösteremiyorsa
8
+ metinle sorun ve şıkları numaralı yazın. Teknik soru sorulmaz.
9
+
6
10
  ## Platform sözleşmesi
7
11
 
8
12
  - Uygulama **Devoplus One** üzerinde, **Devoplus Portal içinde iframe ile** çalışır.
@@ -79,7 +83,8 @@ kuralın gerekçesi SDK belgesinde ya da platform karar defterindedir (aşağıd
79
83
  - **DEXA (ERP okuma)** yalnız SDK `queryDexa(api, key, parameters?)` ile ve yalnız ÖNCEDEN tanımlı QueryStore
80
84
  anahtarlarıyla; serbest SQL ya da ERP'ye yazma YOKTUR. Anahtarları Devoplus Console'da uygulamanın kayıt defterine
81
85
  yönetici ekler (kayıtta olmayan anahtar 403). Manifest'te `services.dexa.queryKeys` ve `scopes` içinde `dexa.read`
82
- birlikte beyan edilir; anahtar adı uydurulmaz, geliştiriciden alınır. `result.unavailable === true` ise sorgu
86
+ birlikte beyan edilir; anahtar adı uydurulmaz. Portalda açılmış sorguları parametre ve sütunlarıyla
87
+ `one dexa queries` (MCP'de `one_dexa_queries`) listeler; anahtar oradan ya da geliştiriciden alınır. `result.unavailable === true` ise sorgu
83
88
  ÇALIŞAMADI; boş `rows` "kayıt yok" SAYILMAZ, kullanıcıya "şu anda getirilemiyor" gösterilir; `truncated` sonucun
84
89
  5.000 satırda kesildiğini söyler. `LangCode` platformundur, uygulama GÖNDERMEZ. `UserCode`, `CompanyCode`,
85
90
  `CostCenterCode`: kurulumda yönetici "kodları uygulama belirler" onayını verdiyse uygulama bunları her kipte (kişi,
@@ -18,8 +18,9 @@ DEĞİŞTİRİN; baştan yazmayın. Dosya haritası:
18
18
  ⛔ Sorgu anahtarı ve kolon adları **UYDURULMAZ**. `CUSTOMER_QUERY = { key, codeColumn, nameColumn }` üçü de boşken
19
19
  uygulama DEXA'ya hiç gitmez, `/api/customers` `state: "not-configured"` döner ve müşteri elle girilir. Bağlamak için:
20
20
 
21
- 1. Kullanıcıdan ya da yöneticiden kurumun DEXA Query Store'undaki **müşteri listesi okuma sorgusunun anahtarını** ve
22
- sorgunun döndürdüğü **müşteri kodu** ile **müşteri adı** kolonlarının adlarını öğrenin. Sorgu parametre almayan bir
21
+ 1. Kurumun **müşteri listesi okuma sorgusunun anahtarını** ve sorgunun döndürdüğü **müşteri kodu** ile **müşteri
22
+ adı** kolonlarının adlarını öğrenin: portalda açılmış sorguları parametre ve sütunlarıyla `one_dexa_queries` (ya da
23
+ `one dexa queries`) listeler; listede yoksa kullanıcıya ya da yöneticiye sorun. Sorgu parametre almayan bir
23
24
  liste sorgusu olmalıdır. Sorgu yoksa erişim talebiyle `new-query` isteyin (taslak SQL yalnız öneridir).
24
25
  2. Üç değeri `CUSTOMER_QUERY`'ye yazın.
25
26
  3. `one.manifest.json`'a `scopes` içine `"dexa.read"` ve `services` içine `"dexa": { "queryKeys": ["<anahtar>"] }`
@@ -2,8 +2,8 @@
2
2
  //
3
3
  // ⚠️ YER TUTUCU — sorgu anahtarı ve kolon adları kuruma özgüdür ve UYDURULMAZ. Aşağıdaki üç değer boşken uygulama ERP'ye
4
4
  // hiç gitmez ve müşteri ELLE girilir (ekran bunu söyler). Bağlamak için (ayrıntı AGENTS.md):
5
- // 1. Kurumunuzun DEXA Query Store'unda müşteri listesini döndüren okuma sorgusunun anahtarını ve müşteri kodu / müşteri
6
- // adı kolonlarının adlarını öğrenin (yoksa erişim talebiyle `new-query` isteyin).
5
+ // 1. Müşteri listesini döndüren okuma sorgusunun anahtarını ve müşteri kodu / müşteri adı kolonlarının adlarını
6
+ // öğrenin: portalda açılmış sorguları `one dexa queries` listeler (yoksa erişim talebiyle `new-query` isteyin).
7
7
  // 2. `CUSTOMER_QUERY`'ye yazın; manifest'e `"dexa.read"` yetki alanını ve `services.dexa.queryKeys` listesine aynı
8
8
  // anahtarı ekleyin.
9
9
  // 3. Erişim talebiyle sorgunun uygulamaya açılmasını (`dexa-query`) ve gerekirse yetki alanını (`scope`) isteyin.