Sayt, CRM, botlar va integratsiyalarda bajarilgan ishlar shu sahifada qadam-baqadam va doimiy saqlanadi.
Oxirgi yangilanish: Yozuvlar: 24
Xavfsizlik va RBAC
Bildirishnoma, buyurtma, integratsiya va vakolat chegaralari mustahkamlandi
Bajarildi
API va CRM bo‘yicha yakuniy yozish/ko‘rish auditi dashboard bildirishnomalari, buyurtma maxfiyligi, kuryer profili, xodim vakolati va Instagram public callbacklarida qo‘shimcha qat’iy chegaralarni aniqladi. Tuzatishlar faqat server permissioniga tayangan, UI esa mavjud huquqqa mos ravishda keraksiz action va so‘rovlarni yashiradigan qilib yakunlandi.
Notification API faqat DASHBOARD kanalini va recipient maydonisiz xavfsiz fieldlarni beradi; admin, manager va receptionist audience’lari ajratilgan
WebSocket notification matni tarqatilmaydi: faqat event kodi tegishli permission-roomga yuboriladi
CRM kolokoli dashboard.view bo‘lmasa ko‘rinmaydi va notification APIga so‘rov qilmaydi
Master faqat bevosita, stage yoki task orqali biriktirilgan buyurtmani; OTK esa faqat OTK task queue/history buyurtmalarini oladi
Master va OTK uchun mijoz telefon/kanal/manzil, delivery detail, payment va client-price fieldlari server javobida kesiladi
Order search, card, allowed transition, stage va event feed bir xil row-level tekshiruvdan foydalanadi; moliyaviy eventlar ruxsatsiz feedga kirmaydi
Excel eksport reports.finance, PDF hujjatlar receipts.print, payment-link orders.finance, katalog/prays oqimi price.view bilan bog‘landi
Order card ruxsatlar yuklangandan keyin ochiladi va faqat mos finance/status/assign/courier/payment/discount/document bloklarini ko‘rsatadi
Receptionist kuryer ro‘yxati va delivery arizasini ishlatadi; kuryer profilini yaratish/tahrirlash/deaktivatsiya routes.manage bilan cheklangan
Delivery nuqtasi DTO hamda service darajasida mavjud order, ISO sana, slot, coordinate, stage va faol kuryer bo‘yicha tekshiriladi; yakunlangan nuqta tahrirlanmaydi
Individual users.manage huquqi o‘zidan yuqori rol yoki permissionni bera olmaydi; SUPERADMIN va oxirgi faol ega invariantlari saqlanadi
Instagram POST webhook raw-body HMAC imzosiz yopiq; public manual/mock fallback olib tashlandi, OAuth state hash holida 10 daqiqalik va bir martalik
PBX, bot va tracking service kalitlari umumiy constant-time taqqoslashdan foydalanadi
Yangi va almashtiriladigan parol 8–128 belgida DTO va service darajasida tekshiriladi; mavjud login/parol o‘zgartirilmadi
34 backend suite: 265/265; barcha production buildlar, Prisma validate, npm audit 0 hamda Flutter format/analyze/test muvaffaqiyatli
Production RBAC API qabul sinovi 19/19: notification fieldlari, master scope/redaction, receptionist 403 va unsigned webhook DBga yozmasdan tasdiqlandi
Umumiy read-only production acceptance 17/17; API/DB health, HTTPS va fail-closed integratsiyalar ishlaydi
Real HTTPS browser smoke 73/73: 8 faol rolning ruxsat etilgan va taqiqlangan sahifalari, order resize persistence hamda 3 public sahifa
API, CRM, sayt va ikkala bot PM2’da online; milestone public hisobotda ko‘rinadi va kod remote Git branch’iga yuborildi
Roadmap P1–P3
Mobil ish oqimi, marshrut tartibi va jadval qulayligi yakunlandi
Bajarildi
Masterlar mobil ilovada bosqichni qabul qilish, muammoni sabab bilan qaytarish, kamera yoki galereyadan xavfsiz ichki foto biriktirish, faqat fotodan keyin ishni yakunlash va o‘z daromadini ko‘rish imkoniga ega bo‘ldi. CRM marshrut ichidagi drag-and-drop tartibini atomik saqlaydi, buyurtma ustunlari esa sichqon, sensor yoki klaviatura bilan o‘lchamlanib brauzerda saqlanadi. Shu jarayonda vazifa va kuryer nuqtalarining boshqa xodim tomonidan bajarilishiga yo‘l qo‘ygan ownership nomuvofiqligi ham yopildi.
Mobil stage actionlar backendning mavjud role/owner va xavfsiz image decode/re-encode himoyasidan foydalanadi
Earnings ekrani shu oy yoki barcha vaqt bo‘yicha faqat JWTga bog‘langan master ma’lumotini oladi; sana chegaralari lokal to‘liq kun sifatida qat’iy tekshiriladi
Production API default manzili HTTPS; release manifest cleartext trafik va keraksiz lokatsiya ruxsatini taqiqlaydi
Android scaffold, Gradle wrapper va pubspec.lock reproduktiv build uchun Gitga qo‘shildi; local key/property va keystore sir bo‘lib qoladi
Release AAB haqiqiy non-debug upload-key bilan tekshirildi; signing to‘liq bo‘lmasa release build fail-closed
Marshrut ichki tartibi faqat to‘liq aktual UUID ro‘yxatini qabul qiladi va barcha sortOrder qiymatlarini bitta transactionda yozadi
TO_MASTER/FROM_MASTER nuqtalari algoritm va xaritaga kiritildi; yakunlash buyurtmani xato “berildi” holatiga o‘tkazmay, tegishli stage jarayonini davom ettiradi
Tashqi master callback’i retry-safe qilindi: ochiq ish vazifasi dublikatlanmaydi, bosqich takroran OTKga o‘tmaydi va callback xatosida nuqta statusi qaytariladi
Manual kuryerga ko‘chirish tanlangan kuryerni qayta algoritm bilan bekor qilmaydi; eski va yangi ro‘yxatlar ketma-ket normallashtiriladi
Kuryer actionlari rol, point owner, status, sabab va summa bo‘yicha himoyalandi; boshqa tasks.my rollariga begona marshrut va action yopildi
Buyurtma ustunlari 64–480 px chegarada pointer/klaviatura bilan o‘zgaradi, buzilgan storage qiymatlari sanitizatsiya qilinadi va reset mavjud
27 backend suite: 240/240; Flutter format/analyze/test, barcha production buildlar, Prisma validate va npm audit 0 muvaffaqiyatli
Production read-only acceptance 17/17; API health, DB, HTTPS, auth va fail-closed integratsiyalar tasdiqlandi
Real HTTPS browser smoke 24/24: 20 CRM sahifa, resize→reload persistence va 3 public sahifa
Production master API: earnings 200, client phone yashirin; begona route/action 403 va noto‘liq order DBga yozmasdan 400
API, CRM, sayt va ikkala bot PM2’da online; yangi milestone public hisobotda ko‘rinadi va commit remote Git branch’iga yuborildi
Production qabul
Tashqi ma’lumotsiz bajariladigan roadmap production’ga topshirildi
Bajarildi
Sayt, CRM, API, botlar, media CMS, dependencylar va fail-closed integratsiyalar bitta yakuniy qabul siklidan o‘tdi. Eski production’ga yozuvchi acceptance/smoke skriptlari read-only formatga almashtirildi, ichki hujjatlardagi mock va ochiq LAN port haqidagi eskirgan da’volar tuzatildi. Qolgan bandlar faqat egadan tashqi credential, haqiqiy media yoki server sudo ruxsati kelgach bajariladi.
230/230 backend test, to‘rtta production build va npm audit 0 muvaffaqiyatli
Read-only production acceptance: 17/17; test user, lead, order, payment yoki call yaratilmadi
Haqiqiy HTTPS domenlar orqali read-only browser smoke: 20 ta CRM va 3 ta public sahifa, 23/23 muvaffaqiyatli
CRM→API→public media E2E: PNG→WebP, haqiqiy MP4, public ko‘rinish va to‘liq DB/fayl cleanup
DBga bog‘lanmagan ikkita eski 4×4 test PNG recoverable Trash’ga ko‘chirildi; galereya DB va katalog toza
Prisma 6.19.3 health, 15 migration va nol schema-diff bilan production’da ishlamoqda
Yakuniy atomik snapshot: 339 DB obyekti va 9 media; izolatsiyalangan restore: 45 jadval va 9/9 media
API, CRM, sayt va ikkala bot PM2’da online; public sayt, hisobot va CRM HTTP 200
3000/3001/3002 faqat 127.0.0.1da; payment mock/webhook 503, PBX kalitsiz 403, delivery 503 va DB o‘zgarmaydi
Barcha kod va hisobot commitlari Git remote branch’iga yuborildi
Ma’lumotlar qatlami
Prisma 5.22 dan 6.19.3 ga nazoratli yangilandi
Bajarildi
Prisma ORM va Client bir xil 6.19.3 versiyaga ko‘chirildi. Rasmiy breaking-change ro‘yxati schema va kod bo‘yicha tekshirildi, CLI konfiguratsiyasi alohida prisma.config.ts fayliga o‘tkazildi. Production DBga hech qanday noma’lum schema o‘zgarishi qo‘llanmadi.
Node 22.14 va TypeScript 5.6 Prisma 6 talablariga mos
Bytes field, eski NotFoundError, $use middleware va PostgreSQL implicit many-to-many bog‘liqligi topilmadi
Prisma Client 6.19.3 muvaffaqiyatli generatsiya qilindi, schema valid
Production bazadagi 15 migratsiya dolzarb va schema-diff natijasi “No difference detected”
230 ta backend testi, barcha production buildlar va 0-vulnerability audit o‘tdi
Prisma 7 ESM, yangi client output, PostgreSQL driver adapter va pool semantikasini bir vaqtda o‘zgartirgani uchun alohida arxitektura migratsiyasiga ajratildi
Integratsiyalar xavfsizligi
Delivery, PBX va to‘lov adapterlari rostgo‘y fail-closed holatga o‘tkazildi
Bajarildi
Shartnoma va tekshirilgan real adapter bo‘lmaguncha production endi soxta Yandex trek, “javob berildi” telefon yozuvi yoki soddalashtirilgan Payme/Click/Uzum webhook natijasini yaratmaydi. CRM integratsiya holatini ochiq ko‘rsatadi; ichki kuryer, qo‘lda tasdiqlangan qo‘ng‘iroq va naqd/terminal oqimlari ishlashda davom etadi.
DELIVERY_PROVIDER production’da disabled; mock faqat test/development muhitida mumkin
Yandex tokenining o‘zi real API chaqiruvisiz vazifani “yo‘lda” holatiga o‘tkaza olmaydi
Payme, Click va Uzum CRM’da saqlangan, “ulanmagan” deb ko‘rinadi va tanlab bo‘lmaydi
Soddalashtirilgan real payment invoice/webhook metodlari olib tashlanib, contract testgacha yopildi
PBX kaliti bot kalitidan alohida, kamida 32 belgili va faqat X-PBX-Key header orqali qabul qilinadi
PBX kaliti constant-time taqqoslanadi, webhooklar rate-limit bilan himoyalangan
ATS ulanmagan click-to-call endi soxta ANSWERED yozuvi yaratmaydi; qurilmaning raqam terish oynasini ochadi
Credential xavfsizligi
Production JWT va ichki servis kalitlari xavfsiz aylantirildi
Bajarildi
Deploydan keyingi qat’iy tekshiruv eski konfiguratsiyada developmentga xos kalit nomlanishi saqlanib qolganini aniqladi. Qiymatlar publik qilinmasdan kriptografik tasodifiy, alohida kalitlarga atomik almashtirildi; barcha servislar yangi konfiguratsiya bilan birga qayta yuklandi. Xavfsizlik uchun avvalgi CRM sessiyalari bekor bo‘ldi, login va parol esa o‘zgarmadi.
JWT va bot-service kaliti 48 kriptografik tasodifiy baytdan alohida yaratildi
Almashtirish vaqtinchalik fayl va atomik rename bilan, qiymatlarni terminalga chiqarmasdan bajarildi
Validator endi local/development/sample/test shablonlarini hamda bir xil ikki kalitni rad etadi
Faol API processi aynan yangilangan kalitlarni yuklagani qiymatlarni ko‘rsatmasdan tekshirildi
API, CRM, sayt va ikkala Telegram boti online; health va public sahifalar 200 holatda
Asosiy sayt va CMS
Sayt boyitildi, real media uchun xavfsiz CRM boshqaruvi qo‘shildi
Bajarildi
Bosh sahifaga xizmat yo‘nalishlari, parvarish tavsiyalari, qulay navigatsiya, real ish videosi bloki, SEO structured data va accessibility yaxshilanishlari qo‘shildi. CRM endi RU/UZ matnlarini, “oldin/keyin” juftligini, tartibini va jarayon videosini boshqaradi. Haqiqiy tasdiqlangan media bo‘lmasa, sayt mavjud grafikani rostgo‘y ravishda “illyustratsiya” deb belgilaydi.
Bosh sahifa 6 ta xizmat yo‘nalishi, 4 ta parvarish tavsiyasi va aniq CTA bilan to‘ldirildi
CRM’da ikki tilli sayt matnlari hamda galereya/video boshqaruvi yaratildi
Galereya rasmlari serverda ochilib tekshiriladi, EXIF/metama’lumotdan tozalanadi, 2000 px gacha kichraytiriladi va WebP formatiga o‘tkaziladi
Jarayon videosi faqat MP4/WebM byte-signature bilan, UUID nomida va 30 MB limitda qabul qilinadi
Buyurtmadagi “keyin” fotosini galereyaga chiqarish uchun haqiqiy “oldin” fotosi va mijozga ko‘rinadigan media talabi qo‘yildi
URL, xarita koordinatasi, lazy-loading, klaviatura skip-link, JSON-LD va ikki tilli alt/aria matnlari tekshirildi
222 ta backend testi, barcha production buildlar va dependency audit muvaffaqiyatli o‘tdi; auditda 0 ta zaiflik
Kutubxonalar xavfsizligi
Next.js va NestJS xavfsiz versiyalarga nazoratli yangilandi
Bajarildi
Sayt va CRM Next.js 15.5.20 ga, API esa NestJS 11.1.28 hamda Express 5 liniyasiga ko‘chirildi. Har bir breaking o‘zgarish kod darajasida moslashtirildi; framework, upload va transitive paketlar auditi nol zaiflikka tushirildi.
Boshlang‘ich npm audit: 29 ta yozuv; yakuniy audit: 0 ta
Next.js async route-param API’siga barcha public sahifalar moslashtirildi
NestJS peer-paketlari bitta 11.1.28 dependency grafigiga birlashtirildi
Multer 2.2 va Express 5 production liniyasi o‘rnatildi
JWT muddati qat’iy formatda tekshirilib, xavfsiz son qiymatiga aylantiriladi
216 ta backend testi va barcha to‘rtta ilova production build’i muvaffaqiyatli o‘tdi
Server chegaralari
Ichki servis portlari va production konfiguratsiyasi yopildi
Bajarildi
API, CRM va sayt endi faqat server loopback interfeysida ishlaydi; tashqi trafikning yagona yo‘li Nginx bo‘lib qoldi. PM2 root env’ni deterministik yuklaydi va production rejimini majburiy o‘rnatadi, backend esa xavfli konfiguratsiyada start olmaydi.
3000, 3001 va 3002 portlari faqat 127.0.0.1 manzilida tinglamoqda
Barcha besh PM2 servisida NODE_ENV=production tekshirildi
JWT va ichki servis kalitlaridagi development fallbacklar olib tashlandi
Production CORS faqat rasmiy HTTPS originlarga qisqartirildi
Public domen ichki stage media uchun 404, galereya uchun 200 qaytarmoqda
Nginx CSP/header va upload chegaralari Git’da tayyor; qo‘llash uchun server root ruxsati kerak
Backup va tiklash
DB va media uchun atomik backup hamda real restore-test joriy qilindi
Bajarildi
Kunlik systemd vazifasi PostgreSQL va lokal media fayllarini bitta versiyalangan snapshotga yig‘adi, SHA-256 bilan tekshiradi va daily/weekly/monthly retention qoidasini qo‘llaydi. Haftalik test nusxani alohida vaqtinchalik DB va katalogga tiklaydi.
Real snapshotda 339 ta DB obyekti va 11 ta media fayl saqlandi
Izolatsiyalangan sinovda 45 ta jadval va barcha 11 ta media muvaffaqiyatli tiklandi
Backup va restore systemd service’lari exit-code 0 bilan qayta tekshirildi
Bir vaqtda ikki backup ishlashini bloklovchi lock va atomik staging qo‘shildi
Offsite nusxa to‘liq credential bo‘lmasa ishlamaydi; tayyor oqim AES-256 bilan shifrlaydi va qayta ochib tekshiradi
Kirish xavfsizligi
Tizim egasining SUPERADMIN kirishi xavfsiz tiklandi
Bajarildi
Tizim egasining tasdig‘i bilan yagona faol SUPERADMIN hisobiga yangi kuchli vaqtinchalik parol o‘rnatildi. Maxfiy credential hisobotga yoki kodga kiritilmadi.
Reset faqat aniq topilgan bitta faol SUPERADMIN hisobiga qo‘llandi
Amal server audit-log’iga sirlarni kiritmasdan yozildi
Yangi credential real login API orqali muvaffaqiyatli tekshirildi
Media xavfsizligi
Barcha fayl yuklash oqimlari yagona xavfsiz qoidaga o‘tkazildi
Bajarildi
Bosqich, mijoz, galereya, Telegram va qo‘ng‘iroq mediafayllari endi foydalanuvchi yuborgan nom yoki MIME’ga ishonmaydi. Server fayl turini mazmuni bo‘yicha tekshiradi, xavfsiz UUID nom beradi va qat’iy hajm limitini qo‘llaydi.
Rasmlar faqat JPEG, PNG yoki WebP byte-signature bilan qabul qilinadi
Bosqich fotosini faqat biriktirilgan usta yoki administrator yuklay oladi
Audio faqat MP3, WAV, OGG yoki M4A sifatida tekshirilib saqlanadi
PBX yozuvlari faqat alohida ruxsat etilgan HTTPS hostdan, redirectsiz va 50 MB gacha olinadi
Telegram hujjatlari bajarilmaydigan binar formatda, asl nomi esa faqat xavfsiz ko‘rsatish uchun saqlanadi
Mavjud media ombori tekshirildi: fayl turlari kutilgan formatlarga mos
Keyingi bosqich
Backup va tiklash tizimini kuchaytirish
Jarayonda
Lokal DB+media snapshot, retention va real restore-test yakunlandi. Qolgan yagona qism — tashqi S3 endpoint, bucket, access key va alohida shifrlash paroli berilgach AES-256 offsite nusxani faollashtirish.
DB va media bitta atomik backup sikliga kiritildi
Kunlik/haftalik/oylik retention ishlamoqda
Test tiklash production ma’lumotlarini buzmasdan bajarildi
Tashqi storage credentiallari serverda hozircha mavjud emas
Server xavfsizligi
Portlar, security-header va production konfiguratsiyasini qat’iylashtirish
Jarayonda
Loopback portlar, qat’iy production env-validatsiya va public media chegarasi production’da ishlamoqda. Nginx CSP va qo‘shimcha header konfiguratsiyasi tayyor, lekin `/etc/nginx`ga qo‘llash uchun root ruxsati talab qilinadi.
Port va firewall holati qayta tekshirildi
API, CRM va sayt loopback’ka ko‘chirildi va smoke-testdan o‘tdi
Nginx konfiguratsiyasi Git rollback bilan tayyorlandi
Qolgan ish: root orqali o‘rnatish, nginx -t, reload va header smoke-test
Texnik qarz
Framework va kutubxonalarni nazoratli yangilash
Bajarildi
Next.js, NestJS, Express, Multer va transitive paketlar xavfsiz liniyalarga yangilandi; Prisma 6.19.3 migratsiyasi ham schema-diff bilan yakunlandi. Auditda zaiflik qolmadi. Prisma 7 esa ESM va driver-adapter arxitektura o‘zgarishi sabab xavfsiz alohida siklga ajratildi.
29 ta audit yozuvi 0 tagacha kamaytirildi
Next.js va NestJS migratsiyasi test/build bilan yakunlandi
Prisma 6.19.3 migratsiyasi 15 ta dolzarb migration va nol schema-diff bilan yakunlandi
Prisma 7 uchun xavfsiz arxitektura migratsiya chegarasi hujjatlashtirildi
Asosiy sayt
Restoria.uz saytini to‘ldirish, boyitish va qulaylashtirish
Jarayonda
Saytning kontent, UX, SEO va CMS bazasi yakunlandi. Galereya hamda video uchun xavfsiz texnik oqim tayyor; qolgan kontent bosqichi — mijoz roziligi olingan haqiqiy “oldin/keyin” foto va jarayon videolarini CRM orqali yuklash.
Xizmatlar, narx, muddat, parvarish, Telegram/telefon CTA va kuzatish yo‘li boyitildi
CRM orqali RU/UZ kontent, WebP galereya, video poster va jarayon videosini boshqarish tayyor
SEO structured data, lazy-loading va asosiy accessibility talablari tekshirildi
Qolgan ish: egasi tasdiqlagan real media fayllarini tavsif va kategoriya bilan yuklash
Integratsiyalar
Real to‘lov providerlari va PBX’ni shartnoma asosida ulash
Jarayonda
Production fail-closed himoyasi yakunlandi: ulanmagan Payme, Click, Uzum, Yandex Delivery va PBX soxta natija bermaydi. Qolgan tashqi bosqich — tanlangan providerlar bilan shartnoma, rasmiy credential, sandbox va imzo/idempotency contract-testlari.
Ulanmagan providerlar CRM’da ko‘rinadi, lekin tanlab bo‘lmaydi
Payment, delivery va PBX production mock/fallback oqimlari yopildi
Qolgan ish: rasmiy provider credentiallari va sandbox contract-testlari
Ma’lumotlarni himoyalash
Realtime kanal va public API chegaralari himoyalandi
Bajarildi
CRM WebSocket ulanishi JWT, faol hisob va individual ruxsatlar bo‘yicha tekshiriladi. Hodisalar faqat tegishli permission-room’larga yuboriladi. Public matn endpointi esa faqat saytga zarur org maydonlarini qaytaradi.
Tokensiz WebSocket ulanish hodisalarni qabul qilmaydi
Qo‘ng‘iroq hodisasi faqat mijozlarni ko‘rish huquqiga ega rollarga boradi
AI va kanal sozlamalari public texts javobidan chiqarildi
Demo sharhlar va ichki review maydonlari public javobdan chiqarildi
Telegram xavfsizligi
Bot identifikatsiyasi va media oqimi himoyalandi
Bajarildi
Mijoz va xodim botlari endi faqat foydalanuvchining o‘z Telegram kontakti orqali bog‘lanadi. Begona profilga bog‘langan hisob yashirincha almashtirilmaydi. Suratlar Telegram tokenli URL sifatida saqlanmaydi — avval tekshirilib Restoria storage’iga ko‘chiriladi.
Kontakt egasi Telegram user ID bo‘yicha tekshiriladi
Xodim daromadi endpointiga servis kaliti tekshiruvi qo‘shildi
Vazifa va kuryer nuqtalari aynan biriktirilgan ijrochiga tegishliligi tekshiriladi
Ko‘p bosqichli ishni majburiy fotosiz bot orqali yopish bloklandi
Rasm turi fayl nomi emas, haqiqiy byte-signature orqali aniqlanadi
To‘lov xavfsizligi
Production’dagi test onlayn to‘lovlar yopildi
Bajarildi
Mock havola va imzosi tekshirilmagan provider webhook’lari endi production bazasida to‘lovni tasdiqlay olmaydi. Real Payme/Click adapterlari to‘liq imzo va tranzaksiya testlaridan o‘tmaguncha tizim fail-closed holatda qoladi.
Production PAYMENT_PROVIDER disabled holatiga o‘tkazildi
Mock rejim faqat non-production muhitida ishlaydi
CRM’da providerlar “ulanmagan” deb ko‘rinadi va tanlash bloklangan; Telegram bot havola bermaydi
Saytdagi Payme/Click haqidagi nomuvofiq va’dalar olib tashlandi
Kirish xavfsizligi
Ochiq demo-administrator kirishi yopildi
Bajarildi
CRM login sahifasidan tayyor telefon va parol olib tashlandi. Ommaga ma’lum bo‘lgan eski hisob bloklandi, uning eski sessiyalari yaroqsiz qilindi va paroli qayta ishlatib bo‘lmaydigan qiymatga almashtirildi.
Bloklashdan oldin boshqa faol SUPERADMIN mavjudligi tekshirildi
Eski demo login API darajasida 401 javob qaytarmoqda
Seed va test skriptlaridan production credentiallari olib tashlandi
Amal server audit-log’iga yozildi
Shaffoflik
Doimiy rivojlantirish hisoboti yaratildi
Bajarildi
Sayt, CRM va integratsiyalarda bajarilgan xavfsiz o‘zgarishlar qadam-baqadam saqlanadigan ikki tilli ochiq jurnal joriy qilindi.
Hisobot manbasi Git tarixida saqlanadi
Sahifa RU va UZ tillarida ishlaydi
Sirlar va ekspluatatsiya tafsilotlari publik qilinmaydi
Xavfsiz boshlanish
Nazoratli o‘zgartirish jarayoni boshlandi
Bajarildi
Tekshirilmagan kodni avtomatik yuboruvchi jarayon to‘xtatildi. O‘zgarishlardan oldin ma’lumotlar bazasi va lokal media snapshotlari olindi, alohida ish branch’i yaratildi.
Production servislar ishlashda davom etdi
DB backup muvaffaqiyatli yaratildi
Media snapshot checksum bilan tekshirildi
Audit
Sayt va CRM tizimi to‘liq read-only tekshirildi
Bajarildi
Arxitektura, API, buyurtma konveyeri, botlar, to‘lovlar, marshrutlar, backup, SEO va server konfiguratsiyasi tekshirildi. Tuzatishlar xavf darajasi bo‘yicha rejalashtirildi.