Zum Inhalt springen

Referenz / SDK

Maschinell übersetzte Seite

Diese Seite wurde automatisch übersetzt und kann daher Fehler oder seltsame Formulierungen enthalten. Die englische Version ist die maßgebliche Quelle. Das englische Original lesen.

Bearbeiten und prüfen

Einen Key lesen, bearbeiten, freigeben, ablehnen oder neu übersetzen, Werte gesammelt oder seitenweise lesen, oder viele Keys auf einmal prüfen.

Operationen auf einzelnen Keys

Das sind die Nahtstellen, an denen Verbatra Studio ansetzt; nutze sie, um dein eigenes Review-Tooling zu bauen. Die Funktionen, die locale und key nehmen, lösen beide bei jedem Aufruf frisch auf und werfen UNKNOWN_LOCALE oder UNKNOWN_KEY, wenn eines von beiden nicht existiert.

keyValue Verfügbar ab 0.5.0

Liest den aktuellen Quellwert eines Keys und, falls vorhanden, seinen aktuellen Zielwert für eine Locale. Nur lesend.

Signatur
function keyValue(
  input: KeyValueInput,
  deps?: KeyValueDeps,
): Promise<KeyValueResult>;

Eigenschaft

Typ

Rückgabe: KeyValueResult

Wirft: UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY

Beispiel: Einen einzelnen Key bearbeiten und neu übersetzen

Gibt { source, target? } zurück; target fehlt genau dann, wenn der Key in dieser Locale noch nicht existiert, und kommt, wenn vorhanden, mit provenance, der ausgewerteten KeyProvenance des Keys: { origin, provider?, model?, reviewState, reviewer? }.

Verfügbar ab 0.12.0

Das Ergebnis trägt außerdem description, wenn die Quelldatei dem Key eine gibt: eine ARB-@key.description, eine XLIFF-Notiz oder einen Kommentar in gettext, Apples .strings oder .NET-.resx.

keyContext Verfügbar ab 0.12.0

Liest, was eine Übersetzerin braucht, um einen Key in einer Ziel-Locale zu schreiben: alles, was keyValue liefert, dazu die Glossarbegriffe, die auf den Quelltext zutreffen, und das maxLength des Keys. Gib einen draft mit, um ihn gegen diese Begriffe zu prüfen. Nur lesend. Um ein dateibasiertes Glossar neu von der Platte zu lesen, nimmt er loaded aus loadConfigWithMeta, keine bloße Konfiguration.

Signatur
function keyContext(
  input: KeyContextInput,
  deps?: KeyContextDeps,
): Promise<KeyContext>;

Eigenschaft

Typ

Rückgabe: KeyContext

Wirft: UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY

Ein nicht lesbares Glossar wirft nicht: glossary ist leer und glossaryNotice trägt den Code und die geschwärzte Meldung des Fehlers. draftCheck sagt pro zutreffendem Begriff, ob der Entwurf die geforderte Übersetzung nutzt und welche verbotenen Varianten er verwendet.

localeHistory Verfügbar ab 0.12.0

Listet die letzten Git-Commits, die die Quell- oder eine Ziel-Locale-Datei geändert haben, neueste zuerst. Nur lesend; es führt git log über das injizierbare execFile aus.

Signatur
function localeHistory(
  input: LocaleHistoryInput,
  deps?: LocaleHistoryDeps,
): Promise<LocaleHistoryResult>;

Eigenschaft

Typ

Rückgabe: LocaleHistoryResult

Wirft: LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION

Jeder Commit trägt hash, author (der Name nach .mailmap, nie die E-Mail), authorDate, subject und touchedPaths. limit ist standardmäßig LOCALE_HISTORY_LIMIT_DEFAULT (50), höchstens LOCALE_HISTORY_LIMIT_CAP (200), abgerundet und mindestens 1. Steuer- und bidirektionale Formatierungszeichen fliegen aus author und subject; ein Commit mit unlesbaren Metadaten fehlt. Ohne Git oder Repository, oder wenn git log LOCALE_HISTORY_TIMEOUT_MS oder LOCALE_HISTORY_MAX_OUTPUT_BYTES überschreitet, ist das Ergebnis { available: false, reason }, ein Grund aus LOCALE_HISTORY_UNAVAILABLE_REASONS. Siehe Studio und MCP.

