test: add plugin info-shape handlers - #683
Conversation
| return "x" | ||
|
|
||
|
|
||
| def branch_a(context: DurableContext) -> str: |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
This comment has been minimized.
This comment has been minimized.
32e260f to
a65a42e
Compare
|
|
||
| def branch_a(context: DurableContext) -> str: | ||
| context.step(inner(), name="inner") | ||
| context.wait(Duration.from_seconds(2)) |
There was a problem hiding this comment.
Codex AI review
[P1] Exercise actual ReplayChildren mode. A normal wait only re-enters a STARTED context; it does not set ContextDetails.ReplayChildren, so every emitted isReplayingChildren value remains false. Requirement 10-23 therefore never validates the true case. Produce a context result larger than 256 KiB, then suspend after that context succeeds so the next invocation replays it with ReplayChildren enabled.
| "id": info.operation_id, | ||
| "type": info.operation_type.name, | ||
| "isReplay": info.is_replayed, |
There was a problem hiding this comment.
Codex AI review
[P2] Include status in the attempt shape. UserFunctionStartInfo and UserFunctionEndInfo inherit OperationInfo.status, but this serializer drops it despite claiming to emit the full attempt shape. Add the status so requirement 10-21 validates that field.
| "id": info.operation_id, | |
| "type": info.operation_type.name, | |
| "isReplay": info.is_replayed, | |
| "id": info.operation_id, | |
| "type": info.operation_type.name, | |
| "status": info.status.name, | |
| "isReplay": info.is_replayed, |
| PluginInvocationInfoShape: | ||
| Type: AWS::Serverless::Function | ||
| TestingMetadata: | ||
| TestDescription: ["10-19"] |
There was a problem hiding this comment.
Codex AI review
[P2] Add unit coverage for the new handlers. Existing tests only exercise suite discovery and role injection; none imports these handlers or verifies their emitted records and replay behavior. Add focused callback/output tests for requirements 10-19 through 10-23, including a true ReplayChildren case, as required by the repository's testing rules.
Codex AI reviewFound two conformance-handler correctness gaps. The five new handlers also lack focused unit coverage. Reviewed commit |
Summary
10-19through10-23Requirement mappings
10-19→ invocation start/end info shape10-20→ operation start/end info shape10-21→ attempt start/end info shape with real SDK retry behavior10-22→ operation-change delta item info shape10-23→ context subtype and children-replay info shapeValidation
sam validate --lintfor the plugin templateThe live AWS conformance validator was not run locally.