feat(dia): niet-destructieve weergavelimieten voor bullets, tabellen en grafieken (#672) #771

Merged
brenno merged 1 commit from feat/openkat-weergavelimieten-672 into main 2026-07-23 17:34:31 +00:00
Owner

Closes #672.

Adoptie van gestrand sessiewerk (stond sinds 14:22 niet-gecommit en ongeclaimd in de hoofdwerkkopie), afgemaakt en aangescherpt. Een dia uit een grote dataset toont een deel — maximum, eerste/laatste of hoogste/laagste op kolom of reeks, rest verborgen of samengevoegd tot 'Overig' — terwijl het bestand álles houdt: de limiet is een projectie op render- en exportmoment, opgeslagen als leesbare ocideck_view_*-aanwijzingen (FILE_FORMAT §5).

Wat de adoptie toevoegde bovenop het gestrande werk:

  • de tie-break bij gelijke waarden (waarde → bronpositie) — acceptatiecriterium; Darts sort is niet stabiel, dus de top-N kon per heropenen verschillen. Met tests;
  • de editor toont hoeveel er in de data zit en hoeveel getoond wordt, en waarschuwt bij een niet-numerieke sorteerkolom (gedeeld oordeel via isNumericColumn);
  • labels in de taal van het issue ('Weergave beperken') i.p.v. steenkolenengels.

De bewaker-ronde verwierp de eerste versie op drie punten, alle drie verwerkt mét regressietests:

  1. een misvormd ocideck_view_-commentaar (sleutel zonder waarde) gooide een RangeError en maakte het héle bestand onopenbaar — nu genegeerd zoals een optioneel aanwijzinkje hoort;
  2. het geëxporteerde .md droeg de projectie én de nog levende aanwijzingen — bij heropenen vuurde de limiet opnieuw, over het ingebakken bijschrift en de Overig-rij heen. Het exportpad stript de aanwijzingen nu: wat je exporteert is wat de ontvanger ziet, zonder verborgen hendel;
  3. het bijschrift en 'Overig' waren hardgecodeerd Nederlands in andermans inhoud — nu door l10n (opbouw verhuisd uit het model naar de service; de moduswoorden hergebruiken de editor-labels). Plus klein: geen misvormde bijschrift-bullet op een tijdlijn, en de toegankelijkheidsclaim in FILE_FORMAT op de waarheid gezet.

Bewust niet mee: de OpenKAT-servicelaag uit hetzelfde gestrande werk — zonder invoerpunt is dat dode code. Geparkeerd op wip/openkat-services-672; het invoerpunt is #767.

20 strings × 31 talen (17 UI + 3 eenheidswoorden); ratchets netjes opgelost (methode naar top-level, editor naar eigen part); 3 nieuwe widget-tests voor de editor-sectie.

Poort: make check groen, check-secrets en sast schoon.

🤖 Generated with Claude Code

Closes #672. Adoptie van gestrand sessiewerk (stond sinds 14:22 niet-gecommit en ongeclaimd in de hoofdwerkkopie), afgemaakt en aangescherpt. Een dia uit een grote dataset toont een deel — maximum, eerste/laatste of hoogste/laagste op kolom of reeks, rest verborgen of samengevoegd tot 'Overig' — terwijl het bestand álles houdt: de limiet is een projectie op render- en exportmoment, opgeslagen als leesbare ocideck_view_*-aanwijzingen (FILE_FORMAT §5). Wat de adoptie toevoegde bovenop het gestrande werk: - de **tie-break bij gelijke waarden** (waarde → bronpositie) — acceptatiecriterium; Darts sort is niet stabiel, dus de top-N kon per heropenen verschillen. Met tests; - de editor toont **hoeveel er in de data zit en hoeveel getoond wordt**, en **waarschuwt bij een niet-numerieke sorteerkolom** (gedeeld oordeel via isNumericColumn); - labels in de taal van het issue ('Weergave beperken') i.p.v. steenkolenengels. De **bewaker-ronde** verwierp de eerste versie op drie punten, alle drie verwerkt mét regressietests: 1. een misvormd ocideck_view_-commentaar (sleutel zonder waarde) gooide een RangeError en maakte het héle bestand onopenbaar — nu genegeerd zoals een optioneel aanwijzinkje hoort; 2. het geëxporteerde .md droeg de projectie én de nog levende aanwijzingen — bij heropenen vuurde de limiet opnieuw, over het ingebakken bijschrift en de Overig-rij heen. Het exportpad stript de aanwijzingen nu: wat je exporteert is wat de ontvanger ziet, zonder verborgen hendel; 3. het bijschrift en 'Overig' waren hardgecodeerd Nederlands in andermans inhoud — nu door l10n (opbouw verhuisd uit het model naar de service; de moduswoorden hergebruiken de editor-labels). Plus klein: geen misvormde bijschrift-bullet op een tijdlijn, en de toegankelijkheidsclaim in FILE_FORMAT op de waarheid gezet. **Bewust niet mee:** de OpenKAT-servicelaag uit hetzelfde gestrande werk — zonder invoerpunt is dat dode code. Geparkeerd op wip/openkat-services-672; het invoerpunt is #767. 20 strings × 31 talen (17 UI + 3 eenheidswoorden); ratchets netjes opgelost (methode naar top-level, editor naar eigen part); 3 nieuwe widget-tests voor de editor-sectie. Poort: make check groen, check-secrets en sast schoon. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Adoptie van gestrand sessiewerk uit de hoofdwerkkopie, afgemaakt en
aangescherpt. Een dia uit een grote dataset kan nu een deel tonen —
maximum, eerste/laatste of hoogste/laagste op een kolom of reeks, rest
verborgen of opgeteld tot 'Overig' — terwijl het bestand álles houdt:
de limiet is een projectie op render- en exportmoment, opgeslagen als
leesbare ocideck_view_*-aanwijzingen per dia.

Wat er bij de adoptie bij moest:
- de tie-break bij gelijke waarden (waarde → bronpositie) ontbrak, en
  dat is een acceptatiecriterium: Darts sort is niet stabiel, dus de
  top-N kon per heropenen verschillen. Nu expliciet, met tests;
- de editor toont hoeveel er in de data zit en hoeveel de dia toont, en
  waarschuwt bij een sorteerkolom zonder getallen (isNumericColumn is
  daarvoor het ene, gedeelde oordeel);
- de labels spreken de taal van het issue ('Weergave beperken') in
  plaats van steenkolenengels ('View limit', 'Sorteerkey');
- 17 strings × 31 talen, docs (FILE_FORMAT §5, USER_GUIDE, SOURCE_MAP,
  CHANGELOG).

De OpenKAT-servicelaag uit hetzelfde gestrande werk is bewust NIET mee:
er is geen invoerpunt, dus dat zou dode code zijn. Geparkeerd op
wip/openkat-services-672; het invoerpunt is #767.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
brenno merged commit 01e253aa0a into main 2026-07-23 17:34:31 +00:00
Sign in to join this conversation.
No description provided.