ساشا لوین از انویدیا، که شاخههای هسته LTS را نگهداری میکند Linux و عضو هیئت مشاوران سازمان Linux بنیاد مجموعهای از قوانین و مستندات را برای بحث توسعهدهندگان منتشر کرده است که دستیاران هوش مصنوعی باید هنگام ایجاد تغییرات در هسته، آنها را در نظر بگیرند. Linux. Ссылки на инструкции отмечены в файлах конфигурации, подготовленных для AI-платформ Claude, GitHub Copilot, Cursor, Codeium, Continue, Windsurf и Aider.
اصول کلیدی زیر برای هوش مصنوعی شناسایی شدهاند:
- قبل از اعمال تغییرات، باید مستندات را مطالعه کرده و الزامات ذکر شده در آن را رعایت کنید.
- الزامات مربوط به سبک و قالببندی کد هسته باید رعایت شود.
- قبل از ارسال تغییر، باید آن را به طور کامل آزمایش کرد.
- این کد باید با یک پیام واضح و جامع که تغییر را شرح میدهد، همراه باشد.
- تغییرات نباید عملکرد اجزای فضای کاربر را مختل کنند.
- این تغییر باید به هوش مصنوعی نسبت داده شود، نه فقط به توسعهدهندهای که از دستیار هوش مصنوعی استفاده کرده است.
برای برجسته کردن تغییرات ایجاد شده با استفاده از هوش مصنوعی، لازم است که کامیت با برچسب "همکاری توسعهیافته توسط: $AI_NAME $AI_MODEL $AI_VERSION" مشخص شود. برای مثال: "همکاری توسعهیافته توسط: Claude claude-3-opus-20240229"، "همکاری توسعهیافته توسط: GitHub-Copilot GPT-4 v1.0.0" و "همکاری توسعهیافته توسط: Cursor gpt-4-turbo-2024-04-09". در عین حال، دستیار هوش مصنوعی نباید خود را به برچسب "امضا شده توسط" اضافه کند. این برچسب فقط باید توسط یک انسان اضافه شود تا تأیید قانونی قابل توجهی از حق انتقال کد تحت مجوز باز ارائه دهد.
مستنداتی که دستیار هوش مصنوعی باید در نظر بگیرد:
- راهنمایی برای تبدیل شدن به یک توسعهدهنده هسته.
- اطلاعات مربوط به فرآیند توسعه هسته.
- راهنمایی برای افزودن کد به هسته.
- چک لیستی از مواردی که باید قبل از ارسال کد به هسته بررسی شوند.
- الزامات مربوط به سبک و قالببندی کد (استفاده از تبها برای ترازبندی، حداکثر ۸۰ کاراکتر در هر خط، قوانین جداگانه برای قالببندی توابع و عبارات شرطی).
- الزامات زبانها و استانداردهای برنامهنویسی
- ممنوعیت استفاده از رابطها و قابلیتهای نرمافزاری منسوخشده.
- قوانینی برای ارسال وصلهها برای گنجاندن در هسته.
- تنظیمات کلاینت ایمیل برای ارسال پچها.
- قوانین پذیرش پچها
- قوانین صدور مجوز کد هسته (مجوز GPL-2.0 با استثنائاتی برای فراخوانیهای سیستمی، وجود شناسههای مجوز SPDX در هر فایل).
- دستورالعملهایی برای افزودن یک فراخوانی سیستمی جدید.
- قوانینی برای ارسال وصلهها به شاخههای پایدار هسته.
- رسیدگی به مسائل امنیتی.
- اقدامات هنگام شناسایی رگرسیونها
- راهنمای تعامل با افراد همراه.
- دستورالعملهای خاص زیرسیستم
منبع: opennet.ru
