Repository navigation
Editor Graph
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.
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.
| 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.
-
File → New operation graph…ile hedef config yolunu belirleyin. - En az bir Operation ve bir Query/Mutation node'u oluşturun; gereken request/auth/response node'larını bağlayın.
- Properties'te SQL bind değerleri, izin ve giriş şemasını açıkça yazın.
- Compile preview ile üretilen JSON'u inceleyin.
- Copy JSON ile çıktıyı alın; hedef config belgesine bilinçli şekilde uygulayın.
- Hedefteki başka operation'ları yanlışlıkla silmediğinizi, aynı route'u iki kez eklemediğinizi kontrol edin.
-
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.
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.
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.
Bu sayfa aşağıdaki sabit commitlerdeki davranışı açıklar. Yeni bir sürümde aynı davranışın sürdüğünü varsaymayın.
Editor/editor/src/GraphModel.cppEditor/editor/src/NodeGraphEditor.cppEditor/editor/src/MainWindow.cppmain/framework/editor_api.pymain/schemas/editor-graph.schema.json