editEntry Verfügbar ab 0.5.0

Schreibt eine von Hand getippte Korrektur für einen Key und eine Locale. Der Kandidatenwert durchläuft dasselbe Integritäts-Gate wie eine Provider-Übersetzung, bevor irgendetwas die Platte erreicht; bei Annahme werden die Locale-Datei und der Lock-Eintrag für diesen Key innerhalb der Schreibsperre dieser Locale aktualisiert. Ruft nie einen Provider auf.

Signatur
function editEntry(
  input: EditEntryInput,
  deps?: EditEntryDeps,
): Promise<EditEntryResult>;

Eigenschaft

Typ

Rückgabe: EditEntryResult

Wirft: UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY, KEY_PINNED, LOCK_CONTENDED, RUN_CANCELLED, TARGET_UNWRITABLE, LOCALE_STATE_NOT_CARRIED_OVER, LOCK_TIMEOUT_INVALID, LOCK_FILE_INVALID, PROVENANCE_FILE_INVALID

Beispiel: Einen einzelnen Key bearbeiten und neu übersetzen

Gibt { accepted: true, value } zurück oder { accepted: false, reason: "placeholder" | "markup" | "icu" | "degenerate" | "empty", value }, wobei nichts geschrieben wird (das Integritäts-Gate). Baue jedes Schema über die Gründe aus dem exportierten Tupel INTEGRITY_GATE_REASONS. "empty" lehnt einen leeren Wert für eine Quelle mit Text ab; leere einen Key stattdessen mit dem [[CLEAR]]-Sentinel der Arbeitsmappe. Eine placeholder- oder markup-Ablehnung trägt zusätzlich details: jeden betroffenen Platzhalter oder Tag, mit -, wenn der Kandidat ihn weggelassen, oder +, wenn er ihn erfunden hat.

Der Wert wird in verbatra.provenance.json mit der Herkunft human festgehalten; übergib actor: "agent", wenn ein KI-Agent ihn geschrieben hat, damit der Eintrag das sagt (der Aufrufer behauptet es, geprüft wird es nicht). Eine beschädigte Herkunftsdatei wirft PROVENANCE_FILE_INVALID, bevor der Wert das Gate durchläuft, und nichts wird geschrieben; eine von einem neueren verbatra, oder eine, die der Eintrag über die Größe wachsen ließe, die verbatra zurückliest, bleibt unangetastet und der Wert wird ohne Eintrag geschrieben.

Verfügbar ab 0.12.0

Mit actor: "agent" wirft ein Key, der auf die pinnedKeys der Konfiguration passt, KEY_PINNED, bevor etwas geschrieben wird. Die Bearbeitung eines gepinnten Keys durch einen Menschen wird angenommen.

Verfügbar ab 0.12.0

lockAcquireTimeoutMs begrenzt die Wartezeit auf die Schreibsperre der Locale, bevor der Aufruf mit LOCK_CONTENDED scheitert (standardmäßig zehn Minuten), onLockWait meldet diese Wartezeit, und eine ungültige Grenze scheitert mit LOCK_TIMEOUT_INVALID, bevor etwas gelesen wird.

retranslateEntry Verfügbar ab 0.5.0

Lässt den Provider für genau einen Key und eine Locale über denselben Provider-Pfad und dasselbe Integritäts-Gate wie translate neu laufen und schreibt bei Annahme die Locale-Datei und den Lock-Eintrag nur für diesen Key.

Signatur
function retranslateEntry(
  input: RetranslateEntryInput,
  deps?: RetranslateEntryDeps,
): Promise<RetranslateEntryResult>;

Eigenschaft

Typ

Rückgabe: RetranslateEntryResult

Wirft: MACHINE_TRANSLATION_DISABLED, LOCK_TIMEOUT_INVALID, UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_UNSUPPORTED_BY_PROVIDER, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY, KEY_PINNED, KEY_PROTECTED, PROVIDER_CONSTRUCTION_FAILED, NETWORK_POLICY_VIOLATION, CONFIG_INVALID, LOCK_CONTENDED, RUN_CANCELLED, TARGET_UNWRITABLE, LOCALE_STATE_NOT_CARRIED_OVER, LOCK_FILE_INVALID, PROVENANCE_FILE_INVALID, SENSITIVE_CONTENT_WITHHELD

