
Cotton
Translation workflow
Generirani prijevodi postaju rezultati koji se mogu recenzirati.
Tijek rada za prijevod dijaloga u igrama.
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
Ocjene, ponovni pokušaji i ljudska recenzija, svako na vlastitoj granici.
Generiranje i prosudba dijele glosar, a neuspjeh strogog praga koji prijavi model sudac ne može se nadoknaditi prosječnim rezultatom. Međustanja prijevoda i prosudbe bilježe se, ograničenja ponovnih pokušaja i troška drže se odvojeno od iscrpljenih vjerodajnica, a zastali poslovi vraćaju se u red ili na recenziju ovisno o uzroku.
Ovaj radni projekt povezuje generiranje prijevoda, prosudbu kvalitete koju prijavljuje model, ponovne pokušaje i ljudsku recenziju u jedan tijek.
Od početka repozitorija do rada potvrđenog tijekom suradnje
Web-aplikacija sa zaslonima za uređivanje i odobravanje prijevoda, API-jem i obrađivačem poslova, koja radi u razvojnom okruženju.
Registracija → ulazak
Stavlja se u red nakon commita u bazu; worker zaključava redak, provjerava pokušaj i stvara nacrt.
Izvor · ciljni jeziciPodaci: izvorRed nakon commita
API · registracija poslaIzvorni segmenti i ciljni jezici projekta spremaju se u bazu podataka. Podaci klijenta nisu prikazani.
Red nakon commita
API · registracija poslaPodaci: nakon commitaBullMQ · ID poslaRed poslovaNakon commita u bazu za svaki aktivni ciljni jezik u red se stavlja posao s ID-om određenim u okviru zahtjeva. Ako stavljanje u red ne uspije, bilježi se samo upozorenje, a commit se ne vraća (nema atomskog outboxa) — zato postoji pregled zastalih.
BullMQ · ID posla
Red poslovaPokretanje · prosudba: isporuka poslaZaključavanje retka · provjera pokušajaUlazak poslaBullMQ asinkrono predaje posao workeru.
Zaključavanje retka · provjera pokušaja
Ulazak poslaPodaci: redak napretkaNacrt · napredakStanje prijevodaUnutar transakcije redak napretka se zaključava i stvara se nacrt prijevoda. Automatski ponovni pokušaji finaliziranih poslova ili poslova pauziranih zbog vjerodajnica preskaču se; ručni zahtjevi obrađuju se zasebno.
Zaključavanje retka · provjera pokušaja
Ulazak poslaPokretanje · prosudba: pokušaj dopuštenGeneriranje · poziv modelaPotez prijevodaBroj pokušaja raste za jedan unutar ograničenja, a zatim počinje potez prijevoda.
Generiranje → prosudba → finalizacija
Generiranje i prosudba koriste isti glosar; prijevod i prosudba bilježe se zasebno, a kod agregira prosudbu prije finalizacije.
Glosar radnog prostora
Glosar · kontekstPodaci: glosarGeneriranje · poziv modelaPotez prijevodaGlosar radnog prostora i kontekst dohvaćaju se i prosljeđuju generiranju.
Glosar radnog prostora
Glosar · kontekstPodaci: isti glosarPoziv modela suca · raščlambaPotez prijevodaProsudba dobiva ista ograničenja glosara.
Generiranje · poziv modela
Potez prijevodaPodaci: Tx1 · prijevodRetci prijevoda · prosudbeStanje prijevodaModel se poziva izravno ili preko posrednog en-US, a poziv, događaj i napredak zapisuju se u jednoj transakciji. Ako se posao ponovno pokrene nakon pada, poziv za prijevod i njegov trošak mogu se ponoviti.
Poziv modela suca · raščlamba
Potez prijevodaPodaci: Tx2 · prosudbaRetci prijevoda · prosudbeStanje prijevodaOcjene suca i dokazi umeću se jednom po prijevodu i potezu; duplikat pronalazi postojeći redak, a citati se zapisuju samo pri prvom umetanju. To nije ista transakcija kao prijevod.
Poziv modela suca · raščlamba
Potez prijevodaPodaci: ocjene · pragoviStrogi prag · ponderirani prosjekPravila presudeOdgovor modela suca raščlanjuje se na ocjene po dimenzijama i rezultate pragova. Je li glosar prošao, prijavljuje model sudac.
Strogi prag · ponderirani prosjek
Pravila presudePokretanje · prosudba: presudaPotezi · trošak · kvotaPonovni pokušaj · potrošnjaSvaki prijavljeni neuspjeh strogog praga znači nulu i pad; tek se tada primjenjuju ponderirani prosjek i pragovi po dimenzijama. Ukupni prag od 8.0 zadana je vrijednost konfiguracije, a ne opažena kvaliteta prijevoda.
Potezi · trošak · kvota
Ponovni pokušaj · potrošnjaPokretanje · prosudba: passKonačna transakcijaFinalizacijaProlaz se finalizira kao translated.
Konačna transakcija
FinalizacijaPodaci: konačni zapisStanje · zapisnik pozivaStanje prijevodaKandidat, stanje, ocjena i potezi finaliziraju se, a finalizacija napretka i zapisnik stanja zapisuju se u jednoj transakciji. Događaj dovršenog prijevoda emitira se samo za translated.
Ponovni pokušaj · ograničenja potrošnje
Bez prolaza slijedi još jedan potez; ograničenje znači ljudsku recenziju; kvota ili autentikacija zaustavljaju potrošnju i čekaju da operater nastavi.
Strogi prag · ponderirani prosjek
Pravila presudePokretanje · prosudba: presudaPotezi · trošak · kvotaPonovni pokušaj · potrošnjaSvaki prijavljeni neuspjeh strogog praga znači nulu i pad; tek se tada primjenjuju ponderirani prosjek i pragovi po dimenzijama. Ukupni prag od 8.0 zadana je vrijednost konfiguracije, a ne opažena kvaliteta prijevoda.
Potezi · trošak · kvota
Ponovni pokušaj · potrošnjaPokretanje · prosudba: sljedeći potezGeneriranje · poziv modelaPotez prijevodaPrijevod koji ne prođe ponovno se generira s prethodnim prijevodom i kritikom. Čak se i neuspjeh strogog praga može najprije ponovno pokušati umjesto da odmah ide čovjeku.
Potezi · trošak · kvota
Ponovni pokušaj · potrošnjaPokretanje · prosudba: ograničenje · prekidLjudska recenzijaKad se potezi iscrpe ili se dosegne gornja granica troška, posao se finalizira kao needs_review. Finalizirano znači da je obrada završila, a ne da je čovjek odobrio.
Potezi · trošak · kvota
Ponovni pokušaj · potrošnjaNeuspjeh · ograničenje: kvota · autentikacijaProvjera vjerodajnicaSignal kvote ili autentikacije zaustavlja potrošnju i postavlja needs_credential. Nema automatskog prebacivanja na drugi račun ili pružatelja. Prijenosne pogreške bez signala zaustavljanja vraćaju se ponovnim pokušajima BullMQ-a.
Provjera vjerodajnicaPokretanje · prosudba: ručni nastavakBullMQ · ID posla
Red poslovaOperater koji je provjerio vjerodajnice izričito ponovno pokreće.
Oporavak zastalih poslova
Stari nacrti dijele se prema razlogu: izostanak iz reda znači ponovno stavljanje u red, iskorišteni pokušaji znače ljudsku odluku.
Nacrt · napredak
Stanje prijevodaOpažanje · izvješće: zastali nacrtNacrti stariji od 10 min · najviše 200Pregled zastalihČita se do 200 kandidata koji su nacrti dulje od 10 minuta, od najstarijih. Upit ne uzima zaključavanje, a ažuriranja i zapisi izvode se kao zasebne naredbe, pa se ovo ne opisuje kao paket bez uvjeta utrke.
Nacrti stariji od 10 min · najviše 200
Pregled zastalihPokretanje · prosudba: ispod ograničenjaUsporedba stanja redaProvjera redaS manje pokušaja od ograničenja (3) posao se uspoređuje sa stanjima reda active, waiting, delayed i prioritized. U kodu grana iscrpljenih pokušaja dolazi prije ove provjere reda.
Usporedba stanja reda
Provjera redaPokretanje · prosudba: ponovno u redBullMQ · ID poslaRed poslovaAko posla nema u redu, ponovno se stavlja u red. API koristi ID-ove sa sufiksom zahtjeva, a pregled traži prema ID-u segmenta i jezika, pa se ovo ne opisuje kao podudaranje sa svakim zahtjevom u tijeku.
Nacrti stariji od 10 min · najviše 200
Pregled zastalihPokretanje · prosudba: rezultat postojiLjudska recenzijaKad su iskorištena sva 3 pokušaja i postoji rezultat prijevoda, posao ide u needs_review.
Nacrti stariji od 10 min · najviše 200
Pregled zastalihPokretanje · prosudba: nema rezultataProvjera vjerodajnicaKad su iskorištena sva 3 pokušaja i nema rezultata, posao ide u needs_credential.
Sve veze iste debljine. Odaberite tijek kako biste istaknuli samo njegov put s numeriranim koracima.
- Puna crta · smjer ulaza, rezultata i zapisa
- Isprekidana crta · pokretanje, prosudba, zahtjev
- Duga točkasta crta · opažanje i izvješćivanje, odvojeno od prosudbe
- Kratke crtice · neuspjeh, zaustavljanje, ograničenje
- Debela crna crta · odabrani tijek; brojevi daju redoslijed
- Okvir · granica koda ili stanja, imenovana u zaglavlju
- Unutarnja pločica · komponenta te granice
- Točkasti okvir · izvan te granice
- Narančasti obrub · mjesto gdje model odlučuje
- Generiranje · potrošnja · finalizacija
- Ulazak · pravila presude · pregled
- Red · stanje · zapisi
- Registracija · provjera reda
Nacrtano prema privatnim zapisima implementacije i razvoja. Podaci klijenata i putanje koda nisu prikazani.
- Jedan pregled
- May 26, 2026, jedan ciklus pregleda u razvojnom okruženju: 200 provjereno, 106 prijelaza stanja, 2 ponovno u redu. Prijelaz stanja nije uspješan prijevod, a raspodjela 106 po odredišnim stanjima nije zabilježena.
- Zašto ne točno jednom
- Zapisi se upisuju bez duplikata, ali ako se posao ponovno pokrene nakon pada, pozivi modela i njihov trošak mogu se ponoviti. Ograničenje istodobnosti vrijedi po procesu, a ne za cijeli klaster.
- Opseg presude
- To što prosjek ne može prekriti neuspjeh glosara pravilo je agregacije prijavljenih pragova. Ne dokazuje da je pronađen svaki zabranjeni pojam ni da je kvaliteta na razini izvornog govornika.