From 55adc1dbd742a570d55d3a4d13f5613a7ed2ab25 Mon Sep 17 00:00:00 2001 From: cesnimda Date: Mon, 2 Nov 2026 11:40:29 +0100 Subject: [PATCH] docs(i18n): resolve conditional keys and triage display literals --- docs/i18n/00/AUDIT.md | 2 +- docs/i18n/00/CONTEXT_TRIAGE.md | 31 + docs/i18n/00/DIRECT_CATALOGUE_ACCESS.json | 47 + docs/i18n/00/DYNAMIC_MESSAGE_CALLS.json | 2531 +++++++++++++++++ docs/i18n/00/FRONTEND_LITERAL_CANDIDATES.json | 319 +++ docs/i18n/00/HANDOFF.md | 2 + docs/i18n/00/SURFACE_INVENTORY.md | 2 +- 7 files changed, 2932 insertions(+), 2 deletions(-) create mode 100644 docs/i18n/00/CONTEXT_TRIAGE.md create mode 100644 docs/i18n/00/DIRECT_CATALOGUE_ACCESS.json create mode 100644 docs/i18n/00/DYNAMIC_MESSAGE_CALLS.json create mode 100644 docs/i18n/00/FRONTEND_LITERAL_CANDIDATES.json diff --git a/docs/i18n/00/AUDIT.md b/docs/i18n/00/AUDIT.md index ed057ba..85c8330 100644 --- a/docs/i18n/00/AUDIT.md +++ b/docs/i18n/00/AUDIT.md @@ -21,6 +21,6 @@ Architecture authority is `docs/architecture/current.md`, which redirects to `ov ## Honest limits -The TypeScript AST inventory contains 3,119 existing English catalogue entries and 3,164 syntactically identified static call sites across 134 non-test frontend files. It records 188 dynamic/unknown calls separately as an unresolved count; 853 catalogue entries have no identified static caller. These are not deletion candidates: wrappers, dynamic keys and direct object access remain unresolved. No non-catalogue literal inventory has been produced. Every-string attribution, translator context, accessible states and country-specific legal recognition require additional review. Therefore the stage's complete-inventory criterion has not passed. No translations, native approval, screenshots, model results, browser results or locale release are manufactured. +The TypeScript AST inventory contains 3,119 existing English catalogue entries and 3,164 syntactically identified static call sites across 134 non-test frontend files. It records 188 dynamic/unknown calls separately as an unresolved count; 853 catalogue entries have no identified static caller. These are not deletion candidates: wrappers, dynamic keys and direct object access remain unresolved. A subsequent partial JSX/accessibility literal inventory now contains 26 source-context-reviewed candidates. CONTEXT_TRIAGE.md records the current 80 unresolved dynamic calls after 108 finite-branch resolutions. This is still not a complete non-catalogue inventory. Every-string attribution, translator context, accessible states and country-specific legal recognition require additional review. Therefore the stage's complete-inventory criterion has not passed. No translations, native approval, screenshots, model results, browser results or locale release are manufactured. The country matrix covers an initial 59 territory/market contexts from versioned CLDR 49, with targeted official-record checks for Norway, Switzerland and Serbia. The remaining legal cross-checks are pending. The draft catalogue contains 60 planned locale candidates, not 60 supported languages. Schema, uniqueness, BCP-47 parsing and rejection of a forged released status passed using existing local tools. Node/ICU canonicalises `cnr-ME` to `sr-ME`; retain this unresolved identity issue rather than accepting an automatic product alias. See BASELINE_TESTS.md. diff --git a/docs/i18n/00/CONTEXT_TRIAGE.md b/docs/i18n/00/CONTEXT_TRIAGE.md new file mode 100644 index 0000000..c675ee7 --- /dev/null +++ b/docs/i18n/00/CONTEXT_TRIAGE.md @@ -0,0 +1,31 @@ +# Source-context triage continuation + +2026-11-02, unchanged application baseline `5cb903b989742b7a96cb22ddf4c0e24993b18980`. No translation or runtime implementation. + +## Completed inventory refinement + +- All 188 previously counted dynamic/unknown `t` calls now have source file/line/hash and exact expression in DYNAMIC_MESSAGE_CALLS.json. +- 108 calls resolve to finite literal conditional branches, accounting for 240 possible-key references. Each referenced key exists in the English catalogue. Nested ternaries are included. This is key resolution, not translator or runtime acceptance. +- 80 calls still need lookup-table, wrapper, template-token or runtime-key review. Type assertions such as `as any` or a single asserted literal must not be treated as proof of actual possible values. +- Four direct catalogue reads were located in I18nProvider: save-failure/retry feedback and the evaluator/fallback. These are active consumers missed by a `t("key")`-only search; preserve them during migration. +- 26 JSX text/selected accessibility-label candidates were extracted and individually reviewed in source context. The JSON records preservation/extraction decisions and excludes adjacent private runtime values. This scan does not cover every computed JSX expression, object-held label, string-returning helper, backend string or app-shell document text. + +## Findings to carry into approved implementation + +| ID | Source | Finding / required handling | +| --- | --- | --- | +| I00-13 | `App.tsx:488` | Session-invalidated alert is hardcoded English. Localisation must preserve disposal of the old application tree and must not depend on its discarded session/provider state | +| I00-14 | `JobFlowBar.tsx:147` | `Flow` is controlled UI copy outside the catalogue; extract with workflow context | +| I00-15 | `Attachments.tsx:361` | Preview iframe title is only `pdf`; use descriptive localised purpose while keeping private filenames out of translator exports | +| I00-16 | `AppShell.tsx:692` | `EN`/`NO` with `English`/`Norsk` labels conflates country-like abbreviation and Norwegian variant. Future selector needs native/English names and explicit Bokmal/Nynorsk distinction; preserve existing nb aliases | +| I00-17 | `ApplicationAssets.tsx:360` | File-size display uses `toFixed(1)` with KB. Review locale number formatting; filename and underlying byte count remain unchanged | +| I00-18 | `I18nProvider.tsx:43` | Save-failure feedback accesses catalogue directly. Migration must preserve same-language retry and stale-save sequencing; static t-call inventory alone misses this contract | +| I00-19 | `LandingPage.tsx:133` | Technology-name list is not ordinary translatable prose. Coordinate user-outcome copy with homepage design work; do not translate trademarks or add unverified feature claims | + +Brand/provider names, host examples and technical identifiers were not blindly classified as missing translations. Unit/version fragments require formatting and accessibility context rather than mechanical dictionary substitution. All findings are planning tasks, not permission to edit application files. + +## Verification and remaining work + +The same 134 non-test TS/TSX files were scanned using the installed TypeScript AST parser. Assertions confirmed exactly 188 dynamic calls and that all 240 resolved branch-key references exist. No full application typecheck or browser suite was run. The 26 literal records were reviewed against adjacent source lines; broader semantic census remains IN_PROGRESS. + +Next: resolve the remaining 80 table/template/wrapper calls; cover computed frontend values and app document metadata; inventory backend errors, queued communication text and Python processing messages. Country legal records, reviewer allocation and runtime-library choice remain separate unfinished tasks. diff --git a/docs/i18n/00/DIRECT_CATALOGUE_ACCESS.json b/docs/i18n/00/DIRECT_CATALOGUE_ACCESS.json new file mode 100644 index 0000000..1c4af71 --- /dev/null +++ b/docs/i18n/00/DIRECT_CATALOGUE_ACCESS.json @@ -0,0 +1,47 @@ +{ + "baseline": "5cb903b989742b7a96cb22ddf4c0e24993b18980", + "method": "TypeScript AST syntactic triage; no symbol resolution or runtime coverage claim", + "filesScanned": 134, + "entries": [ + { + "file": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "line": 43, + "sourceSha256": "95a930915cb2240547cc1a91af7cb0a475bc8f46ac75304b3241a401928ed3e4", + "kind": "direct-catalogue-access", + "text": "translations[l].settingsLanguageSaveFailed", + "ownerComponent": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values" + }, + { + "file": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "line": 44, + "sourceSha256": "95a930915cb2240547cc1a91af7cb0a475bc8f46ac75304b3241a401928ed3e4", + "kind": "direct-catalogue-access", + "text": "translations[l].retry", + "ownerComponent": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values" + }, + { + "file": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "line": 67, + "sourceSha256": "95a930915cb2240547cc1a91af7cb0a475bc8f46ac75304b3241a401928ed3e4", + "kind": "direct-catalogue-access", + "text": "translations[language][key]", + "ownerComponent": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values" + }, + { + "file": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "line": 67, + "sourceSha256": "95a930915cb2240547cc1a91af7cb0a475bc8f46ac75304b3241a401928ed3e4", + "kind": "direct-catalogue-access", + "text": "translations.en[key]", + "ownerComponent": "job-tracker-ui/src/i18n/I18nProvider.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values" + } + ] +} diff --git a/docs/i18n/00/DYNAMIC_MESSAGE_CALLS.json b/docs/i18n/00/DYNAMIC_MESSAGE_CALLS.json new file mode 100644 index 0000000..68c94fc --- /dev/null +++ b/docs/i18n/00/DYNAMIC_MESSAGE_CALLS.json @@ -0,0 +1,2531 @@ +{ + "baseline": "5cb903b989742b7a96cb22ddf4c0e24993b18980", + "method": "TypeScript AST syntactic triage; no symbol resolution or runtime coverage claim", + "filesScanned": 134, + "entries": [ + { + "file": "job-tracker-ui/src/components/AiPrivacySettingsCard.tsx", + "line": 82, + "sourceSha256": "c9a5cb0d1ccc45366f099d0d17b6a97b570fd90942041d71fa1668bd828f6ab0", + "kind": "dynamic-or-unknown-t-call", + "text": "t(settings ? \"settingsAiSaveFailed\" : \"settingsAiPrivacyUnavailable\")", + "ownerComponent": "job-tracker-ui/src/components/AiPrivacySettingsCard.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "settingsAiSaveFailed", + "settingsAiPrivacyUnavailable" + ] + }, + { + "file": "job-tracker-ui/src/components/AiPrivacySettingsCard.tsx", + "line": 102, + "sourceSha256": "c9a5cb0d1ccc45366f099d0d17b6a97b570fd90942041d71fa1668bd828f6ab0", + "kind": "dynamic-or-unknown-t-call", + "text": "t(saving ? \"saving\" : \"settingsAiSave\")", + "ownerComponent": "job-tracker-ui/src/components/AiPrivacySettingsCard.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "saving", + "settingsAiSave" + ] + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 104, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error.messageKey)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 226, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(createdCopy ? \"assetsAttachCreatedCopy\" : \"assetsDuplicateForJob\")", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "assetsAttachCreatedCopy", + "assetsDuplicateForJob" + ] + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 389, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`assetsPackage${key}` as \"assetsPackageTailoredCvText\")", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 456, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labels[0])", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 458, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labels[1])", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 687, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(sourceKey)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 688, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(actionKey)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 830, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(label)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 857, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.labelKey)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 866, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key as any)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 887, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error.messageKey)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 895, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "dynamic-or-unknown-t-call", + "text": "t(COVER_LETTER_ACTIONS.find((item) => item.key === action)?.labelKey ?? \"coverActionGenerate\")", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "line": 207, + "sourceSha256": "88fdcd24914cf074aedee72a94b0c420c96a16dfe7194142daf22ec0ad8370ff", + "kind": "dynamic-or-unknown-t-call", + "text": "t(keys[category])", + "ownerComponent": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "line": 214, + "sourceSha256": "88fdcd24914cf074aedee72a94b0c420c96a16dfe7194142daf22ec0ad8370ff", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`checklistItem_${token}`)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "line": 215, + "sourceSha256": "88fdcd24914cf074aedee72a94b0c420c96a16dfe7194142daf22ec0ad8370ff", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`checklistItem_${token}Description`)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationChecklist.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "line": 304, + "sourceSha256": "89addd1e262ac9c5e37a718acb31d270a132269fe3518d6711e91f3da76ae1a4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(data.usedTranslatedJobDescription\r\n ? \"intelligenceMatchUsedTranslation\"\r\n : \"intelligenceMatchLanguageMismatch\")", + "ownerComponent": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "intelligenceMatchUsedTranslation", + "intelligenceMatchLanguageMismatch" + ] + }, + { + "file": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "line": 367, + "sourceSha256": "89addd1e262ac9c5e37a718acb31d270a132269fe3518d6711e91f3da76ae1a4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(keys[category])", + "ownerComponent": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "line": 373, + "sourceSha256": "89addd1e262ac9c5e37a718acb31d270a132269fe3518d6711e91f3da76ae1a4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`matchScoreBand_${band}`)", + "ownerComponent": "job-tracker-ui/src/components/ApplicationIntelligence.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 246, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(res.data.imported === 1 ? \"correspondenceImportedNewMessage\" : \"correspondenceImportedNewMessages\", { count: res.data.imported })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceImportedNewMessage", + "correspondenceImportedNewMessages" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 253, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(res.data.imported === 1 ? \"correspondenceLinkedImportedMessage\" : \"correspondenceLinkedImportedMessages\", { count: res.data.imported })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceLinkedImportedMessage", + "correspondenceLinkedImportedMessages" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 469, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(res.data.removedMessages === 1 ? \"correspondenceUnlinkedMessage\" : \"correspondenceUnlinkedMessages\", { count: res.data.removedMessages })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceUnlinkedMessage", + "correspondenceUnlinkedMessages" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 520, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(JSON.parse(m.externalLabelsJson).length === 1 ? \"correspondenceGmailLabel\" : \"correspondenceGmailLabels\", { count: JSON.parse(m.externalLabelsJson).length })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceGmailLabel", + "correspondenceGmailLabels" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 521, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(JSON.parse(m.attachmentMetadataJson).length === 1 ? \"correspondenceAttachment\" : \"correspondenceAttachments\", { count: JSON.parse(m.attachmentMetadataJson).length })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceAttachment", + "correspondenceAttachments" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 568, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(linkedThreadRefresh.imported === 1 ? \"correspondenceLastRefreshImportedMessage\" : \"correspondenceLastRefreshImportedMessages\", { count: linkedThreadRefresh.imported })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceLastRefreshImportedMessage", + "correspondenceLastRefreshImportedMessages" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 570, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(linkedThreadRefresh.threadsChecked === 1 ? \"correspondenceLastRefreshCheckedThread\" : \"correspondenceLastRefreshCheckedThreads\", { count: linkedThreadRefresh.threadsChecked })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceLastRefreshCheckedThread", + "correspondenceLastRefreshCheckedThreads" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 703, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(linkedThreadRefresh.imported === 1 ? \"correspondenceLastRefreshImportedMessage\" : \"correspondenceLastRefreshImportedMessages\", { count: linkedThreadRefresh.imported })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceLastRefreshImportedMessage", + "correspondenceLastRefreshImportedMessages" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 705, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(linkedThreadRefresh.threadsChecked === 1 ? \"correspondenceLastRefreshCheckedThread\" : \"correspondenceLastRefreshCheckedThreads\", { count: linkedThreadRefresh.threadsChecked })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceLastRefreshCheckedThread", + "correspondenceLastRefreshCheckedThreads" + ] + }, + { + "file": "job-tracker-ui/src/components/Correspondence.tsx", + "line": 729, + "sourceSha256": "f42e7e549c9060f9d4f84111fc5d430eac353832c9cd6f6a56fa14b20c013251", + "kind": "dynamic-or-unknown-t-call", + "text": "t(thread.messageCount === 1 ? \"correspondenceMessageCount\" : \"correspondenceMessagesCount\", { count: thread.messageCount })", + "ownerComponent": "job-tracker-ui/src/components/Correspondence.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "correspondenceMessageCount", + "correspondenceMessagesCount" + ] + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 36, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "dynamic-or-unknown-t-call", + "text": "t(fieldLabels[key])", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 142, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "dynamic-or-unknown-t-call", + "text": "t(kind === \"contact\" ? \"letterCopyContact\" : \"letterMatchDesign\")", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "letterCopyContact", + "letterMatchDesign" + ] + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 152, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "dynamic-or-unknown-t-call", + "text": "t(kind === \"contact\" ? \"letterContactSnapshot\" : \"letterDesignSnapshot\")", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "letterContactSnapshot", + "letterDesignSnapshot" + ] + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 153, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "dynamic-or-unknown-t-call", + "text": "t(fieldLabels[key])", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/CropImageDialog.tsx", + "line": 217, + "sourceSha256": "f2a3c06706019cabd3d4f9f0bc8b0d532af2082900131d1dc491aa2a220208a6", + "kind": "dynamic-or-unknown-t-call", + "text": "t(axis === \"x\" ? \"cropDialogHorizontal\" : \"cropDialogVertical\")", + "ownerComponent": "job-tracker-ui/src/components/CropImageDialog.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cropDialogHorizontal", + "cropDialogVertical" + ] + }, + { + "file": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "line": 33, + "sourceSha256": "dda733af709e419b17fb254d65fbb27c8dbba01d032a1c0266517fc27d134eb7", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labels[0])", + "ownerComponent": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "line": 33, + "sourceSha256": "dda733af709e419b17fb254d65fbb27c8dbba01d032a1c0266517fc27d134eb7", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labels[1])", + "ownerComponent": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "line": 33, + "sourceSha256": "dda733af709e419b17fb254d65fbb27c8dbba01d032a1c0266517fc27d134eb7", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labels[2])", + "ownerComponent": "job-tracker-ui/src/components/CvTemplateGallery.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/DashboardGrid.tsx", + "line": 47, + "sourceSha256": "201f6d7580af81e92e1fe9c759972a4d2bc1f865cbbe651dd7977e10a130062e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(WIDGETS.find(widget => widget.id === id)!.titleKey)", + "ownerComponent": "job-tracker-ui/src/components/DashboardGrid.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/DashboardGrid.tsx", + "line": 63, + "sourceSha256": "201f6d7580af81e92e1fe9c759972a4d2bc1f865cbbe651dd7977e10a130062e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(WIDGETS.find(item => item.id === widget.id)!.titleKey)", + "ownerComponent": "job-tracker-ui/src/components/DashboardGrid.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/DashboardGrid.tsx", + "line": 73, + "sourceSha256": "201f6d7580af81e92e1fe9c759972a4d2bc1f865cbbe651dd7977e10a130062e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(direction < 0 ? 'dashboardMoveEarlierNamed' : 'dashboardMoveLaterNamed', { name })", + "ownerComponent": "job-tracker-ui/src/components/DashboardGrid.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "dashboardMoveEarlierNamed", + "dashboardMoveLaterNamed" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardGrid.tsx", + "line": 73, + "sourceSha256": "201f6d7580af81e92e1fe9c759972a4d2bc1f865cbbe651dd7977e10a130062e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(direction < 0 ? 'dashboardEarlier' : 'dashboardLater')", + "ownerComponent": "job-tracker-ui/src/components/DashboardGrid.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "dashboardEarlier", + "dashboardLater" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "line": 64, + "sourceSha256": "faab5c4d63d650c02f4fa0a6f0e2880b1b21535b444a143e1989d9e378f0e16f", + "kind": "dynamic-or-unknown-t-call", + "text": "t(saving ? \"dashboardSaving\" : \"dashboardSave\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "dashboardSaving", + "dashboardSave" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "line": 68, + "sourceSha256": "faab5c4d63d650c02f4fa0a6f0e2880b1b21535b444a143e1989d9e378f0e16f", + "kind": "dynamic-or-unknown-t-call", + "text": "t(conflict ? \"dashboardConflict\" : \"dashboardSaveFailed\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "dashboardConflict", + "dashboardSaveFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "line": 71, + "sourceSha256": "faab5c4d63d650c02f4fa0a6f0e2880b1b21535b444a143e1989d9e378f0e16f", + "kind": "dynamic-or-unknown-t-call", + "text": "t(dirty ? \"assetsUnsavedChanges\" : \"dashboardDraftSaved\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "assetsUnsavedChanges", + "dashboardDraftSaved" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "line": 77, + "sourceSha256": "faab5c4d63d650c02f4fa0a6f0e2880b1b21535b444a143e1989d9e378f0e16f", + "kind": "dynamic-or-unknown-t-call", + "text": "t(entry.titleKey)", + "ownerComponent": "job-tracker-ui/src/components/DashboardLayoutEditor.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 114, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsSnapshotUnavailableTitle\" : \"dashboardSummaryUnavailableTitle\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsSnapshotUnavailableTitle", + "dashboardSummaryUnavailableTitle" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 138, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsTrendsUnavailableTitle\" : \"dashboardTrendsUnavailableTitle\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsTrendsUnavailableTitle", + "dashboardTrendsUnavailableTitle" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 259, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key)", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 295, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsTagsBody\" : \"dashboardTagsBody\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsTagsBody", + "dashboardTagsBody" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 329, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsScope\" : \"dashboardSnapshotScope\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsScope", + "dashboardSnapshotScope" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 339, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(layoutState.loadError === \"unsupportedVersion\" ? \"dashboardUnsupportedVersion\" : \"dashboardLoadFailed\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "dashboardUnsupportedVersion", + "dashboardLoadFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 345, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsSnapshotUnavailableTitle\" : \"dashboardSummaryUnavailableTitle\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsSnapshotUnavailableTitle", + "dashboardSummaryUnavailableTitle" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 345, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsSnapshotUnavailableBody\" : \"dashboardSummaryUnavailableBody\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsSnapshotUnavailableBody", + "dashboardSummaryUnavailableBody" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 346, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsEmptyTitle\" : \"dashboardStartTitle\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsEmptyTitle", + "dashboardStartTitle" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 346, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsEmptyBody\" : \"dashboardStartBody\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsEmptyBody", + "dashboardStartBody" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 353, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(reporting ? \"analyticsTrendsUnavailableTitle\" : \"dashboardTrendsUnavailableTitle\")", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "analyticsTrendsUnavailableTitle", + "dashboardTrendsUnavailableTitle" + ] + }, + { + "file": "job-tracker-ui/src/components/DashboardView.tsx", + "line": 372, + "sourceSha256": "37952276ba7d3d0c65df734c816e317b54d50034838dc91f56e3de6f1eb17879", + "kind": "dynamic-or-unknown-t-call", + "text": "t(WIDGETS.find(item => item.id === widget.id)!.titleKey)", + "ownerComponent": "job-tracker-ui/src/components/DashboardView.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/EditJobDialog.tsx", + "line": 193, + "sourceSha256": "25eec23f6f05214f500444c2b64173195d683e7ca3741a3917e37145792882e0", + "kind": "dynamic-or-unknown-t-call", + "text": "t((error as { response?: { status?: number } }).response?.status === 409 ? \"revisionConflict\" : \"editJobSaveFailed\")", + "ownerComponent": "job-tracker-ui/src/components/EditJobDialog.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "revisionConflict", + "editJobSaveFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 117, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "dynamic-or-unknown-t-call", + "text": "t(provider === \"gmail\" ? \"emailConnectionsGmailConnected\" : \"emailConnectionsOutlookConnected\")", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailConnectionsGmailConnected", + "emailConnectionsOutlookConnected" + ] + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 120, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "dynamic-or-unknown-t-call", + "text": "t(provider === \"gmail\" ? \"emailConnectionsGmailFailed\" : \"emailConnectionsOutlookFailed\")", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailConnectionsGmailFailed", + "emailConnectionsOutlookFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 217, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "dynamic-or-unknown-t-call", + "text": "t(state.refreshRequired ? \"emailConnectionsRefreshRequired\" : \"emailConnectionsStatusFailed\")", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailConnectionsRefreshRequired", + "emailConnectionsStatusFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 219, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "dynamic-or-unknown-t-call", + "text": "t(state.error.kind === \"imap\" ? \"emailConnectionsImapFailed\" : \"emailConnectionsDisconnectFailed\", { provider: providerLabel })", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailConnectionsImapFailed", + "emailConnectionsDisconnectFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/InterviewPrep.tsx", + "line": 236, + "sourceSha256": "eadf345d3613ad867788f6a74a8fd1fbba508bb81ec7bc87fe54e4f66dadc69b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(selected.labelKey)", + "ownerComponent": "job-tracker-ui/src/components/InterviewPrep.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/InterviewPrep.tsx", + "line": 261, + "sourceSha256": "eadf345d3613ad867788f6a74a8fd1fbba508bb81ec7bc87fe54e4f66dadc69b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(selected.labelKey)", + "ownerComponent": "job-tracker-ui/src/components/InterviewPrep.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/InterviewPrep.tsx", + "line": 285, + "sourceSha256": "eadf345d3613ad867788f6a74a8fd1fbba508bb81ec7bc87fe54e4f66dadc69b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.labelKey)", + "ownerComponent": "job-tracker-ui/src/components/InterviewPrep.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/InterviewPrep.tsx", + "line": 460, + "sourceSha256": "eadf345d3613ad867788f6a74a8fd1fbba508bb81ec7bc87fe54e4f66dadc69b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(data.openFollowUpTasks === 1 ? \"interviewFollowUpOpenTask\" : \"interviewFollowUpOpenTasks\", { count: data.openFollowUpTasks })", + "ownerComponent": "job-tracker-ui/src/components/InterviewPrep.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "interviewFollowUpOpenTask", + "interviewFollowUpOpenTasks" + ] + }, + { + "file": "job-tracker-ui/src/components/InterviewPrep.tsx", + "line": 505, + "sourceSha256": "eadf345d3613ad867788f6a74a8fd1fbba508bb81ec7bc87fe54e4f66dadc69b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(keys[category])", + "ownerComponent": "job-tracker-ui/src/components/InterviewPrep.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/JobTable.tsx", + "line": 482, + "sourceSha256": "ead07626c48c637604b255291a37c0a3f3f0644bc98d8968c51f7150615e3b05", + "kind": "dynamic-or-unknown-t-call", + "text": "t(view === \"table\" ? \"jobsTableView\" : \"jobsBoardView\")", + "ownerComponent": "job-tracker-ui/src/components/JobTable.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "jobsTableView", + "jobsBoardView" + ] + }, + { + "file": "job-tracker-ui/src/components/JobTable.tsx", + "line": 815, + "sourceSha256": "ead07626c48c637604b255291a37c0a3f3f0644bc98d8968c51f7150615e3b05", + "kind": "dynamic-or-unknown-t-call", + "text": "t(mode === \"trash\" ? \"trash\" : \"jobApplications\")", + "ownerComponent": "job-tracker-ui/src/components/JobTable.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "trash", + "jobApplications" + ] + }, + { + "file": "job-tracker-ui/src/components/JobTable.tsx", + "line": 901, + "sourceSha256": "ead07626c48c637604b255291a37c0a3f3f0644bc98d8968c51f7150615e3b05", + "kind": "dynamic-or-unknown-t-call", + "text": "t(type === \"next\" ? \"tableNextPage\" : type === \"previous\" ? \"tablePreviousPage\" : type === \"first\" ? \"tableFirstPage\" : \"tableLastPage\")", + "ownerComponent": "job-tracker-ui/src/components/JobTable.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "tableNextPage", + "tablePreviousPage", + "tableFirstPage", + "tableLastPage" + ] + }, + { + "file": "job-tracker-ui/src/components/KanbanBoard.tsx", + "line": 194, + "sourceSha256": "f9e7491cd3bd82214fb081571b46b55b31fb8e135fa5050e76896759c2e79a92", + "kind": "dynamic-or-unknown-t-call", + "text": "t(g.labelKey as any)", + "ownerComponent": "job-tracker-ui/src/components/KanbanBoard.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/KanbanBoard.tsx", + "line": 242, + "sourceSha256": "f9e7491cd3bd82214fb081571b46b55b31fb8e135fa5050e76896759c2e79a92", + "kind": "dynamic-or-unknown-t-call", + "text": "t(droppable ? \"kanbanColumnLabel\" : \"kanbanColumnNotDropTarget\", { label })", + "ownerComponent": "job-tracker-ui/src/components/KanbanBoard.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "kanbanColumnLabel", + "kanbanColumnNotDropTarget" + ] + }, + { + "file": "job-tracker-ui/src/components/KanbanBoard.tsx", + "line": 338, + "sourceSha256": "f9e7491cd3bd82214fb081571b46b55b31fb8e135fa5050e76896759c2e79a92", + "kind": "dynamic-or-unknown-t-call", + "text": "t(dragJobId === j.id ? \"kanbanCardPickedUpLabel\" : \"kanbanCardPickUpLabel\", { title: j.jobTitle, status: statusLabel(t, j.status) })", + "ownerComponent": "job-tracker-ui/src/components/KanbanBoard.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "kanbanCardPickedUpLabel", + "kanbanCardPickUpLabel" + ] + }, + { + "file": "job-tracker-ui/src/components/KanbanBoard.tsx", + "line": 446, + "sourceSha256": "f9e7491cd3bd82214fb081571b46b55b31fb8e135fa5050e76896759c2e79a92", + "kind": "dynamic-or-unknown-t-call", + "text": "t(g.labelKey as any)", + "ownerComponent": "job-tracker-ui/src/components/KanbanBoard.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/NotificationsPopover.tsx", + "line": 185, + "sourceSha256": "68de79aeafac5dba9e1688678ef92c3a8a77b03dfaf72cc51a4019762641d20e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error.action ? \"notificationsActionFailed\" : \"notificationsLoadFailed\")", + "ownerComponent": "job-tracker-ui/src/components/NotificationsPopover.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "notificationsActionFailed", + "notificationsLoadFailed" + ] + }, + { + "file": "job-tracker-ui/src/components/RemindersView.tsx", + "line": 35, + "sourceSha256": "1eedbc443761001e86be1f322691ab4058553033e764b0c6cf9c93ce4fab05c0", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key)", + "ownerComponent": "job-tracker-ui/src/components/RemindersView.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/RemindersView.tsx", + "line": 38, + "sourceSha256": "1eedbc443761001e86be1f322691ab4058553033e764b0c6cf9c93ce4fab05c0", + "kind": "dynamic-or-unknown-t-call", + "text": "t(dayKey, { days: match[1] })", + "ownerComponent": "job-tracker-ui/src/components/RemindersView.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/components/cv/CvCustomizeTab.tsx", + "line": 106, + "sourceSha256": "d7fa0ad4c5148f3518e0e22fa92714e724d79b06642f7725a061577fceb38cf6", + "kind": "dynamic-or-unknown-t-call", + "text": "t(settings.includeProfileContact === false ? \"cvEditorPhotoContactHelp\" : \"cvEditorPhotoHelp\")", + "ownerComponent": "job-tracker-ui/src/components/cv/CvCustomizeTab.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorPhotoContactHelp", + "cvEditorPhotoHelp" + ] + }, + { + "file": "job-tracker-ui/src/pipeline.ts", + "line": 149, + "sourceSha256": "fa755ced07a90cef79ceff1622049adc7ed7df3794c942512d9675ef04af8843", + "kind": "dynamic-or-unknown-t-call", + "text": "t(LABEL_KEYS[normalized])", + "ownerComponent": "job-tracker-ui/src/pipeline.ts", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 130, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(statuses[value] ?? 'processingUnknown')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 131, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(stages[value])", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 132, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(value === 'timeout' ? 'processingFailureTimeout' : value === 'lease_expired' ? 'processingFailureLease' : value === 'deadline_exceeded' ? 'processingFailureDeadline' : value === 'entitlement_changed' ? 'processingFailureAccess' : 'processingFailureGeneric')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingFailureTimeout", + "processingFailureLease", + "processingFailureDeadline", + "processingFailureAccess", + "processingFailureGeneric" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 133, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(value === 'document' ? 'processingWorkerDocument' : value === 'ai' ? 'processingWorkerAi' : 'processingWorkerUntracked')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingWorkerDocument", + "processingWorkerAi", + "processingWorkerUntracked" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 140, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(paused ? 'processingResume' : 'processingPause')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingResume", + "processingPause" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 142, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error === 'denied' ? 'processingDenied' : error === 'invalid' ? 'processingInvalidFilters' : paused ? 'processingPaused' : error ? 'processingReconnecting' : 'processingConnected')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingDenied", + "processingInvalidFilters", + "processingPaused", + "processingReconnecting", + "processingConnected" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 145, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error === 'denied' ? 'processingDenied' : error === 'invalid' ? 'processingInvalidFilters' : 'processingLoadFailed')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingDenied", + "processingInvalidFilters", + "processingLoadFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 153, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(tasks[value])", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 173, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key as TranslationKey)", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 175, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(tasks[item.taskType] ?? 'processingOther')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 178, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.workerEnabled ? 'processingEnabled' : 'processingDisabled')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingEnabled", + "processingDisabled" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 191, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(workers[item.name] ?? 'processingWorkerUntracked')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 191, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.flagEnabled ? 'processingEnabled' : 'processingDisabled')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingEnabled", + "processingDisabled" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 199, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(copy === 'copied' ? 'processingCopied' : 'processingCopyFailed')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingCopied", + "processingCopyFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 205, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key)", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 207, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(detail.status === 'waiting_for_retry' ? 'processingRetryScheduled' : 'processingRetryUnknown')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "processingRetryScheduled", + "processingRetryUnknown" + ] + }, + { + "file": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "line": 212, + "sourceSha256": "13973a963ec247c2b61230f5b96ebe1e5feb73ccc9374f15c9bd05f2b3699d1c", + "kind": "dynamic-or-unknown-t-call", + "text": "t(kinds[item.kind] ?? 'processingUnknown')", + "ownerComponent": "job-tracker-ui/src/views/AdminProcessingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "line": 333, + "sourceSha256": "1e76931739d779d9edb17e22846d16fffef7ebd1a0c27aebf740c2c46c79b3de", + "kind": "dynamic-or-unknown-t-call", + "text": "t(kind === \"status\" && status ? \"adminSystemRefreshFailed\" : readErrorKeys[kind])", + "ownerComponent": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "line": 448, + "sourceSha256": "1e76931739d779d9edb17e22846d16fffef7ebd1a0c27aebf740c2c46c79b3de", + "kind": "dynamic-or-unknown-t-call", + "text": "t(actionErrorKeys[actionError.kind])", + "ownerComponent": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "line": 449, + "sourceSha256": "1e76931739d779d9edb17e22846d16fffef7ebd1a0c27aebf740c2c46c79b3de", + "kind": "dynamic-or-unknown-t-call", + "text": "t(message)", + "ownerComponent": "job-tracker-ui/src/views/AdminSystemPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "line": 271, + "sourceSha256": "107b4db54ef15d88254e01bc404136b987755588c1d171b800c2a47f93488b50", + "kind": "dynamic-or-unknown-t-call", + "text": "t(section === \"application\" ? \"workspaceApplicationSections\" : \"workspaceTimelineSections\")", + "ownerComponent": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "workspaceApplicationSections", + "workspaceTimelineSections" + ] + }, + { + "file": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "line": 392, + "sourceSha256": "107b4db54ef15d88254e01bc404136b987755588c1d171b800c2a47f93488b50", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`checklistItem_${nextStepToken}` as any)", + "ownerComponent": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "line": 395, + "sourceSha256": "107b4db54ef15d88254e01bc404136b987755588c1d171b800c2a47f93488b50", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`checklistItem_${nextStepToken}Description` as any)", + "ownerComponent": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "line": 505, + "sourceSha256": "107b4db54ef15d88254e01bc404136b987755588c1d171b800c2a47f93488b50", + "kind": "dynamic-or-unknown-t-call", + "text": "t(keys[section])", + "ownerComponent": "job-tracker-ui/src/views/ApplicationWorkspacePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "line": 508, + "sourceSha256": "d8f302c2bd8b09544a41735b4d63818c2843ca5193f7b733a3e8447c828f181a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(stageKeys[stage])", + "ownerComponent": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "line": 509, + "sourceSha256": "d8f302c2bd8b09544a41735b4d63818c2843ca5193f7b733a3e8447c828f181a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(importLabelKeys[value])", + "ownerComponent": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "line": 865, + "sourceSha256": "d8f302c2bd8b09544a41735b4d63818c2843ca5193f7b733a3e8447c828f181a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(runActionErrors[run.id].key)", + "ownerComponent": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "line": 897, + "sourceSha256": "d8f302c2bd8b09544a41735b4d63818c2843ca5193f7b733a3e8447c828f181a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(change.added ? \"careerImportAdded\" : \"careerImportUpdated\")", + "ownerComponent": "job-tracker-ui/src/views/CareerProfilePage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerImportAdded", + "careerImportUpdated" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 402, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(draftError.action === \"discard\"\r\n ? draftError.status === 409 ? \"emailInboxDraftChangedDiscard\" : \"emailInboxDraftDiscardFailed\"\r\n : draftError.action === \"prepare\" ? draftError.status === 409 ? \"emailInboxNewAttemptConflict\" : \"emailInboxNewAttemptFailed\"\r\n : draftError.status === 409 ? \"emailInboxDraftChangedElsewhere\" : \"emailInboxDraftSaveFailed\")", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxDraftChangedDiscard", + "emailInboxDraftDiscardFailed", + "emailInboxNewAttemptConflict", + "emailInboxNewAttemptFailed", + "emailInboxDraftChangedElsewhere", + "emailInboxDraftSaveFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 424, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(saved ? \"emailInboxCurrentDraftSaved\" : \"emailInboxUnsavedDraftLost\")", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxCurrentDraftSaved", + "emailInboxUnsavedDraftLost" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 672, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(provider.canSend ? \"emailInboxProviderReadSend\" : \"emailInboxProviderReadOnly\", { provider: provider.displayName, identity })", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxProviderReadSend", + "emailInboxProviderReadOnly" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 679, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(inboxTotal === 1 ? \"emailInboxItem\" : \"emailInboxItems\", { count: inboxTotal })", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxItem", + "emailInboxItems" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 714, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(storedDrafts.length === 1 ? \"emailInboxSavedDraftOne\" : \"emailInboxSavedDraftMany\", { count: storedDrafts.length })", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxSavedDraftOne", + "emailInboxSavedDraftMany" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 838, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.direction === \"inbound\" ? \"emailInboxInbound\" : item.direction === \"outbound\" ? \"emailInboxOutbound\" : \"emailInboxInternal\")", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxInbound", + "emailInboxOutbound", + "emailInboxInternal" + ] + }, + { + "file": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "line": 842, + "sourceSha256": "55655bccb24c8659cd9e5cd66b2d796dda29b6a02d5ad5244d8f371261375bc1", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.attachmentCount === 1 ? \"emailInboxAttachmentCount\" : \"emailInboxAttachments\", { count: item.attachmentCount })", + "ownerComponent": "job-tracker-ui/src/views/CorrespondenceInboxPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "emailInboxAttachmentCount", + "emailInboxAttachments" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 450, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(updated.isPublic ? \"cvEditorNowPublic\" : \"cvEditorNowPrivate\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorNowPublic", + "cvEditorNowPrivate" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 486, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key)", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 669, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(([\"cvEditorTemplate\", \"cvEditorContent\", \"cvEditorCustomize\", \"cvEditorAiTools\", \"cvEditorHistory\"] as const)[value])", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 724, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(html ? \"cvEditorPreviewPrevious\" : \"cvEditorPreviewEmpty\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorPreviewPrevious", + "cvEditorPreviewEmpty" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1145, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(row.hidden ? \"cvEditorOmitted\" : \"cvEditorIncluded\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorOmitted", + "cvEditorIncluded" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1303, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(row.hidden ? \"cvEditorShowSection\" : \"cvEditorHideSection\", { section: sectionLabel })", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorShowSection", + "cvEditorHideSection" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1310, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(expanded ? \"cvEditorCollapseSection\" : \"cvEditorExpandSection\", { section: sectionLabel })", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorCollapseSection", + "cvEditorExpandSection" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1316, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(row.hidden ? \"cvEditorOmitted\" : \"cvEditorIncluded\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorOmitted", + "cvEditorIncluded" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1316, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(customSection ? \"cvEditorCvOnly\" : \"cvEditorSourceProfile\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorCvOnly", + "cvEditorSourceProfile" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1321, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(row.hidden ? \"cvEditorOmitted\" : \"cvEditorIncluded\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorOmitted", + "cvEditorIncluded" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1363, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(row.items != null ? \"cvEditorCustomized\" : \"cvEditorUsingSource\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorCustomized", + "cvEditorUsingSource" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1435, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(hidden ? \"cvEditorOmitted\" : \"cvEditorIncluded\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorOmitted", + "cvEditorIncluded" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1440, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(hidden ? \"cvEditorShowEntry\" : \"cvEditorHideEntry\", { entry: entryLabel })", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorShowEntry", + "cvEditorHideEntry" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1448, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(field === \"title\" ? \"cvEditorEntryTitle\" : \"cvEditorEntrySubtitle\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorEntryTitle", + "cvEditorEntrySubtitle" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1451, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(ov[field]?.trim() ? \"cvEditorCustomized\" : ov[field] != null ? \"cvEditorBlankUsesSource\" : \"cvEditorUsingSource\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorCustomized", + "cvEditorBlankUsesSource", + "cvEditorUsingSource" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1459, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(ov.bullets != null ? \"cvEditorCustomized\" : \"cvEditorUsingSource\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvEditorCustomized", + "cvEditorUsingSource" + ] + }, + { + "file": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "line": 1490, + "sourceSha256": "b163cbe792e98cc1afdd775ffb595c1abb8b58c5fdd9a79bbd6fa6b552f868ae", + "kind": "dynamic-or-unknown-t-call", + "text": "t(source)", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderEditor.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CvBuilderPage.tsx", + "line": 178, + "sourceSha256": "b4cc784cadb3b820b78b7b688e3c9961ed724230de4fc5fffae166d29620f361", + "kind": "dynamic-or-unknown-t-call", + "text": "t(actionError.key)", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/CvBuilderPage.tsx", + "line": 245, + "sourceSha256": "b4cc784cadb3b820b78b7b688e3c9961ed724230de4fc5fffae166d29620f361", + "kind": "dynamic-or-unknown-t-call", + "text": "t(contentSource === \"profile\" ? \"cvDashboardProfileSelectionHelp\" : \"cvDashboardBlankHelp\")", + "ownerComponent": "job-tracker-ui/src/views/CvBuilderPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvDashboardProfileSelectionHelp", + "cvDashboardBlankHelp" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 222, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(label)", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 225, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(states.find(([value]) => value === item.state)?.[1] ?? \"documentsCurrent\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 226, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.visibility === \"public\" ? \"documentsPublic\" : \"documentsPrivate\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsPublic", + "documentsPrivate" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 231, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(types.find(([value]) => value === item.type)?.[1] ?? \"documentsTypeAttachment\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 243, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(({ resume: \"attachmentsPurposeResume\", \"cover-letter\": \"attachmentsPurposeCoverLetter\", portfolio: \"attachmentsPurposePortfolio\", \"case-study\": \"attachmentsPurposeCaseStudy\", certificate: \"attachmentsPurposeCertificate\" } as Record)[item.purpose.toLowerCase()] ?? \"attachmentsPurposeOther\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 245, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.useForAi ? \"attachmentsAiEnabled\" : \"attachmentsAiDisabled\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "attachmentsAiEnabled", + "attachmentsAiDisabled" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 256, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(item.type === \"email-draft\" ? \"documentsOpenCorrespondence\" : item.type === \"submitted-package\" ? \"documentsOpenSubmissionHistory\" : \"documentsOpenSource\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsOpenCorrespondence", + "documentsOpenSubmissionHistory", + "documentsOpenSource" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 258, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(downloadState?.id === item.id && downloadState.busy ? \"loading\" : \"documentsDownloadAttachment\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "loading", + "documentsDownloadAttachment" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 260, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(downloadState?.status === 404 ? \"documentsRefresh\" : \"retry\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsRefresh", + "retry" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 260, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(downloadState?.status === 404 ? \"documentsDownloadUnavailable\" : \"documentsDownloadFailed\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsDownloadUnavailable", + "documentsDownloadFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 264, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(title)", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 265, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(title)", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 265, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(label)", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 276, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(jobsError ? \"documentsJobsLoadFailed\" : \"documentsNoJobs\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsJobsLoadFailed", + "documentsNoJobs" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 287, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(result.total > 0 ? \"documentsPageEmpty\" : filtered ? \"documentsNoMatches\" : \"documentsEmpty\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsPageEmpty", + "documentsNoMatches", + "documentsEmpty" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 288, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(result.total > 0 ? \"documentsPageEmptyHelp\" : filtered ? \"documentsNoMatchesHelp\" : \"documentsEmptyHelp\")", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsPageEmptyHelp", + "documentsNoMatchesHelp", + "documentsEmptyHelp" + ] + }, + { + "file": "job-tracker-ui/src/views/DocumentsPage.tsx", + "line": 295, + "sourceSha256": "fa53a826ebbdbc868c8b21a0387138c12611d3e2867de0fa0e5f6d8483471eb9", + "kind": "dynamic-or-unknown-t-call", + "text": "t(kind === \"page\" ? \"documentsGoToPage\" : kind === \"previous\" ? \"documentsPreviousPage\" : kind === \"next\" ? \"documentsNextPage\" : kind === \"first\" ? \"documentsFirstPage\" : \"documentsLastPage\", { page: target ?? 1 })", + "ownerComponent": "job-tracker-ui/src/views/DocumentsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "documentsGoToPage", + "documentsPreviousPage", + "documentsNextPage", + "documentsFirstPage", + "documentsLastPage" + ] + }, + { + "file": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "line": 214, + "sourceSha256": "3609ec12dd9619f7cbbd3541dcf2563a33e4ef3cb7cf9eab0cfc4a17a43d22d8", + "kind": "dynamic-or-unknown-t-call", + "text": "t(disconnected ? \"gmailReviewNotConnected\" : \"gmailReviewLoadFailed\")", + "ownerComponent": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "gmailReviewNotConnected", + "gmailReviewLoadFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "line": 229, + "sourceSha256": "3609ec12dd9619f7cbbd3541dcf2563a33e4ef3cb7cf9eab0cfc4a17a43d22d8", + "kind": "dynamic-or-unknown-t-call", + "text": "t(embedded ? \"gmailReviewEmbeddedTitle\" : \"gmailReviewTitle\")", + "ownerComponent": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "gmailReviewEmbeddedTitle", + "gmailReviewTitle" + ] + }, + { + "file": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "line": 231, + "sourceSha256": "3609ec12dd9619f7cbbd3541dcf2563a33e4ef3cb7cf9eab0cfc4a17a43d22d8", + "kind": "dynamic-or-unknown-t-call", + "text": "t(writeError.key)", + "ownerComponent": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "line": 231, + "sourceSha256": "3609ec12dd9619f7cbbd3541dcf2563a33e4ef3cb7cf9eab0cfc4a17a43d22d8", + "kind": "dynamic-or-unknown-t-call", + "text": "t(writeError.key)", + "ownerComponent": "job-tracker-ui/src/views/GmailReviewPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "line": 229, + "sourceSha256": "e15f5183fe6d41ecb7a53ec9806872a67f0d6ce683354d0abef53527bd397b94", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error ?? \"jobDiscoveryUnavailable\")", + "ownerComponent": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "line": 230, + "sourceSha256": "e15f5183fe6d41ecb7a53ec9806872a67f0d6ce683354d0abef53527bd397b94", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error)", + "ownerComponent": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "line": 240, + "sourceSha256": "e15f5183fe6d41ecb7a53ec9806872a67f0d6ce683354d0abef53527bd397b94", + "kind": "dynamic-or-unknown-t-call", + "text": "t(jobs.length === 1 ? \"jobDiscoveryResultOne\" : \"jobDiscoveryResultMany\", { count: jobs.length })", + "ownerComponent": "job-tracker-ui/src/views/JobDiscoveryPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "jobDiscoveryResultOne", + "jobDiscoveryResultMany" + ] + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 85, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(plan.id === \"free\" ? \"landingPlanFree\" : \"landingPlanPro\")", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "landingPlanFree", + "landingPlanPro" + ] + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 86, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(plan.id === \"free\" ? \"landingPlanFreeSummary\" : \"landingPlanProSummary\")", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "landingPlanFreeSummary", + "landingPlanProSummary" + ] + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 87, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`landingPlan${plan.id === \"free\" ? \"Free\" : \"Pro\"}Feature${index + 1}` as TranslationKey)", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 88, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(plan.id === \"free\" ? \"landingPlanFreeCta\" : \"landingPlanProCta\")", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "landingPlanFreeCta", + "landingPlanProCta" + ] + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 172, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(f.title)", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 173, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(f.body)", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 190, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(s.title)", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 191, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(s.body)", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/OperationsPage.tsx", + "line": 127, + "sourceSha256": "8cff1e08b2009ff683957849af71d6e76916a28ae218e647d9e3c04a12ad5f9b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(taskKeys[task])", + "ownerComponent": "job-tracker-ui/src/views/OperationsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/OperationsPage.tsx", + "line": 129, + "sourceSha256": "8cff1e08b2009ff683957849af71d6e76916a28ae218e647d9e3c04a12ad5f9b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(error.kind === \"committed\" ? \"operationsCommittedRefreshFailed\" : error.kind === \"action\" ? \"operationsActionFailed\" : \"operationsLoadFailed\")", + "ownerComponent": "job-tracker-ui/src/views/OperationsPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "operationsCommittedRefreshFailed", + "operationsActionFailed", + "operationsLoadFailed" + ] + }, + { + "file": "job-tracker-ui/src/views/OperationsPage.tsx", + "line": 158, + "sourceSha256": "8cff1e08b2009ff683957849af71d6e76916a28ae218e647d9e3c04a12ad5f9b", + "kind": "dynamic-or-unknown-t-call", + "text": "t(statusKeys[operation.status])", + "ownerComponent": "job-tracker-ui/src/views/OperationsPage.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/PublicCvPage.tsx", + "line": 41, + "sourceSha256": "ab48f5a8f59e9232ca0238c6c729449e18e83237cda34971d256a92e88a12e26", + "kind": "dynamic-or-unknown-t-call", + "text": "t(unavailable ? \"publicCvUnavailableTitle\" : \"publicCvLoadFailedTitle\")", + "ownerComponent": "job-tracker-ui/src/views/PublicCvPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "publicCvUnavailableTitle", + "publicCvLoadFailedTitle" + ] + }, + { + "file": "job-tracker-ui/src/views/PublicCvPage.tsx", + "line": 91, + "sourceSha256": "ab48f5a8f59e9232ca0238c6c729449e18e83237cda34971d256a92e88a12e26", + "kind": "dynamic-or-unknown-t-call", + "text": "t(unavailable ? \"publicCvUnavailableBody\" : \"publicCvLoadFailedBody\")", + "ownerComponent": "job-tracker-ui/src/views/PublicCvPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "publicCvUnavailableBody", + "publicCvLoadFailedBody" + ] + }, + { + "file": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "line": 28, + "sourceSha256": "63b7d8ea8c0537ea093850306c7a09a17d49a585377deba99d0597384850c30a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(emailChange ? \"missingEmailChangeLinkInfo\" : \"missingVerifyLinkInfo\")", + "ownerComponent": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "missingEmailChangeLinkInfo", + "missingVerifyLinkInfo" + ] + }, + { + "file": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "line": 42, + "sourceSha256": "63b7d8ea8c0537ea093850306c7a09a17d49a585377deba99d0597384850c30a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(emailChange ? \"confirmEmailChangeTitle\" : \"verifyEmailTitle\")", + "ownerComponent": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "confirmEmailChangeTitle", + "verifyEmailTitle" + ] + }, + { + "file": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "line": 47, + "sourceSha256": "63b7d8ea8c0537ea093850306c7a09a17d49a585377deba99d0597384850c30a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(emailChange ? \"confirmEmailChangeVerifying\" : \"verifyEmailVerifying\")", + "ownerComponent": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "confirmEmailChangeVerifying", + "verifyEmailVerifying" + ] + }, + { + "file": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "line": 50, + "sourceSha256": "63b7d8ea8c0537ea093850306c7a09a17d49a585377deba99d0597384850c30a", + "kind": "dynamic-or-unknown-t-call", + "text": "t(emailChange ? \"confirmEmailChangeSuccess\" : \"verifyEmailSuccess\")", + "ownerComponent": "job-tracker-ui/src/views/VerifyEmailPage.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "confirmEmailChangeSuccess", + "verifyEmailSuccess" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CareerEvidenceBank.tsx", + "line": 83, + "sourceSha256": "fc85ccfc1addd48af3a29bc263b089858765b2ac3ec7db3b66dedc55ddfab625", + "kind": "dynamic-or-unknown-t-call", + "text": "t(`careerEvidenceCategory_${value}` as \"careerEvidenceCategory_achievement\")", + "ownerComponent": "job-tracker-ui/src/views/career/CareerEvidenceBank.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "line": 45, + "sourceSha256": "0c772feb6bde8324676b0884aaf343283465c5cd3b3318128363063df4ea22ab", + "kind": "dynamic-or-unknown-t-call", + "text": "t(tone.key, { percent: Math.round(metadata.confidence * 100) })", + "ownerComponent": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "line": 46, + "sourceSha256": "0c772feb6bde8324676b0884aaf343283465c5cd3b3318128363063df4ea22ab", + "kind": "dynamic-or-unknown-t-call", + "text": "t(tone.key)", + "ownerComponent": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "line": 108, + "sourceSha256": "e7ff8bdd8e541cf972f448298cc22e435a741e60a85222a85aafc12cf6536f5e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(review.length === 1 ? \"careerOverviewReviewOne\" : \"careerOverviewReviewMany\", { count: review.length })", + "ownerComponent": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerOverviewReviewOne", + "careerOverviewReviewMany" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "line": 109, + "sourceSha256": "e7ff8bdd8e541cf972f448298cc22e435a741e60a85222a85aafc12cf6536f5e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(active.length === 1 ? \"careerOverviewProcessingOne\" : \"careerOverviewProcessingMany\", { count: active.length })", + "ownerComponent": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerOverviewProcessingOne", + "careerOverviewProcessingMany" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "line": 110, + "sourceSha256": "e7ff8bdd8e541cf972f448298cc22e435a741e60a85222a85aafc12cf6536f5e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(failed.length === 1 ? \"careerOverviewFailedOne\" : \"careerOverviewFailedMany\", { count: failed.length })", + "ownerComponent": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerOverviewFailedOne", + "careerOverviewFailedMany" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "line": 111, + "sourceSha256": "e7ff8bdd8e541cf972f448298cc22e435a741e60a85222a85aafc12cf6536f5e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(runs.length > 0 ? \"careerOverviewImportComplete\" : \"careerOverviewNoImport\")", + "ownerComponent": "job-tracker-ui/src/views/career/CareerWorkspaceOverview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerOverviewImportComplete", + "careerOverviewNoImport" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CvImportMappingEditor.tsx", + "line": 56, + "sourceSha256": "0066980fcef56c72cd91770dae9cf43bd2d7ea12507c256916efc59bda11e1fa", + "kind": "dynamic-or-unknown-t-call", + "text": "t(draft.category === \"contact\" ? \"cvImportMappingContactDestination\" : catalog?.fields.every(field => field.name === \"value\") ? \"cvImportMappingAppend\" : \"cvImportMappingNew\")", + "ownerComponent": "job-tracker-ui/src/views/career/CvImportMappingEditor.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvImportMappingContactDestination", + "cvImportMappingAppend", + "cvImportMappingNew" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "line": 114, + "sourceSha256": "bdecd17437d919a33d9deaa855262b1f1baf78b4a22eef0e88ac1fdbb5ebeda4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(labelKeys[value])", + "ownerComponent": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "line": 165, + "sourceSha256": "bdecd17437d919a33d9deaa855262b1f1baf78b4a22eef0e88ac1fdbb5ebeda4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(warningKeys[warning])", + "ownerComponent": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + }, + { + "file": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "line": 200, + "sourceSha256": "bdecd17437d919a33d9deaa855262b1f1baf78b4a22eef0e88ac1fdbb5ebeda4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(field.method === \"docling\" ? \"cvImportMethodDocument\" : \"cvImportMethodDeterministic\")", + "ownerComponent": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "cvImportMethodDocument", + "cvImportMethodDeterministic" + ] + }, + { + "file": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "line": 221, + "sourceSha256": "bdecd17437d919a33d9deaa855262b1f1baf78b4a22eef0e88ac1fdbb5ebeda4", + "kind": "dynamic-or-unknown-t-call", + "text": "t(applying ? \"careerImportApplying\" : \"cvImportApplyReviewed\")", + "ownerComponent": "job-tracker-ui/src/views/career/CvImportReview.tsx", + "contextStatus": "branch-keys-resolved; translator-context-pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "finite-literal-branches-verified", + "possibleKeys": [ + "careerImportApplying", + "cvImportApplyReviewed" + ] + }, + { + "file": "job-tracker-ui/src/views/career/careerCompletenessLabels.ts", + "line": 15, + "sourceSha256": "b841cc4af73307fa33e772b8a10ddfe9620a7566f2b30ef34eb2b832da02d41e", + "kind": "dynamic-or-unknown-t-call", + "text": "t(key)", + "ownerComponent": "job-tracker-ui/src/views/career/careerCompletenessLabels.ts", + "contextStatus": "pending", + "sensitivity": "unclassified-template; do-not-export-runtime-values", + "resolution": "requires-owner-map-or-runtime-key-review" + } + ] +} diff --git a/docs/i18n/00/FRONTEND_LITERAL_CANDIDATES.json b/docs/i18n/00/FRONTEND_LITERAL_CANDIDATES.json new file mode 100644 index 0000000..2483ffd --- /dev/null +++ b/docs/i18n/00/FRONTEND_LITERAL_CANDIDATES.json @@ -0,0 +1,319 @@ +{ + "baseline": "5cb903b989742b7a96cb22ddf4c0e24993b18980", + "method": "TypeScript AST syntactic triage; no symbol resolution or runtime coverage claim", + "filesScanned": 134, + "entries": [ + { + "file": "job-tracker-ui/src/App.tsx", + "line": 488, + "sourceSha256": "3b5645d12f2c92ed8999d7a072bd7d47fac77023d460a19a9b3bfc2a4191962f", + "kind": "jsx-text", + "text": "Session changed. Clearing this page…", + "ownerComponent": "job-tracker-ui/src/App.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "localise-with-session-boundary-preservation", + "translatorContext": "Alert rendered while old application tree is invalidated; preserve unmount/privacy behavior and avoid dependencies on the discarded session/provider tree." + }, + { + "file": "job-tracker-ui/src/assets/JobbjaktMark.tsx", + "line": 7, + "sourceSha256": "5a539514876a66eaf17ec68eb7ce3d28c558384bc24ab76b61f73be8df754473", + "kind": "jsx-attribute:aria-label", + "text": "Jobbjakt", + "ownerComponent": "job-tracker-ui/src/assets/JobbjaktMark.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 198, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "jsx-text", + "text": "· v", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 360, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "jsx-text", + "text": "KB", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "line": 699, + "sourceSha256": "25216c80ef92d519baad9e428a0e77390150605c1a3529a4809819d120661f29", + "kind": "jsx-text", + "text": "v", + "ownerComponent": "job-tracker-ui/src/components/ApplicationAssets.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/components/Attachments.tsx", + "line": 361, + "sourceSha256": "fe706526f36d92c10d2a0adfd7abb634d0ebee28f5d7e1794c590179b4fd884c", + "kind": "jsx-attribute:title", + "text": "pdf", + "ownerComponent": "job-tracker-ui/src/components/Attachments.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "descriptive-localised-accessible-title", + "translatorContext": "Attachment preview iframe title; describe document preview purpose, without exposing private filename in exported translator context." + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 157, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "jsx-text", + "text": "pt ·", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "line": 157, + "sourceSha256": "17ea0c608db7bc05171fb3c44f378c1acaa78fbdd337f9330002ef6346b92546", + "kind": "jsx-text", + "text": "mm ·", + "ownerComponent": "job-tracker-ui/src/components/CoverLetterDocument.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 227, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "jsx-attribute:label", + "text": "Gmail", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 239, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "jsx-attribute:label", + "text": "Outlook / Microsoft 365", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "line": 264, + "sourceSha256": "b71228ee28ee73525014c8ece8690364e0f70ddaca3ee7211e9076123d120b1d", + "kind": "jsx-attribute:placeholder", + "text": "imap.example.com", + "ownerComponent": "job-tracker-ui/src/components/EmailProviderConnections.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/components/JobFlowBar.tsx", + "line": 147, + "sourceSha256": "643053f6ac883f23ef74c66def7a42678cd7917ed11ca802b11be25ec6df0cb2", + "kind": "jsx-text", + "text": "Flow", + "ownerComponent": "job-tracker-ui/src/components/JobFlowBar.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "extract-controlled-label", + "translatorContext": "Workflow overline in JobFlowBar; ordinary user-facing UI label, not a persisted status." + }, + { + "file": "job-tracker-ui/src/components/QuickCommandDialog.tsx", + "line": 166, + "sourceSha256": "27cbbb8b8596fdf4e7474eccfdb6d9a8a219f4baff6a9b8013b825ce5fc2c411", + "kind": "jsx-text", + "text": "Ctrl/Cmd + K", + "ownerComponent": "job-tracker-ui/src/components/QuickCommandDialog.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 312, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-text", + "text": "Jobbjakt", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 415, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-text", + "text": "Jobbjakt", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 563, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-text", + "text": "commit", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "localise-label-preserve-identifier", + "translatorContext": "Technical display label may be translated; commit/job identifier remains invariant and must not enter translation resources." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 692, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-attribute:aria-label", + "text": "English", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "locale-selector-contract", + "translatorContext": "Replace ambiguous country-like abbreviation/undifferentiated Norwegian label only within approved locale-selector work; preserve current nb behavior and native labels." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 692, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-text", + "text": "EN", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "locale-selector-contract", + "translatorContext": "Replace ambiguous country-like abbreviation/undifferentiated Norwegian label only within approved locale-selector work; preserve current nb behavior and native labels." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 693, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-attribute:aria-label", + "text": "Norsk", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "locale-selector-contract", + "translatorContext": "Replace ambiguous country-like abbreviation/undifferentiated Norwegian label only within approved locale-selector work; preserve current nb behavior and native labels." + }, + { + "file": "job-tracker-ui/src/layout/AppShell.tsx", + "line": 693, + "sourceSha256": "e75a58f2984bf47d7edc3c2c51439242aba2df32675a30b1f17088095ea1d634", + "kind": "jsx-text", + "text": "NO", + "ownerComponent": "job-tracker-ui/src/layout/AppShell.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "locale-selector-contract", + "translatorContext": "Replace ambiguous country-like abbreviation/undifferentiated Norwegian label only within approved locale-selector work; preserve current nb behavior and native labels." + }, + { + "file": "job-tracker-ui/src/views/AdminAuditPage.tsx", + "line": 146, + "sourceSha256": "b78d0c5f6ec86a4ee3d2214e6854e638d9f73a5c69c8d5b01023d8c60b46ac81", + "kind": "jsx-text", + "text": "jobId=", + "ownerComponent": "job-tracker-ui/src/views/AdminAuditPage.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "localise-label-preserve-identifier", + "translatorContext": "Technical display label may be translated; commit/job identifier remains invariant and must not enter translation resources." + }, + { + "file": "job-tracker-ui/src/views/AdminUsersPage.tsx", + "line": 274, + "sourceSha256": "674290a26fc279a25e43176194716dea87f427d1885ecce70dea7c368ab0c6f8", + "kind": "jsx-attribute:label", + "text": "—", + "ownerComponent": "job-tracker-ui/src/views/AdminUsersPage.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "empty-state-accessibility-review", + "translatorContext": "No-role placeholder; visual glyph can stay but verify meaningful accessible context." + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 99, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "jsx-text", + "text": "Jobbjakt", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/views/LandingPage.tsx", + "line": 133, + "sourceSha256": "2c550aa126e1db8786ed10b895d2403491ce50bf5073fc95b8a0fcb0cb0e083e", + "kind": "jsx-text", + "text": "React · TypeScript · ASP.NET Core · EF Core · FastAPI AI · Gmail", + "ownerComponent": "job-tracker-ui/src/views/LandingPage.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "launch-copy-review", + "translatorContext": "Technology list is public brand names but poor user-value copy; coordinate replacement with Launch Site design approval." + }, + { + "file": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "line": 100, + "sourceSha256": "0c772feb6bde8324676b0884aaf343283465c5cd3b3318128363063df4ea22ab", + "kind": "jsx-attribute:label", + "text": "GitHub", + "ownerComponent": "job-tracker-ui/src/views/career/CareerProfileSections.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "preserve-proper-name-or-example", + "translatorContext": "Public brand/provider label or synthetic host example; not user content. Retain original spelling; localise surrounding guidance separately." + }, + { + "file": "job-tracker-ui/src/views/career/ProfileCompleteness.tsx", + "line": 55, + "sourceSha256": "95f017b1495cf9d88a2b69e7c6ae8ef83d55f2b1ad7b6f54895e280b147743b5", + "kind": "jsx-text", + "text": "v", + "ownerComponent": "job-tracker-ui/src/views/career/ProfileCompleteness.tsx", + "contextStatus": "source-context-reviewed; implementation-pending", + "sensitivity": "public-ui-template; adjacent runtime identifiers excluded", + "decision": "version-or-unit-formatting-review", + "translatorContext": "Keep numeric/version identity; review locale number formatting and descriptive accessible labels. Do not translate user file/name data." + } + ] +} diff --git a/docs/i18n/00/HANDOFF.md b/docs/i18n/00/HANDOFF.md index 5ea5702..76ab4b7 100644 --- a/docs/i18n/00/HANDOFF.md +++ b/docs/i18n/00/HANDOFF.md @@ -14,4 +14,6 @@ Next authorised work, without implementation approval: The delegated researcher was interrupted by a service usage limit; the parent continued, corrected references to nonexistent deliverables and produced the actual inventory/catalogue/matrix. No agent is working in the background. Full stage completion must not be inferred from the presence of the expected filenames. +Continuation: CONTEXT_TRIAGE.md records all 188 dynamic calls, 108 finite-branch resolutions (240 existing-key references), four direct catalogue reads and 26 source-context-reviewed JSX/accessibility literal candidates. Seven concrete planning findings I00-13 through I00-19 added. Remaining dynamic call queue is 80; prior 188 count is the original inventory total, not the remaining queue. No application changes. + Product tests NOT RUN; source equality and planning checks PASSED within their documented limits. Preserve existing PDF evidence. No application models, production services, orchestrator configuration or signing/approval material accessed. diff --git a/docs/i18n/00/SURFACE_INVENTORY.md b/docs/i18n/00/SURFACE_INVENTORY.md index c012c69..f8f99a5 100644 --- a/docs/i18n/00/SURFACE_INVENTORY.md +++ b/docs/i18n/00/SURFACE_INVENTORY.md @@ -1,6 +1,6 @@ # Surface inventory and message accounting -All rows need a source-bound contextual census before I18N-00 acceptance. Existing-catalogue inventory is in `MESSAGE_INVENTORY.json`; a non-catalogue literal inventory is still PENDING and no `LITERAL_CANDIDATES.json` was produced. This is not a 100% coverage claim. Namespace assignments remain provisional until caller review; translator context cannot be inferred safely from key names alone. The AST inventory identifies syntactically named `t` calls, not symbol-resolved calls; context fields explicitly remain pending. +All rows need a source-bound contextual census before I18N-00 acceptance. Existing-catalogue inventory is in `MESSAGE_INVENTORY.json`; partial JSX/accessibility literals are now recorded in `FRONTEND_LITERAL_CANDIDATES.json`, with direct reads and dynamic calls in separate inventories. This is not a 100% coverage claim. Namespace assignments remain provisional until caller review; translator context cannot be inferred safely from key names alone. The AST inventory identifies syntactically named `t` calls, not symbol-resolved calls. See CONTEXT_TRIAGE.md for reviewed literal context and the 108 resolved conditional calls; 80 table/template/wrapper calls remain. | Surface / proposed namespace | Source owner / inspection target | Content boundary and required evidence | |---|---|---|