aws / aws/aws-durable-execution-sdk-python
Plugin conformance tests are flaky when CloudWatch logs are not yet visible
- Lingua principale
- Python
- Stelle
- 53
- Fork
- 25
- Merge medio
- 1g 19h
- PR unite (30g)
- 40
Descrizione
## Summary
The `conformance (plugin)` job can fail because expected plugin log records are not returned by CloudWatch, even though the durable execution and history validation complete successfully.
## Evidence
- Previous successful run: `33907972521` at commit `4ce54bcf`.
- Failed run: `33922277509` at commit `676c75a`.
- Attempt 1, job `101185043031`: test `10-11` (`plugin_nested_parent_linkage`) failed because both expected `operation-end` records matched 0 logs: the inner step record and the child-context record.
- Retry attempt 2, job `101188790974`: test `10-11` passed, but unrelated test `10-7` (`plugin_terminal_failure`) failed because its `invocation-start` and `invocation-end` records matched 0 logs.
The failure moving between tests on the same commit strongly suggests CloudWatch ingestion/filter timing or log-stream lookup flakiness rather than a deterministic SDK regression. The diff from the previous successful commit only changes OTel release metadata and does not affect the regular core plugin suite.
## Suggested investigation
- Increase or make configurable the CloudWatch log propagation/polling window in the conformance runner.
- Log the resolved log group, execution ARN filter, event count, and final retrieved records when `ExpectedLogs` fails.
- Pin the conformance runner to a known commit in CI instead of installing `@main`.
- Re-run the plugin suite repeatedly against the same commit to confirm the failure rate.
Relevant workflow: `.github/workflows/conformance-tests.yml`, step `Run conformance suite`.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia da .github/workflows/conformance-tests.yml e dal passaggio “Run conformance suite”, quindi esegui ripetutamente la plugin suite sullo stesso commit. Analizza la propagazione di CloudWatch o i tempi di ricerca del log stream e raccogli i diagnostici suggeriti relativi a log-group, execution-filter, event-count e retrieved-record; il lavoro è concluso quando i conformance tests trovano in modo affidabile i record attesi.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- aws, python
- Ambito
- ci-cd, observability, testing
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 48/100