Beispiel: Einen einzelnen Key bearbeiten und neu übersetzen

Gibt { accepted: true, value, reviewReasons } zurück (die Review-Grund-Codes des neuen Werts) oder die Ablehnung, die editEntry liefert. Anders als bei translate wirft ein Provider-Fehlschlag hier: ein ProviderError, exportiert aus @verbatra/sdk, mit einem stabilen code wie RATE_LIMITED oder AUTH_FAILED. Unter provider: { id: "none" } wirft es zuerst MACHINE_TRANSLATION_DISABLED, bevor es irgendetwas liest oder sperrt.

Der neue Wert wird in verbatra.provenance.json als machine festgehalten, mit der id des Providers, der geantwortet hat, und dem konfigurierten Modell. Ein Provider aus deinem eigenen createProvider wird unter seiner eigenen id festgehalten, und ohne Modell, wenn diese id von der konfigurierten abweicht. Eine beschädigte Herkunftsdatei wirft PROVENANCE_FILE_INVALID, bevor der Provider aufgerufen wird.

Verfügbar ab 0.12.0

Ein Key, dessen Wert ein Mensch geschrieben, importiert oder außerhalb von verbatra geändert hat, wirft KEY_PROTECTED innerhalb der Schreibsperre, bevor der Provider aufgerufen wird, außer du übergibst includeHuman: true oder die Konfiguration setzt humanEdits: "overwrite"; bei einer Provenienz-Datei von einem neueren verbatra zählt jeder vorhandene Wert als geschützt. Ein Key, der auf pinnedKeys passt, wirft KEY_PINNED, bevor der Provider gebaut wird, auch mit includeHuman.

approveEntry Verfügbar ab 0.12.0

Hält fest, dass eine Person den aktuellen Wert eines Keys in einer Locale geprüft hat und ihn übernimmt. Schreibt nur verbatra.provenance.json, nie eine Locale-Datei oder die Lock-Datei, und ruft keinen Provider auf. Die Freigabe speichert zusätzlich den Quell-Hash des Keys aus der Lock-Datei, sodass sie wieder als ungeprüft gilt, sobald sich die Quelle ändert; jeder spätere Schreibvorgang, der den Wert ändert, beginnt einen frischen, ungeprüften Eintrag.

Signatur
function approveEntry(
  input: ReviewDecisionInput,
  deps?: ReviewDecisionDeps,
): Promise<ReviewDecisionResult>;

Eigenschaft

Typ

Rückgabe: ReviewDecisionResult

Wirft: REVIEWER_INVALID, LOCK_TIMEOUT_INVALID, UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY, LOCK_CONTENDED, RUN_CANCELLED, REVIEW_VALUE_CHANGED, LOCALE_STATE_NOT_CARRIED_OVER, REVIEW_SOURCE_CHANGED, LOCK_FILE_INVALID, PROVENANCE_FILE_INVALID, PROVENANCE_FILE_UNWRITABLE

Beispiel: Die Review-Warteschlange abarbeiten

expectedValue ist der Text, den die prüfende Person gesehen hat, oder du übergibst expectedValueHash mit dem valueMarker, der ihn erzeugt hat: Der Aufruf wirft REVIEW_VALUE_CHANGED, wenn der Key keinen oder einen anderen Wert hat, und REVIEW_SOURCE_CHANGED, wenn sich die Quelle geändert hat, seit der Wert geschrieben wurde. reviewer ist optionaler Freitext mit 1 bis 64 Zeichen ohne Steuerzeichen (sonst REVIEWER_INVALID), landet in der committeten Datei und wird nie von verbatra ausgefüllt. Gibt { locale, key, provenance } zurück. Ein Wert ohne bisherigen Eintrag, oder einer, der außerhalb von verbatra geändert wurde, wird mit der Herkunft unknown festgehalten.

rejectEntry Verfügbar ab 0.12.0

Hält fest, dass eine Person den aktuellen Wert eines Keys in einer Locale geprüft hat und ihn ablehnt, und entfernt ihn aus der Locale-Datei und der Lock-Datei, sodass check und diff ihn als fehlend melden und der nächste translate-Lauf ihn wieder füllt (unter provider: { id: "none" } bleibt er fehlend, bis jemand einen schreibt). Der Herkunftseintrag bleibt als rejected mit einem Hash des entfernten Texts, und der passende Memory-Eintrag auf diesem Rechner wird gelöscht; ein späteres translate überspringt jeden exakten oder unscharfen Memory-Treffer für den Key, der zu diesem Hash passt, sodass kein Memory eines Rechners den Text zurückbringt. Ruft keinen Provider auf.

