Verify durable AI job result recovery through the browser

This commit is contained in:
2026-09-06 12:37:53 +03:00
parent f830625b60
commit 801d4fca8d
4 changed files with 39 additions and 2 deletions
+14
View File
@@ -0,0 +1,14 @@
{
"provider": "QA simulation, no paid AI call",
"checks": {
"runningVisible": true,
"duplicateCreateDisabled": true,
"completedAfterClose": true,
"restoredText": true,
"restoredType": true,
"draftWarning": true
},
"running": "\n - generic \"Kaynak değişiklik geçmişi\"\n - button \"Listeye Geri Dön\":\n - generic: Listeye Geri Dön\n - button \"İncelendi olarak işaretle\"\n - button \"Takip Et\":\n - generic: Takip Et\n - button \"🗂 Hazırlık Görevi Aç\"\n - button \"İhale detayını kapat\":\n - generic: Mal Alımı\n - generic: \"İKN: 2026/1582991\"\n - generic: \"Ekleme:\"\n - heading \"QA — Giresun laboratuvar\" [level=1]\n - generic: Kurum Adı\n - generic \"Giresun TEST KURUMU\"\n - generic: İhale Tarihi & Saat\n - generic: 10.09.2026 - 10:00\n - generic: Şehir / Bölge\n - generic: Giresun ()\n - generic: Yaklaşık Maliyet\n - generic: Gizli / Belirtilmemiş\n - button \"İhale Detayları\":\n - generic: İhale Detayları\n - button \"Birim Fiyat Cetveli (PDF & Kaşe) İnteraktif\":\n - generic: Birim Fiyat Cetveli (PDF & Kaşe)\n - generic: İnteraktif\n - button \"Yapay Zeka Asistanı\":\n - generic: Yapay Zeka Asistanı\n - button \"Hazırlık Checklist\":\n - generic: Hazırlık Checklist\n - button \"Teklif Asistanı AI\":\n - generic: Teklif Asistanı\n - generic: AI\n - button \"Belgeye Sor\":\n - text: Belgeye Sor\n - button \"Taslağı Denetle\":\n - text: Taslağı Denetle\n - button \"Taslak Üret\":\n - text: Taslak Üret\n - text: Doküman yükle (.pdf/.txt) — isteğe bağlı\n - paragraph: Metin sağlanmazsa sunucu EKAP dokümanını / ilan metnini kullanır. Yanıtların kaynak parçalarını kontrol edin; AI yanıtları hata veya eksik bilgi içerebilir.\n - generic \"Kayıtlı AI işleri\"\n - status: AI işi sunucuda işleniyor. Ekranı kapatırsanız sonucu Kayıtlı AI işleri bölümünden açabilirsiniz.\n - combobox \"Taslak türü\":\n - option \"Teklif mektubu (kapak)\" [selected]\n - option \"Teknik teklif\"\n - option \"Ticari teklif\"\n - option \"Tam dosya\"\n - button \"Taslağı üret\" [disabled]:\n - text: Taslağı üret\n- button \"Kullanım kılavuzu (? tuşu)\":",
"listed": "\n - generic \"Kaynak değişiklik geçmişi\"\n - button \"Listeye Geri Dön\":\n - generic: Listeye Geri Dön\n - button \"İncelendi olarak işaretle\"\n - button \"Takip Et\":\n - generic: Takip Et\n - button \"🗂 Hazırlık Görevi Aç\"\n - button \"İhale detayını kapat\":\n - generic: Mal Alımı\n - generic: \"İKN: 2026/1582991\"\n - generic: \"Ekleme:\"\n - heading \"QA — Giresun laboratuvar\" [level=1]\n - generic: Kurum Adı\n - generic \"Giresun TEST KURUMU\"\n - generic: İhale Tarihi & Saat\n - generic: 10.09.2026 - 10:00\n - generic: Şehir / Bölge\n - generic: Giresun ()\n - generic: Yaklaşık Maliyet\n - generic: Gizli / Belirtilmemiş\n - button \"İhale Detayları\":\n - generic: İhale Detayları\n - button \"Birim Fiyat Cetveli (PDF & Kaşe) İnteraktif\":\n - generic: Birim Fiyat Cetveli (PDF & Kaşe)\n - generic: İnteraktif\n - button \"Yapay Zeka Asistanı\":\n - generic: Yapay Zeka Asistanı\n - button \"Hazırlık Checklist\":\n - generic: Hazırlık Checklist\n - button \"Teklif Asistanı AI\":\n - generic: Teklif Asistanı\n - generic: AI\n - button \"Belgeye Sor\":\n - text: Belgeye Sor\n - button \"Taslağı Denetle\":\n - text: Taslağı Denetle\n - button \"Taslak Üret\":\n - text: Taslak Üret\n - text: Doküman yükle (.pdf/.txt) — isteğe bağlı\n - paragraph: Metin sağlanmazsa sunucu EKAP dokümanını / ilan metnini kullanır. Yanıtların kaynak parçalarını kontrol edin; AI yanıtları hata veya eksik bilgi içerebilir.\n - generic \"Kayıtlı AI işleri\" [active]\n - paragraph: Ekran kapansa da sunucudaki işler devam eder. Son 50 iş gösterilir. Kesilen işi yeniden başlatmak sağlayıcıya yeni istek gönderir. Eski sonucu açmak asistanın mevcut metinlerini değiştirir.\n - button \"İş listesini yenile\"\n - list:\n - paragraph: Taslak üretimi · Tamamlandı · 06.09.2026 12:36:55\n - button \"Kaynak ve sonucu aç\"\n - textbox \"Ör. Geçici teminat oranı nedir?\"\n - button \"Sor\"\n - button \"Geçici teminat oranı ve süresi nedir?\"\n - button \"Teslim süresi kaç gün?\"\n - button \"Gecikme cezası ne kadar?\"\n - button \"Hangi belgeler istenmiş?\"\n - button \"Numune isteniyor mu?\"\n- button \"Kullanım kılavuzu (? tuşu)\":",
"restored": "\n - generic \"Kaynak değişiklik geçmişi\"\n - button \"Listeye Geri Dön\":\n - generic: Listeye Geri Dön\n - button \"İncelendi olarak işaretle\"\n - button \"Takip Et\":\n - generic: Takip Et\n - button \"🗂 Hazırlık Görevi Aç\"\n - button \"İhale detayını kapat\":\n - generic: Mal Alımı\n - generic: \"İKN: 2026/1582991\"\n - generic: \"Ekleme:\"\n - heading \"QA — Giresun laboratuvar\" [level=1]\n - generic: Kurum Adı\n - generic \"Giresun TEST KURUMU\"\n - generic: İhale Tarihi & Saat\n - generic: 10.09.2026 - 10:00\n - generic: Şehir / Bölge\n - generic: Giresun ()\n - generic: Yaklaşık Maliyet\n - generic: Gizli / Belirtilmemiş\n - button \"İhale Detayları\":\n - generic: İhale Detayları\n - button \"Birim Fiyat Cetveli (PDF & Kaşe) İnteraktif\":\n - generic: Birim Fiyat Cetveli (PDF & Kaşe)\n - generic: İnteraktif\n - button \"Yapay Zeka Asistanı\":\n - generic: Yapay Zeka Asistanı\n - button \"Hazırlık Checklist\":\n - generic: Hazırlık Checklist\n - button \"Teklif Asistanı AI\":\n - generic: Teklif Asistanı\n - generic: AI\n - button \"Belgeye Sor\":\n - text: Belgeye Sor\n - button \"Taslağı Denetle\":\n - text: Taslağı Denetle\n - button \"Taslak Üret\":\n - text: Taslak Üret\n - text: Doküman yükle (.pdf/.txt) — isteğe bağlı\n - paragraph: Metin sağlanmazsa sunucu EKAP dokümanını / ilan metnini kullanır. Yanıtların kaynak parçalarını kontrol edin; AI yanıtları hata veya eksik bilgi içerebilir.\n - generic \"Kayıtlı AI işleri\"\n - paragraph: Ekran kapansa da sunucudaki işler devam eder. Son 50 iş gösterilir. Kesilen işi yeniden başlatmak sağlayıcıya yeni istek gönderir. Eski sonucu açmak asistanın mevcut metinlerini değiştirir.\n - button \"İş listesini yenile\"\n - list:\n - paragraph: Taslak üretimi · Tamamlandı · 06.09.2026 12:36:55\n - button \"Kaynak ve sonucu aç\"\n - combobox \"Taslak türü\":\n - option \"Teklif mektubu (kapak)\" [selected]\n - option \"Teknik teklif\"\n - option \"Ticari teklif\"\n - option \"Tam dosya\"\n - button \"Yeniden üret\":\n - text: Yeniden üret\n - button \"Tümünü kopyala\":\n - text: Tümünü kopyala\n - status:\n - paragraph: Taslak — kullanıcı kontrolü gerekli\n - paragraph: Bu çıktı düzenlenebilir bir taslaktır. Bölümlerin bulunması, bilgilerin doğru veya resmi teklif dosyasının hazır olduğunu göstermez. Kaynak, firma bilgileri, fiyatlar ve zorunlu belgeler ayrıca kontrol edilmelidir.\n - textbox: Teklif Mektubu (Kapak)\n - textbox: \"QA kayıtlı sonuç: Laboratuvar teklif taslağı. Bu sentetik metin resmi teklif değildir.\"\n- button \"Kullanım kılavuzu (? tuşu)\":"
}
+8
View File
@@ -723,3 +723,11 @@ Teklif asistanının soru, taslak denetimi ve taslak üretimi kalıcı işe bağ
İstemci tek uzun HTTP isteği yerine işi oluşturur ve kısa durum istekleriyle sonucu bekler. Ekran kapanınca yalnız takip isteği kesilir; sunucu işi devam eder. Kayıtlı AI işleri bölümünde son 50 iş yenilenebilir, iptal/yeniden başlatılabilir; tamamlanmış işin kaynağı ve sonucu asistan ekranına geri açılabilir. Eski işi açmanın mevcut metni değiştirdiği belirtilir. Doğrudan eski API uçları uyumluluk için korunur.
Doğrulama: hesap ayrımı, idempotency, kesilen işin otomatik tekrarlanmaması, çalışma kimliği, iptal sonrası geç sonuç reddi, HTTP bağlantısından bağımsız sonuç kaydı; istemci oluşturma/poll/tamamlama ve ekran kapanınca silme çağrısı olmaması; HTTP yetki ve boş liste. Tüm 161 test ve üretim derlemesi geçti. Sağlayıcı testleri taklittir; gerçek uzun işlem/tarayıcı geri açma kabulü yapılmadı. Genel AI analiz ekranı henüz bu iş modeline bağlı değil. ai-jobs.sqlite kullanıcı yedek aracına otomatik dahil değildir; veri volume yedeğiyle ayrıca alınmalı. Canlı yayın yok.
### D06 / D09 — Kalıcı AI işinin ekran kapatma / geri açma kabulü
localhost:5178 QA sunucusu, yalnız test ortamında ücretli sağlayıcı yerine kontrollü bekleyen iş kullanacak şekilde genişletildi. İstemcinin iş oluşturması gerçek geçici ai-jobs.sqlite kaydına gider; liste/sonuç okuması gerçek uygulama API'sinden yapılır. Görünür QA kontrol ekranı tamamlanmayı tetikler. Üretim sağlayıcı veya işi çalıştıran üretim runner bu UI senaryosunda test edilmez; runner önceki otomatik testte kapsanmıştır.
Giresun → Teklif Asistanı → Taslak Üret → Kapak → Taslağı üret akışında işleniyor durumu ve kapalı üretme düğmesi görüldü. İhale penceresi kapatıldı; kontrol ekranından iş tamamlandı. Yeniden açılışta kayıtlı iş Tamamlandı göründü. Kaynak ve sonucu aç ile doğru kapak türü, kayıtlı taslak metni ve kullanıcı kontrolü uyarısı geri geldi. Altı kabul kontrolü doğru; kanıt qa-durable-ai-job.json.
Taslak türü seçicisine erişilebilir ad eklendi. Üretim derlemesi geçti. Önceki 161 otomatik test yalnız QA/etiket değişikliği için tekrarlanmadı. Gerçek uzun sağlayıcı, yüklenen PDF kaynağının geri açılması, kesinti/yeniden başlatma tarayıcı kabulü ve genel AI iş entegrasyonu açık. Canlı yayın yapılmadı.