praxis-core +
praxis-table)Data: 2026-03-24 Status: aprovado
Provar que o fluxo gerado nas rodadas H2 anteriores e o contrato
publicado por praxis-metadata-starter 5.0.0-rc.2 sao
consumidos corretamente pelo runtime oficial Angular, cobrindo:
resourcePath/schemas/filteredx-ui.resource.idFieldETag / X-Schema-HashIf-None-Matchpraxis-filterprojects/praxis-core/src/lib/services/generic-crud.service.tsprojects/praxis-core/src/lib/schema/schema-metadata-client.tsprojects/praxis-table/src/lib/components/praxis-filter/praxis-filter.component.tsFoi adicionada uma spec focal em:
praxis-ui-angular/projects/praxis-core/src/lib/services/generic-crud.service.spec.tsEssa spec valida explicitamente que:
getSchema() deriva
path=/api/catalog/products/allx-ui.resource.idField = id
atualiza o metadata localX-Schema-Hash prevalece sobre ETagIf-None-Match304 reaproveita o cache sem perder
idFieldpraxis-core focalComando:
cmd.exe /c "cd /d D:\Developer\praxis-plataform\praxis-ui-angular && npx ng test praxis-core --browsers=ChromeHeadless --watch=false --include=projects/praxis-core/src/lib/services/generic-crud.service.spec.ts --include=projects/praxis-core/src/lib/schema/schema-metadata-client.spec.ts"Resultado:
TOTAL: 21 SUCCESSCobertura relevante confirmada:
GenericCrudService.getSchema() com idField
canonico + cache/304SchemaMetadataClient com X-Schema-Hash,
ETag, 304 e base URL relativapraxis-table focalComando:
cmd.exe /c "cd /d D:\Developer\praxis-plataform\praxis-ui-angular && npx ng test praxis-table --browsers=ChromeHeadless --watch=false --include=projects/praxis-table/src/lib/components/praxis-filter/praxis-filter.component.spec.ts"Resultado:
TOTAL: 105 SUCCESSCobertura relevante confirmada:
praxis-filter deriva path=/.../filter a
partir de resourcePath/schemaUrlSchemaMetadataClientcrud.getFilteredSchema()metaChanged com schemaId e
serverHashresourcePathpraxis-crud focalComando:
cmd.exe /c "cd /d D:\Developer\praxis-plataform\praxis-ui-angular && npx ng test praxis-crud --browsers=ChromeHeadless --watch=false --include=projects/praxis-crud/src/lib/praxis-crud.component.spec.ts"Resultado:
TOTAL: 17 SUCCESSCobertura relevante confirmada:
praxis-crud encaminha resourcePath
para praxis-tablemetadata.resource.path prevalece como fonte canonica
sobre table.resourcePathcrudContext.resourcePath e
crudContext.idField permanecem coerentes com o contrato
canonicopraxis-crud -> praxis-table ficou
protegida por spec dedicadaNenhum desvio funcional novo foi encontrado nesta rodada.
O ajuste canônico anterior no starter para
x-ui.resource.idField ficou compatível com o runtime
Angular oficial.
Houve um bloqueio operacional inicial na suite de
praxis-crud (NG0908 sem Zone.js).
Esse bloqueio foi corrigido no workspace pelo ajuste canônico da target
de teste da lib, e a validacao foi repetida com sucesso.
O workspace praxis-ui-angular desta maquina possui
node_modules de Windows (@esbuild/win32-x64).
Por isso, as validacoes Angular precisaram rodar via
cmd.exe /c, e nao via WSL/Linux direto.
Isso nao indica falha do guia nem da plataforma; e apenas a regra correta de execucao para este ambiente.
Com as rodadas H2 anteriores e esta validacao Angular, o fluxo minimo proposto pelos guias esta provado ponta a ponta para:
@praxisui/core e
@praxisui/table@praxisui/crudNeste ponto, nao houve necessidade de novo ajuste nos guias.