Signatur
function rejectEntry(
  input: ReviewDecisionInput,
  deps?: ReviewDecisionDeps,
): Promise<ReviewDecisionResult>;

Eigenschaft

Typ

Rückgabe: ReviewDecisionResult

Wirft: REVIEWER_INVALID, LOCK_TIMEOUT_INVALID, UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_KEY, LOCK_CONTENDED, RUN_CANCELLED, REVIEW_VALUE_CHANGED, LOCALE_STATE_NOT_CARRIED_OVER, TARGET_UNWRITABLE, REVIEW_REJECT_UNSUPPORTED, REVIEW_RESTORE_FAILED, LOCK_FILE_INVALID, PROVENANCE_FILE_INVALID, PROVENANCE_FILE_UNWRITABLE

Beispiel: Die Review-Warteschlange abarbeiten

Die Eingabe wird wie bei approveEntry geprüft, nur dass eine veraltete Quelle eine Ablehnung nicht verhindert. Gibt { locale, key, provenance } zurück. Ein Format, das einen Key behält, den es nicht übergeben bekommt, XLIFF, wirft REVIEW_REJECT_UNSUPPORTED, nachdem es die Datei wiederhergestellt hat.

Beide Aufrufe nehmen die Schreibsperre der Locale mit lockAcquireTimeoutMs und onLockWait wie bei editEntry; LOCK_TIMEOUT_INVALID heißt, die Grenze ist keine ganze Zahl von mindestens 0 Millisekunden. Die Wartezeit begrenzt nicht die Sperre der Lock-Datei, die zum Festhalten der Entscheidung genommen wird: Die erlaubt immer die zehn Minuten des Standards.

Keiner meldet eine Entscheidung, die er nicht speichern konnte: Eine Herkunftsdatei aus einem neueren verbatra, oder eine, die durch die Entscheidung über die Größe wachsen würde, die verbatra wieder einliest, wirft PROVENANCE_FILE_UNWRITABLE, bevor etwas geschrieben wird.

createValueMarker Verfügbar ab 0.12.0

Erzeugt die Markierung, mit der eine Oberfläche einen Wert ohne seinen Text zeigt: mark(value) liefert [redacted length=<n> hash=<h>], und hash(value) liefert h, einen 16-stelligen Hex-HMAC mit zufälligem Salt (oder dem übergebenen salt), sodass ein Hash nur unter derselben Markierung passt. Übergib sie als valueMarker an approveEntry oder rejectEntry, damit expectedValueHash statt expectedValue gilt. verbatra mcp --redact-values erzeugt eine pro Serverstart.

Signatur
function createValueMarker(salt?: Uint8Array): ValueMarker;

Rückgabe: ValueMarker

Inhalte in großen Mengen lesen Verfügbar ab 0.10.0

localeValues

Liest den aktuellen Quell- und Zielwert jedes Keys über die angefragten Ziel-Locales in einem Durchgang über die Dateien auf der Platte, etwa um Werte statt Key-Namen zu durchsuchen: das Gegenstück zu keyValue für große Mengen. Nur lesend.

Signatur
function localeValues(
  input: LocaleValuesInput,
  deps?: LocaleValuesDeps,
): Promise<readonly LocaleValues[]>;

Eigenschaft

Typ

Rückgabe: readonly LocaleValues[]

Wirft: UNKNOWN_FORMAT, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_LOCALE

Beispiel: Alle Werte auf einmal lesen

Ein weggelassenes locales deckt jedes konfigurierte Ziel-Locale ab. Gibt ein { locale, keys, values } pro Locale zurück: keys listet jeden Key in Quellreihenfolge, danach die nur im Ziel vorhandenen, und values bildet jeden Key auf { source?, target? } ab. Ohne target ist er dort noch nicht übersetzt; ohne source ist er verwaist (aus der Quelle verschwunden). values hat keinen Prototyp: Jeder Key, auch __proto__ oder constructor, ist eine eigene Eigenschaft, und ein fehlender Key ergibt undefined.

