feat(lambda): add AWS Lambda integration with 50 operations
Merged
WA
2mo ago+17376+17376+01234567890123456789012345678901234567890123456789-11-11-01234567890123456789
Summary
- Adds an AWS Lambda block with 50 operations covering invocation, function CRUD, versions and aliases, resource-based permissions, event source mappings, reserved and provisioned concurrency, function URLs, async invocation configs, layers, tags, account settings, recursion detection, and runtime management
- Tools run in-process through the shared internal tool-operation boundary using
@aws-sdk/client-lambda; every request and response is contract-bound, with shared response projections for the FunctionConfiguration, alias, event source mapping, function URL, provisioned concurrency, and layer types - Contracts carry the documented AWS bounds and enums, plus cross-field guards so a missing code source or a Manual runtime policy without a version ARN fails at the boundary with a named field instead of an opaque AWS error
- Deployment packages come from Amazon S3 or a container image URI — inline
.zipupload is not supported, and the docs page says so
Type of Change
- New feature
Testing
- 145 new tests across the block, the SDK client mappers, the operations, and the tool-operation adapter
bun run type-checkclean; all 38check:auditspass, includingcheck:api-validation:strict,docs:check,integration-catalog:check,check:tool-request-boundary, andcheck:bare-icons- 7,635 tests pass across the blocks, tools, contracts, and tool-operation registry suites
- Verified every operation's request fields, response shapes, numeric bounds, and enum sets against the AWS Lambda API Reference
- Mutation-checked the params guard: reverted it, watched the test go red, restored it
Checklist
- Code follows project style guidelines
- Self-reviewed my changes
- Tests added/updated and passing
- No new warnings introduced
- I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)