یک دستور اشتباه در راهنمای عملیاتی (Runbook) میتواند منجر به قطعی فاجعهبار کل یک سرویس شود. برای حل این بحران، در ۳ سپتامبر ۲۰۲۶ چارچوبی حاکمیتی معرفی شد که با ایجاد یک دفتر کل پیامدها (Consequence Ledger)، تضمین میکند هوش مصنوعی هرگز بهطور خاموش وارد حوزههای حساس و تحت مالکیت انسان نشود.
بیشتر مستندات تولیدشده توسط هوش مصنوعی زمانی شکست میخورند که مدل، قاعدهای یا رویهای را مینویسد که هیچ انسانی آن را در بستر واقعی بررسی نکرده است. یک مدل زبانی بزرگ (LLM) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب میدهد — شاید در نوشتن یک نمای کلی موفق باشد، اما نمیتوان به او اعتماد کرد تا دستوری برای بازگشت به حالت قبل (Rollback) بنویسد که هرگز در محیط آزمایشی (Staging Environment) تست نشده است. این شکاف باعث ایجاد ریسکی خاموش میشود؛ جایی که یک قانون حیاتی «نباید»، در میان گلولههای متنی (Bullet points) که شبیه اطلاعات پسزمینه به نظر میرسند، پنهان میشود. این چالش دقیقاً همان نقطهای است که بسیاری از راهنماهای بهترین شیوههای عاملهای هوش مصنوعی را به صرف یک «آرزو» تبدیل میکند، زیرا فاقد اتصال به واقعیت عملیاتی هستند.
طبق اعلام توسعهدهندگان این چارچوب، متریالهای مشاهدهای را میتوان از منابع عمومی استخراج و سپس با تستها، بررسی تفاوتها (Diffs) و ارجاعات تأییدشده (Allowlisted Citations) چک کرد. اما متون مربوط به تعهدات، راهنماهای فراخوانی (Paging Runbooks) و رویههای بازگشتناپذیر، مستقیماً رفتار اپراتورها را تحت فشار زمانی تغییر میدهند. همانطور که در تحلیلهای قبلی ما دربارهی امنیت مدلهای بازمتن اشاره کردیم، نبودِ کنترل روی خروجیهای حساس، بزرگترین نقطه ضعف استقرار AI است. در اینجا، کنترل مورد نیاز، ثبت دقیقِ آسیبی است که در صورت پیروی از یک جمله غلط در هر عنوان، رخ میدهد.
برای رفع این مشکل، این چارچوب تفکیکی سختگیرانه بین «متریال مشاهدهای» و «دستورات الزامآور» ایجاد میکند. مکانیزم کنترل از داخل پرامپت خارج شده و به یک فایل YAML منتقل میشود که تحت کنترل نسخه (Version-controlled) است و در خط لولههای یکپارچهسازی مداوم (CI) بهعنوان یک اعتبارسنج سخت برای تایید نهایی عمل میکند.
چهار کلاس پیامد
این سیستم هر عنوان در مستندات را بر اساس شدت آسیب احتمالی در صورت اشتباه بودن جملات، به یکی از چهار کلاس زیر تقسیم میکند. این تخصیص کاملاً بر اساس پیامد است، نه بر اساس عمق عنوان، لحن متن یا اینکه تولید آن بخش چقدر آسان به نظر میرسد. برای مثال، یک نمای کلی کوتاه که آستانهی هشدار (Paging Threshold) را ذکر میکند، همچنان در کلاس «تعهد» قرار میگیرد، در حالی که یک روایت طولانی درباره معماری که هرگز اپراتورها را متعهد نمیکند، میتواند در کلاس «مشاهده» باقی بماند.
- مشاهده (Observation): توصیف رفتارهای فعلی سیستم. خوانندگان میتوانند این موارد را با کد یا لاگها تطبیق دهند. آسیب در صورت خطا: سردرگمی و اتلاف وقت. مدلها میتوانند این متن را پیشنویس کنند، مشروط بر اینکه بازبینی شود.
- مرجع (Reference): جداول استخراجشده، لیست فیلدها و فلگها. اینها باید حتماً از طرحوارههای (Schemas) تأییدشده استخراج شوند. آسیب در صورت خطا: استفاده از پارامتر اشتباه. مدلها در صورتی که منبع تأیید شده و توسط مالک طرحواره امضا شده باشد، میتوانند این بخش را بنویسند.
- تعهد (Obligation): وعدهها، ممنوعیتها و اهداف سطح سرویس (SLOs). اینها سازمان ارائهدهنده را متعهد میکنند. آسیب در صورت خطا: نقض سیاست یا وعده داده شده. فقط انسانها مالک این متن هستند.
- اقدام (Action): دستورات، مراحل فراخوانی (Paging) و رویههای بازگشت. اینها وضعیت مشترک محیط تولید (Production State) را تغییر میدهند. آسیب در صورت خطا: تغییرات مخرب در محیط عملیاتی یا فراخوانیهای اشتباه. فقط انسانها مالک این متن هستند.
مکانیزم مالکیت
در این مدل، مدلهای هوش مصنوعی بهطور مطلق از پیشنویس کردن هر متنی زیر عناوین «تعهد» یا «اقدام» منع شدهاند. اگر عنوانی محتوای ترکیبی داشته باشد، باید به دو عنوان مجزا تقسیم شود یا پیش از هرگونه فراخوانی مدل، به مالکیت انسانی ارتقا یابد. این کار مانع از آن میشود که مدل بهطور خاموش از خط مالکیت عبور کند.
دفتر کل، تصمیم مربوط به هر مسیر عنوان (Heading Path)، از جمله نام مالک انسانی و فایلهای خاصی که مدل اجازه لمس آنها را دارد، ذخیره میکند. مالکان در اینجا شناسههای پرسنلی (Roster Identifiers) هستند، نه نام مدلها؛ وجود یک مالک خالی در مسیرهای تعهد یا اقدام، منجر به خطای سخت (Hard Error) میشود.
به نقل از مستندات فنی این سیستم، برای مسیری مانند «سرویسها / پرداخت / هدف در دسترس بودن»، کلاس روی obligate و مالک روی sre-checkout تنظیم میشود و گزینه allow_generate برابر با false قرار میگیرد. این روش بسیار قدرتمندتر از یک یادداشت در پرامپت است، زیرا اعتبارسنج اصلاً پرامپت را نمیخواند و مستقیماً با دفتر کل تطبیق میدهد.
پیادهسازی فنی و اعتبارسنجی
برای اجرای این قوانین، چارچوب از یک اعتبارسنج پایتونی (check_ownership.py) استفاده میکند که عناوین Markdown را پیمایش کرده و آنها را با دفتر کل مقایسه میکند. اعتبارسنج در موارد زیر بیلد (Build) را شکست میدهد:
۱. فایلهای تولیدشده حاوی مسیرهایی باشند که در کلاس obligate یا act طبقهبندی شدهاند.
۲. مسیری که در دفتر کل ثبت شده، در درخت مستندات وجود نداشته باشد (این مورد انحراف طرح کلی را پس از تغییر نام عناوین شناسایی میکند).
۳. یک مسیر تعهد یا اقدام، مالک انسانی نامبرده نداشته باشد.
فایلهای تولیدشده در پیشوند اختصاصی docs/generated/ و فایلهای مالکیت انسانی در docs/owned/ قرار میگیرند. این ساختار اجازه میدهد تا اعتبارسنج بدون نیاز به هش کردن تکتک پاراگرافها، روایتهای دستنویس را نادیده بگیرد. برای جلوگیری از جایگزینی تصادفی متون حساس، میتوان از مکانیزمهای هشبندی blob برای محافظت از روایتهای انسانی استفاده کرد تا از بازنویسی ناخواسته توسط AI جلوگیری شود.
گردش کار از طرح کلی تا ادغام
تیمها برای حفظ صحت دفتر کل بهعنوان منبع حقیقت (Source of Truth)، این مراحل شمارهگذاری شده را دنبال میکنند:
- تثبیت طرح کلی: تعیین مسیر عناوین و امتناع از تولید متن تا زمانی که هر مسیر یک ردیف در دفتر کل داشته باشد.
- طبقهبندی: تخصیص هر مسیر با استفاده از جدول پیامدها؛ در اینجا به جای میانگینگیری از ریسک، عناوین ترکیبی تقسیم میشوند.
- مسیریابی: ارسال مسیرهای مشاهده و مرجع به پوشه
docs/generated/به همراه منابع تأییدشده. - ایجاد جایگاه (Stub): رها کردن مسیرهای تعهد و اقدام بهعنوان جایگاههای خالی در
docs/owned/که فقط یک انسان نامبرده مجاز به پر کردن آنهاست. - اعتبارسنجی: اجرای اسکریپت مالکیت روی مرجع ادغام (Merge Ref). اگر فایلهای تولیدشده حاوی مسیرهای مالکیت انسانی باشند، عملیات شکست میخورد.
- تأیید: الزام مالک لیستشده به تأیید تغییراتی (Diffs) که فایلهای تعهد یا اقدام را لمس میکنند، حتی اگر مدل متنی در نزدیکی آنها تولید کرده باشد.
- تغییر طبقهبندی: ارتقای یک عنوان به سمت مالکیت انسانی پس از هر حادثهای که در آن اپراتورها از متن تولیدشده توسط AI پیروی کرده و دچار خطا شدهاند.
تغییر طبقهبندی فقط به سمت مالکیت انسانی حرکت میکند، مگر اینکه یک بازبینی مکتوب نشان دهد که آن عنوان دیگر هیچکس را متعهد نمیکند. کاهش رتبه از «اقدام» به «مشاهده» یک تصمیم محصولی است و نمیتواند در داخل یک جاب تولید متن رخ دهد.
یکپارچگی با ابزارهای AI
برای تیمهایی که از ابزارهایی مانند MonkeyCode استفاده میکنند، گردش کار مرحله تولید را از مرحله تأیید جدا میکند. دسترسی رایگان به مدلها در MonkeyCode فقط برای پیشنویسهای مشاهده و مرجع کاربرد دارد که دفتر کل آنها را به عنوان «قابل تولید» علامتگذاری کرده است. این ابزار با ایجاد گیتهای انسانی، توقف توهمات در مستندات فنی را بهصورت اتوماتیک مدیریت میکند. سرور رایگان این ابزار، مکانی فراهم میکند تا check_ownership.py در کنار تستهای مستندات اجرا شود، بدون اینکه متون مربوط به تعهدات وارد پرامپت مدل شوند.
در این فرآیند، جاب تولید فقط منابع تأییدشده را برای عناوین مرجع دریافت میکند. سپس مرحله تأیید، اسکریپت مالکیت را اجرا میکند؛ اگر شکست بخورد، سیستم پرامپت را تکرار نمیکند، بلکه از انسان میخواهد جایگاه خالی (Stub) را ویرایش کند. این محدودیت، هسته اصلی این متد است.
برای کمک به بازبینها جهت بررسی سریع تغییرات بدون باز کردن دفتر کل، فایلهای تولیدشده در ابتدا با برچسب کلاس مجاز خود، مثلاً <!-- consequence-class: reference --> علامتگذاری میشوند.
محدودیتهای حیاتی
این اعتبارسنج ثابت نمیکند که پیشنویسهای مشاهدهای از نظر واقعیت درست هستند؛ بلکه فقط ثابت میکند که آنها در مسیرهای مالکیت انسانی قرار نگرفتهاند. این سیستم جایگزین بررسیهای حقوقی، امنیتی یا تستهای اجرایی (Executable Example Harness) برای بلوکهای دستوری که در راهنماهای مالکیت انسانی ظاهر میشوند، نمیشود.
همچنین، اگر طبقهبندی اولیه در دفتر کل بیش از حد سهلانگارانه باشد، سیستم نمیتواند تعهدی را که در قالب متنی معمولی زیر عنوان «مشاهده» نوشته شده شناسایی کند. طبقهبندی غلط در دفتر کل، منجر به اجرای غلط قوانین میشود.
علاوه بر این، این چارچوب برای موارد زیر طراحی نشده است:
- صناعات تحت نظارت: رویههای پزشکی یا ایمنی که حتی بازنویسیهای مشاهدهای نیاز به تایید متخصص دارد.
- مستندات ساده: فایلهای README تکنفره که هیچ پیامد عملیاتی یا فراخوانی اپراتور ندارند.
- محتوای بدون مالک: سناریوهایی که هیچ انسانی مسئولیت جایگاههای خالی (Stub) را نمیپذیرد، زیرا مالک خالی بدتر از یک راهنمای عملیاتی صادقانه اما مستندنشده است.
بزرگترین نقطه شکست، «انحراف طرح کلی» (Outline Drift) است. تغییر نام یک عنوان والد، برابری مسیرها را میشکند و بیلد را متوقف میکند؛ این یک انتخاب طراحی است تا انسان را مجبور به بررسی ساختار کند. دفتر کل باید در همان Pull Request که طرح کلی تغییر میکند بازبینی شود، نه در یک پاکسازی بعدی. اگر یک جدول مرجع تولیدشده همچنان بتواند باعث فراخوانی (Page) یک اپراتور شود، یعنی عنوان اشتباه طبقهبندی شده و متعلق به کلاس «اقدام» است.
این چرخش، صنعت را از «امید به اینکه پرامپت به یاد داشته باشد» به سمت یک قرارداد در سطح مخزن (Repository) میبرد. با مرئی کردن شکاف بین تأیید و تعهد در کد، سازمانها میتوانند مستندات AI را بدون به خطر انداختن پایداری محیط تولید مقیاس کنند.
گام بعدی شما
- بررسی ساختار فایلهای YAML برای تعریف مالکیت در پروژههای مستندسازی خود.
- جداسازی پوشههای
generatedوownedدر مخزن مستندات برای جلوگیری از تداخل. - پیادهسازی یک اسکریپت ساده برای تطبیق عناوین Markdown با یک لیست دسترسی (Allowlist).
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو