Changelog
February 24, 2026 · View on GitHub
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
[1.0.0] - 2026-02-23
Rewritten in TypeScript with a feature flag configuration model.
Added
- TypeScript rewrite with full type definitions
- Feature flag configuration model — each failure mode is an independent flag with its own
percentage; multiple can be active simultaneously timeoutandcorruptionfailure modes- Event-based targeting via
matchconditions (eq,exists,startsWith,regex) - Native AppConfig Feature Flags support with auto-disabled library cache
- Middy middleware via
failure-lambda/middysubpath export - Configuration validation with structured JSON logging (ReDoS detection, range clamping, fail-closed on invalid flags)
- CLI tool (
npx failure-lambda) for managing configuration with saved profiles, SSM and AppConfig backends - Lambda Layer (x86_64, arm64) with Rust proxy for zero-code fault injection across any managed runtime — includes LD_PRELOAD DNS denylist interception
Changed
- AWS SDK v3, native
fetch(),dns.lookupmonkey-patching (replacesaws-sdkv2,node-fetch,mitm) - Dual CJS/ESM package output; minimum Node.js 20
- Examples updated to Node.js 22, SDK v3; SAM example includes wrapper and Middy variants
Removed
node-fetchandmitmdependencies- Support for Node.js < 20
- Flat
{isEnabled, failureMode, ...}configuration format (0.x)
[0.4.4] - 2022-02-14
Changed
- Switch to node-fetch@2
[0.4.3] - 2022-02-14
Added
- MIT license file
- New sample applications for SAM, CDK, and Serverless Framework
Changed
- Updated dependencies
[0.4.2] - 2021-03-16
Fixed
- Fixed mitm listener state management to prevent traffic leaking through during enable/disable
- Fixed mitm not disabling when no longer needed
- Moved mitm object to library global namespace so that it persists across function invocations
Changed
- Syntax formatting
[0.4.1] - 2020-10-26
Added
- Made AppConfig Lambda extension port configurable using environment variable
[0.4.0] - 2020-10-25
Added
- Optional support for AWS AppConfig, allowing to validate failure configuration, deploy configuration using gradual or non-gradual deploy strategy, monitor deployed configuration with automatic rollback if CloudWatch Alarms is configured, and caching of configuration
- Hardcoded default configuration with
isEnabled: false, to use if issues loading configuration from Parameter Store or AppConfig
[0.3.1] - 2020-10-21
Fixed
- Change mitm mode back to connect to fix issue with all connections being blocked
[0.3.0] - 2020-08-24
Changed
- Changed mitm mode from connect to connection for quicker enable/disable of failure injection
- Renamed block list failure injection to denylist (breaking change for that failure mode)
- Updated dependencies
[0.2.0] - 2020-02-17
Added
- Block list failure
- Updated example application to store file in S3 and item in DynamoDB
[0.1.1] - 2020-02-13
Fixed
- Fixed issue with exception injection not throwing the exception
[0.1.0] - 2019-12-30
Added
- Disk space failure
- Updated example application to store example file in tmp
[0.0.1] - 2019-12-23
Added
- Initial release