
Cotton
Translation workflow
تحويل الترجمات المولَّدة إلى نتائج قابلة للمراجعة.
سير عمل لترجمة حوارات الألعاب.
Cotton vocabulary
- prompt layers
- glossary
- generation
- revision
- judge
- hard gate
- score
- intake
- checkpoint
- spend control
- stale sweep
- approval
- correction
- audit trail
Prompt Layers: SYSTEM_PROMPT_L0 · buildTranslateUserMessage · L1 CONTRACT · L3 SPEAKER · L6 SOURCE · L7 INSTRUCTION · ICU PLACEHOLDER · INLINE TAG · TARGET TEXT ONLY · FORCED MAPPING · L2 GLOSSARY · speaker_keyGlossary: glossary_term · fetchGlossaryHits · canonical_form · forbidden_translations · SUBSTRING MATCH · FORCED MAPPING · FORBIDDEN ALTERNATIVE · L2 GLOSSARY · glossary_hits · glossary_complianceGeneration: AdapterRegistry · anthropic-sdk · openai-sdk · claude-local · codex-local · llm_plan · PIVOT_VIA · shouldPivot · COTTON_ADAPTER_CONCURRENCY · NODE_OPTIONS · pivot_register_carry · translation.refinedRevision: buildTranslateUserMessage · L7 INSTRUCTION · runRefinementLoop · priorAttempt · priorCritique · REJECTED BY THE JUDGE · maxTurns · willRetry · RefinementHooks · HOOK ABORT · turn_count_to_final · critique_for_retry · failingDimensions · cost_ceiling_usd · needs_reviewJudge: glossary_hits · runJudge · JUDGE_SYSTEM_PROMPT · judgeModel · TEMPERATURE 0 · parseJudgeResponse · FOUR-SECTION XML · VERBATIM CHUNKS · severity · critique_for_retry · judge_citation · missingHardGates · TRIGGER ABSENT = PASS · judge.scoredHard Gate: ICU PLACEHOLDER · INLINE TAG · FORBIDDEN ALTERNATIVE · hard_gate_fail · hardGatePassed · glossary_compliance · cps_budget_compliant · icu_validity · inline_tag_preserved · length_constraint · HARD GATE FIRST · missingHardGates · TRIGGER ABSENT = PASSScore: HARD GATE FIRST · computeVerdict · cottonEvalScore · WEIGHTED AVERAGE · tone_register · personality_consistent · emotional_state_match · cultural_marker_preserved · accuracy · pivot_register_carry · auto_approve_threshold · failingDimensions · approval_gate · judge.scoredIntake: processXlsxBytes · classifySheetName · parseGoogleSheetsUrl · source_file · content_sha256 · extractStageDirection · speaker_key · ingest_session · segment.ingested · github.push.receivedCheckpoint: translation_progress · last_completed_step · turn_translated · turn_judged · finalized · jobEntryGuard · SELECT FOR UPDATE · attempt_count · DEFAULT_MAX_RESUME_ATTEMPTS · TWO-TX SPLIT · ON CONFLICT DO NOTHINGSpend Control: llm_plan · costCap · cost_ceiling_usd · rateLimit · FailoverDispatcher · haltOnQuota · detectQuotaFromStream · quota_daily_exhausted · auth_revoked · NO AUTO-SWAP · needs_credential · POST /:id/resumeStale Sweep: COTTON_ADAPTER_CONCURRENCY · NODE_OPTIONS · attempt_count · runStaleSweep · STALE_THRESHOLD_INTERVAL · DLQ_ATTEMPT_CAP · LIMIT 200 · re_enqueued · dead_lettered · ORPHAN RE-ENQUEUE · IN-FLIGHT SET · /health/queues · maxStalledCount · needs_reviewApproval: auto_approve_threshold · ingest_session · SELECT FOR UPDATE · needs_credential · POST /:id/resume · POST /:id/approve · POST /:id/unapprove · POST /:id/reject · APPROVE_FROM · REJECT_FROM · needs_review · reviewer_id · HITL · approval_gate · translation.approved · EDIT & APPROVE · actor_idCorrection: POST /:id/correct · corrected_text · CORRECT_FROM · EDIT & APPROVE · human_corrected_segments · human-corrected-after-mt · translation.human_corrected · supersedes · NEW REVISION · IMMUTABLE HISTORYAudit Trail: turn_count_to_final · severity · judge_citation · content_sha256 · segment.ingested · github.push.received · translation.approved · human_corrected_segments · translation.human_corrected · IMMUTABLE HISTORY · event_log · appendNextEvent · ULID · AGGREGATE VERSION · translation_state_log · actor_id · llm_call_log · telemetryHook · judge.scored · translation.refined
الدرجات وإعادات المحاولة والمراجعة البشرية، كلٌّ عند حده.
يتشارك التوليد والحكم المسرد، ولا يمكن لمتوسط الدرجات أن يعوّض إخفاق hard gate الذي يُبلغ عنه نموذج الحَكَم. وتُسجَّل الحالات الوسيطة للترجمة والحكم، وتُفصل حدود إعادة المحاولة والتكلفة عن نفاد بيانات الاعتماد، وتعود المهام المتعثرة إلى الطابور أو إلى المراجعة بحسب السبب.
يربط مشروع العمل هذا توليد الترجمة وحكم الجودة الذي يُبلغ عنه النموذج وإعادات المحاولة والمراجعة البشرية في مسار واحد.
من بداية المستودع حتى العمل الذي تأكد خلال فترة المشاركة
تطبيق ويب من شاشات تحرير الترجمة والموافقة عليها، وAPI، وworker للمهام، يعمل في بيئة التطوير.
التسجيل → الدخول
تُوضع في الطابور بعد إيداع قاعدة البيانات، ويقفل worker الصف ويفحص المحاولة وينشئ draft.
المصدر · اللغات المستهدفةبيانات: المصدرالإدراج في الطابور بعد الإيداع
API · تسجيل المهامتُخزَّن مقاطع المصدر واللغات المستهدفة للمشروع في قاعدة البيانات. ولا تُعرض بيانات العملاء.
الإدراج في الطابور بعد الإيداع
API · تسجيل المهامبيانات: بعد الإيداعBullMQ · معرّف المهمةطابور المهامبعد إيداع قاعدة البيانات، توضع في الطابور مهمة بمعرّف محدد بنطاق الطلب لكل لغة مستهدفة نشطة. وإذا فشل الإدراج في الطابور، يُسجَّل تحذير فقط ولا يُتراجع عن الإيداع (لا outbox ذرّي)، ولهذا يوجد مسح المهام الراكدة.
BullMQ · معرّف المهمة
طابور المهامتشغيل · حكم: تسليم المهمةقفل الصف · فحص المحاولةدخول المهمةيسلّم BullMQ المهمة إلى worker بشكل غير متزامن.
قفل الصف · فحص المحاولة
دخول المهمةبيانات: صف التقدمdraft · التقدمحالة الترجمةداخل معاملة يُقفل صف التقدم وتُنشأ ترجمة draft. وتُتخطّى إعادات المحاولة التلقائية للمهام المثبَّتة أو المتوقفة بسبب بيانات الاعتماد، وتُعالج الطلبات اليدوية على حدة.
قفل الصف · فحص المحاولة
دخول المهمةتشغيل · حكم: المحاولة مسموحةالتوليد · استدعاء النموذجدور الترجمةيزيد عدد المحاولات واحدًا ضمن حده، ثم يبدأ دور الترجمة.
التوليد → الحكم → التثبيت
يستخدم التوليد والحكم المسرد نفسه، وتُسجَّل الترجمة والحكم على حدة، وتجمّع الشيفرة الحكم قبل التثبيت.
مسرد مساحة العمل
المسرد · السياقبيانات: المسردالتوليد · استدعاء النموذجدور الترجمةيُبحث عن مسرد مساحة العمل وسياقها ويُمرَّران إلى التوليد.
مسرد مساحة العمل
المسرد · السياقبيانات: المسرد نفسهاستدعاء نموذج الحَكَم · التحليلدور الترجمةيحصل الحكم على قيود المسرد نفسها.
التوليد · استدعاء النموذج
دور الترجمةبيانات: Tx1 · الترجمةصفوف الترجمة · الحكمحالة الترجمةيُستدعى النموذج مباشرة أو عبر لغة وسيطة en-US، ويُكتب الاستدعاء والحدث والتقدم في معاملة واحدة. وإذا عادت المهمة إلى العمل بعد انهيار، فقد يتكرر استدعاء الترجمة وتكلفته.
استدعاء نموذج الحَكَم · التحليل
دور الترجمةبيانات: Tx2 · الحكمصفوف الترجمة · الحكمحالة الترجمةتُدرج درجات الحَكَم وأدلته مرة واحدة لكل ترجمة ودور، والمكرر يجد الصف القائم، ولا تُكتب الاستشهادات إلا عند الإدراج الأول. وليست المعاملة نفسها التي للترجمة.
استدعاء نموذج الحَكَم · التحليل
دور الترجمةبيانات: الدرجات · البواباتhard gate · المتوسط الموزونقواعد الحكمتُحلَّل إجابة نموذج الحَكَم إلى درجات لكل بُعد ونتائج للبوابات. ونجاح المسرد من عدمه هو ما يُبلغ عنه نموذج الحَكَم.
hard gate · المتوسط الموزون
قواعد الحكمتشغيل · حكم: الحكمالأدوار · التكلفة · الحصةإعادة المحاولة · الإنفاقأي إخفاق مُبلَّغ عنه في hard gate يعني صفرًا وإخفاقًا، وبعدها فقط يُطبَّق المتوسط الموزون وعتبات كل بُعد. والعتبة الإجمالية 8.0 قيمة افتراضية في الإعداد، لا جودة ترجمة مرصودة.
الأدوار · التكلفة · الحصة
إعادة المحاولة · الإنفاقتشغيل · حكم: passالمعاملة النهائيةالتثبيتيُثبَّت النجاح بحالة translated.
المعاملة النهائية
التثبيتبيانات: السجل النهائيالحالة · سجل الاستدعاءاتحالة الترجمةتُثبَّت المرشحة والحالة والدرجة والأدوار، ويُكتب التقدم finalized مع سجل الحالة في معاملة واحدة. ولا يُصدر حدث اكتمال الترجمة إلا لحالة translated.
إعادة المحاولة · حدود الإنفاق
عدم النجاح يعني دورًا آخر، والحد يعني المراجعة البشرية، والحصة أو المصادقة توقف الإنفاق وتنتظر استئناف المشغّل.
hard gate · المتوسط الموزون
قواعد الحكمتشغيل · حكم: الحكمالأدوار · التكلفة · الحصةإعادة المحاولة · الإنفاقأي إخفاق مُبلَّغ عنه في hard gate يعني صفرًا وإخفاقًا، وبعدها فقط يُطبَّق المتوسط الموزون وعتبات كل بُعد. والعتبة الإجمالية 8.0 قيمة افتراضية في الإعداد، لا جودة ترجمة مرصودة.
الأدوار · التكلفة · الحصة
إعادة المحاولة · الإنفاقتشغيل · حكم: الدور التاليالتوليد · استدعاء النموذجدور الترجمةتُولَّد الترجمة التي لا تنجح مجددًا مع الترجمة السابقة والـ critique. وحتى إخفاق hard gate يمكن إعادة محاولته أولًا بدل الذهاب مباشرة إلى شخص.
الأدوار · التكلفة · الحصة
إعادة المحاولة · الإنفاقتشغيل · حكم: الحد · الإلغاءالمراجعة البشريةحين تنفد الأدوار أو يُبلغ سقف التكلفة، تُثبَّت المهمة بحالة needs_review. والتثبيت يعني انتهاء المعالجة، لا أن شخصًا وافق عليها.
الأدوار · التكلفة · الحصة
إعادة المحاولة · الإنفاقإخفاق · حد: الحصة · المصادقةفحص بيانات الاعتمادتوقف إشارة الحصة أو المصادقة الإنفاق وتضبط needs_credential. ولا يوجد تحويل تلقائي إلى حساب أو مزوّد آخر. وتعود أخطاء النقل التي لا تحمل إشارة إيقاف إلى إعادة المحاولة في BullMQ.
فحص بيانات الاعتمادتشغيل · حكم: الاستئناف اليدويBullMQ · معرّف المهمة
طابور المهاميعيد المشغّل الذي فحص بيانات الاعتماد التشغيل صراحةً.
استعادة المهام الراكدة
تُقسَم مسوّدات draft القديمة بحسب السبب: الغياب عن الطابور يعني الإعادة إليه، واستنفاد المحاولات يعني قرارًا بشريًا.
draft · التقدم
حالة الترجمةملاحظة · إبلاغ: draft راكدdraft أقدم من 10 دقائق · 200 كحد أقصىمسح المهام الراكدةتُقرأ حتى 200 مرشحة بقيت draft أكثر من 10 دقائق، الأقدم أولًا. ولا يأخذ الاستعلام قفلًا، وتجري التحديثات والسجلات في عبارات منفصلة، لذا لا يُوصف هذا بأنه دفعة خالية من التسابق.
draft أقدم من 10 دقائق · 200 كحد أقصى
مسح المهام الراكدةتشغيل · حكم: دون الحدمقارنة حالة الطابورفحص الطابورحين تكون المحاولات أقل من الحد (3)، تُقارن المهمة بحالات الطابور active وwaiting وdelayed وprioritized. وفي الشيفرة يأتي فرع المحاولات المستنفدة قبل فحص الطابور هذا.
مقارنة حالة الطابور
فحص الطابورتشغيل · حكم: إعادة إلى الطابورBullMQ · معرّف المهمةطابور المهامإذا لم تكن المهمة في الطابور، تُوضع فيه مجددًا. ويستخدم API معرّفات بلاحقة الطلب بينما يبحث المسح عن معرّف المقطع واللغة، لذا لا يُوصف بأنه يطابق كل طلب قيد التنفيذ.
draft أقدم من 10 دقائق · 200 كحد أقصى
مسح المهام الراكدةتشغيل · حكم: توجد نتيجةالمراجعة البشريةحين تُستنفد المحاولات الثلاث وتوجد نتيجة ترجمة، تذهب المهمة إلى needs_review.
draft أقدم من 10 دقائق · 200 كحد أقصى
مسح المهام الراكدةتشغيل · حكم: لا نتيجةفحص بيانات الاعتمادحين تُستنفد المحاولات الثلاث ولا توجد نتيجة، تذهب المهمة إلى needs_credential.
كل الروابط بالسماكة نفسها. اختر مسارًا لإبراز طريقه وحده، مع خطوات مرقّمة.
- خط متصل · اتجاه المُدخلات والنتائج والسجلات
- خط متقطع · تشغيل، حكم، طلب
- نقاط طويلة · الملاحظة والإبلاغ، بمعزل عن الحكم
- شرطات قصيرة · إخفاق، توقف، حد
- خط أسود سميك · المسار المختار، والأرقام تبيّن الترتيب
- مربع · حدّ شيفرة أو حالة، واسمه في الترويسة
- شريحة داخلية · مكوّن من ذلك الحد
- مربع منقّط · خارج ذلك الحد
- إطار برتقالي · حيث يقرر نموذج
- التوليد · الإنفاق · التثبيت
- الدخول · قواعد الحكم · المسح
- الطابور · الحالة · السجلات
- التسجيل · فحص الطابور
مرسومة من سجلات التطبيق والتطوير الخاصة. ولا تُعرض بيانات العملاء ولا مسارات الشيفرة.
- مسح واحد
- May 26, 2026، دورة مسح واحدة في بيئة التطوير: فُحصت 200، و106 انتقالات حالة، وأُعيدت 2 إلى الطابور. وانتقال الحالة ليس ترجمة ناجحة، ولم يُسجَّل توزيع الـ106 بحسب الحالة الوجهة.
- لماذا ليست مرة واحدة بالضبط
- تُكتب السجلات بلا تكرار، لكن إذا عادت المهمة إلى العمل بعد انهيار، فقد تتكرر استدعاءات النموذج وتكلفتها. وحد التزامن لكل عملية، لا على مستوى العنقود.
- نطاق الحكم
- منع المتوسط من تغطية إخفاق المسرد قاعدة تجميع على البوابات المُبلَّغ عنها. ولا يُثبت العثور على كل مصطلح محظور ولا أن الجودة بمستوى المتحدث الأصلي.