hikmettan
8f62f2f0cf
restrict Stripe webhook plan ids
2026-09-06 17:56:07 +03:00
hikmettan
182f6dc05c
harden Stripe checkout webhook fields
2026-09-06 17:55:24 +03:00
hikmettan
d6040379c2
add API response security headers
2026-09-06 17:53:33 +03:00
hikmettan
4c9354362a
validate Stripe period end timestamps
2026-09-06 17:51:05 +03:00
hikmettan
4edbdc94e5
protect email configuration endpoint
2026-09-06 17:50:18 +03:00
hikmettan
d7c1680f0a
enforce request limits in UTF8 bytes
2026-09-06 17:46:25 +03:00
hikmettan
fbe74b0919
fix subscription cancellation body parsing
2026-09-06 17:45:38 +03:00
hikmettan
b737795eef
validate email test payloads
2026-09-06 17:43:49 +03:00
hikmettan
ac5fda9050
return validation errors for notification reads
2026-09-06 17:43:01 +03:00
hikmettan
3e73849480
harden raw request body parsing
2026-09-06 17:29:29 +03:00
hikmettan
47286fe847
stop oversized request body parsing
2026-09-06 17:28:51 +03:00
hikmettan
120657758c
fix: reject unconfirmed Telegram tests and invalid update responses
2026-09-06 14:55:05 +03:00
hikmettan
37fb7b0366
fix: clear consumed Telegram challenges after link changes
2026-09-06 14:53:35 +03:00
hikmettan
283bfe5990
fix: bind Telegram pairing to expiring single-use account challenges
2026-09-06 14:50:11 +03:00
hikmettan
7a01e4bed7
feat: review uncertain weekly brief deliveries with audit history
2026-09-06 14:37:32 +03:00
hikmettan
23512b7a87
fix: respect brief opt-out and report channel delivery failures
2026-09-06 14:28:10 +03:00
hikmettan
b2a416c908
fix: persist weekly brief preference and expose request failures
2026-09-06 14:20:31 +03:00
hikmettan
e711da9567
fix: distinguish email service errors and validate send receipts
2026-09-06 14:16:08 +03:00
hikmettan
a25dcb7a5d
fix: persist notification preferences and clarify delivery controls
2026-09-06 14:14:46 +03:00
hikmettan
83df706631
fix: persist competitor tracking and remove unsupported metrics and alerts
2026-09-06 14:12:43 +03:00
hikmettan
463fd06d30
fix: confirm and version favorite institution updates
2026-09-06 14:09:31 +03:00
hikmettan
3d9aa79624
fix: persist team changes only after versioned server confirmation
2026-09-06 14:01:28 +03:00
hikmettan
9d3acac59d
fix: reject stale company profile and filter updates
2026-09-06 13:58:25 +03:00
hikmettan
22e886936e
Add audited administrator resolution of uncertain email deliveries
2026-09-06 13:06:17 +03:00
hikmettan
0a0c01baf1
Preserve subscriptions on request failure and isolate account state
2026-09-06 12:55:05 +03:00
hikmettan
458f638b81
Require explicit persisted acknowledgement of notifications
2026-09-06 12:52:14 +03:00
hikmettan
bfef768974
Persist general specification analysis and expose saved results
2026-09-06 12:44:37 +03:00
hikmettan
ca0ed73242
Pin durable AI source text and requirements across retries
2026-09-06 12:42:16 +03:00
hikmettan
f830625b60
Persist offer assistant jobs and recover results across closed views
2026-09-06 12:35:30 +03:00
hikmettan
68fe84e9c7
Persist observed tender source revisions and expose paginated history
2026-09-06 10:49:30 +03:00
hikmettan
1a62a876e6
Enforce API key quota within the database transaction
2026-09-06 10:40:45 +03:00
hikmettan
372c0e76e0
Fix API key error states and verify revocation lifecycle
2026-09-06 10:37:14 +03:00
hikmettan
0c16bbd96f
Surface shared inventory failures and isolate test database storage
2026-09-06 10:30:51 +03:00
hikmettan
d534ea20b9
Cancel disconnected offer analysis and stop remaining provider calls
2026-09-06 10:22:29 +03:00
hikmettan
0fd46c4867
Verify provider failure preserves drafts and improve user feedback
2026-09-06 10:14:29 +03:00
hikmettan
132bd815c6
Populate search detail summaries from EKAP announcement tables
2026-09-06 10:06:23 +03:00
hikmettan
ad7f8746a0
Verify current document review before bid outputs
2026-09-06 09:50:16 +03:00
hikmettan
742e05933e
Analyze server-resolved document reviews with revision checks
2026-09-06 09:49:30 +03:00
hikmettan
559a2feeda
Persist versioned document text reviews against source file hashes
2026-09-06 09:47:12 +03:00
hikmettan
f073438922
Carry OCR and missing-source warnings into analysis readiness
2026-09-06 09:45:33 +03:00
hikmettan
ba1f93bd76
Persist client document read failures with stale-state protection
2026-09-06 09:36:47 +03:00
hikmettan
32ea749669
Persist document processing outcomes separately from upload success
2026-09-06 09:34:52 +03:00
hikmettan
ece623d86c
fix: separate private company documents from shared tender item imports
2026-09-06 09:30:37 +03:00
hikmettan
37b10ce09a
fix: clean failed document uploads and surface filesystem errors
2026-09-06 09:15:34 +03:00
hikmettan
43dc4feb31
fix: validate document uploads and allow clearing expiry dates
2026-09-06 09:14:43 +03:00
hikmettan
144724484c
fix: align server deadlines and follow consumers with preparation state
2026-09-06 09:09:10 +03:00
hikmettan
456728b4bd
fix: preserve bid drafts and align tender source data
2026-09-06 08:40:10 +03:00
hikmettan
c91631d99f
fix: persist tender preparation and correct calendar export
2026-09-06 08:30:32 +03:00
hikmettan and Claude Fable 5.1
2271883be4
fix: EKAP dokümanları açılmıyor — yeni sekme tıklama anında açılıyor, boşluklu İKN'ler düzeltildi
...
İki ayrı neden vardı:
1) window.open sunucu yanıtından SONRA çağrılıyordu; Safari, PWA ve sıkı ayarlı
Chrome bunu açılır-pencere sayıp sessizce engelliyordu — düğme "çalışmıyor"
görünüyordu. Sekme artık tıklamanın hemen içinde boş açılır, adres gelince
yönlendirilir. Engellenirse gerçek bir bağlantı (a href) gösterilir; bağlantı
tıklaması hiçbir tarayıcıda engellenmez.
2) ilan.gov.tr bazı kayıtlarda İKN'yi başta/sonda boşluk ve kesme boşluğu (nbsp)
ile veriyor (" 2026/1622878"). Bu 50 kayıtta panel "EKAP formatında değil"
deyip düğmeyi hiç göstermiyordu. İKN artık alınırken boşluksuz saklanıyor;
panel ve doküman araması da savunma amaçlı temizliyor.
Ayrıca: "EKAP'ta 0 doküman kayıtlı" yanıltıcı metni kaldırıldı (EKAP arama
kaydı sayıyı vermiyor), EKAP'ın önce güvenlik doğrulaması istediği açıklandı.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-05 23:53:43 +03:00
hikmettan and Claude Fable 5.1
c32446db81
AB İhaleleri (TED): başlık ve açıklamalar Türkçe
...
- server/ted-ceviri.mjs: TED'in kendi Türkçe alanı varsa onu kullanır; yoksa
OpenRouter ile toplu çevirir (deepseek-v4-flash → gemini 3.7 flash → glm),
sonucu server/data/ted.sqlite'ta ilan numarasına göre saklar
- İstek en fazla 12 sn bekler, kalan çeviriler arka planda sürer;
yanıt ceviriBekleniyor bayrağı taşır, ön yüz sessizce yeniden çeker
- Kartta Türkçe başlık + küçük özgün başlık, Türkçe açıklama (3 satır),
ülke kodları Türkçe ad (TUR → Türkiye, AUT → Avusturya…)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-05 15:58:28 +03:00