{"adoption": {"forks": 490, "observed_at": "2026-08-28T04:07:53.566346+00:00", "stars": 3280}, "canonical_url": "https://ross.abutalabs.com/products/powertools-for-aws-lambda", "card": {"archived": false, "artifact_type": "library", "description": "A developer toolkit to implement Serverless best practices and increase developer velocity.", "domain": ["cloud-computing", "developer-tools", "backend", "monitoring", "apis"], "enriched": true, "function": ["logging", "tracing", "monitoring", "feature-flags", "middleware", "serialization", "caching", "rate-limiting", "workflow-automation", "developer-tools"], "health_score": 100, "homepage": "https://docs.powertools.aws.dev/lambda/python/latest/", "language": "Python", "license": "MIT-0", "license_family": "permissive", "maturity": "stable", "member_repos": ["aws-powertools/powertools-lambda-python", "aws-powertools/powertools-lambda-typescript"], "name": "Powertools for AWS Lambda", "platform": ["python", "serverless", "cloud"], "pushed_at": "2026-08-24T20:33:58+00:00", "repo": "aws-powertools/powertools-lambda-python", "stars": 3280, "tags": ["aws-lambda", "serverless", "observability", "cloudwatch", "idempotency", "batch-processing", "event-handler", "structured-logging", "x-ray", "aws"], "topics": ["aws", "aws-lambda", "lambda", "python", "serverless"], "urls": [{"kind": "homepage", "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"kind": "site_page", "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"kind": "site_page", "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"kind": "site_page", "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"kind": "site_page", "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}], "use_cases": ["add structured JSON logging to lambda functions", "trace lambda handlers with AWS X-Ray", "emit custom CloudWatch metrics from serverless apps", "make lambda functions idempotent to prevent duplicate execution", "handle partial failures in SQS and Kinesis batch processing", "implement feature flags in serverless applications", "validate and parse lambda event payloads with pydantic", "build REST APIs with lambda function URLs and API Gateway"], "what_it_is": "Powertools for AWS Lambda is a developer toolkit (available for Python, TypeScript, Java, and .NET) that implements serverless best practices as ready-made utilities for AWS Lambda functions. It provides core utilities like structured logging, distributed tracing, custom metrics via CloudWatch EMF, plus utilities for idempotency, batch processing, feature flags, data validation, and event handlers for API Gateway, AppSync, and other event sources.", "when_to_avoid": ["your functions run outside AWS Lambda (the toolkit is tightly coupled to Lambda context and event schemas)", "you already have an established observability stack and don't want CloudWatch-centric logging and metrics", "you need a general-purpose web framework rather than Lambda-specific utilities", "you want zero AWS SDK or CloudWatch dependencies in your codebase"], "when_to_choose": ["you run workloads on AWS Lambda and want observability (logs, traces, metrics) with minimal boilerplate", "you need battle-tested implementations of idempotency, batch partial failure handling, or parameter caching", "you want progressive adoption of serverless best practices via pip, Lambda Layers, or SAR", "you use multiple languages (Python, TypeScript, Java, .NET) and want consistent utilities across them"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/aws-powertools/powertools-lambda-python", "repo": "aws-powertools/powertools-lambda-python", "role": "main", "score": 98}, {"path": "/repos/aws-powertools/powertools-lambda-typescript", "repo": "aws-powertools/powertools-lambda-typescript", "role": "main", "score": 99}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.566346+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:43:19.718025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4432a0158a174a7541f5ee9e2f44529c3b45d858a6fd2509c812b009405e35f0", "fetched_at": "2026-08-28T04:07:53.566346+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aws-powertools/powertools-lambda-python"}, {"content_hash": "ba5102825b92134a8278297a1a14c44f04a5e4badf395f827deca77ccc37cb2f", "fetched_at": "2026-08-29T09:36:30.431789+00:00", "kind": "homepage", "missing": false, "url": "https://docs.powertools.aws.dev/lambda/python/latest/"}, {"content_hash": "283fcb2b2724dede1d682cb1c3cb69dca55951cacac33d2f52bac534f0a1999c", "fetched_at": "2026-08-29T09:36:30.448224+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/managed-instances"}, {"content_hash": "aa957ad80969198e60afcf9666586ee275d899800a5cdfb6def0ad376c496e6b", "fetched_at": "2026-08-29T09:36:30.450325+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features/durable-functions"}, {"content_hash": "02a42ca85bf5ac68838b336bb9a3137d0ec6775f0fd39bd24e3622ddd0792504", "fetched_at": "2026-08-29T09:36:30.434974+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/api_doc/batch/base"}, {"content_hash": "3a5eb8b720c7336d85c28cd08e27202312b6fc3f08461b971116dd70e07371da", "fetched_at": "2026-08-29T09:36:30.437582+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/getting-started/install"}, {"content_hash": "a6208e33753ba946131b9490e835aad515375aa219a5bfd2907ce7d481da0967", "fetched_at": "2026-08-29T09:36:30.441368+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/changelog"}, {"content_hash": "2375a7db63f6996227846fae7711960d6f31aa5a7a96a6250c1eff5d1f4252bb", "fetched_at": "2026-08-29T09:36:30.445501+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/lambda-features"}, {"content_hash": "d34b7698946e4b05d4d94df123482448d21135ff9258cbc921faa0fb64221391", "fetched_at": "2026-08-29T09:36:30.460986+00:00", "kind": "site_page", "missing": false, "url": "https://docs.aws.amazon.com/powertools/python/latest/build_recipes/getting-started"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 97}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2483, "days_push": 9, "days_rel": 23, "gap_med": 14.0, "n_releases_24m": 37}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}