feat(balance): account form vehicle field + category rename via custom_label #207
No reviewers
Labels
No labels
autopilot:pending-human
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-clarification
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/Simpl-Resultat#207
Loading…
Reference in a new issue
No description provided.
Delete branch "issue-203-account-form-vehicle-custom-label"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #203
Issue 2 of
overnight-2026-06-01-bilan-axe-vehicule— input UI on top of the merged #202 data layer.What
vehicle_typedropdown — 6 fiscal envelopes (Non-enregistré/CELI/REER/FERR/CELIAPP/REEE) + None. Prefilled on edit, wired into create + update payloads. ⚠️ fiscal envelope, not an automobile.custom_labeltext field, written tocustom_label(neveri18n_key); user-created categories anchori18n_keyonbalance.category.<key>.custom_label, leavesi18n_keyintact (fixes bug I). Blank answer clears the override.renderCategoryLabelhelper (src/utils/) with two shape adapters (*FromCategory/*FromAccount) to bridgecustom_label/i18n_key/keyvscategory_*— applied at all 5 sites: AccountsPage (list + rename preview), AccountForm, SnapshotEditor, BalanceAccountsTable, BalancePage.useBalanceAccountspassesincludeInactive: false(dropdown + management list). KeptlistBalanceCategoriesdefaulttrueto preserve #202 behavior-neutral tests.BALANCE_VEHICLE_TYPESexported fromshared/typesas single source of truth; service reuses it.vehicleType.*,category.form.customLabel*,errors.vehicle_type_invalid.Tests
npm run build: 0 type errors.npm test: all green (canonicalbalance.service.test.ts129 + newrenderCategoryLabel.test.ts8).🤖 Generated with Claude Code
Review — APPROVE ✅
Revue indépendante (orchestrateur
/sprint), diff vérifié sur la branche.Vérifications
renderCategoryLabel: core scalaire + 2 adaptateurs (FromCategory/FromAccount) → gère la divergence de shape (custom_label/i18n_key/keyvscategory_*). Appliqué aux 5 sites : AccountsPage (liste + cellule compte), AccountForm (dropdown), SnapshotEditor, BalanceAccountsTable, BalancePage. 8 tests unitaires (précédence + adaptateurs).t(i18n_key, {defaultValue: key})— le helper le préserve à l'identique et ajoute la précédencecustom_labelpar-dessus. Les catégories user legacy s'affichent comme avant.custom_label, ne touche plusi18n_key(corrige bug I). Annuler (null) = no-op ; réponse vide = efface l'override (retour à la traduction).vehicle_typeoptionnel (""→null), préfill à l'édition, payload create+update ;BALANCE_VEHICLE_TYPESsource unique partagée avec la validation service.listBalanceCategories({includeInactive:false})dansuseBalanceAccounts→ seeds tfsa/rrsp désactivés absents du dropdown ET de la gestion. Sûr (v13 a re-rattaché les comptes àother).npm run buildok,vitestvert.Déviation acceptée : la création de catégorie écrit désormais
custom_label+i18n_key=balance.category.<key>(au lieu de free-text dans i18n_key) — cohérent avec le renommage, étend le fix bug I à la création.Verdict : APPROVE.