@praxisui/table 8.0.0-beta.2 → 8.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +150 -8
  2. package/docs/DSL-Extensions-Guide.md +23 -0
  3. package/docs/adr/2026-03-dynamic-filter-cross-lib-coupling.md +107 -0
  4. package/docs/adr/2026-03-filter-drawer-adapter-light-entrypoint.md +105 -0
  5. package/docs/adr/2026-03-table-editor-idfield-decision.md +85 -0
  6. package/docs/column-resize-reorder-implementation-plan.md +338 -0
  7. package/docs/column-resize-reorder-review-prompt.md +34 -0
  8. package/docs/dynamic-filter-architecture-overview.md +207 -0
  9. package/docs/dynamic-filter-backend-contract-cheatsheet.md +167 -0
  10. package/docs/dynamic-filter-editor-settings-guide.md +229 -0
  11. package/docs/dynamic-filter-host-integration-guide.md +217 -0
  12. package/docs/dynamic-filter-payload-contract.md +331 -0
  13. package/docs/dynamic-filter-range-filters-guide.md +289 -0
  14. package/docs/dynamic-filter-troubleshooting-guide.md +220 -0
  15. package/docs/dynamic-inline-filter-catalog.md +147 -0
  16. package/docs/e2e-column-drag-playwright.md +62 -0
  17. package/docs/expandable-rows-enterprise-big-leagues-plan.md +1080 -0
  18. package/docs/json-logic-operators-and-helpers.md +57 -0
  19. package/docs/local-data-mode-precedence.md +12 -0
  20. package/docs/local-data-pre-implementation-baseline.md +22 -0
  21. package/docs/local-data-preimplementation-go-no-go.md +39 -0
  22. package/docs/local-data-support-implementation-plan.md +524 -0
  23. package/docs/local-data-support-pr-package.md +66 -0
  24. package/docs/localization-persistence-merge.md +22 -0
  25. package/docs/performance-hardening-v2-implementation-plan.md +479 -0
  26. package/docs/playground-scenario-curation-plan.md +482 -0
  27. package/docs/playground-scenario-second-opinion-prompt.md +121 -0
  28. package/docs/playground-scenario-second-opinion-review.md +234 -0
  29. package/docs/release-notes-p1-hardening.md +76 -0
  30. package/docs/table-authoring-document-completeness-checklist.md +120 -0
  31. package/docs/table-editor-capability-review-prompt.md +349 -0
  32. package/docs/visual-rules-editor-transition.md +29 -0
  33. package/fesm2022/{praxisui-table-table-agentic-authoring-turn-flow-tu7jtTwV.mjs → praxisui-table-table-agentic-authoring-turn-flow-DRuE55Mi.mjs} +100 -0
  34. package/fesm2022/{praxisui-table-table-ai.adapter-DxjDaQqy.mjs → praxisui-table-table-ai.adapter-fS74fZ7o.mjs} +14 -5
  35. package/fesm2022/praxisui-table.mjs +5317 -736
  36. package/index.d.ts +325 -106
  37. package/package.json +15 -9
  38. package/src/lib/praxis-table.json-api.md +1325 -0
