aws / aws/aws-durable-execution-sdk-java
Generate conformance-test SAM templates from handler metadata
- Lenguaje dominante
- Java
- Estrellas
- 28
- Forks
- 11
- Merge medio
- 1 d 10 h
- PR fusionados (30 d)
- 45
Descripción
## Summary
PR #552 adds hand-maintained SAM templates for the Java conformance test suites. Each handler requires a largely repetitive Lambda resource plus a `TestingMetadata.TestDescription` mapping to conformance requirement IDs. As the number of handlers and suites grows, maintaining these mappings in both Java code and SAM YAML will be error-prone.
Add a script or build step that generates the conformance-test SAM templates from handler metadata.
Review context: https://github.com/aws/aws-durable-execution-sdk-java/pull/552#discussion_r3617917672
## Requirements
- Define one source of truth for the mapping between each Java handler and its conformance requirement IDs. This could be a Java annotation, a small manifest, or another explicit convention.
- Generate `template_.yaml` files deterministically for all conformance suites.
- Preserve the shared SAM configuration and each function's `TestingMetadata.TestDescription` values.
- Integrate generation into the local/CI conformance-test workflow so templates cannot silently drift from handlers or metadata.
- Document how to add a handler and its requirement mapping to an existing or new suite.
## Acceptance criteria
- Adding or removing a conformance handler requires no manual duplication of its Lambda resource in a SAM template.
- Generated templates pass SAM validation/build and run the existing step and wait conformance suites successfully.
- Generation is stable: running it twice without source changes produces no diff.
- CI fails when checked-in generated templates are stale, or generates templates before they are consumed if they are not checked in.
Guía de contribución
Línea de trabajo
Comienza con PR #552 y las plantillas SAM de pruebas de conformidad mantenidas manualmente que ya existen; después, sigue los handlers de Java y sus correspondencias con TestingMetadata.TestDescription. Compara el flujo de trabajo local/de CI de las pruebas de conformidad con la validación/build de SAM y las suites de step y wait. Se considera terminado cuando haya plantillas deterministas, el registro de handlers esté documentado, las suites se ejecuten correctamente y CI proteja contra salidas generadas obsoletas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- aws, java
- Área
- build-system, ci-cd, testing
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 38/100