Jedes Paar mit einem target trägt außerdem provenance, dieselbe KeyProvenance, die keyValue meldet.

localeValuesPage Verfügbar ab 0.12.0

Liest eine Seite von localeValues, optional eingegrenzt auf exakte keys oder auf eine query, die ohne Rücksicht auf Groß- und Kleinschreibung gegen Key, Quell- und Zieltext geprüft wird, und gibt einen Cursor für die nächste Seite zurück. Der MCP-Server und das Agent-Tool verbatra_locale_values in Studio blättern damit. Nur lesend.

Signatur
function localeValuesPage(
  input: LocaleValuesPageInput,
  deps?: LocaleValuesDeps,
): Promise<LocaleValuesPage>;

Eigenschaft

Typ

Rückgabe: LocaleValuesPage

Wirft: UNKNOWN_FORMAT, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, UNKNOWN_LOCALE, PAGE_CURSOR_INVALID, PAGE_LIMIT_INVALID

Gibt { locales, nextCursor? } zurück: Jede Locale mit einem Eintrag auf der Seite trägt entries, jeweils { key, source?, target?, provenance? } wie bei localeValues, sortiert nach Locale und dann nach Key. Eine Seite hält höchstens limit Einträge: standardmäßig PAGE_LIMIT_DEFAULT (200), höchstens PAGE_LIMIT_CAP (1000). Gib nextCursor mit denselben Filtern als cursor zurück, bis er fehlt. Jeder Aufruf liest die Dateien neu, deshalb wird ein Cursor, dessen Key verschoben wurde oder fehlt, abgelehnt, statt Einträge zu überspringen oder zu wiederholen.

Ein cursor ist höchstens PAGE_CURSOR_MAX_LENGTH (512) Zeichen lang. Der MCP-Server und Studio nehmen eine query mit höchstens LOCALE_VALUES_QUERY_MAX_LENGTH (500) Zeichen an.

Review und Neuübersetzung im Stapel Verfügbar ab 0.12.0

Jeder dieser Aufrufe führt den passenden Einzel-Key-Aufruf einmal pro Eintrag in Reihenfolge aus und gibt { results } mit einem Ergebnis pro Eintrag zurück. Ein gescheiterter Eintrag hält den Stapel nicht an: Sein Ergebnis ist { locale, key, ok: false, code, message } mit dem Code des SdkError, Adapter-Fehlers oder ProviderError und einer geschwärzten Nachricht. Jeder andere Fehler stoppt den Stapel mit einem BatchInterruptedError. Eine leere entries-Liste ergibt leere results.

approveEntries

Führt approveEntry pro Eintrag mit denselben Prüfungen aus; reviewer gilt für jeden Eintrag. Ein erfolgreiches Ergebnis ist { ok: true, locale, key, provenance }. lockAcquireTimeoutMs begrenzt das Warten jedes Eintrags auf die Schreibsperre seiner Locale, und onLockWait meldet dieses Warten. Ein Eintrag, dessen Sperre über das Timeout hinaus belegt bleibt, scheitert mit LOCK_CONTENDED, und jeder spätere Eintrag, der dieselbe Sperre braucht, bekommt { locale, key, ok: false, skipped: true, code: "LOCK_CONTENDED", message }, statt erneut zu warten; Einträge anderer Locales werden weiter entschieden.

Signatur
function approveEntries(
  input: ReviewEntriesInput,
  deps?: ReviewDecisionDeps,
): Promise<ReviewEntriesResult>;

Eigenschaft

Typ

Rückgabe: ReviewEntriesResult

Wirft: LOCK_TIMEOUT_INVALID

rejectEntries

Führt rejectEntry pro Eintrag aus und entfernt jeden abgelehnten Wert. Ein erfolgreiches Ergebnis ist { ok: true, locale, key, provenance }. Ein Sperr-Timeout überspringt die späteren Einträge, die diese Sperre brauchen, wie bei approveEntries.

Signatur
function rejectEntries(
  input: ReviewEntriesInput,
  deps?: ReviewDecisionDeps,
): Promise<ReviewEntriesResult>;

Eigenschaft

Typ

Rückgabe: ReviewEntriesResult

Wirft: LOCK_TIMEOUT_INVALID

approveLocale Verfügbar ab 0.12.0

