8. Değişiklik günlüğü

<< İçindekileri Görüntülemek İçin Tıklayın >>

Yer:  Teknik Kılavuzlar > Netsim System Agent İstemci Protokolü Referansı >

8. Değişiklik günlüğü

Tarih Değişiklik
2026-10-07 §4.4 lspConvert: dil sunucusu OpenSession oturumunun WebSocket'inden (üretim ve geliştirme kipi, bootstrap); ret çerçeveleri code taşır.
2026-10-01 §7.10 PSQL hata ayıklayıcı: debug komutu, notification: debug duraklama çerçevesi, POST /ivedi/debug duraklatma, conf debugMode / debugStopTimeoutMs, DEBUGGER rolü, DEBUG_* durumları; WHEN ANY iptali ve sonlandırmayı yakalamaz.
2026-09-03 USERLIST ve bütün WebSocket mesajları açık oturum ister; ::LSP::SHUTDOWN admins ister; ::LSP::RESTART kaldırıldı.
2026-09-08 Hata sözleşmesi K3 (202 + result/message) yazıldı; maxSessions doluysa 503.
2026-09-09 REPORTPRINT gerçeklendi.
2026-09-15 Canlı ölçüm (geliştirme lisansı, 20 tam kullanıcı koltuğu): 401/403/200 kapısı, counts, web oturumunda bonus yok (aynı makineden ikinci masaüstü bonus alır, ikinci web almaz), 20. koltuk web oturumuna verilir, 21. reddedilir, bonuslu masaüstü geçer; köprü oturumu /user/bob mesajını topic ile alır; REPORTPREVIEW 200 + PDF. Ayrıca: Basic auth ile gelen aday oturum lisans sayımında kendini sayıyordu (son koltuk hep reddediliyordu), düzeltildi.
2026-09-15 NetsimWEB istemci türü (A1), web oturumu tam kullanıcı koltuğuyla sayılır, ayrı modül yok (A2, kullanıcı kararı), web oturumlarında bonus yok (A3), webservers servis kimliği zorunlu (A4), /user/ köprü aboneliği (A5), RELOADENDPOINTS / reload_tools (A6), rapor uçları oturum kapısına alındı ve 412 kalktı (A7), bu belge (A8).
2026-09-15 A10: /message yolu (conf path) ve ucun kendi durum-kodu sözleşmesi (§5.1) yazıldı; OpenSession alan tipi hatası 500 text/html yerine 202 + result:false + alan adı; /message DELETE 405 ve her istekte oturum kapatma kusurları düzeltildi.
2026-10-08 Web istemcisi tespiti ClientName ve ApplicationName = "NetsimWEB" ister: masaüstü istemcisi ClientName'e bilgisayar adını yazdığı için adı NETSIMWEB olan bir makinedeki NetsimApp girişte 401 alıyordu.
2026-10-07 AdminREST EXECCOMMAND CLOSESESSION {sessionKey} (yalnız SYSDBA): istemci oturumunu sonlandırır, WebSocket'e Session terminated kapanış çerçevesi; yanıt busyProcessId. Bir WebSocket'in kopması (kapanış çerçevesiz RST/FIN) oturumu her iki işçi modelinde de hemen kapatır. AdminREST EXECCOMMAND TERMINATE_APPLICATION {sessionKey, message} (yalnız SYSDBA): hedef oturuma sendMessage ile aynı biçimde messageClass: "adminRequest", subject: "TERMINATE_APPLICATION" iletisi (senderMessageId: "AdminREST"); istemci kendini kapatır.
2026-09-25 §3.3: koleksiyon tabanlı doc$ belge havuzu (conf docs/db, AdminREST EXECCOMMAND IMPORTDOC), doc_* araçları, help_* netsim-help sarmalayıcıları.
2026-09-25 §3.3 doc_search mode: vector / hybrid (int8 e5 sorgu gömmesi, models/e5-int8, ONNX Runtime çalışma anında).
2026-10-05 §3.1–3.2: IVD$V_* görünümleri ürün betiğinden kalkmıştı (2026-09-18), uçlar her istekte 400 veriyordu; motor görünümleri artık STORAGE kipindeki Firebird / PostgreSQL deposuna kendisi kurar (katalog 19, bir kez UPGRADE).
2026-09-16 I8: GET /crud/METADATA/<ne>?source=ivd (§3.1) ve MCP yerleşik ivd__describe_table / ivd__search_objects / ivd__effective_attributes araçları (§3.2); PG netsim_n4 (K2) ile canlı ölçüldü.
2026-09-19 §3.1 INDEXES/<tablo>?source=ivd artık IVD$V_INDEX_COLUMNS görünümünden yanıtlanıyor (IVD$INDEX_COLUMNS katalog tablosu, katalog sürümü 7); eskiden 400.
2026-09-17 Veritabanları conf databaseList'ten değil MASTER kayıtlarından gelir: database alanları kayıt adıdır, MCP ön eki kayıt adının küçük harfli biçimidir (alias kalktı).
2026-09-17 dbServer.catalogDatabase kaldırıldı: LSP'nin kataloğu LSPNetsim isteğinin database alanından (§4.4); veritabanları ajanın kalıcı MASTER'ında kayıtlıdır.
2026-09-16 I9: dbServer.catalogDatabase — LSP'nin şeması açılışta OPEN DATABASE ile açılan katalogdan (§4.4); startupScript kataloğa ek olarak koşar.
2026-09-16 /message: oturumsuz istek yalnız POST MESSAGE (anonymousSender); SUBSCRIBE/UNSUBSCRIBE/GET/DELETE 401 — paylaşılan GUEST oturumu artık abone edilemez (ölçüldü).
2026-09-17 /message/OpenSession Basic kimliğiyle oturum açıyor (eskiden her zaman 401); başka işçiden yapılan yayın SUBSCRIBE aboneliğini artık çökertmiyor; WhatsApp webhook bildirimi /whatsapp/event (ölçüldü; konu ve gövde anahtarları aynı gün IVD adlarına uyarlandı, eski /whatsapp/olay + olayTuru MESAJ/DURUM yok).
2026-09-22 §7: IVEDI oturum protokolü (/ivedi, WebSocket JSON + BSON, open / execute / fetch / prepare / script, POST /ivedi/cancel); plan F1.
2026-09-23 §7: statementTimeoutMs (deyim süre sınırı, 57014 + timedOut), durumsuz POST /ivedi/execute (§7.7, JSON/BSON gövde, Basic ya da gövde kimliği); plan F2.
2026-09-23 §4.4 LSPNetsim WebSocket mesajı ve ::LSP::SHUTDOWN kaldırıldı (Delphi tarafı /ivediye geçti, LIB37 dca96f8; kullanıcı IDE'de doğruladı); plan A4 tamam.
2026-09-23 §7.9 dil sunucusu kipi: open mode: "lsp" (target, development), script bootstrap + errorCount / warningCount; LSPNetsim (§4.4) mevcut istemciler için durur; plan A4.
2026-09-23 §7.3.1 blob tutamaçları (readBlob / writeBlob / closeBlob, maxInlineBlob, {blob} parametresi), §7.5.1 olaylar (POST_EVENT → /event/<db>/<ad>, yalnız commit'te; subscribe / unsubscribe, notification: event çerçevesi); plan F3.
2026-09-23 §7.7.1 C++ istemci sağlayıcısı IVEDI (createConnection("IVEDI"), ON EXTERNAL 'ivedi:host:port/db'); plan F4 / C2.
2026-09-23 K10: LSP bağlantısı veritabanı başına paylaşılan tek bağlantı yerine oturum başına (işçi sürece özel); ::LSP::SHUTDOWN yalnız çağıran oturumu kapatır; geliştirme kataloğu LSP$DEV<anahtar>. K12: EmrDB işlemcisi kaldırıldı (IVEDI işlemcisi yerini aldı).
2026-09-23 §7.7.2 Delphi istemcisi TNSIVEDIClient (LIB37 NSIVEDIClient.pas, JSON, FillDataSet, ENSIVEDIError); plan F4 / C3.
2026-09-23 §7.7.2 Delphi tarafı FireDAC sürücüsü oldu: FireDAC.Phys.IVEDI (DriverID IVEDI), NSIVEDIClient taşıma katmanı; plan F4 / C3.
2026-09-23 §7.2 columns[] kolon kökeni relation / schema / baseName (tablo kolonuna dayanan alanlar); §7.7.2 FireDAC sürücüsü kökeni ve katalog metaverisini kullanır.
2026-09-25 Hata sözleşmesi: ayrıştırılamayan istek gövdesi 500 yerine 400 + ayrıştırıcının nedeni ve konumu.
2026-09-27 §7.5.2 SQL izleme: subscribe / unsubscribe event: "trace" + süzgeç, notification: trace çerçevesi; plan C5 (K8).
2026-09-27 §7.2 İleti dili: serbest metinli iletiler ve rapor DETAIL'i text bölümünden çevrilir; depo kısıt ihlali deponun iletisini taşır (params yok); plan C1 aşama 2.
2026-09-28 §7.7.2 FireDAC sürücüsünde Language bağlantı parametresi (open.language), TNSIVEDIClient.Language.
2026-09-28 §7.6 Dilimsiz TIMESTAMP ofsetsiz yazılır (eskiden ajan makinesinin ofseti eklenirdi); ofset yalnız WITH TIME ZONE değerde.
2026-09-28 §7.7.2 FireDAC sürücüsü: olaylar (TFDEventAlerter), kayıt noktaları, CommitRetaining, TFDStoredProc, yordam / paket / dizi / katalog metaverisi, TimeZone ve Encoding (BSON) parametreleri; üst düzey EXECUTE PROCEDURE çıkış değerlerini tek satırlık küme olarak döndürür.
2026-10-03 §3.3-3.4 iki havuz: yardım (paketin help.db'si, docs/help, yetkisiz) ve müşteri veritabanı başına belge havuzu (ALTER DATABASE ... SET DOCUMENTS INTERNAL \| DATABASE <db>, IMPORTDOC params.database); MCP help_* / doc_* ayrı havuzları okur, doc_stats eklendi. POST /ClientREST/Help* (anonim) ve Doc* (DocCollections, DocSearch, DocTopic, DocEntity; açık oturum, oturum DB'sindeki kullanıcı + rolleriyle yetki); help_url, model yokken tam metne düşme, maxChars.
2026-10-14 §3.2 HTTP MCP: MCP işlemcisi, POST tek JSON-RPC mesajı, yalnız ivd__* + help_*, anonim.
2026-10-14 §3.2a Distribution işlemcisi (VERSIONS / MANIFEST / FILE, Range), dağıtım sunucusunda lisans + abonelik kapısı.
2026-10-14 §3.2a ajan tarafı: AdminREST DISTRIBUTION, EXECCOMMAND DISTDOWNLOAD / DISTCLEAN (önbellek, kaldığı yerden, SHA-256).
2026-10-19 §3.2a içerik adresli depo store/<sha256> (dosya manifest'in yanında yoksa), physicalRoot öndeğeri; DISTDOWNLOAD reddedilen dosyanın detail'i sunucunun iletisidir, yarım dosya silinir.
2026-10-21 §3.2 HTTP MCP: conf database ivd__* araçlarını tek MASTER kaydına sınırlar (başka ad -32602); initialize yanıtında instructions.