کدنویسی با هوش مصنوعی
نوشتن و بازنویسی کد داخل یک محیط کامل دسکتاپ — نه پنجرهٔ گفتگویی که پروژه را نمیبیند.
ایبان ویرایشگر بومی، اکسپلورر، جستجو، کنترل منبع و ترمینال را با ایجنت ابری کدنویسی کنار هم میگذارد. تکمیل کد، گفتگو و ویرایش چندفایلی همانجایی هستند که کار میکنید. ایجنت میتواند درخت فایل را بخواند و جستجو کند، پچ اعمال کند، در صورت اجازه دستور شل و git اجرا کند و از ابزارهای مرتبط با LSP استفاده کند.
پیشنهادها تغییراتی خوانا هستند. سطح دسترسی (Ask / Allow safe / Allow all) تعیین میکند کدام ابزارها اجرا شوند.
41 def charge(order, wallet): 42 tax = order.subtotal * 0.09 43 total = order.subtotal + tax 44 if wallet.balance < total: 45 raise InsufficientFunds(total) 46 wallet.debit(total) 47 return Receipt(order.id, total)
مالیات منطقهای را از نرخ ثابت جدا کن و قبل از debit موجودی را درست چک کن.
۶ فایل خوانده شد · ۲ جستجو · ۱ تست
charge هنوز ۰٫۰۹ را سخت گذاشته. tax_for(region) هست. can_cover را به کیف وصل میکنم.
پچ ۱۲ خطی روی دو فایل. دیف را ببینید.
قبل از دستزدن به checkout، رویکرد مالیات چندمنطقهای را بنویس.
Plan · شل و ویرایش محصول محدود است
اول قرارداد tax_for را ثابت میکنم، بعد charge را عوض میکنم، بعد test_charge.
برنامه آماده است. وقتی تأیید کردید به Agent برمیگردم.
charge از کجا مالیات میگیرد و کدام تست آن را قفل کرده؟
Ask · فقط خواندن
نرخ در checkout.py:42 است. test_charge همان ۰٫۰۹ را assert میکند.
چیزی نوشته نشد.
InsufficientFunds برای سفارش معاف از مالیات هم بالا میآید. اول شواهد.
Debug · بازتولید قبل از فیکس
شکست وقتی region معاف است و wallet.can_cover هنوز نرخ ثابت را میبیند.
رد شکست آماده است. اصلاح را بعد از تأیید مینویسم.
- tax = order.subtotal * 0.09 + tax = order.tax_for(region) - if wallet.balance < total: + if not wallet.can_cover(total, region): wallet.debit(total)