docs: record AI growth coach operating contracts
This commit is contained in:
9
docs/GROWTH-COACH-SCHEDULER-CONTRACT.md
Normal file
9
docs/GROWTH-COACH-SCHEDULER-CONTRACT.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# Growth Coach Scheduler Contract
|
||||
|
||||
- `cmd/scheduler` یک سرویس خصوصی و مستقل از API/worker است و endpoint عمومی ندارد.
|
||||
- هر ساعت بیدار میشود؛ قبل از ساعت ۰۷:۰۰ تهران job روزانه نمیسازد.
|
||||
- گزارش روزانه برای هر پروفایل جاری، برنامه هفتگی در شنبه و برنامه ماهانه در روز اول ماه جلالی enqueue میشود.
|
||||
- fingerprint یکتای PostgreSQL از merchant، terminal، cadence، شروع دوره و profile version ساخته میشود؛ اجرای همزمان scheduler job تکراری ایجاد نمیکند.
|
||||
- scheduler فقط enqueue میکند. generation در worker انجام میشود و هر render صرفاً state ذخیرهشده را میخواند.
|
||||
- rollback با خاموشکردن `AI_COACH_ENABLED` انجام میشود؛ دادههای profile، plan و «قدمهای زرین» حفظ میشوند.
|
||||
- signals عملیاتی: queue age، generation latency، provider/validation failure، token/cost، stale plan و evaluation lag. prompt و متن profile نباید log شوند.
|
||||
11
docs/decisions/0004-ai-growth-coach-boundary.md
Normal file
11
docs/decisions/0004-ai-growth-coach-boundary.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# ADR 0004: مرز AI در مربی رشد
|
||||
|
||||
## تصمیم
|
||||
|
||||
AvalAI فقط توضیح فارسی، اولویتبندی و انتخاب یک metric و سطح اقدام از allowlist را انجام میدهد. محاسبه baseline، target، sample threshold، deadline، پیشرفت، تکمیل و تغییر سطح دشواری در موتور قطعی Go انجام میشود. مدل اجازه پذیرش، رد، تکمیل یا اجرای اقدام را ندارد.
|
||||
|
||||
حافظه هر درخواست از نسخه جاری پروفایل پایانه، برنامههای ذخیرهشده، ردها و نتایج ساخته میشود. provider memory خاموش و `store:false` است. پروفایل داده غیرقابلاعتماد محسوب میشود و دستورهای احتمالی داخل آن اجرا نمیشوند. داده تراکنش خام، payer key، secret و شناسههای داخلی وارد prompt یا log نمیشوند.
|
||||
|
||||
## پیامد عملیاتی
|
||||
|
||||
`AI_COACH_ENABLED` و `AI_PAGE_INSIGHTS_ENABLED` مستقلاند. production فقط با model، key و بودجه مثبت فعال میشود. outage برنامه معتبر قبلی و metricهای قطعی را حفظ میکند و failure را بهعنوان پاسخ تازه AI نمایش نمیدهد.
|
||||
7
docs/decisions/0005-payment-watermark-ingestion.md
Normal file
7
docs/decisions/0005-payment-watermark-ingestion.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# ADR 0005: قرارداد ورود داده و watermark
|
||||
|
||||
## تصمیم
|
||||
|
||||
مربی رشد به منبع خاصی از پرداخت وابسته نیست. importer فعلی پس از commit موفق، checksum نسخه داده را از طریق `PaymentUpdateListener` اعلام میکند. adapter آینده webhook یا API همین قرارداد را پیاده میکند و به منطق coach دست نمیزند.
|
||||
|
||||
هر ارزیابی metric با watermark یکتا در PostgreSQL ثبت میشود. اجرای تکراری idempotent است. وقتی داده ثابت باشد، محصول «آخرین داده موجود» را نمایش میدهد و پیشرفت یا completion شبیهسازی نمیکند.
|
||||
Reference in New Issue
Block a user