Lachend katoenpersonage uit het oorspronkelijke Cotton-logo, zonder achtergrond en letters
Terug naar de zaal

Cotton

Translation workflow

Gegenereerde vertalingen omzetten in reviewbare resultaten.

Een vertaalworkflow voor gamedialogen.

2026.05.06 — 2026.05.26

Werkproject · vertaalverwerking, beoordeling en reviewpad

  • WebappGeïmplementeerd · ontwikkeling

Een race die de review vond, vastgelopen jobs per oorzaak teruggezet

Eén casus waarin de richtlijn en de commit Claude noemen voor de implementatie en Codex voor de review, en één die vastgelopen jobs diagnosticeerbaar maakte.

Volledige legenda

Leeswijzer · één grammatica voor elke casus

  • Kolommen tonen wie handelde; van boven naar beneden loopt de tijd
  • Doorgetrokken: een vastgelegde overdracht of volgende stap
  • Dikke lapislijn ↩: een bevinding die werk terugstuurde
  • Gestreept: geen vastgelegde uitvoering (een geschreven richtlijn, advies zonder bevoegdheid, een ongecontroleerde grens)
  • Rechthoek: een actie
  • Afgerond: een waargenomen toestand of bevinding
  • Omgevouwen hoek: een artefact of bewijs
  • Gearceerde kolom: onderdelen van het product in ontwikkeling (niet de agents waarmee het wordt gebouwd)

Casus 1 / 2 · Een wijziging die stopt bij uitgeputte quota werd in dezelfde PR gecorrigeerd, inclusief de race die de review vond

May 19, 2026

Een wijziging die stopt bij uitgeputte quota werd in dezelfde PR gecorrigeerd, inclusief de race die de review vond

  1. MensMens

    ActieUitgaven stoppen bij uitgeputte quota · geen automatische fallback

    • overdrachtImplementatiebeperking→ Checkpoint · halt · handmatig hervatten implementeren (Claude)
  2. CodeeragentClaude

    ActieCheckpoint · halt · handmatig hervatten implementeren

    • overdrachtReview in dezelfde PR→ Bevinding: race · dubbele toestandsovergangen (Codex)
  3. Review · verificatieCodex

    Observatie · bevindingBevinding: race · dubbele toestandsovergangen

  4. ArtefactenDezelfde PR

    ArtefactIn dezelfde PR: row lock · unieke scoresleutel · atomaire overgang

    • overdracht→ Lokale fixture · vastleggingen van de DB-integratiecontrole (Dezelfde PR)
  5. ArtefactenDezelfde PR

    ArtefactLokale fixture · vastleggingen van de DB-integratiecontrole

    • geen vastgelegde uitvoeringGecontroleerde reikwijdte→ Geen nieuwe CI- of productie-uitrolresultaten verzameld (Dezelfde PR)
  6. ArtefactenDezelfde PR

    Richtlijn · ongecontroleerdGeen nieuwe CI- of productie-uitrolresultaten verzameld

Achtergrond
De voorwaarde die een mens stelde, was de uitgaven te stoppen wanneer de quota op is, zonder automatische fallback. Claude implementeerde checkpoint, halt en handmatig hervatten, en een Codex-review via de project-MCP vond een race en duplicatie in de toestandsovergangen.
Uitkomst
Instap- en hervatovergangen draaien binnen een lock, beoordelingsscores dragen een unieke sleutel tegen duplicaten, en de transactiegrens is vastgelegd. Dit betekent niet dat elke race is verwijderd.
Beperking
De commit vermeldt 140 controles en de latere integratie-CHANGELOG 160, dus ze worden niet samengevoegd tot één aantal runs. Volgens de richtlijn is Codex-review een optionele lokale stap, dus dit betekent niet dat elke eerdere PR erdoor ging.
Bronnen en resterende beperkingen
  • De richtlijn legt de volgorde vast: Claude implementeert, Codex reviewt lokaal via de project-MCP, de review wordt aan de PR gehangen, en meningsverschillen worden samen met de review-agent van Claude onderzocht. Automatische Codex-review in CI was uitgesteld.
  • Ontwikkelcontroles gebruiken fixtures en mocks, en echte modelaanroepen hebben hun eigen afbakening nodig. Reviewbevindingen worden in dezelfde PR verwerkt en met een squash-merge feature → main samengevoegd.

May 26, 2026

Vastgelopen jobs diagnosticeerbaar gemaakt en per oorzaak teruggezet

  1. In ontwikkelingVertaalworker · queue

    Observatie · bevindingJobs achtergebleven in draft · pogingen uitgeput

    • overdrachtWaargenomen waarden→ failedReason · exitcodes · draft-toestand vergelijken (Ontwikkelaar)
  2. MensOntwikkelaar

    ActiefailedReason · exitcodes · draft-toestand vergelijken

    • overdracht→ Oorzaak: geërfde NODE_OPTIONS botsen in subprocessen (Ontwikkelaar)
  3. MensOntwikkelaar

    Observatie · bevindingOorzaak: geërfde NODE_OPTIONS botsen in subprocessen

  4. WerksessieCodewijzigingen

    ActieNODE_OPTIONS verwijderen · concurrencylimiet per proces

    • overdracht→ Queuetoestand: waiting · active · failed · stale (Codewijzigingen)
  5. WerksessieCodewijzigingen

    ActieQueuetoestand: waiting · active · failed · stale

    • overdracht→ Stale sweep: ontbreekt in de queue vs. pogingen op, vertakt op het al dan niet bestaan van een resultaat (Codewijzigingen)
  6. WerksessieCodewijzigingen

    ActieStale sweep: ontbreekt in de queue vs. pogingen op, vertakt op het al dan niet bestaan van een resultaat

    • overdrachtEén cyclus→ Dev-sweep: 200 kandidaten → 106 verplaatst · 2 opnieuw in de queue · 0 fouten (Artefacten)
  7. ArtefactenArtefacten

    ArtefactDev-sweep: 200 kandidaten → 106 verplaatst · 2 opnieuw in de queue · 0 fouten

    • geen vastgelegde uitvoeringGrens van de interpretatie→ De 106 zijn geen geslaagde vertalingen (Artefacten)
  8. ArtefactenArtefacten

    Richtlijn · ongecontroleerdDe 106 zijn geen geslaagde vertalingen

Achtergrond
Door failedReason van BullMQ, exitcodes van subprocessen en jobs die in draft bleven naast elkaar te leggen, bleek dat geërfde NODE_OPTIONS in subprocessen botsten. Daarna werd dezelfde situatie zichtbaar gemaakt als queuetoestand.
Uitkomst
Vastgelopen jobs worden gesplitst in jobs die in de queue ontbreken en jobs die hun pogingen hebben opgebruikt; die laatste gaan met een reden naar needs_review of needs_credential, afhankelijk van of er een resultaat is. Menselijke review blijft bestaan.
Beperking
De concurrencylimiet geldt per proces. Oorspronkelijke runlogs waren niet beschikbaar in het bekeken materiaal; latentiecijfers zijn weggelaten omdat de gevraagde modellen en effort niet zijn vastgelegd. Build- en releasecode alleen is geen bewijs van een openbare uitrol.
Bronnen en resterende beperkingen
  • De CHANGELOG vermeldt een voorstel voor parallelle adapterbranches, maar dat wordt niet omgezet in een vastlegging van daadwerkelijke parallelle uitvoering.
  • De rest van de 200 wordt in deze vastlegging niet uitgesplitst.