A Fase 4 do catalogo de surfaces esta concluida no
praxis-metadata-starter.
O eixo surface-oriented ja esta implementado como camada
semantica derivada sobre o contrato canonico
resource-oriented, sem redefinir payload, validacao ou
schema inline.
resourceKey obrigatorio em @ApiResource
como identidade semantica estavel do recurso@UiSurface para surfaces explicitas sobre operacoes
HTTP reaiscreate, list,
detail e editGET /schemas/surfaces?resource={resourceKey}GET /schemas/surfaces?group={openApiGroup}GET /{resource}/{id}/surfacesoperationIdpathmethodschemaIdschemaUrlSurfaceAvailabilityRuleSurfaceAvailabilityContextResolverResourceStateSnapshotProvider404 para resourceKey ou group
desconhecidos/actions/ e
:approve)surface nao define campos, schema ou validacao
inlinesurface sempre referencia operacao real descoberta no
OpenAPIFORM e PARTIAL_FORM apontam para schema
requestVIEW e READ_PROJECTION apontam para schema
responseITEM surfaces em catalogo global sao discovery
semantico e nao affordance executavel sem resourceIdCobertura focal validada no starter:
SurfaceCatalogE2ETestAnnotationDrivenSurfaceDefinitionRegistryTestDefaultSurfaceAvailabilityContextResolverTestDefaultSurfaceAvailabilityEvaluatorTestSurfaceCatalogServiceTestOpenApiUiSchemaAutoConfigurationSurfaceAvailabilityTestAbstractResourceControllerJpaWriteIntegrationTestRodada de fechamento formal:
BUILD SUCCESS32 testesRodada de hardening de testes em src/test:
BUILD SUCCESS39 testesresource-state-unavailableSurfaceCatalogServicenot found de resourceKey e
group@WorkflowAction) e
endpoints /schemas/actionse2e-pg com PostgreSQL/TestcontainersApplicationContext para
ordering/override de SurfaceAvailabilityRule beansEsses pontos nao bloqueiam o encerramento da Fase 4. Eles pertencem a fases posteriores ou a hardening adicional.
Com a Fase 4 encerrada:
WorkflowAction