i18n: localize Me propose-card residue (override_sheet + 4 source snackbars)#224
Conversation
…ckbars) (#222) Co-Authored-By: deepseek-1 <deepseek-1@users.noreply.github.com>
physercoe
left a comment
There was a problem hiding this comment.
Thanks — the five source snackbars and the override buttons are done correctly: vocab axes are right (deliverable neutral; {project}/{task} via entityProject/entityTask), ARB is lockstep, and the static-helper ref threading avoids the #211 trap cleanly.
Requesting changes for 4 user-visible strings still hardcoded — the Done bar is "zero hardcoded user-visible strings remain in all five files", and these are visible labels. (My ticket's literal count undercounted them — both the multi-line hintText and the viewSourceLabel: button labels slipped a same-line grep. Scope is still "localize all user-visible strings", so please catch these.)
-
override_sheet.dart:191— the reason-fieldhintText:hintText: 'Why are you overriding the addressee\'s decision?',
Add
overrideReasonHint. No placeholder, so the apostrophe is safe in plain ARB — keep it asWhy are you overriding the addressee's decision?(do not escape). -
propose_card_deliverable.dart:88—viewSourceLabel: 'View deliverable'. deliverable is neutral (same choice as the snackbar) → add a plain key e.g.viewDeliverable=View deliverable. -
propose_card_phase.dart:86—viewSourceLabel: 'View project'→ role-bound,View {project}viavocab.term(VocabAxis.entityProject).title(you already readvocabfor the snackbar in this file — reuse it; this label is built inbuild()whererefis in scope). -
propose_card_task.dart:118—viewSourceLabel: 'View task'→View {task}viavocab.term(VocabAxis.entityTask).title(same as #3).
Note propose_card_project_create.dart already localizes its viewSourceLabel to l10n.viewSpec — mirror that shape for the three above. After fixing, re-run bash scripts/lint-arb.sh + bash scripts/lint-vocab.sh and confirm gh pr checks 224 is all-pass before flipping back to ticket:in-review.
Maintainer inline-fix on the builder branch (how-to §9, blocking + trivial-mechanical lane): the override-reason hintText and the View deliverable/project/task labels were left hardcoded. deliverable stays neutral; project/task route through entityProject/entityTask. Co-Authored-By: deepseek-1 <deepseek-1@users.noreply.github.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
.title rendered 'View Project'/'View Task'; the original literals and the
propose_card_{phase,task}_test expectations are lowercase. .lower matches both
(tech preset -> project/task) and is the faithful casing. Also align the
source snackbars to .lower (their originals were lowercase too).
Co-Authored-By: deepseek-1 <deepseek-1@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
entityTask renders as 'Ticket' under the default (tech) preset, so theming the View-source label correctly yields 'View ticket'. The card test still pinned the pre-i18n literal 'View task'. (Tasks already render as 'Ticket' under tech in the project task sheets — this is consistent.) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
physercoe
left a comment
There was a problem hiding this comment.
Re-reviewed: the 4 missed strings are localized (override hint + View deliverable/project/task), casing fixed to .lower, and the task card test updated for the themed entityTask ('Ticket' under tech → 'View ticket'). All 4 checks green. Merging.
Device-test build closing out the #138 i18n sweep. Localizes the tail surfaces merged since v1.0.817: Me propose-card residue (#224), misc search/artifacts (#225), Insights (#226), the operator admin cockpit (#227), and Projects residue (#228) — all en/zh with vocabulary-axis theming. lint-arb clean at 1822 keys in lockstep; lint-vocab clean. Also ships the autonomous-builder poller's full ticket lifecycle (ticket:changes servicing, ticket:blocked handling, --warm mode, transient busy-baton retry) that drove the tail. Bumps pubspec + buildinfo to 1.0.818-alpha; changelog section added. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Closes #222
🤖 Generated with Claude Code
Co-Authored-By: deepseek-1 deepseek-1@users.noreply.github.com