Rapport: gedeelde rapportageperiode (#120) en gegroepeerde belasting per week/maand (#119) - #134
Merged
Merged
Conversation
…per week of maand (#119) Eén rapportageperiode-control voor de vier venstergebonden tabelrapporten (look-ahead, voortgang, resourcebelasting, resourcetoewijzingen): presets rond de statusdatum (volgende/afgelopen 1–12 weken en maand), de hele projectspanne, of een eigen datumbereik. Presets worden bij elke berekening opnieuw opgelost, zodat een gewijzigde statusdatum het venster mee verschuift; bij "Aangepast" worden de datumvelden bewerkbaar en wordt een omgekeerd bereik gemarkeerd en niet toegepast. Oude "N weken"-instellingen migreren naar de kleinste dekkende preset. Het belastingsrapport groepeert nu per resource in dezelfde stijl als het toewijzingenrapport (naam en type alleen op de eerste rij van de groep, DOM én PDF), kent week- of maandaggregatie (nieuwe maandbucket in `computeHistogramReport`) en volgt de rapportageperiode. Het voortgangsrapport telt "voltooid" binnen de periode en kijkt vanaf de statusdatum vooruit tot het periode-einde of, bij een periode in het verleden, gespiegeld even ver vooruit — de standaard (afgelopen 2 weken) blijft daardoor byte-identiek aan de oude 2-wekenoptie. Fixes #119 Fixes #120 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
…lts uit het issue, consistente resourcerapporten Bevindingen van de hyperkritische review op de eerste versie: - De Van/Tot-datumvelden stonden onder het label ingesprongen en hielden bij de standaardbreedte van de instellingenkolom 18 px over. Ze staan nu op een eigen omslaande rij met een minimale breedte; de browsertest asserteert de gemeten breedte, niet alleen de waarde. - Een leeg of onvolledig datumveld werd stil genegeerd terwijl het rapport op de oude periode doorrekende; het wordt nu net als een omgekeerd bereik gemarkeerd en gemeld. - Defaults volgen issue #120 (look-ahead: volgende maand, voortgang: afgelopen maand); bestaande gebruikers migreren via hun opgeslagen weken-getal en merken er niets van. - Belastings- en toewijzingenrapport tellen "Resources" nu hetzelfde (alleen wat in de tabel staat) en delen dezelfde periode-ondertitel, ook bij *Hele project*. - Toewijzingen melden een ontbrekende statusdatum ook bij een aangepast venster: de referentiedag stuurt daar de insluiting van achterstallig werk. - De MCP-tool planner_get_resource_histogram accepteert nu ook bucket 'maand'. - De kop "Resourcebelasting per week" in de twaalf vertaalde gidsen is hernoemd en kreeg één zin over groepering en aggregatie. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
…, voortgang, belasting, toewijzingen) De twaalf vertaalde gidsen beschreven bij look-ahead en toewijzingen nog het oude "N weken"-venster, bij voortgang de oude symmetrische periode en bij belasting de oude optienaam. Alle vier de alinea's volgen nu dezelfde tekst als nl/en: rapportageperiode met de nieuwe defaults, de vooruitkijkregel van het voortgangsrapport en *alleen overbelaste periodes*. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
…ms in app-notatie, tellingen en spiegelregel
Bevindingen van de tweede hyperkritische review:
- Het Van/Tot-label had in ronde 1 een vaste breedte (w-8) gekregen en kapte "Başlangıç" (tr) en
"Desde" (es) af. Het label heeft nu zijn intrinsieke breedte; de browsertest meet scroll- versus
clientbreedte van labels én waarden, niet alleen de invoerbreedte.
- Bij een preset tonen de velden de berekende datums nu als tekst in de datumnotatie van de app
(dezelfde als de rapportondertitel) in plaats van een uitgeschakelde native date-input in de
browserlocale; de native invoer blijft alleen bij *Aangepast*, waar de kalenderkiezer nodig is.
- Alle tellingen van het belastingsrapport gaan over de rijen in de tabel, dus ook `buckets` volgt
het filter *Alleen overbelaste periodes*.
- De vooruitkijksectie van het voortgangsrapport spiegelt alleen nog bij een "afgelopen …"-preset;
een aangepaste of projectperiode in het verleden blijft leeg in plaats van een jaar vooruit te
kijken. Gedocumenteerd in alle 14 gidsen, met een test op het 2020-geval.
- Vier stale broncommentaren over de oude defaults en de MCP-toolbeschrijving ("weekbucket")
bijgewerkt; de maandformatter wordt één keer per rapport gemaakt, niet per cel.
- De belastingsalinea in de twaalf vertaalde gidsen was nog week-only — de vorige commit
(df449f3) beweerde ten onrechte dat alle alinea's al waren herschreven; nu wél, plus de melding
voor een leeg datumveld in alle 14 gidsen en twee taalcorrecties (de, fr).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
…lijsten, terugblik zonder achterstand
Bevindingen van de derde (brede) hyperkritische review:
- Het maandlabel van het belastingsrapport liep via `Intl` op de locale-kalender: in het Perzisch
"شهریور ۱۴۰۵" naast een ondertitel met 2026. `src/utils/monthLabel.ts` forceert nu de
Gregoriaanse kalender en Latijnse cijfers (unicode-extensies `ca-gregory`/`nu-latn`), met
regressiecases voor tien talen incl. fa/ar.
- De keuzelijsten voor rapportageperiode en aggregatie kapten bij de standaardkolombreedte in
elke taal af ("Hele pr…", "Per maa…"): het label staat nu boven de Select. Papier en oriëntatie
in hetzelfde blok hadden hetzelfde probleem ("Landsc…", pre-existing) en zijn gelijk
meegenomen. De browsertest meet nu ook de gekozen waarde in alle keuzelijsten van het blok.
- Een aangepast venster dat helemaal in het verleden ligt sleept in look-ahead en toewijzingen
niet langer de actuele achterstand mee — dezelfde regel als de vooruitblik van het
voortgangsrapport; getest op het 2020-geval.
- Gidsen (14 talen): het voortgangsrapport toont de periode in de samenvatting, niet als
ondertitel; en de bekende beperking dat de resourcenaam bij een PDF-paginaovergang midden in een
groep niet wordt herhaald.
- `reportSettings.ts` documenteert dat de oude weken-sleutels na migratie niet worden
teruggeschreven (rollback naar een oudere versie valt terug op de default).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
, rapportvoet #135) Conflicten in `reportSettings.ts` (periode-sleutels naast de resourcediagram-opties) en de import van `check-reports.ts` (periodehulpen naast `computeResourceGanttRows`); beide additief samengevoegd. Alle poorten groen op het resultaat. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy
This was referenced Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What and why
Issues #119 en #120 raken exact dezelfde rapportlaag (rapportopties, optieblok, specbouwer en de twee resource-engines) en de opmerking bij #119 vraagt zelf om het gedeelde periodecontrol uit #120 — daarom samen in één PR.
Rapportageperiode (#120). Eén
ReportingPeriod-model (src/engine/reports/reportingPeriod.ts) voor de vier venstergebonden tabelrapporten: look-ahead, voortgang, resourcebelasting en resourcetoewijzingen. Presets volgende / afgelopen 1, 2, 4, 6, 8, 12 weken en maand worden bij elke berekening tegen de statusdatum (anders vandaag) opgelost, zodat een gewijzigde statusdatum het venster mee verschuift; daarnaast Hele project en Aangepast (twee eigen datums). Het gedeeldeReportingPeriodFieldtoont bij een preset de berekende datums alleen-lezen in de datumnotatie van de app; bij Aangepast worden het bewerkbare datumvelden (typen of kalenderkiezer), een omgekeerd, leeg of onvolledig bereik wordt rood gemarkeerd en niet toegepast, en terug naar een preset laat de eigen datums vallen. Per rapport een eigen onthouden keuze. Defaults volgen het issue: look-ahead volgende maand, voortgang afgelopen maand, belasting en toewijzingen hele project. Bestaande gebruikers merken daar niets van: hun opgeslagen "N weken"-getal migreert naar de kleinste dekkende preset (3 ⇒ 4 weken, 0 toewijzingsweken ⇒ hele project). Een venster dat helemaal in het verleden ligt is een terugblik en sleept de actuele achterstand niet mee.Voortgangsrapport. "Voltooid" telt binnen de periode; "start in de komende periode" kijkt vanaf de statusdatum vooruit tot het periode-einde. Bij een afgelopen …-preset wordt even ver vooruitgekeken als de periode terugkijkt (de oude 2-wekenoptie blijft zo byte-identiek); een aangepaste of projectperiode die helemaal in het verleden ligt laat die sectie leeg. Dit staat niet letterlijk in het issue; het is mijn invulling om de vooruitkijksectie zinvol te houden bij een afgesloten rapportageperiode. De samenvatting toont beide grenzen.
Resourcebelasting (#119). Gegroepeerd per resource in dezelfde stijl als het toewijzingenrapport (naam en type alleen op de eerste rij van de groep, DOM én PDF); nieuwe optie Aggregatie per kalenderweek of kalendermaand (maandbucket toegevoegd aan
computeHistogramReport, ook via de MCP-toolplanner_get_resource_histogram); volgt de rapportageperiode (elke week/maand die de periode raakt, als geheel — dus altijd hetzelfde getal als het histogram). Beide resourcerapporten tellen "Resources" nu hetzelfde (wat in de tabel staat) en delen dezelfde periode-ondertitel. Titel is nu "Resourcebelasting" i.p.v. "… per week". Het maandlabel is in elke taal Gregoriaans met Latijnse cijfers (src/utils/monthLabel.ts).Bewust niet gedaan: de presetlijst is in alle vier de rapporten identiek (ook afgelopen … bij look-ahead), precies zoals het issue "the same control can be reused across reports with different defaults" beschrijft; filteren per rapport is een mogelijke vervolgstap. Bekende beperking (gedocumenteerd in de gids): bij een PDF-paginaovergang midden in een resourcegroep wordt de resourcenaam niet herhaald — dat gold al voor het toewijzingenrapport.
Reviewhistorie. Drie hyperkritische reviewrondes op deze branch. Ronde 1 (verwerkt in 7f61ed8): datumvelden waren in de standaardlayout 18 px breed, leeg veld stil genegeerd, defaults weken af van het issue, resourcerapporten telden en ondertitelden verschillend, MCP-tool kende geen maand. Ronde 2 (verwerkt in a737b98): de layoutfix kapte lange labels af (Turks), presetdatums stonden in de browserlocale i.p.v. de app-notatie,
bucketstelde niet mee met het filter, de spiegelregel liep bij een 2020-periode een jaar vooruit, en de belastingsalinea in de twaalf vertaalde gidsen was nog week-only — de commitboodschap van df449f3 beweerde ten onrechte het tegendeel; dat is in a737b98 rechtgezet. Ronde 3 (verwerkt in 89f27d6): het maandlabel liep in het Perzisch op de Solar-Hijri-kalender (jaar 1405 naast 2026), de keuzelijsten voor periode/aggregatie (en de bestaande voor papier/oriëntatie) kapten bij de standaardkolombreedte af, een venster in het verleden sleepte de actuele achterstand mee, plus gids- en commentaarcorrecties.Fixes #119
Fixes #120
How it was verified
npm run verifygreen — alle onderdelen los gedraaid: typecheck, lint, planning (191 rapportchecks, incl. cases voor periode-resolutie, maandklem 31 jan → 28 feb, maandbucket, maandlabel in tien talen, spiegelregel incl. het 2020-geval, terugblik zonder achterstand, gefilterde tellingen en instellingenmigratie), library, mcp (incl. maandbucket via de tool), dev-server, verify:examples/docs/i18n/release-highlights-json/store-boundaries/gantt-boundaries/cycles. CI op de eerdere commits was volledig groen.table-reports.spec.tsuitgebreid (presetkeuze met alleen-lezen datums in app-notatie, label-, waarde- én keuzelijstbreedte gemeten op scroll- vs. clientbreedte, invoerbreedte bij Aangepast, omgekeerd én leeg bereik gemeld en niet toegepast) plus een flow voor de belasting (groepering, week ⇒ maand met Gregoriaans jaartal, periode). Lokaal gedraaid in Chromium; de container levert een andere Chromium-build dan Playwright 1.62 pint, dus via een niet-gecommitte config metexecutablePath.Does this touch
ops-reportSettings), geen IFC-data.computeHistogramReport(maand erbij, week/dag ongewijzigd); cases intests/planning/check-reports.tsentests/mcp/cases-read.ts.t(...), alle veertienreport.json-locales gevuld (verify:i18ngroen).@tauri-apps/*— n.v.t.Documentation
public/docs/{nl,en}/gids-rapporten-printen.md: nieuwe sectie Rapportageperiode, bijgewerkte secties look-ahead, voortgang, resourcebelasting en -toewijzingen.CLAUDE.md: rapportenparagraaf noemt het gedeelde periodemodel.🤖 Generated with Claude Code
https://claude.ai/code/session_01JoVB3BSFPZoKLvL6NmWRKy