Next.jsni olib tashlash blogimni har bir Lighthouse toifasida 100 ballga olib keldi
Mening blogim har bir Lighthouse toifasida 100 ballga erishdi. Bu erishish uchun Next.jsni olib tashlashim kerak bo'ldi. Bu qanday sodir bo'ldi va nima sabab bo'ldi?

Tasks as Code — bu topshirilmalarni repositoriyga ko'chirish usuli. AI kodlash agentlari uchun barcha ma'lumotlar repositoriyada bo'lishi kerak, chunki kod ularning haqiqat manbai hisoblanadi. Ammo ko'p jamoalar hali ham Jira yoki Redmine kabi vositalarda topshirilmalarni va talablarni saqlaydilar. Tasks as Code usuli bu muammoni hal qiladi.
Dokumentatsiya allaqachon alohida dokumentatsiya dasturlaridan Markdown fayllari sifatida Git repositoriyasiga ko'chirilgan. Bugungi kunda u odatda kod repositoriyasidagi /docs papkasida joylashgan. Bu amaliyot Docs as Code yoki Docs Like Code deb ataladi.
AI kodlash agentlari bilan bu yondashuv ancha foydali bo'ladi. Agentlar dokumentatsiyani o'qib, tizimni tushunishlari, kodga o'zgartirishlar kiritishlari va shu bilan birga ma'lumotlarni yangilashlari mumkin. Shunday qilib, dokumentatsiya dasturiy ta'minot rivojlanishining ajralmas qismi bo'lib qoladi.
Shu prinsiplar rivojlanish topshirilmalari uchun ham amal qiladi. Topshirilmalar Markdown fayllari sifatida saqlansa, agentlar ularni o'qib, ishlarini rejalashtirishi va natijalarni shu fayllarga yozishi mumkin. Git topshirilma tarixi kod va dokumentatsiya tarixi bilan birga saqlanadi.
Bu g'oya Spec-Driven Development (SDD)da ham aks etgan. SDD Markdown fayllarida belgilangan talablarni AI agentlar amalga oshiradi. Topshirilma fayli shu maqsadda ishlatilishi mumkin, lekin ma'lumotlar darajasi ish turiga bog'liq. Kichik ta'mirlash topshirilmalari qisqa tavsif talab qilishi mumkin, lekin murakkab xususiyatlar uchun qabul qilish mezonlari, texnik qarorlar, bog'liqliklar va sinov talablarini talab qilishi mumkin.
SDD odatda Spec Kit kabi alohida vositalar bilan qo'llab-quvvatlanadi, lekin oddiyroq yondashuv ham yetarli: topshirilma faylini o'ziga belgilangan talab sifatida ishlatish. Bu o'tishni osonlashtiradi, chunki u Git va agentdan tashqari hech narsa talab qilmaydi.
Bu erda besh bosqichli oddiy ish jarayoni mavjud:
Topshirilma tavsifi, amalga oshirish rejasi va hisobot bir faylda qoladi. Bu asl talablarni ko'rib chiqish, rejalashtirilgan yondashuvni tushunish va agentning amalga oshirgan o'zgartirishlarni ko'rishni osonlashtiradi.
Tasdiqlash bosqichi odamlarni nazorat ostida ushlaydi. Agent topshirilma tavsifidan to'g'ridan-to'g'ri amalga oshirishga o'tmaydi; rejani ko'rib chiqish va to'g'rilash mumkin.
O'zimning sozlashimda men uchta alohida Git repositoriyasidan foydalanaman:
Dokumentatsiya va topshirilmalar odatda turli kirish talablariga ega. Dokumentatsiya odatda ommaviy bo'lishi mumkin, lekin topshirilmalar tugallanmagan xavfsizlik tahrirlari, ichki rejalashtirish yoki e'lon qilingan bo'lmagan xususiyatlar haqidagi maxfiy ma'lumotlarni o'z ichiga olishi mumkin. Alohida repositoriyalar kirishni mustaqil ravishda sozlash va topshirilmalarni maxfiy saqlash imkonini beradi.
Mahalliy darajada, dasturchi dokumentatsiya va topshirilma repositoriyalarini kod repositoriyasidagi papkalarga klonlaydi. Ikki papka ham kod repositoriyasining .gitignore faylida ro'yxatga olingan, shuning uchun ota repositoriya ularga ega emas. Har bir klonlangan repositoriya o'z Git tarixini saqlaydi va mustaqil ravishda commit, push va sinxronizatsiya qilinishi mumkin.
/code-repo
/src
/tests
/docs # Alohida dokumentatsiya repositoriyasi
/user-guides
/admin-manuals
/developer-docs
/tasks # Alohida maxfiy topshirilma repositoriyasi
/release-123
task-551-something-descriptive.md
task-552-something-descriptive.md
.gitignore # docs va tasksni chetlab o'tadi
Endi barcha ma'lumotlar mahalliy kod yordamchisi, masalan, Claude Code yoki OpenCode uchun mavjud. Topshirilmani amalga oshirishda agent topshirilmani o'qib, kodni tekshiradi, o'zgartirishni amalga oshiradi va zarur bo'lsa dokumentatsiyani yangilaydi. Amalga oshirish hisoboti topshirilma bilan birga qoladi, lekin asl kod o'zgartirishlari kod repositoriyasida yoziladi. Git commitida topshirilma faylini ishorat qilish topshirilmani asl talablar bilan bog'laydi.
/code-repo
/src
/tests
/docs # Separate documentation repository
/user-guides
/admin-manuals
/developer-docs
/tasks # Separate private task repository
/release-123
task-551-something-descriptive.md
task-552-something-descriptive.md
.gitignore # Excludes docs and tasks
Topshirilmalarni chiqarish papkalari ichida tashkil etilganda, agent tugallangan topshirilmalar va Git tarixi yordamida o'zgartirishlar ro'yxatini va chiqarish eslatmalarini loyihalashtirishi mumkin. Shu ma'lumotlar zarur bo'lsa dokumentatsiyani yangilashni aniqlashga yordam beradi.
Git va AI kodlash agentlari bu ish jarayonini bajarish uchun yetarli. Brauzer asosidagi interfeys fayllarni ko'rish, tahrirlash va tashkil etishning yana bir usulini taqdim etadi, lekin Gitni asl versiya nazorati tizimi sifatida almashtirmaydi.
Typemill Git repositoriyalar bilan sinxronlashtirishni qo'llab-quvvatlaydi. U bir nechta repositoriyalarni qo'llab-quvvatlaydi, shuning uchun siz maxfiy topshirilmalar uchun alohida loyihani dokumentatsiya loyihasi bilan birga sozlashingiz mumkin. Bu sizga bir xil interfeys orqali ikkisini ham boshqarishga imkon beradi, garchi ma'lumotlar alohida repositoriyalarda joylashgan bo'lsa ham.
Topshirilmalar:
Dokumentatsiya:
Ushbu fayllar uchta interfeys orqali mavjud:
Har bir interfeys alohida maqsadga xizmat qiladi. IDE amalga oshirishni qo'llab-quvvatlaydi, GitHub repositoriya darajasidagi hamkorlikni taqdim etadi va CMS kontent interfeysi va nashrlash platformasini taqdim etadi.
Asl manba: typemill.net