یک درصد اشتباه در نرخ پایداری (Uptime) که توسط هوش مصنوعی در یک مرجع API عمومی ابداع شده باشد، میتواند برای یک شرکت مسئولیت حقوقی الزامآوری ایجاد کند. برای حل این بحران، شرکت MonkeyCode در ۴ سپتامبر ۲۰۲۶ راهکاری مکانیکی به نام «دفتر کل مالکیت مسیرها» (Path Ownership Ledger) را پیشنهاد داد تا مدلهای هوش مصنوعی را از اختراع وعدههای محصول بازدارد.
بسیاری از تیمها با تولید مستندات توسط هوش مصنوعی، تنها با آن به عنوان یک مسئلهی نثر برخورد میکنند و روی لحن و گرامر تمرکز میکنند. اما خطر واقعی در «کامل بودن» (Completeness) است، نه دستور زبان. اکثر صفحات تولید شده به این دلیل کامل به نظر میرسند که تیترها، جداول و مثالها به طور همزمان ارائه میشوند. خطر دقیقاً در همین کامل بودن نهفته است: مدل سلولهای خالی را با اعداد احتمالی برای نرخ پایداری، ساعات پشتیبانی و ادعاهای سازگاری پر میکند. در حالی که بازبینها روی لحن متن بحث میکنند، یک توافقنامه سطح خدمات (SLA) ساختگی در درخت مستندات منتشر شده باقی میماند.
این حالت شکست شبیه به گردشکارهای عاملمحور (Agentic) است که مدام فرضهایی را در مورد حقایقی میسازند که اپراتور هرگز در اختیار آنها قرار نداده است. این رفتار با یافتههای اخیر همسو است که نشان میدهد عاملهای هوش مصنوعی در بسیاری از انتقالها محدودیتهای سخت را نادیده میگیرند. تولیدکنندگان مستندات نیز زمانی که یک بخش خروجی پراکنده یا ناقص به نظر میرسد، همین رفتار را نشان میدهند. راهکار این مشکل، نوشتن پرامپتهای سیستم طولانیتر نیست، بلکه ایجاد مالکیت مکانیکی است. با تعریف هر فایل خروجی به عنوان «قابل پیشنویس توسط مدل»، «رزرو شده برای انسان» یا «فقط پیشنهادی» تا زمانی که یک شخص آن را ارتقاء دهد، شرکتها میتوانند حصاری دور تعهدات قانونی و سیاستهای خود بکشند.
همانطور که در تحلیلهای پیشین ما دربارهی امنیت مدلهای بازمتن اشاره کردیم، اعتماد کورکورانه به خروجی مدل بدون لایههای اعتبارسنجی زیرساختی، بزرگترین ریسک استقرار AI است. این رویکرد در واقع تکامل یافتهی استراتژی تفکیک متون انسانی از ماشینی است که پیشتر برای حذف خطاهای مستندسازی پیشنهاد شده بود.
مکانیسم دفتر کل
مرکز این سیستم یک دفتر کل مبتنی بر YAML است که مستقیماً در درخت مستندات ذخیره میشود تا بازبینی در همان Pull Request رخ دهد. این دفتر کل کیفیت نثر را نمیسنجد؛ بلکه برخی مسیرها و ساختارهای جملاتی را از خروج از حالت پیشنویس منع میکند. طبق مستندات MonkeyCode، سه نقش متمایز تعریف شده است:
- model_may_draft: مسیرهایی که هوش مصنوعی میتواند محتوا را از آرتیفکتهای مخزن بازیابی کند (مانند
docs/reference/cli/**،docs/reference/api/**وdocs/generated/**). - human_must_own: مسیرهای رزرو شده برای زبان قراردادی، مانند SLAها، قیمتگذاری و گواهینامههای امنیتی (مانند
docs/legal/**،docs/support/sla.md،docs/incidents/**وCHANGELOG.md). - model_may_propose: محیطی برای پیشنویسهای روایتی که پیش از انتقال به یک مسیر رزرو شده، نیاز به تایید انسانی دارند (مانند
docs/drafts/narrative/**).
سطوح قابل بازیابی در برابر تعهدات
بر اساس چارچوب MonkeyCode، یک مدل تنها باید متونی را بنویسد که از یک آرتیفکت مخزن قابل بازیابی باشند، بدون اینکه وعدهای جدید اضافه کند. سطوح قابل بازیابی شامل موارد زیر است:
- جداول فلگهای CLI
- لیست فیلدهای OpenAPI
- کاتالوگ کلیدهای پیکربندی
- شاخص کدهای خطا
این صفحات باید به یک ورودی تولیدکننده ارجاع دهند، مانند یک فایل Schema، خروجی دستور --help یا یک بلوک کامنت در سورس کد. اگر آرتیفکت ورودی ناپدید شود، صفحه باید در خط لوله CI با خطا مواجه شود، نه اینکه با کلمات ابداعی دیروز باقی بماند. این امر تضمین میکند که مستندات بازتابی از کد باشند، نه حافظهی مدل از آخرین دورهی آموزش.
مدل همچنین میتواند «چسب ساختاری» (Structural Glue) را بنویسد؛ این شامل ترتیب بخشها، لینکهای متقاطع میان صفحات مرجع و توصیفات کوتاهی است که شناسههای موجود در کد را بازگو میکنند. با این حال، این چسبها همچنان در حالت پیشنویس هستند و نباید تضمینهای محصول، موضع حقوقی یا زبان مربوط به تحلیل ریشهای خطا را معرفی کنند. فایلهای تولید شده باید برچسبگذاری شوند تا در Diffهای بعدی، مرز ماشین بدون نیاز به خواندن کل Commit مشخص باشد.
در مقابل، انسان باید مالک هر جملهای باشد که حتی اگر کد صحیح بود، باز هم میتوانست غلط باشد. این ادعاها قراردادی هستند، نه مستنداتی، و با بازنویسی کد (Refactor) از بین نمیروند. این مجموعه شامل موارد زیر است:
- اعداد مربوط به پایداری (Uptime)، RTO، RPO یا ساعات پشتیبانی
- قیمتگذاری، بستهبندی و اعطای مجوزها
- وضعیت گواهینامههای امنیتی و حسابرسی (مانند SOC 2 یا ISO 27001)
- خط زمانی حوادث و تحلیل ریشهای (Root-cause analysis)
- تقویمهای بازنشستگی (Deprecation) الزامآور برای مشتری
- بیانیههای سازگاری که نام محصولات شخص ثالث را میبرند
- هر ساختاری که با «ما تضمین میکنیم» (we guarantee) آغاز شود
- روایتهای مربوط به «دیدگاه ما درباره X»
جدول تصمیمگیری درخت مستندات
برای شفافیت در این مرزها، این چارچوب از یک جدول تصمیم به عنوان یک قرارداد استفاده میکند، نه یک راهنمای سبک:
| خانواده ادعا | پیشنویس توسط مدل | مالکیت انسانی | فایل پیشنهادی مجاز |
|---|---|---|---|
| لیست شناسهها از schema/--help | بله | فقط بازبینی | اختیاری |
| انواع پارامترها/پیشفرضها در کد | بله | فقط بازبینی | اختیاری |
| لینکهای متقاطع صفحات مرجع | بله | فقط بازبینی | اختیاری |
| پایداری، RTO، RPO، ساعات پشتیبانی | خیر | بله | خیر |
| قیمتگذاری، بستهها، اعطای مجوز | خیر | بله | خیر |
| گواهینامههای امنیتی/وضعیت حسابرسی | خیر | بله | خیر |
| خط زمانی حادثه/ریشه خطا | خیر | بله | خیر |
| تاریخهای بازنشستگی الزامآور | خیر | بله | خیر |
| روایت «دیدگاه ما درباره X» | خیر | بله | بله (هرگز ادغام خودکار نمیشود) |
خط لوله اعتبارسنجی CI
برای اجرای این مرزها، این چارچوب از دو اعتبارسنج پایتونی در خط لوله CI استفاده میکند. اولی، validate_docs_ownership.py بررسی میکند که هر فایل تولید شده دارای یک هدر اجباری باشد که نقش و منبع ورودی آن را اعلام کند. نبود این هدر یک شکست (Failure) است، نه یک هشدار، زیرا نثر بدون برچسب در آینده شبیه به نوشتههای انسانی به نظر میرسد.
مثال هدر: <!-- docs-ownership: model_may_draft input=openapi.yaml -->
هر فایلی در یک مسیر رزرو شده که حاوی هدر «generated» باشد، باعث شکست فوری Build میشود. اعتبارسنج تضمین میکند که اگر فایلی model_may_draft علامتگذاری شده است، باید شامل ویژگی input= باشد. اگر فایلی model_may_propose باشد، نباید بدون برچسب مالک از درخت رزرو شده خارج شود.
ابزار دوم، scan_reserved_phrases.py به عنوان یک تور ایمنی برای «نشت سیاستها» (Policy Leaks) عمل میکند. مالکیت مسیر ضروری است اما کافی نیست؛ یک مدل میتواند سیاستهای حساس را در قالب یک جمله حقوقی در داخل یک مرجع CLI نشت دهد. این اسکنر به دنبال الگوهای ممنوعهای میگردد که تقریباً هرگز نباید در متون مرجع بازیابی شده باشند، از جمله:
- درصدهای پایداری (مانند
99.9%،99.99%یا99.999%) - کلمات اختصاری مانند
SLA،RTOیاRPO - عباراتی مانند «ما تضمین میکنیم» یا «ما مطابق با HIPAA هستیم»
- گواهینامههایی مانند
SOC 2یاISO 27001 - شرایط پشتیبانی مانند
24/7 - عباراتی مانند «ریشه خطا» (root cause)
یافتن این موارد لزوماً به معنای ریسک حقوقی نیست، اما ثابت میکند که پیشنویس از سطح قابل بازیابی خارج شده است. راهکار اصلاحی این است که جمله به یک صفحه تحت مالکیت انسان منتقل شود یا حذف گردد؛ نباید درصد یک SLA را در یک مرجع CLI فقط برای عبور از اسکنر «نرم» کرد.
گردشکار ارتقاء
ارتقاء به عنوان یک اقدام بازبینی (Review Action) در نظر گرفته میشود، نه یک ادغام (Merge) ساده. یک فایل پیشنهادی در پوشه docs/drafts/ یک صفحه زنده نیست. این فایل تنها زمانی به صفحه تبدیل میشود که یک بازبین نامبرده برچسبی مانند docs-owned-by:@reviewer را اضافه کند و اعتبارسنج تأیید کند که ارتقاء مجاز است. ادغام خودکار فایلهای پیشنهادی در مسیرهای رزرو شده، حتی اگر نثر دقیق به نظر برسد، یک باگ در فرآیند محسوب میشود.
توالی کامل بازتولید باید چنین باشد:
۱. تثبیت فایل مالکیت در شاخه پیشفرض.
۲. جمعآوری ورودیهای تولیدکننده (Schemaها، خروجی دستورات، بلوکهای کامنت) بدون روایت انسانی.
۳. اجرای شغل پیشنویس فقط روی الگوهای (Globs) model_may_draft یا model_may_propose.
۴. مهر زدن هر خروجی با هدر docs-ownership که نام آرتیفکت ورودی را ذکر میکند.
۵. رد فایلهایی که نقش هدر با الگوی مسیر مطابقت ندارد.
۶. اسکن متن پیشنویس برای عبارات رزرو شده.
۷. باز کردن یک PR شامل پیشنویسها و گزارش اسکن، بدون هیچ تغییری در مسیرهای human_must_own مگر توسط انسان.
۸. ارتقاء فایلهای پیشنهادی تنها با برچسب بازبینی.
برای تیمهایی که به دنبال یک چرخه ارزان برای بازتولید صفحات مرجع هستند، دسترسی رایگان MonkeyCode به مدلها و گزینه سرور رایگان میتواند میزبان شغل «پیشنویس و اعتبارسنجی» باشد. با این حال، دفتر کل و اعتبارسنج باید در مخزن باقی بمانند تا بررسیها حتی در صورت تغییر میزبان پیشنویس، تداوم یابند.
محدودیتها و موارد خاص
این دفتر کل یک ابزار هماهنگی است، نه یک تضمین رمزنگاری شده. این سیستم نمیتواند «معنا» را ببیند؛ یک مدل میتواند یک سیاست پشتیبانی را با استفاده از کلماتی ابداع کند که از اسکن Regex عبور کنند. علاوه بر این، اسکن عبارات با تغییر کپیهای بازاریابی تغییر میکند و نیازمند آن است که مالکان، الگوها را هنگام ظهور واژگان جدید در وعدههای محصول بازبینی کنند.
سایر محدودیتهای فنی عبارتند از:
- جعل هدر: مهرهای هدر میتوانند توسط هر کامیتکنندهای جعل شوند.
- تداخل الگوها: فایلی که هم با
human_must_ownو هم باmodel_may_draftمطابقت داشته باشد، به صورت محافظهکارانه به عنوان رزرو شده در نظر گرفته میشود. - پیچیدگی: محصولات تودرتو با درختهای مختلط به لیستهای الگوی طولانیتر و تستهای تطبیقدهنده نیاز دارند.
- انواع فایل: این گردشکار فرض را بر Markdown میگذارد؛ اسکرینشاتهای باینری یا HTMLهای تولید شده به قوانین جداگانهای نیاز دارند.
این رویکرد برای تیمهایی که مستنداتشان کاملاً توسط انسان نوشته شده، مجموعههایی که هر سیلاب آن تحت نظارت مشاوران حقوقی خارجی است، یا ویکیهایی بدون گیتهای Pull Request است، ضروری نیست. همچنین برای یادداشتهای داخلی سریع، بیش از حد پیچیده (Overkill) است.
این تغییر در شیوه مستندسازی، صنعت را از «مهندسی پرامپت» برای دقت، به سمت «مهندسی زیرساخت» برای حقیقت سوق میدهد. با تبدیل مستندات به مجموعهای از مسیرهای دارای مالک، شرکتها میتوانند بدون افزایش ریسک حقوقی، مقیاس مستندات مرجع خود را افزایش دهند. برای پیادهسازی این روش، تیمها باید ابتدا فایل مالکیت خود را در شاخه پیشفرض تثبیت کنند و اسکنر عبارات را برای یک هفته روی یک درخت مرجع اجرا کنند تا نرخ مثبت کاذب را پیش از اجرای کامل بسنجند.
گام بعدی شما
- فایل مالکیت مسیرهای مستندات خود را در شاخه اصلی تثبیت کنید.
- اسکنر عبارات رزرو شده را برای یک هفته روی یک درخت مرجع اجرا کنید تا نرخ مثبت کاذب را بسنجید.
- مسیرهای حساس حقوقی (SLA و قیمت) را فوراً به حالت
human_must_ownمنتقل کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو