aws / aws/aws-durable-execution-sdk-python
Reevaluate CompletionConfig Presets
- Vorherrschende Sprache
- Python
- Sterne
- 53
- Forks
- 25
- Ø Merge
- 1 T. 19 Std.
- Gemergte PRs (30 T.)
- 40
Beschreibung
## Context
**GitHub Reference**: [config.py#L47](https://github.com/aws/aws-durable-execution-sdk-python/blob/0307cf96e22a0bdbfdb7539f2780cde19f44a55d/src/aws_durable_execution_sdk_python/config.py#L47)
Review and update `CompletionConfig` presets for `first_successful`, `all_completed`, and `all_successful` to ensure they match expected behavior and service capabilities.
This is currently not implemented in TypeScript.
## Technical Requirements
- Review current preset implementations
- Validate against service behavior
- Update presets if needed
- Ensure consistency with TypeScript SDK
## Implementation Details
- **File**: `src/aws_durable_execution_sdk_python/config.py`
- **Line**: Around line 47
- **Presets to Review**:
- `first_successful`: Complete when first operation succeeds
- `all_completed`: Complete when all operations finish (success or failure)
- `all_successful`: Complete when all operations succeed
```python
@dataclass(frozen=True)
class CompletionConfig:
@classmethod
def first_successful(cls) -> CompletionConfig:
"""Complete when first operation succeeds."""
return cls(
completion_type="FIRST_SUCCESSFUL",
min_successful=1,
fail_on_first_error=False
)
@classmethod
def all_completed(cls) -> CompletionConfig:
"""Complete when all operations finish."""
return cls(
completion_type="ALL_COMPLETED",
min_successful=None,
fail_on_first_error=False
)
```
## Acceptance Criteria
- [ ] All presets match expected behavior
- [ ] Presets are consistent with service capabilities
- [ ] Documentation clearly explains each preset
- [ ] Tests validate preset behavior
- [ ] Alignment with TypeScript SDK confirmed
**Priority**: LOW
**Estimated Effort**: 0.5 days
Beitragsleitfaden
Rechercherichtung
Beginnen Sie in src/aws_durable_execution_sdk_python/config.py bei etwa Zeile 47 und überprüfen Sie die Presets first_successful, all_completed und all_successful. Vergleichen Sie deren dokumentiertes Verhalten mit den Funktionen des Service und dem TypeScript SDK. Ergänzen oder aktualisieren Sie anschließend Dokumentation und Tests, sodass das Verhalten jedes Presets validiert wird und die Akzeptanzkriterien erfüllt sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python, typescript
- Bereich
- backend-api-design
- Issue-Typ
- Feature
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- Ein halber Tag
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100