{ "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." } ] }