@@ -0,0 +1,482 @@
1
+ # Praxis Table Playground Scenario Curation Plan
2
+
3
+ ## Objective
4
+
5
+ Replace the current table playground catalog with a smaller, capability-driven set of scenarios that demonstrates the real power of `@praxisui/table` without repeating the same runtime grammar across multiple domain skins.
6
+
7
+ This plan is based on:
8
+
9
+ - public contract in `@praxisui/core` (`TableConfigV2`, `TableBehaviorConfig`)
10
+ - runtime implementation in `projects/praxis-table/src/lib/praxis-table.ts`
11
+ - template/runtime surface in `projects/praxis-table/src/lib/praxis-table.html`
12
+ - authoring/settings flow in `projects/praxis-table/src/lib/table-editor-capability.ts`
13
+ - AI metadata in `projects/praxis-table/src/lib/ai/*.ts`
14
+ - specialized docs for filter, DSL, local-data and expansion
15
+
16
+ ## Executive Summary
17
+
18
+ The current playground over-indexes on:
19
+
20
+ - rule styling
21
+ - domain variation
22
+ - small narrative changes over the same base runtime
23
+
24
+ It under-represents:
25
+
26
+ - remote vs local data mode
27
+ - dynamic filter as a first-class feature
28
+ - selection and bulk operations
29
+ - schema reconciliation
30
+ - settings-driven authoring
31
+ - column governance
32
+ - virtualization
33
+
34
+ The result is breadth by theme, not by capability.
35
+
36
+ After the second-opinion review, one more rule became explicit:
37
+
38
+ - the target catalog must optimize for editorial navigation, not only for capability completeness.
39
+
40
+ Because of that, the final structure distinguishes:
41
+
42
+ - main scenarios
43
+ - advanced scenarios
44
+ - patches and secondary variants
45
+
46
+ ## Current Catalog Problems
47
+
48
+ ### 1. Operational flows are mostly the same demo
49
+
50
+ Current scenarios:
51
+
52
+ - `minimal`
53
+ - `financial`
54
+ - `crm`
55
+ - `sla`
56
+ - `backoffice`
57
+
58
+ All five reuse the same metadata factory and nearly the same runtime grammar:
59
+
60
+ - same core columns
61
+ - same toolbar shape
62
+ - same conditional style baseline
63
+ - same interaction model
64
+
65
+ They should not exist as five equal-weight presets.
66
+
67
+ ### 2. Rules demos are over-fragmented
68
+
69
+ Current scenarios:
70
+
71
+ - `rules-full`
72
+ - `rules-funcionarios`
73
+ - `rules-simple`
74
+ - `rules-eventos-folha`
75
+ - `rules-cargos`
76
+
77
+ Most of them prove the same category of value:
78
+
79
+ - conditional row emphasis
80
+ - typed columns
81
+ - small domain-specific patch set
82
+
83
+ This should be consolidated into fewer, sharper demos.
84
+
85
+ ### 3. Expansion is duplicated as presets instead of being modeled as one lab
86
+
87
+ Current scenarios:
88
+
89
+ - `expansion-inline-basic`
90
+ - `expansion-inline-tabs`
91
+ - `expansion-advanced-nodes`
92
+ - `expansion-funcionarios`
93
+
94
+ The first three are variants of the same idea and should become one scenario with patches. Only the employee case clearly justifies a separate business-oriented example.
95
+
96
+ ### 4. Some documented features are absent or underplayed
97
+
98
+ The runtime and docs show meaningful capabilities that are not properly showcased today:
99
+
100
+ - dynamic filter pipeline
101
+ - local data mode precedence
102
+ - schema freshness / reconciliation
103
+ - settings panel + canonical authoring document
104
+ - selection and bulk delete flows
105
+ - column reorder with keyboard/undo/persistence
106
+ - virtualization as a governed mode
107
+
108
+ ### 5. Documentation drift must shape the examples
109
+
110
+ The README still contains old event examples that do not match the runtime outputs. The playground should be curated against runtime truth, not outdated prose.
111
+
112
+ ## Runtime Truth to Preserve
113
+
114
+ Examples should explicitly reflect these runtime facts:
115
+
116
+ - `behavior.sorting.multiSort` is currently schema-only in runtime
117
+ - `behavior.filtering.columnFilters.enabled` is currently schema-only in runtime
118
+ - `behavior.dragging.rows` is currently schema-only in runtime
119
+ - row expansion is blocked when virtualization is active in the current runtime policy
120
+ - export is visible in toolbar config, but should not be oversold as a complete end-to-end runtime story unless the host flow is implemented
121
+
122
+ ## Curation Principles
123
+
124
+ ### Principle 1. Organize by capability, not by domain
125
+
126
+ Use business framing only when it proves a capability better than an abstract demo.
127
+
128
+ ### Principle 2. Keep one scenario per real question
129
+
130
+ Each scenario should answer one primary question, for example:
131
+
132
+ - how do I connect remote data?
133
+ - how does the dynamic filter work?
134
+ - how do row actions and bulk actions behave?
135
+ - how does schema reconciliation look in practice?
136
+
137
+ ### Principle 3. Use patches for variants, not new presets
138
+
139
+ If the only difference is layout mode, emphasis rule or business skin, prefer patches.
140
+
141
+ ### Principle 4. Be explicit about maturity
142
+
143
+ Do not create demos that imply runtime support for features that are still schema-only or partially rolled out.
144
+
145
+ ## Proposed Target Catalog
146
+
147
+ The catalog should not ship as 11 equal-weight scenarios.
148
+
149
+ Recommended publication model:
150
+
151
+ - 6 main scenarios on the primary surface
152
+ - 4 advanced scenarios behind a secondary grouping
153
+ - patches for domain/layout variants
154
+
155
+ ### 1. Remote CRUD Baseline
156
+
157
+ Primary goal:
158
+
159
+ - prove remote mode with schema bootstrap and data fetching
160
+
161
+ Should demonstrate:
162
+
163
+ - `resourcePath`
164
+ - server-driven pagination and sorting
165
+ - row click and row actions
166
+ - schema-derived columns
167
+ - loading / error / empty state transitions
168
+
169
+ Can absorb parts of:
170
+
171
+ - `minimal`
172
+ - `financial`
173
+ - `crm`
174
+
175
+ ### 2. Dynamic Filter Workbench
176
+
177
+ Primary goal:
178
+
179
+ - prove that filtering is a full feature pipeline, not a toolbar extra
180
+
181
+ Should demonstrate:
182
+
183
+ - `praxis-filter`
184
+ - always-visible fields
185
+ - advanced filter settings
186
+ - submit/change/clear behavior
187
+ - remote request contract
188
+ - DTO persistence
189
+ - inline control variety
190
+
191
+ Should become one of the flagship scenarios.
192
+
193
+ ### 3. Local Data Projection
194
+
195
+ Primary goal:
196
+
197
+ - prove local mode as a first-class operational path
198
+
199
+ Should demonstrate:
200
+
201
+ - `[data]`
202
+ - precedence against `resourcePath`
203
+ - client-side sorting and pagination projection
204
+ - local filtering
205
+ - no backend dependency
206
+
207
+ This should be explicit because local mode is a meaningful contract decision.
208
+
209
+ ### 4. Selection and Bulk Operations
210
+
211
+ Primary goal:
212
+
213
+ - prove enterprise action orchestration instead of only read-only tables
214
+
215
+ Should demonstrate:
216
+
217
+ - single/multiple selection
218
+ - select all
219
+ - bulk action toolbar
220
+ - bulk delete with confirmation
221
+ - remote vs local behavior difference
222
+ - action feedback states
223
+ - clear distinction between row action, toolbar action, emitted action and automatic destructive flow
224
+
225
+ This scenario should explicitly own the action-orchestration thesis.
226
+
227
+ ### 5. Schema Reconciliation
228
+
229
+ Primary goal:
230
+
231
+ - prove schema freshness as a product capability
232
+
233
+ Should demonstrate:
234
+
235
+ - ETag verification
236
+ - `schemaStatusChange`
237
+ - outdated badge
238
+ - inline banner
239
+ - snooze / ignore
240
+ - reconcile via settings panel
241
+
242
+ This scenario is strategically important because it differentiates Praxis from generic grids.
243
+
244
+ ### 6. Expansion Lab
245
+
246
+ Primary goal:
247
+
248
+ - prove row expansion in its real current maturity level
249
+
250
+ Base scenario should demonstrate:
251
+
252
+ - non-virtualized detail row
253
+ - identity rules
254
+ - a11y expansion trigger
255
+ - row vs icon trigger
256
+ - single vs multiple open
257
+
258
+ Patches should switch between:
259
+
260
+ - stack detail
261
+ - tabs detail
262
+ - advanced node set
263
+
264
+ Keep one separate business scenario only if needed:
265
+
266
+ - `Employee expansion`
267
+
268
+ ## Advanced Catalog
269
+
270
+ These scenarios should exist, but not as first-surface peers of the six main scenarios.
271
+
272
+ ### A1. Column Governance
273
+
274
+ Primary goal:
275
+
276
+ - prove that the table supports governed column management
277
+
278
+ Should demonstrate:
279
+
280
+ - sticky columns
281
+ - width control
282
+ - reorder by drag
283
+ - reorder by keyboard
284
+ - drop-zone policy
285
+ - undo
286
+ - persisted preference behavior
287
+
288
+ This should be framed as governance, not just “drag columns around”.
289
+
290
+ ### A2. Renderers and Rules Lab
291
+
292
+ Primary goal:
293
+
294
+ - prove the combination of rich renderer surface and conditional rule logic without splitting the story too early
295
+
296
+ Should demonstrate:
297
+
298
+ - badge
299
+ - progress
300
+ - button
301
+ - menu
302
+ - toggle
303
+ - avatar
304
+ - image
305
+ - html
306
+ - compose
307
+ - rating
308
+ - rowConditionalStyles
309
+ - column conditional styles
310
+ - JSON helpers
311
+ - date/time helpers
312
+ - list helpers
313
+ - rule preview/test mindset
314
+
315
+ Can absorb parts of:
316
+
317
+ - `rules-incidentes`
318
+ - `rules-perfil-heroi`
319
+ - `rules-ranking-reputacao`
320
+ - `rules-complex`
321
+ - `rules-full`
322
+ - `rules-funcionarios`
323
+ - `rules-simple`
324
+ - `rules-eventos-folha`
325
+ - `rules-cargos`
326
+
327
+ If this scenario later becomes too dense, split it again only with explicit thesis labels:
328
+
329
+ - `Renderer Gallery`
330
+ - `Rules and DSL Playground`
331
+
332
+ ### A3. Virtualized High Volume
333
+
334
+ Primary goal:
335
+
336
+ - prove performance mode with honest constraints
337
+
338
+ Should demonstrate:
339
+
340
+ - fixed-height virtualization
341
+ - high row volume
342
+ - scroll behavior
343
+ - compatible renderer set
344
+ - explicit note that expansion is blocked under current policy
345
+
346
+ This scenario must not imply unsupported expansion + virtualization parity.
347
+
348
+ ### A4. Settings-Driven Authoring
349
+
350
+ Primary goal:
351
+
352
+ - prove the table as an authorable runtime surface
353
+
354
+ Should demonstrate:
355
+
356
+ - opening `PraxisTableConfigEditor`
357
+ - canonical `praxis.table.editor` document
358
+ - bindings such as `resourcePath`, `idField`, `horizontalScroll`
359
+ - `buildTableApplyPlan`
360
+ - diagnostics and projection rules
361
+
362
+ This scenario should communicate that the table is governable by document, but it should live in the advanced track so the playground does not look like an internal editor first.
363
+
364
+ ## Current-to-Target Mapping
365
+
366
+ ### Keep as concept, but redesign heavily
367
+
368
+ - `minimal` -> `Remote CRUD Baseline`
369
+ - `rules-full` -> `Renderers and Rules Lab`
370
+ - `expansion-funcionarios` -> optional business-specific `Employee expansion`
371
+
372
+ ### Merge into other scenarios
373
+
374
+ - `financial` -> merge into `Remote CRUD Baseline` as patch or dataset variant
375
+ - `crm` -> merge into `Remote CRUD Baseline`
376
+ - `sla` -> merge into `Remote CRUD Baseline`
377
+ - `backoffice` -> merge into `Remote CRUD Baseline`
378
+ - `rules-funcionarios` -> merge into `Renderers and Rules Lab`
379
+ - `rules-simple` -> merge into `Renderers and Rules Lab`
380
+ - `rules-eventos-folha` -> merge into `Renderers and Rules Lab`
381
+ - `rules-cargos` -> merge into `Renderers and Rules Lab`
382
+ - `rules-incidentes` -> merge into `Renderers and Rules Lab`
383
+ - `rules-perfil-heroi` -> merge into `Renderers and Rules Lab`
384
+ - `rules-ranking-reputacao` -> merge into `Renderers and Rules Lab`
385
+ - `rules-complex` -> merge into `Renderers and Rules Lab`
386
+ - `expansion-inline-basic` -> merge into `Expansion Lab`
387
+ - `expansion-inline-tabs` -> merge into `Expansion Lab`
388
+ - `expansion-advanced-nodes` -> merge into `Expansion Lab`
389
+
390
+ ### Create from scratch
391
+
392
+ - `Dynamic Filter Workbench`
393
+ - `Local Data Projection`
394
+ - `Selection and Bulk Operations`
395
+ - `Column Governance`
396
+ - `Schema Reconciliation`
397
+ - `Settings-Driven Authoring`
398
+ - `Virtualized High Volume`
399
+
400
+ ## Recommended Final Scenario Count
401
+
402
+ Recommended stable catalog:
403
+
404
+ - 6 main scenarios
405
+ - 4 advanced scenarios
406
+ - 1 optional business-specific expansion example
407
+
408
+ This is enough to communicate breadth without turning the playground into a demo graveyard.
409
+
410
+ ## Recommended Grouping
411
+
412
+ ### Main scenarios
413
+
414
+ - Remote CRUD Baseline
415
+ - Dynamic Filter Workbench
416
+ - Local Data Projection
417
+ - Selection and Bulk Operations
418
+ - Schema Reconciliation
419
+ - Expansion Lab
420
+
421
+ ### Advanced scenarios
422
+
423
+ - Column Governance
424
+ - Renderers and Rules Lab
425
+ - Virtualized High Volume
426
+ - Settings-Driven Authoring
427
+
428
+ ## Implementation Sequence
429
+
430
+ ### Phase 1. Remove catalog noise
431
+
432
+ - merge operational flow variants
433
+ - merge renderer/rules variants
434
+ - fold generic expansion presets into one lab
435
+
436
+ ### Phase 2. Add missing flagship scenarios
437
+
438
+ - Dynamic Filter Workbench
439
+ - Selection and Bulk Operations
440
+ - Schema Reconciliation
441
+
442
+ ### Phase 3. Add advanced platform scenarios
443
+
444
+ - Local Data Projection
445
+ - Column Governance
446
+ - Renderers and Rules Lab
447
+ - Settings-Driven Authoring
448
+ - Virtualized High Volume
449
+
450
+ ### Phase 4. Documentation alignment
451
+
452
+ - update README event examples to match runtime outputs
453
+ - mark schema-only capabilities clearly
454
+ - align playground copy with current maturity of expansion and export
455
+
456
+ ## Editorial Path
457
+
458
+ The first-surface sequence should feel intentional:
459
+
460
+ 1. start with connection and CRUD reality
461
+ 2. move into filtering
462
+ 3. prove local mode
463
+ 4. prove actions and orchestration
464
+ 5. prove schema governance
465
+ 6. prove expansion
466
+
467
+ Only after that should the user enter advanced tracks for:
468
+
469
+ - column governance
470
+ - renderer/rules breadth
471
+ - virtualization
472
+ - authoring
473
+
474
+ ## Definition of Done for the New Catalog
475
+
476
+ - each scenario has one primary capability thesis
477
+ - no two first-surface scenarios share the same interaction grammar without a strong reason
478
+ - schema-only capabilities are not presented as fully active runtime features
479
+ - at least one scenario proves each strategic capability of the component
480
+ - the primary surface stays within 6 scenarios
481
+ - advanced scenarios are clearly labeled as deeper capability tracks
482
+ - the catalog explains why `praxis-table` is a governed runtime platform, not just a configurable grid
@@ -0,0 +1,121 @@
1
+ # Praxis Table Playground Second-Opinion Prompt
2
+
3
+ Faça uma análise criteriosa e independente da estratégia de curadoria dos cenários do playground de `@praxisui/table`.
4
+
5
+ Seu papel aqui não é apenas concordar com o plano. Você deve atuar como uma segunda opinião técnica/editorial exigente, procurando:
6
+
7
+ - pontos cegos;
8
+ - simplificações perigosas;
9
+ - capacidades subestimadas ou superestimadas;
10
+ - cenários redundantes;
11
+ - cenários ausentes;
12
+ - riscos de comunicação errada sobre a maturidade real do componente.
13
+
14
+ ## Contexto
15
+
16
+ O componente `@praxisui/table` é mais do que uma grid configurável. Pela leitura do código-fonte e da documentação da lib, ele já combina:
17
+
18
+ - modo remoto com bootstrap por schema;
19
+ - modo local com precedência formal de fonte de dados;
20
+ - filtro dinâmico como feature transversal, com `praxis-filter`, metadata, persistência local e contrato backend;
21
+ - renderers ricos, inclusive `compose`;
22
+ - seleção, row actions e bulk actions;
23
+ - governança de colunas com reorder, teclado, undo e persistência;
24
+ - verificação de schema via ETag com reconciliação;
25
+ - settings/editor com documento canônico autorável;
26
+ - DSL de regras com helpers nativos de JSON, tempo, listas e texto;
27
+ - expansão de linhas com contrato tipado e restrições explícitas de virtualização;
28
+ - virtualização como modo governado.
29
+
30
+ Ao mesmo tempo, a investigação também encontrou limites importantes no runtime atual:
31
+
32
+ - `behavior.sorting.multiSort` ainda é `schema-only`;
33
+ - `behavior.filtering.columnFilters.enabled` ainda é `schema-only`;
34
+ - `behavior.dragging.rows` ainda é `schema-only`;
35
+ - expansão é bloqueada quando virtualização está ativa na política atual;
36
+ - export aparece como affordance de toolbar, mas não deve ser tratado automaticamente como fluxo end-to-end completo;
37
+ - a README ainda contém exemplos de eventos/API desatualizados em relação ao runtime real.
38
+
39
+ ## Problema Atual do Playground
40
+
41
+ A curadoria atual do playground da tabela parece excessivamente orientada por domínio e pouco orientada por capacidade.
42
+
43
+ Exemplos do problema:
44
+
45
+ - cinco cenários operacionais (`minimal`, `financial`, `crm`, `sla`, `backoffice`) reaproveitam a mesma gramática de runtime com datasets e copy diferentes;
46
+ - vários demos de regras parecem fragmentos do mesmo showcase, com pouca diferenciação real de interação;
47
+ - os três exemplos genéricos de expansão parecem variantes de layout empacotadas como presets separados, quando poderiam ser um único laboratório com patches;
48
+ - recursos fortes do componente, como filtro dinâmico, modo local, schema reconciliation, settings-driven authoring, seleção/bulk e governança de colunas, estão sub-representados ou praticamente ausentes;
49
+ - a vitrine atual comunica bem “rules styling”, mas comunica mal a ideia de plataforma governada para dados enterprise.
50
+
51
+ ## Objetivo do Plano
52
+
53
+ O plano proposto tenta substituir a vitrine atual por um catálogo menor, mais claro e mais honesto, organizado por capacidade.
54
+
55
+ Catálogo alvo proposto:
56
+
57
+ 1. `Remote CRUD Baseline`
58
+ 2. `Dynamic Filter Workbench`
59
+ 3. `Local Data Projection`
60
+ 4. `Renderer Gallery`
61
+ 5. `Rules and DSL Playground`
62
+ 6. `Selection and Bulk Operations`
63
+ 7. `Column Governance`
64
+ 8. `Schema Reconciliation`
65
+ 9. `Settings-Driven Authoring`
66
+ 10. `Expansion Lab`
67
+ 11. `Virtualized High Volume`
68
+
69
+ Racional do plano:
70
+
71
+ - reduzir redundância entre cenários orientados por domínio;
72
+ - usar patches para variantes, em vez de multiplicar presets quase iguais;
73
+ - destacar capacidades estratégicas e diferenciais reais da tabela;
74
+ - evitar que o playground prometa maturidade maior que a do runtime;
75
+ - reposicionar `praxis-table` como superfície governada de dados, não só como demo de badges/regras.
76
+
77
+ ## Documento-base do plano
78
+
79
+ Use como referência principal o documento:
80
+
81
+ - `projects/praxis-table/docs/playground-scenario-curation-plan.md`
82
+
83
+ ## O que eu quero da sua resposta
84
+
85
+ Quero uma revisão crítica de verdade, não um resumo.
86
+
87
+ Avalie:
88
+
89
+ 1. Se o diagnóstico do catálogo atual está correto ou superficial.
90
+ 2. Se o catálogo alvo realmente cobre o poder do componente.
91
+ 3. Se algum cenário proposto está abstrato demais ou genérico demais.
92
+ 4. Se falta algum cenário essencial para provar valor enterprise.
93
+ 5. Se algum cenário proposto deveria ser fundido, renomeado, quebrado ou removido.
94
+ 6. Se a separação entre “Renderer Gallery” e “Rules and DSL Playground” está boa ou artificial.
95
+ 7. Se “Settings-Driven Authoring” merece mesmo ser um cenário flagship ou deveria ser incorporado a outro.
96
+ 8. Se “Schema Reconciliation” está sendo tratado com a importância correta.
97
+ 9. Se “Virtualized High Volume” deve ser cenário próprio ou apenas patch de outro.
98
+ 10. Se a proposta respeita bem os limites atuais do runtime e evita oversell.
99
+
100
+ ## Formato esperado da resposta
101
+
102
+ Responda com:
103
+
104
+ 1. `Veredito executivo`
105
+ - diga se o plano está forte, incompleto, enviesado ou mal calibrado.
106
+
107
+ 2. `Principais achados`
108
+ - liste os problemas ou acertos mais importantes, em ordem de impacto.
109
+
110
+ 3. `Ajustes recomendados no catálogo`
111
+ - diga exatamente o que manter, fundir, criar, remover ou renomear.
112
+
113
+ 4. `Riscos de comunicação`
114
+ - destaque onde o playground ainda pode induzir interpretação errada sobre o componente.
115
+
116
+ 5. `Catálogo final recomendado`
117
+ - proponha sua própria versão final, se diferente.
118
+
119
+ ## Instrução final
120
+
121
+ Se você discordar do plano, seja explícito. Prefiro uma crítica dura e útil a uma validação diplomática.