Skip to content

Editor Graph

Cavanshirpro edited this page Sep 19, 2026 · 1 revision

Operation graph: belge, node ve derleme sözleşmesi

English · Türkçe · Languages / Diller

Kapsam: JSON API Forge 0.5.1 · İnceleme: 17 Eylül 2026 · Dil: Türkçe

Graph, bağımsız bir runtime dili değildir. Sürümü belirlenmiş tasarım belgesi, desteklenen düğümlerden normal Forge operation fragment'ı üretir. Runtime son config'i normal şema ve yetki kontrollerinden geçirir.

Belge yapısı

Kök alanlar $schema, schema_version, target_document, metadata, nodes, edges olur. v0.5.1 graph schema version 1'dir. Hedef, doğrudan config/*.json yolu olmalıdır. Node id/type/title/x/y/properties; edge id/from_node/from_port/to_node/to_port alanlarını kullanır.

Node/edge kimlikleri benzersiz olmalı, hedefler var olmalı, aynı input'a birden fazla bağlantı ve cycle bulunmamalıdır. Boyut/node/edge sınırları graph şema referansında yer alır. Görsel bir cycle, backend tarafından sonsuz döngü gibi çalıştırılmaz; doğrulamada reddedilir.

Düğüm desteği

UI kavramı / type Derleme davranışı
Request / request.input En fazla bir; method/input schema bağlamı
Authorization / auth.policy En fazla bir; public veya permission
SQL Query / data.query SQL statement; varsayılan fetch_all
SQL Mutation / data.mutate SQL statement; varsayılan execute
Forge Operation / operation.call Tam bir tane operation tanımı gerekir
Python SDK / python.call hook değeri varsa background_hooks listesine ekler
Response / response.output En fazla bir; mevcut compiler yalnız HTTP 200
Branch, Transform, Event, custom plugin node Design-only; compiler açık hata verir

python.call, graph içinde keyfi Python'u inline değerlendiren veya otomatik uzak SDK çağrısı yapan node değildir. Compiler'ın bugün ürettiği şey background hook başvurusudur. Node başlığından daha geniş davranış çıkarmayın.

Çalışan yapılandırmaya geçiş

  1. File → New operation graph… ile hedef config yolunu belirleyin.
  2. En az bir Operation ve bir Query/Mutation node'u oluşturun; gereken request/auth/response node'larını bağlayın.
  3. Properties'te SQL bind değerleri, izin ve giriş şemasını açıkça yazın.
  4. Compile preview ile üretilen JSON'u inceleyin.
  5. Copy JSON ile çıktıyı alın; hedef config belgesine bilinçli şekilde uygulayın.
  6. Hedefteki başka operation'ları yanlışlıkla silmediğinizi, aynı route'u iki kez eklemediğinizi kontrol edin.
  7. forge validate, route/OpenAPI ve gerçek operation testini çalıştırın.

Graph'ı Save ile kaydetmek config'i otomatik yayımlamaz. target_document metadata'sı ayrı dosyayı kendiliğinden değiştirmez; mevcut UI preview/copy akışıdır. Graph sürümü ile çalışan config sürümü farklılaşabileceği için ikisini aynı değişiklik incelemesinde tutun.

Derleyicinin alan kapsamı

SQL node'larından SQL, mode, params, result_name ve max_rows gibi seçili alanlar taşınır. Runtime operation modelinin her özelliğinin görsel derleyicide birebir karşılığı yoktur. Rowcount guard, özel path, cache/invalidation ve başka gelişmiş alanlar gerektiğinde üretilen config'i RPC modeli üzerinden ayrıca inceleyin. Sonradan eklediğiniz alanları bir sonraki copy işleminin ezmemesine dikkat edin.

Query-only graph transaction=false, mutation varsa transaction üretir. Idempotency seçimi mutation bağlamında uygulanır. Design-only node'u eklemek başarısız derlemeyi bilerek tetikler; node sessizce atlanmaz.

Remote graph

Server EDITOR_ALLOW_GRAPHS=true, uygun project/document scope ve documents.graphs.write ister. Graph kayıt doğrulaması metadata/yapı tutarlılığını kontrol eder; görsel graph'a runtime yetkisi vermez. Hook içeren son config için ilgili güven sınırı ayrıca geçerlidir.

Kaynak ve doğrulama

Bu sayfa aşağıdaki sabit commitlerdeki davranışı açıklar. Yeni bir sürümde aynı davranışın sürdüğünü varsaymayın.


Wiki ana sayfa · Tüm sayfalar · Sürüm ve bakım

Clone this wiki locally