Gibt die ganze Review-Warteschlange einer Locale frei, oder nur ihre Werte mit einer der origins, in einem Schreibvorgang von verbatra.provenance.json unter der Schreibsperre der Locale, jede so festgehalten, wie approveEntry eine festhält. Sie nimmt keinen erwarteten Wert und gibt frei, was beim Aufruf in der Warteschlange steht, zeig der prüfenden Person die Warteschlange also vorher. Gibt { locale, approved, sourceChanged } zurück: die freigegebenen Keys und die Keys aus der Warteschlange, die ungeprüft bleiben, weil sich ihr Quelltext seit dem Schreiben geändert hat. Ruft keinen Provider auf und scheitert mit PROVENANCE_FILE_UNWRITABLE, statt Freigaben zu melden, die sie nicht speichern konnte.

Signatur
function approveLocale(
  input: ApproveLocaleInput,
  deps?: ApproveLocaleDeps,
): Promise<ApproveLocaleResult>;

Eigenschaft

Typ

Rückgabe: ApproveLocaleResult

Wirft: REVIEWER_INVALID, LOCK_TIMEOUT_INVALID, UNKNOWN_FORMAT, UNKNOWN_LOCALE, LOCALE_LAYOUT_INVALID, LOCALE_PATH_COLLISION, SOURCE_UNREADABLE, SOURCE_INVALID, LOCK_CONTENDED, RUN_CANCELLED, LOCALE_STATE_NOT_CARRIED_OVER, LOCK_FILE_INVALID, PROVENANCE_FILE_INVALID, PROVENANCE_FILE_UNWRITABLE

retranslateEntries

Führt retranslateEntry pro Eintrag aus und macht damit bis zu einen Provider-Aufruf pro Eintrag. Es ist kein translate-Lauf: maxTokens und budgetBehavior gelten nicht, und die Zahl der Einträge ist die einzige Grenze für die Kosten. Ein abgeschlossenes Ergebnis ist { ok: true, locale, key, result }, wobei result das ist, was retranslateEntry zurückgegeben hat, auch ein Wert, den das Integritäts-Gate abgelehnt hat. Ein Wert, den ein Mensch geschrieben hat, scheitert mit KEY_PROTECTED, außer du übergibst includeHuman: true. Die Sperroptionen wirken wie bei approveEntries, und das Warten endet vor dem Provider-Aufruf.

Signatur
function retranslateEntries(
  input: RetranslateEntriesInput,
  deps?: RetranslateEntryDeps,
): Promise<RetranslateEntriesResult>;

Eigenschaft

Typ

Rückgabe: RetranslateEntriesResult

Wirft: LOCK_TIMEOUT_INVALID

Verfügbar ab 0.12.0

Ein Fehler, an dem jeder Eintrag gleich scheitern würde, beendet die Provider-Aufrufe: MISSING_API_KEY, AUTH_FAILED, RATE_LIMITED (auch ein erschöpftes Kontingent), NETWORK_POLICY_VIOLATION, PROVIDER_CONSTRUCTION_FAILED, CONFIG_INVALID oder MACHINE_TRANSLATION_DISABLED. Der Eintrag, der ihn ausgelöst hat, scheitert wie gewohnt, und jeder Eintrag danach bekommt { locale, key, ok: false, skipped: true, code, message } mit diesem Code, ohne weiteren Provider-Aufruf.

Ein Sperr-Timeout überspringt die späteren Einträge, die diese Sperre brauchen, mit LOCK_CONTENDED, wie bei approveEntries; bei einem Format, das alle Locales in einer Datei hält, ist das jeder spätere Eintrag.

BatchInterruptedError Verfügbar ab 0.12.0

Wird von approveEntries, rejectEntries und retranslateEntries geworfen, wenn ein Fehler, der kein Ergebnis eines einzelnen Eintrags ist, etwa ein unerwarteter Dateisystemfehler, einen Stapel mittendrin stoppt. results enthält die Ergebnisse der vorher abgeschlossenen Einträge in ihrer Reihenfolge, deren Schreibvorgänge auf der Platte bleiben; entry nennt das laufende { locale, key }, und cause ist der ursprüngliche Fehler. Einträge nach entry sind nicht gelaufen.

Signatur
class BatchInterruptedError<R = ReviewBatchOutcome | RetranslateBatchOutcome> extends Error

Eigenschaft

Typ

Auf GitHub bearbeiten

Auf dieser Seite