رفع خودکار با هوش مصنوعی
رفع خودکار ردپای خطا را میخواند، کد مربوطه را از مخزن شما برمیدارد، از یک ارائهدهندهٔ هوش مصنوعی وصله میخواهد و با آن یک مرجریکوئست باز میکند. شما هم مثل هر MR دیگری بازبینیاش میکنید.
پیشنیازها
- یک یکپارچهسازی کنترل نسخه متصل و یک مخزن پیوندخورده به پروژه — نگاه کنید به یکپارچهسازیها. بدون آن نه کدی برای خواندن هست و نه جایی برای باز کردن MR.
- یک پیکربندی هوش مصنوعی برای سازمان (یا برای یک پروژهٔ خاص).
تنظیم ارائهدهنده
تنظیمات ← هوش مصنوعی، یا از راه API:
curl -X POST "$ERRORA/api/v1/organizations/$ORG_ID/ai-configs" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Default fixer",
"provider": "claude",
"model": "claude-opus-4-8",
"api_key": "sk-…",
"base_url": "",
"project": null,
"auto_trigger": false,
"enabled": true
}'
| فیلد | توضیح |
|---|---|
provider | openai (هر نقطهٔ سازگار با OpenAI)، claude (Claude Agent SDK)، cursor (Cursor Agents SDK) |
model | شناسهٔ مدل، مختص همان ارائهدهنده |
api_key | رمزگذاریشده ذخیره میشود؛ API هرگز آن را کامل برنمیگرداند |
base_url | برای درگاههای سازگار با OpenAI و نقاط اختصاصی |
project | null یعنی برای کل سازمان؛ با تعیین آن، پیکربندی به یک پروژه محدود میشود |
auto_trigger | اجرای خودکار هنگام ساختهشدن خطای جدید |
enabled | خاموشکردن پیکربندی بدون حذف آن |
پیکربندی مخصوص پروژه بر پیکربندی کل سازمان اولویت دارد.
اجرای یک رفع
از صفحهٔ خطا، دکمهٔ رفع خودکار را بزنید. یا:
curl -X POST "$ERRORA/api/v1/projects/$PROJECT_ID/issues/$ISSUE_ID/autofix" \
-H "Authorization: Bearer $ACCESS_TOKEN"
اجرا به توانمندی ai:trigger نیاز دارد (بهطور پیشفرض owner، admin و member).
چه اتفاقی میافتد
- ارورا زمینه را جمع میکند: استثنا، فریمهای ردپا و فایلهای منبعی که آن فریمها به آنها اشاره دارند، از مخزن پیوندخورده.
- از ارائهدهنده وصله بههمراه توضیح خواسته میشود.
- ارورا یک شاخه میسازد (
errora/autofix-<issue>-<timestamp>)، تفاوتها را کامیت میکند و یک مرجریکوئست باز میکند. - اجرا با وضعیت، دیف، توضیح، آدرس MR، مدل و مصرف توکن ثبت میشود.
هر اجرا بهاندازهای که مدل طول بدهد زمان میبرد و در این مدت جریان رویدادهای شما ادامه دارد. پیشرفت را زنده در صفحهٔ خطا دنبال کنید، یا در صفحهٔ رفعهای هوش مصنوعی که همهٔ اجراهای سازمان را فهرست میکند.
هر مرحله یک رویداد هشدار فعال میکند که میتوانید به یک کانال بفرستید: autofix.started،
autofix.mr_created، autofix.failed — نگاه کنید به هشدارها.
هزینه
هر اجرا زیر سرویس رفع هوش مصنوعی محاسبه میشود (بهطور پیشفرض ۲۰٬۰۰۰ تومان به ازای هر اجرا)، جدا از هزینهای که ارائهدهندهٔ هوش مصنوعی از شما میگیرد. نگاه کنید به کیف پول.
بازبینی وصله
با آن مثل پیشنویس همکاری رفتار کنید که فقط ردپای خطا را خوانده و چیز دیگری نمیداند:
- فریمها و فایلهایی را که به آنها اشاره دارند میبیند — نه تستهای شما، نه تصمیمهای محصول، نه تیکت مربوطه.
- تستها را اجرا کنید. دیف را بخوانید. آن MR نقطهٔ شروع است، نه حرف آخر.
عیبیابی
| نشانه | علت / راهحل |
|---|---|
دکمه غیرفعال است یا 403 میگیرید | نقش شما توانمندی ai:trigger ندارد |
| پیام «مخزنی وصل نیست» | در یکپارچهسازیها مخزنی به پروژه وصل کنید |
| اجرا بیدرنگ شکست میخورد | کلید API یا شناسهٔ مدل اشتباه است، یا base_url برای ارورا قابل دسترسی نیست |
| MR ساخته نمیشود | توکن یکپارچهسازی روی مخزن دسترسی نوشتن ندارد |
| وصله بیربط به نظر میرسد | فریمها به کد کتابخانهها اشاره داشتهاند — مخزن درست را وصل کنید و مطمئن شوید سورسمپ/نسخه فریمها را به فایلهای خودتان میرساند |