docs(help): fix stale help and guide texts of Budget, Reports and Transactions (#431) #443

Merged
maximus merged 1 commit from issue-431-stale-help into main 2026-10-16 00:37:40 +00:00
Owner

Generated autonomously by /autopilot run of 2026-10-13

Link 6 of 8 of milestone planned-2026-10-12-retours-onboarding-v0171, stacked on #442 (issue-430-cards-transactions-budget).

Issue #431 (closing keyword in the commit).

What

The page help (? button) and the guide (Markdown and in-app) described controls that no longer exist:

  • Budget: the "split button" (removed in v0.2.5) is replaced by typing in the Annual column; the Annual-column warning (cannot appear any more) is dropped; the help and the guide now say only last-level categories take an amount. budget.help.tips is rewritten as the 5 entries of the issue.
  • Reports: no more tabs (help tip 0 now names the five cards), "four" sub-reports / navigation cards become five, and "Zoom catégorie" / "Category Zoom" becomes the displayed title "Analyse par catégorie" / "Category Analysis" (guide heading included).
  • Transactions: the "+ icon" step now describes the right-click "Add as keyword" menu, and the tag icon on categorized rows.

Every claim was checked in the code before rewriting: five navCards in ReportsPage.tsx, reports.hub.categoryZoom label, Tag icon rendered only when row.category_id !== null (TransactionTable.tsx), right-click menu wired to reports.keyword.addFromTransaction in TransactionsPage.tsx, Annual edit calling onSplitEvenly (BudgetTable.tsx). The Budget sentences match the wording of the #430 cards.

Files

  • src/i18n/locales/fr.json, src/i18n/locales/en.json (budget.help.tips, reports.help.tips[0], docs.budget.*, docs.reports.*, docs.transactions.steps[4])
  • docs/guide-utilisateur.md (Transactions step 5, Budget step 4 and two tips, Reports hub sentence, "Analyse par catégorie" heading and two mentions)
  • CHANGELOG.md, CHANGELOG.fr.md (Fixed / Corrigé)

No code, no migration, no network call.

Decisions

  • HIGH: texts word for word from the issue; guide lines found by their quoted text. The bullet quoted as "- Le zoom catégorie est protégé" is in fact "- Le zoom catégorie est protégé contre les arborescences cycliques" and was replaced as "- L'analyse par catégorie est protégée contre…".
  • HIGH: phrases to keep are intact ("Les 4 cartes KPI et leurs formules", "il bascule les 4 cartes", "flipper les 4 cartes", the Balance stale warning); "répond à quatre questions" (hub intro) kept, it counts questions, not cards.
  • MEDIUM: no case added to docs/qa-onboarding.html (no card or control changes, help texts only). Rejected: a "? help" QA case.
  • MEDIUM: no new test (the plan asks for none); proofs below rely on the existing FR/EN guard and the grep control.

Proofs

Check Mutation Result
Control grep -P of the issue on src/i18n/locales/*.json docs/guide-utilisateur.md none (tip) no output, rc=1
Same grep guide restored from the base branch 7 hits (rc=0)
DocsContent.locales.test.ts (FR/EN item for item) one EN docs.budget.tips entry removed red: "match French and English item for item"
npm run build — green
npm test — 127 files, 2126 tests green

🤖 Generated with Claude Code

Generated autonomously by /autopilot run of 2026-10-13 Link 6 of 8 of milestone `planned-2026-10-12-retours-onboarding-v0171`, stacked on #442 (`issue-430-cards-transactions-budget`). Issue #431 (closing keyword in the commit). ## What The page help (? button) and the guide (Markdown and in-app) described controls that no longer exist: - Budget: the "split button" (removed in v0.2.5) is replaced by typing in the Annual column; the Annual-column warning (cannot appear any more) is dropped; the help and the guide now say only last-level categories take an amount. `budget.help.tips` is rewritten as the 5 entries of the issue. - Reports: no more tabs (help tip 0 now names the five cards), "four" sub-reports / navigation cards become five, and "Zoom catégorie" / "Category Zoom" becomes the displayed title "Analyse par catégorie" / "Category Analysis" (guide heading included). - Transactions: the "+ icon" step now describes the right-click "Add as keyword" menu, and the tag icon on categorized rows. Every claim was checked in the code before rewriting: five `navCards` in `ReportsPage.tsx`, `reports.hub.categoryZoom` label, `Tag` icon rendered only when `row.category_id !== null` (`TransactionTable.tsx`), right-click menu wired to `reports.keyword.addFromTransaction` in `TransactionsPage.tsx`, Annual edit calling `onSplitEvenly` (`BudgetTable.tsx`). The Budget sentences match the wording of the #430 cards. ## Files - `src/i18n/locales/fr.json`, `src/i18n/locales/en.json` (`budget.help.tips`, `reports.help.tips[0]`, `docs.budget.*`, `docs.reports.*`, `docs.transactions.steps[4]`) - `docs/guide-utilisateur.md` (Transactions step 5, Budget step 4 and two tips, Reports hub sentence, "Analyse par catégorie" heading and two mentions) - `CHANGELOG.md`, `CHANGELOG.fr.md` (Fixed / Corrigé) No code, no migration, no network call. ## Decisions - HIGH: texts word for word from the issue; guide lines found by their quoted text. The bullet quoted as "- Le zoom catégorie est **protégé**" is in fact "- Le zoom catégorie est **protégé contre les arborescences cycliques**" and was replaced as "- L'analyse par catégorie est **protégée contre…**". - HIGH: phrases to keep are intact ("Les 4 cartes KPI et leurs formules", "il bascule les 4 cartes", "flipper les 4 cartes", the Balance stale warning); "répond à quatre questions" (hub intro) kept, it counts questions, not cards. - MEDIUM: no case added to `docs/qa-onboarding.html` (no card or control changes, help texts only). Rejected: a "? help" QA case. - MEDIUM: no new test (the plan asks for none); proofs below rely on the existing FR/EN guard and the grep control. ## Proofs | Check | Mutation | Result | |---|---|---| | Control `grep -P` of the issue on `src/i18n/locales/*.json docs/guide-utilisateur.md` | none (tip) | no output, rc=1 | | Same grep | guide restored from the base branch | 7 hits (rc=0) | | `DocsContent.locales.test.ts` (FR/EN item for item) | one EN `docs.budget.tips` entry removed | red: "match French and English item for item" | | `npm run build` | — | green | | `npm test` | — | 127 files, 2126 tests green | 🤖 Generated with [Claude Code](https://claude.com/claude-code)
maximus added 1 commit 2026-10-14 01:19:23 +00:00
docs(help): fix stale help and guide texts of Budget, Reports and Transactions
All checks were successful
PR Check — Frontend / frontend (pull_request) Successful in 1m58s
fade01d955
The page help and the guide (Markdown and in-app) described a Budget split
button removed in v0.2.5, an Annual-column warning that can no longer
appear, report tabs and four report cards (the hub has five, no tabs), a
"Category Zoom" whose displayed title is "Category Analysis", and a "+"
icon on transactions (the keyword button is a tag icon, shown on
categorized rows only; the right-click menu works on every row).

Resolves #431

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
maximus added the
autopilot:pending-human
label 2026-10-14 01:19:30 +00:00
Author
Owner

Self-review (autopilot worker, not independent) — APPROVE

Diff reviewed against issue-430-cards-transactions-budget (head fade01d).

Acceptance criteria of the issue

  • Defects of the context gone from the page help and from the guide (Markdown and in-app docs.*), FR and EN: split button, Annual warning, tabs, four cards/sub-reports, "Zoom catégorie" / "Category Zoom", "+" icon. Texts word for word from the issue table.
  • Control grep -P returns nothing (rc=1); kept phrases intact ("Les 4 cartes KPI et leurs formules", "il bascule les 4 cartes", "flipper les 4 cartes", Balance stale warning).
  • npm run build and npm test green (127 files, 2126 tests).

Checks

  • UI claims verified in code: five navCards (ReportsPage.tsx), labels reports.hub.categoryZoom, Tag icon only on categorized rows, right-click menu reports.keyword.addFromTransaction, Annual edit calls onSplitEvenly.
  • Consistency with #430: Budget help uses the same wording as the Budget card (leaf rule, even split over the 12 months that replaces the monthly amounts).
  • FR/EN arrays keep identical lengths (DocsContent.locales.test.ts green; red on a removed EN entry).
  • i18n: no component touched, no hard-coded text. CHANGELOG: one Fixed / Corrigé entry in both files. No SQL migration, no code, no network call. architecture.md not concerned.

For the human reviewer

  • reports.help.tips[1..3] (period selector, "Les tendances mensuelles", "Catégories dans le temps") were out of scope and left as is; the last two name views of the Trends sub-report rather than the hub. Worth a look in a follow-up if they read as stale.
  • No QA case added to docs/qa-onboarding.html (no card or control change).
## Self-review (autopilot worker, not independent) — APPROVE Diff reviewed against `issue-430-cards-transactions-budget` (head `fade01d`). **Acceptance criteria of the issue** - [x] Defects of the context gone from the page help and from the guide (Markdown and in-app `docs.*`), FR and EN: split button, Annual warning, tabs, four cards/sub-reports, "Zoom catégorie" / "Category Zoom", "+" icon. Texts word for word from the issue table. - [x] Control `grep -P` returns nothing (rc=1); kept phrases intact ("Les 4 cartes KPI et leurs formules", "il bascule les 4 cartes", "flipper les 4 cartes", Balance stale warning). - [x] `npm run build` and `npm test` green (127 files, 2126 tests). **Checks** - UI claims verified in code: five `navCards` (`ReportsPage.tsx`), labels `reports.hub.categoryZoom`, `Tag` icon only on categorized rows, right-click menu `reports.keyword.addFromTransaction`, Annual edit calls `onSplitEvenly`. - Consistency with #430: Budget help uses the same wording as the Budget card (leaf rule, even split over the 12 months that replaces the monthly amounts). - FR/EN arrays keep identical lengths (`DocsContent.locales.test.ts` green; red on a removed EN entry). - i18n: no component touched, no hard-coded text. CHANGELOG: one Fixed / Corrigé entry in both files. No SQL migration, no code, no network call. architecture.md not concerned. **For the human reviewer** - `reports.help.tips[1..3]` (period selector, "Les tendances mensuelles", "Catégories dans le temps") were out of scope and left as is; the last two name views of the Trends sub-report rather than the hub. Worth a look in a follow-up if they read as stale. - No QA case added to `docs/qa-onboarding.html` (no card or control change).
Author
Owner

CI lue par l'orchestrateur sur la tête fade01d : PR Check — Frontend run 549 vert (build OK, vitest 127 fichiers / 2126 tests, comptes égaux à ceux du worker). Pas de job Rust attendu.

Generated autonomously by /autopilot run of 2026-10-13

CI lue par l'orchestrateur sur la tête `fade01d` : **PR Check — Frontend** run 549 vert (build OK, vitest 127 fichiers / 2126 tests, comptes égaux à ceux du worker). Pas de job Rust attendu. Generated autonomously by /autopilot run of 2026-10-13
Author
Owner

/pr-review #443 — APPROVE

Résumé. Correction de textes seule (aide ?, guide intégré et Markdown, CHANGELOG), conforme mot pour mot à la table de #431. Chaque affirmation des nouveaux textes tient sur le code de la tête fade01d.

Vérifié par le relecteur

  • Diff contre l'issue : les 12 lignes de la table (FR et EN) et les 6 repérages du guide sont repris à l'identique ; la puce « protégé contre les arborescences cycliques » est remplacée correctement (« protégée contre… »).
  • Code : 5 entrées dans navCards de ReportsPage.tsx, dont reports.hub.categoryZoom = « Analyse par catégorie » / “Category Analysis” ; l'icône Tag n'est rendue que sous row.category_id !== null (TransactionTable.tsx) ; la saisie Annuel appelle onSplitEvenly → splitEvenly (useBudget.ts), qui répartit le reste au centime, donc « la colonne affiche ensuite leur total » égale bien le montant saisi ; seules les lignes !is_parent sont éditables (la ligne « (direct) » est une feuille sans chevron, donc couverte par « sans chevron »).
  • grep -P de contrôle de l'issue sur la tête : aucune sortie (rc=1). Mutation sur une copie hors dépôt (retour de “The Category Zoom is protected” dans en.json) : 1 occurrence, puis 0 après restauration. Copie supprimée.
  • Parité FR/EN : parcours complet des deux JSON (clés et longueurs de tableaux) sans écart ; budget.help.tips à 5/5, reports.help.tips à 4/4 ; JSON valides.
  • Phrases à garder : « Les 4 cartes KPI et leurs formules », « il bascule les 4 cartes », « flipper les 4 cartes » présentes une fois chacune, avant comme après.
  • CI : statut agrégé success sur fade01d (PR Check — Frontend). Suite non rejouée localement par le relecteur, couverte par ce run.

Suggestions (non bloquantes)

  1. reports.help.tips[2] et [3] nomment encore « Monthly Trends » / “Les tendances mensuelles” et “Category Over Time” / « Catégories dans le temps », noms des anciens onglets (ReportTab dans src/shared/types/index.ts). Le hub affiche « Tendances » ; ces deux astuces ne sont pas fausses au point de bloquer, mais restent de l'époque des onglets. Hors du périmètre validé par Max : à mettre dans un suivi.
  2. Fermeture de #431 : la timeline porte ref_action: none (le corps dit « Issue #431 », sans mot-clé). La fermeture repose sur Resolves #431 dans le message du commit, lu quand il arrive sur main : vrai pour le merge ff de la pile. Si le chemin de merge change, ajouter Resolves #431 au corps.

Aucun secret, aucun code, aucune migration.

## /pr-review #443 — APPROVE **Résumé.** Correction de textes seule (aide `?`, guide intégré et Markdown, CHANGELOG), conforme mot pour mot à la table de #431. Chaque affirmation des nouveaux textes tient sur le code de la tête `fade01d`. ### Vérifié par le relecteur - **Diff contre l'issue** : les 12 lignes de la table (FR et EN) et les 6 repérages du guide sont repris à l'identique ; la puce « protégé contre les arborescences cycliques » est remplacée correctement (« protégée contre… »). - **Code** : 5 entrées dans `navCards` de `ReportsPage.tsx`, dont `reports.hub.categoryZoom` = « Analyse par catégorie » / “Category Analysis” ; l'icône `Tag` n'est rendue que sous `row.category_id !== null` (`TransactionTable.tsx`) ; la saisie Annuel appelle `onSplitEvenly` → `splitEvenly` (`useBudget.ts`), qui répartit le reste au centime, donc « la colonne affiche ensuite leur total » égale bien le montant saisi ; seules les lignes `!is_parent` sont éditables (la ligne « (direct) » est une feuille sans chevron, donc couverte par « sans chevron »). - **`grep -P` de contrôle de l'issue** sur la tête : aucune sortie (rc=1). **Mutation** sur une copie hors dépôt (retour de “The Category Zoom is protected” dans `en.json`) : 1 occurrence, puis 0 après restauration. Copie supprimée. - **Parité FR/EN** : parcours complet des deux JSON (clés et longueurs de tableaux) sans écart ; `budget.help.tips` à 5/5, `reports.help.tips` à 4/4 ; JSON valides. - **Phrases à garder** : « Les 4 cartes KPI et leurs formules », « il bascule les 4 cartes », « flipper les 4 cartes » présentes une fois chacune, avant comme après. - **CI** : statut agrégé `success` sur `fade01d` (PR Check — Frontend). Suite non rejouée localement par le relecteur, couverte par ce run. ### Suggestions (non bloquantes) 1. `reports.help.tips[2]` et `[3]` nomment encore « Monthly Trends » / “Les tendances mensuelles” et “Category Over Time” / « Catégories dans le temps », noms des anciens onglets (`ReportTab` dans `src/shared/types/index.ts`). Le hub affiche « Tendances » ; ces deux astuces ne sont pas fausses au point de bloquer, mais restent de l'époque des onglets. Hors du périmètre validé par Max : à mettre dans un suivi. 2. Fermeture de #431 : la timeline porte `ref_action: none` (le corps dit « Issue #431 », sans mot-clé). La fermeture repose sur `Resolves #431` dans le message du commit, lu quand il arrive sur `main` : vrai pour le merge ff de la pile. Si le chemin de merge change, ajouter `Resolves #431` au corps. Aucun secret, aucun code, aucune migration.
maximus changed target branch from issue-430-cards-transactions-budget to main 2026-10-16 00:37:31 +00:00
maximus merged commit fade01d955 into main 2026-10-16 00:37:40 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/Simpl-Resultat#443
No description provided.