-
Notifications
You must be signed in to change notification settings - Fork 0
[Frontend] Review-i18n + board-picker polish residuals (PR #1869 / #1870 reviews) #1871
Copy link
Copy link
Open
Labels
Priority IIIValuable but unscheduled: residuals, tech-debt, performance, depth work.Valuable but unscheduled: residuals, tech-debt, performance, depth work.frontendPrimary implementation impact in Vue/TypeScript UI and client runtime.Primary implementation impact in Vue/TypeScript UI and client runtime.tech-debtDebt cleanup or deferred engineering quality work with limited product-surface change.Debt cleanup or deferred engineering quality work with limited product-surface change.uxDiscoverability, accessibility, interaction model, and user workflow quality.Discoverability, accessibility, interaction model, and user workflow quality.
Description
Activity
Metadata
Metadata
Assignees
Labels
Priority IIIValuable but unscheduled: residuals, tech-debt, performance, depth work.Valuable but unscheduled: residuals, tech-debt, performance, depth work.frontendPrimary implementation impact in Vue/TypeScript UI and client runtime.Primary implementation impact in Vue/TypeScript UI and client runtime.tech-debtDebt cleanup or deferred engineering quality work with limited product-surface change.Debt cleanup or deferred engineering quality work with limited product-surface change.uxDiscoverability, accessibility, interaction model, and user workflow quality.Discoverability, accessibility, interaction model, and user workflow quality.
Projects
- StatusShow more project fieldsPending
Small hardening/polish residuals from the PR #1869 and PR #1870 reviews (none merge-relevant):
Review i18n (PR #1869):
StoredConfidenceBreakdownis a pure type alias - it documents but does not enforce the wire-key invariant; a branded key type (or distinctwireKeyfield) would make fetch-time translation a compile error.describeErrorKey(TranscriptEvidenceViewer.vue) has no test; with missingWarn off, a catalog rename would silently render the raw key. OnemockRejectedValue({response:{status:403}})case closes it.Board picker (PR #1870):
5. The composer hint is not selection-bound: with a view-only board preselected via defaultBoardId, the disabled Capture button is explained only by the generic hint. Bind the hint to the selected option.
6. Pre-existing hardcoded English beside the new localized strings: 'No board · land in inbox' / 'Select a board…' - an ADR-0054 §8 all-or-nothing gap in the Inbox surface, predating #1870. Extract on the next Inbox i18n touch.