What's Changed
New Contributors
- @ryan-bennett made their first contribution in #975
[1.3.68] — 2026-06-25
Fixed
- Cognito — OAuth2 token endpoint URL-decodes HTTP Basic client credentials — a
client_secretcontaining/or+arrives in theAuthorization: Basicheader as%2F/%2B(RFC 6749 §2.3.1 form-urlencodes the client id and secret before base64). MiniStack did not decode them, soclient_secret_basicfailed withinvalid_clientfor any secret with special characters. The credentials are now decoded, matching theclient_secret_postpath. Reported by @pny-nc. - Step Functions —
lambda:invoke.waitForTaskTokendelivers the unwrappedPayload— the callback path forwarded the whole service-integration envelope ({"FunctionName": ..., "Payload": {...}}) to the Lambda instead of just thePayload, unlike the synchronouslambda:invokepath. A handler reading its task token / input from the top level saw them nested underPayload, never resumed the task, and the execution hung until timeout. Contributed by @ryan-bennett. - Step Functions — a failed
lambda:invoketask setsCauseto a JSON-encoded error payload —Causewas the bareerrorMessagestring instead of AWS's JSON object ({"errorType": ..., "errorMessage": ..., "trace": [...]}), soCatchhandlers and downstream tasks thatjson.loads(Cause)to readerrorType/errorMessagefailed to parse it.Causenow matches the AWS wire form. Contributed by @ryan-bennett. - SNS —
lambdasubscribers are delivered to asynchronously — fanout invoked alambda-protocol subscriber synchronously insidePublish, so a slow or hung subscriber Lambda blocked thePublishcall and its upstream caller (e.g. a Step Functions task publishing a notification). Delivery now runs on a background thread, matching AWS's asynchronous SNS→Lambda delivery, soPublishreturns immediately. Contributed by @ryan-bennett.