diff --git a/docs/CHECKLIST.md b/docs/CHECKLIST.md index a18b8e4..67d597d 100644 --- a/docs/CHECKLIST.md +++ b/docs/CHECKLIST.md @@ -273,4 +273,4 @@ Race-detector execution is intentionally excluded because CGO must remain disabl - [x] REL-NATIVE: Replace preparation's manual workflow dispatches with native PR-run activation, exact-head/repository/PR filtering, bounded waiting for asynchronous run creation, authorization requests, and native failure recovery. Nineteen automation regressions passed locally. Hosted rollout established that manually dispatched job checks do not satisfy required rulesets: PR #16 was rejected despite green dispatches, then accepted after all three native PR runs were authorized through the Actions API and passed (2026-10-04). Default-token authorization remains subject to GitHub policy; report the maintainer's Approve workflows to run action when it is forbidden. See [Releasing modules](RELEASING.md) and issue #17. - [x] REL-DRAFT: Resolve matching Release drafts through authenticated listing because GitHub's by-tag endpoint returns published Releases. Reject duplicate matches and retain reviewed-note/tag conflict checks before publication. Thirty release regressions passed, including the real GoReleaser OSS v2.18.2 draft/finalization fixture with draft-by-tag 404 responses (2026-10-04). The first hosted attempt created the reviewed root tag/draft at PR #16's SHA and then stopped at the old draft lookup; preserve those objects for recovery. Restrict progress artifacts to reports, notes, configurations, and logs. Public consumer acceptance remains separate below; see issue #19. - [x] REL-VISIBILITY: Bound post-GoReleaser read-after-write waiting to 30 seconds, validate every observed Release against frozen notes, and propagate conflicts/API errors immediately without repeating writes. Thirty-three offline release regressions passed, including delayed draft/finalization, timeout preservation, and immediate error propagation (2026-10-04). Hosted run 37206952188 published and consumer-verified root v0.1.0, then stopped before the new commons/regex draft became visible; issue #20 tracks recovery. -- [ ] REL-PUBLIC: Complete all maintained public modules in the reviewed first-release batch, record fresh public consumer/checksum evidence, and verify Release Issue completion. Root v0.1.0 is published and consumer-verified; commons/regex/v0.1.0 is a preserved draft. The full batch remains incomplete until every selected module passes. +- [x] REL-PUBLIC: Publish all 27 maintained public modules as v0.1.0 from merged preparation PR #16 at immutable SHA 34fcc751355a2b29bca393748139ff96dd8bbf2a. The hosted GoReleaser OSS v2.18.2 run finalized every Release only after independent public download, tidy, build, module/checksum verification, and rejection of local replacements, with CGO disabled, GOWORK=off and fresh session caches. Release issue #15 closed automatically after completion. The frozen tracer/xray adapter was excluded. See [RELEASE_ACCEPTANCE.json](RELEASE_ACCEPTANCE.json) (2026-10-04). Hosted preparation controls and native PR/main checks were exercised; browser form rendering and default-token authorization remain separate rollout checks. diff --git a/docs/MODULES.md b/docs/MODULES.md index 75d2547..649dba7 100644 --- a/docs/MODULES.md +++ b/docs/MODULES.md @@ -1,6 +1,6 @@ # Independent modules in one repository -The implementation uses twenty-eight public modules and three development modules. Current module/import paths use the selected rambow-cloud repository namespace. Each module has its own `go.mod`, dependency requirements, and version entry in `tools/modules.json`. Versions are initial release targets, not published releases. Go 1.26 is the current supported baseline for all modules; CGO is always disabled. The count includes the deprecated, frozen X-Ray adapter. Current namespace verification is recorded in [MODULE_ACCEPTANCE_MIGRATION.json](MODULE_ACCEPTANCE_MIGRATION.json): all 31 packaged modules and 28 independent public consumers passed with GOWORK=off and CGO disabled on 2026-09-27. The report combines 13 accepted modules with an 18-module continuation. Non-documentation source matched the accepted archives at verification; later publication-only changes are checked separately. Earlier MODULE_ACCEPTANCE, REGEX and KMS records retain their original verification scope with historical module directories identified independently of repository ownership. +The implementation uses twenty-eight public modules and three development modules. Current module/import paths use the selected rambow-cloud repository namespace. Each module has its own `go.mod`, dependency requirements, and version entry in `tools/modules.json`. The 27 maintained public modules were released as `v0.1.0` on 2026-10-04; fresh public consumer builds and checksums are recorded in [RELEASE_ACCEPTANCE.json](RELEASE_ACCEPTANCE.json). The frozen `tracer/xray` adapter was excluded from publication. Go 1.26 is the current supported baseline for all modules; CGO is always disabled. The count includes the deprecated, frozen X-Ray adapter. Current namespace verification is recorded in [MODULE_ACCEPTANCE_MIGRATION.json](MODULE_ACCEPTANCE_MIGRATION.json): all 31 packaged modules and 28 independent public consumers passed with GOWORK=off and CGO disabled on 2026-09-27. The report combines 13 accepted modules with an 18-module continuation. Non-documentation source matched the accepted archives at verification; later publication-only changes are checked separately. Earlier MODULE_ACCEPTANCE, REGEX and KMS records retain their original verification scope with historical module directories identified independently of repository ownership. ## Module boundaries @@ -35,7 +35,7 @@ All module paths start with `github.com/rambow-cloud/powertools-lambda-go`. | `eventhandler/http/metrics` | Optional request-scoped EMF middleware | `eventhandler/http/metrics/v0.1.0` | | `eventhandler/http/tracer` | Optional OTel route spans and HTTP metadata | `eventhandler/http/tracer/v0.1.0` | | `tracer` | OpenTelemetry tracing and instrumentation | `tracer/v0.1.0` | -| `tracer/xray` | Deprecated and frozen legacy SDK adapter | `tracer/xray/v0.1.0` (not recommended for new releases) | +| `tracer/xray` | Deprecated and frozen legacy SDK adapter | Not released; deprecated and frozen | | `examples` | Development examples | Not published | | `integration` | Lambda and local capture fixtures | Not published | | `tools` | Packaging and development tooling | Not published | diff --git a/docs/PUBLISHING_PLAN.md b/docs/PUBLISHING_PLAN.md index 2943297..9aba7f6 100644 --- a/docs/PUBLISHING_PLAN.md +++ b/docs/PUBLISHING_PLAN.md @@ -1,12 +1,12 @@ # Optional utilities and Go publishing -Assessment date: 2026-09-14; publication identity updated 2026-09-27. Feature modules have independent dependencies and versions in one repository. Module boundaries are implemented; see [MODULES.md](MODULES.md) for the actual layout and maintenance commands. The selected repository path is `github.com/rambow-cloud/powertools-lambda-go`. No versions have been published. +Assessment date: 2026-09-14; publication identity updated 2026-09-27. Feature modules have independent dependencies and versions in one repository. Module boundaries are implemented; see [MODULES.md](MODULES.md) for the actual layout and maintenance commands. The selected repository path is `github.com/rambow-cloud/powertools-lambda-go`. The 27 maintained public modules were published as `v0.1.0` on 2026-10-04; see [public release acceptance](RELEASE_ACCEPTANCE.json). The frozen X-Ray adapter was excluded. ## Consumer experience Python's `aws-lambda-powertools[parser]` is installation syntax for optional dependencies, including Pydantic. It does not create a separate Parser distribution or change Python import syntax. TypeScript instead publishes packages such as `@aws-lambda-powertools/parser`. -Go has no bracket-based extras syntax. Consumers import a package path; `go get` selects the module that provides that package. The intended Go equivalent, after the repository/version are published, is: +Go has no bracket-based extras syntax. Consumers import a package path; `go get` selects the module that provides that package. The published Go equivalent is: ```powershell $env:CGO_ENABLED='0' @@ -17,7 +17,7 @@ go get github.com/rambow-cloud/powertools-lambda-go/parser@v0.1.0 import "github.com/rambow-cloud/powertools-lambda-go/parser" ``` -These are future usage examples, not commands that work against a release today. The existing utilities have separate module/import paths such as `/logger` and `/metrics`; `/parameters/ssm` remains a package within the Parameters module. Lambda applications compile their selected packages into the Go executable; Node.js and Python reference tooling is not a runtime dependency. +The example uses the publicly verified Parser `v0.1.0` release. The existing utilities have separate module/import paths such as `/logger` and `/metrics`; `/parameters/ssm` remains a package within the Parameters module. Lambda applications compile their selected packages into the Go executable; Node.js and Python reference tooling is not a runtime dependency. ## Package selection versus module isolation @@ -65,12 +65,12 @@ version-retrieval gates below. - [x] PUB-03: Configure per-module CGO-disabled tests/vet and Lambda cross-builds; verify standalone Parser and Signer consumers. All 18 packaged modules and 15 public consumers passed; Parser has no external dependencies. Dependency graphs and consumer binary sizes are recorded in MODULE_ACCEPTANCE.json, with both Lambda architectures built (2026-09-15). - [x] PUB-03a: Complete the original module-split portion of PUB-03: CI definitions, 12 packaged-module checks, nine isolated consumer builds/dependency checks, and Linux amd64/arm64 builds with CGO disabled. Subsequent utilities including Parser extend verification to 18 modules and 15 independent consumers (2026-09-15). Consumer harness sizes are recorded; release performance benchmarks remain open. - [x] PUB-03c: Verify optional HTTP Metrics/OTel adapter modules without adding dependencies to HTTP core. Verified 176 Metrics and 128 Tracer middleware reference cases (2,066 HTTP cases across the three modules), scope/span concurrency and body lifecycle tests, all 22 packaged modules/19 independent consumers, both CGO-disabled Linux builds, 622/622 RIE assertions, 95/95 streaming Runtime API checks and 14/14 Batch artifact checks (2026-09-22, Asia/Shanghai). Docker ran amd64; arm64 was cross-compiled. No AWS resources were used. Versions remain local fixtures, not public releases. -- [ ] PUB-04: Verify consumers with `GOWORK=off`, real version requirements, and no local replacements. Ensure core tests do not create module cycles. +- [x] PUB-04: Verify all 27 maintained public consumers with real `v0.1.0` requirements, GOWORK=off, CGO disabled, fresh caches, public proxy/checksum retrieval, and no module replacements. Hosted module CI also passed before publication. See [RELEASE_ACCEPTANCE.json](RELEASE_ACCEPTANCE.json) (2026-10-04). - [x] PUB-03b: Extend the independent-module harness to 20 packaged modules and seventeen public consumers, including HTTP. Verify tests/vet/tidy, both CGO-disabled Linux builds and 501/501 Docker assertions (2026-09-16). Root Commons, Parser and HTTP have no third-party module dependencies. These checks use local fixture versions; public publication/retrieval remains open. - [x] PUB-04a: Verify GOWORK=off consumers through a local file-based module proxy with semver requirements and no go.mod replacements. Root Commons has no external dependencies; Metrics and Metadata only require core; OTel Tracer excludes the X-Ray SDK. Public repository/proxy retrieval remains pending under PUB-04. - [x] PUB-05a: Add the project MIT license and preserved upstream/source-data licenses, record direct dependency provenance, and verify LICENSE/NOTICE contents in all 31 independent module archives. CI verifies generated notices; see [THIRD_PARTY_NOTICES.md](https://github.com/rambow-cloud/powertools-lambda-go/blob/main/THIRD_PARTY_NOTICES.md). This does not claim a complete binary SBOM or public release. - [ ] PUB-05: Complete license/provenance notices, API docs, release notes, module tag automation, and public compatibility scope. -- [ ] PUB-06: Publish the approved modules in dependency order and verify that consumers can resolve the documented versions. Publication has not been requested yet. +- [x] PUB-06: Publish all 27 approved maintained modules in dependency order through GoReleaser OSS v2.18.2 and verify independent public consumers before finalizing each Release. Preparation PR #16 froze the source and notes; issue #15 completed after successful publication. See [RELEASE_ACCEPTANCE.json](RELEASE_ACCEPTANCE.json) (2026-10-04). ## Sources diff --git a/docs/RELEASE_ACCEPTANCE.json b/docs/RELEASE_ACCEPTANCE.json new file mode 100644 index 0000000..1342fc9 --- /dev/null +++ b/docs/RELEASE_ACCEPTANCE.json @@ -0,0 +1,432 @@ +{ + "schema_version": 1, + "verified_at": "2026-10-04", + "repository": "rambow-cloud/powertools-lambda-go", + "source_sha": "34fcc751355a2b29bca393748139ff96dd8bbf2a", + "issue": 15, + "preparation_pr": 16, + "publication_run": 37208134712, + "workflow_url": "https://github.com/rambow-cloud/powertools-lambda-go/actions/runs/37208134712", + "environment": { + "os": "linux", + "architecture": "amd64", + "CGO_ENABLED": "0", + "GOWORK": "off", + "GOPROXY": "https://proxy.golang.org", + "GOSUMDB": "sum.golang.org", + "fresh_module_and_build_caches": true, + "local_replacements": false + }, + "goreleaser_version": "2.18.2", + "completed": true, + "excluded_frozen_modules": [ + "tracer/xray" + ], + "modules": [ + { + "tag": "v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": ".", + "version": "v0.1.0", + "sum": "h1:gtSgXGObiY3v3oERIhD1SwxOE+4bTB9qmWSqvTNC/9A=", + "go_mod_sum": "h1:LIzgd0MPj/6EPQ/YhZ4iiBkSGO7CRS/XUohtB+bi7NY=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/v0.1.0" + }, + { + "tag": "commons/regex/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "commons/regex", + "version": "v0.1.0", + "sum": "h1:/zMaPL/CTwHEcQuaQNBfzVbZwY93yx0GfuXGh3FS24E=", + "go_mod_sum": "h1:elGCBN39mZ1SOMDhNblPu8vswbtuEWrGnwXKW+ivNA8=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/commons/regex/v0.1.0" + }, + { + "tag": "signer/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "signer", + "version": "v0.1.0", + "sum": "h1:41YhOOxqUqmciLFUSvTIypFCn53JFTrGlaq5xjYHsqw=", + "go_mod_sum": "h1:LiLOq0bFOfVMDYcVNZDBBEmO3F1c9pNZeUfyGYZOZek=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/signer/v0.1.0" + }, + { + "tag": "batch/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "batch", + "version": "v0.1.0", + "sum": "h1:DQmxiDDm2mQIGyo6SCb8zwJLYf4b9/rmhcWftnKQ1NQ=", + "go_mod_sum": "h1:v7dSkkzY1ZVq1GZSZnLN7VDaviS+5DvpBNc/w4sNOz8=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/batch/v0.1.0" + }, + { + "tag": "commons/awssdk/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "commons/awssdk", + "version": "v0.1.0", + "sum": "h1:gf/gTKggKrUT0CzcNAXRmZ2KJp/LgdDaNft0mfPayI0=", + "go_mod_sum": "h1:ae6lQnxp5FPYFsREiKKmDa9sdgVGofaR6TOZBs+wyc4=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/commons/awssdk/v0.1.0" + }, + { + "tag": "commons/dynamodb/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "commons/dynamodb", + "version": "v0.1.0", + "sum": "h1:UhroCFPHni5MMTM5GGzVLBdHp5ZQQKaE5VLgpd4LoQQ=", + "go_mod_sum": "h1:uCACI3UjvHqU0QTSm0xYOViF4pEh01zYOwgHpVrLCvk=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/commons/dynamodb/v0.1.0" + }, + { + "tag": "commons/metadata/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "commons/metadata", + "version": "v0.1.0", + "sum": "h1:yANYOjj3+9Oghq5Cw1CvDRdU4pocRfxttKW/JDK7lM0=", + "go_mod_sum": "h1:+CD9n8HSLWDVMgPci9wZJXqdnA37D48EeF1k/gjgRCw=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/commons/metadata/v0.1.0" + }, + { + "tag": "datamasking/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "datamasking", + "version": "v0.1.0", + "sum": "h1:r+5WpGGyiESPho4x36lD+/hPBGatxpuGBZemMnqxEes=", + "go_mod_sum": "h1:fatBBLFBm/NaMUvc9oNyfP+AhH4WRmt6bZatw2z62vU=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/datamasking/v0.1.0" + }, + { + "tag": "eventhandler/appsyncevents/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/appsyncevents", + "version": "v0.1.0", + "sum": "h1:tAO+CecKgE/FKguRYHGwAUqdWuxMmoxlbMXckfOt+bI=", + "go_mod_sum": "h1:+PNDxjkDfGQOtjk3tLbL5/qZEsP0Z3WTjNwDZnTuxdA=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/appsyncevents/v0.1.0" + }, + { + "tag": "eventhandler/appsyncgraphql/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/appsyncgraphql", + "version": "v0.1.0", + "sum": "h1:PwPQmg4yx3kwCBZQjQ9FTEQTLatgMKs+7c4vh6pJf8M=", + "go_mod_sum": "h1:8yig+SLI0TYiRxdnN+OirZcKd1x4MK5YZq/Y82CWXJw=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/appsyncgraphql/v0.1.0" + }, + { + "tag": "eventhandler/bedrock/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/bedrock", + "version": "v0.1.0", + "sum": "h1:UOA0Mgu18c1TBVpioSDmLULggN1qdVast4elLxeM31k=", + "go_mod_sum": "h1:sxRYtHt2LPAXDqxhcnfYex4wIkCcJYRkwMK9u0qZJfM=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/bedrock/v0.1.0" + }, + { + "tag": "eventhandler/http/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/http", + "version": "v0.1.0", + "sum": "h1:0kiyLZo8W21tAjdefcULsLUIDQ02T9Bxd8rJiRlRmLQ=", + "go_mod_sum": "h1:tIdgdqtZsNCZ7HL71IIdmIBySvQ/gILCyA55KVcs1ik=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/http/v0.1.0" + }, + { + "tag": "jmespath/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "jmespath", + "version": "v0.1.0", + "sum": "h1:X1ATxlH9ns06EanYSJx6rI3nivoJuevC8FQNr8N8YoM=", + "go_mod_sum": "h1:Pxetu7IxLMLOl7wD2LbTA4vtEp39QjNdHMtTB4LR42M=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/jmespath/v0.1.0" + }, + { + "tag": "kafka/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "kafka", + "version": "v0.1.0", + "sum": "h1:dXqWLtc0aKrhMwowkDqouZy+1yFKyPWtIp+Njg0zfyI=", + "go_mod_sum": "h1:NF8T1XM5/Ie8mmU4Qb1yWYoOpIvdfKzdt8lX4yDQOJY=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/kafka/v0.1.0" + }, + { + "tag": "logger/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "logger", + "version": "v0.1.0", + "sum": "h1:H4Y7K99MUN7n/LNglJDi0/gRIv6V/YRhR6QMPBw4m1c=", + "go_mod_sum": "h1:3vhFGO2t0l/+JLk7SM7x2KKNpQOgLCzcDBltQiws99Y=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/logger/v0.1.0" + }, + { + "tag": "metrics/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "metrics", + "version": "v0.1.0", + "sum": "h1:hWe7rz3Hd9zbfFGDmjhAgYEOwy8foX9TvNEHR9RGsao=", + "go_mod_sum": "h1:Ko+vTH4fFAfgfL/VHY68EhhT7N1UYgFvuYXlZbB+QZ4=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/metrics/v0.1.0" + }, + { + "tag": "parser/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "parser", + "version": "v0.1.0", + "sum": "h1:4nM6hrgyodRpS9acWqaAUSO0yt026agnKFO92EDSIRo=", + "go_mod_sum": "h1:K8eWmP8tta5h8kVlcBps9+TIvF/YBtxFQ6WLXKYwP3A=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/parser/v0.1.0" + }, + { + "tag": "datamasking/kms/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "datamasking/kms", + "version": "v0.1.0", + "sum": "h1:z7FAg/jJmlkLRlvrw4G5ZjEwgWYV0H+HP5ufBwmyliU=", + "go_mod_sum": "h1:J3xo8zY2r9AwCCGiu6uLnRHkKPfvXoMuJixJXGNXdkQ=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/datamasking/kms/v0.1.0" + }, + { + "tag": "eventhandler/http/metrics/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/http/metrics", + "version": "v0.1.0", + "sum": "h1:PCLhD/iK81/1i86vv9wCjgU2xtYAMSpWrWSYHjU1kJ0=", + "go_mod_sum": "h1:qByY9X4fW3dVUyt23yYgAQQMuC2BnGu6CecxF1m0Fe4=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/http/metrics/v0.1.0" + }, + { + "tag": "idempotency/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "idempotency", + "version": "v0.1.0", + "sum": "h1:gBgxueDgpcGAHlcZcMlYsuCiroO3blZ6KtEQaPCkMHw=", + "go_mod_sum": "h1:550fzm/ePDxsFdsXA1C4QQxqk1rYkHVG7WvdQREhTyM=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/idempotency/v0.1.0" + }, + { + "tag": "kafka/avro/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "kafka/avro", + "version": "v0.1.0", + "sum": "h1:qODkBlsu3J/Q8abILhlGE3XvYh/kkZtoL6uUhZVOc/k=", + "go_mod_sum": "h1:KhwKIV9waj3rSS23FoqALKf9blacqtD/t0G/BJ1eFF0=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/kafka/avro/v0.1.0" + }, + { + "tag": "kafka/protobuf/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "kafka/protobuf", + "version": "v0.1.0", + "sum": "h1:1rQV+32lrNUeA2r8qDwFCQF/FycxNB2kT6vX1gXpuno=", + "go_mod_sum": "h1:JU9Gop9hJcoZczNBKc6syLlbtcKEHPT8qdQf+fm2I30=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/kafka/protobuf/v0.1.0" + }, + { + "tag": "parameters/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "parameters", + "version": "v0.1.0", + "sum": "h1:EbA6Q40wxjPtCF0aMm+d4qj2VVaoKeBhU7q6FSj1N9s=", + "go_mod_sum": "h1:Sa4vc7qFuEqDR8lHaUnCtXdTAFx32E/1NiBrd+ZOFYA=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/parameters/v0.1.0" + }, + { + "tag": "tracer/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "tracer", + "version": "v0.1.0", + "sum": "h1:RujTljz/VlbiBWpj8klLa1+G+WysJ3MZG8C67FgC1N8=", + "go_mod_sum": "h1:/qeOW+pbdGabbhkFaT+E1iLS6C3nBaDSJ+Ud3RGR4qI=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/tracer/v0.1.0" + }, + { + "tag": "validation/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "validation", + "version": "v0.1.0", + "sum": "h1:Rw6BYnmDoALnY6bkm0WwcA3/grvbrreegCSwN9xTCeE=", + "go_mod_sum": "h1:gfOMEQpG5PHRHRcFryGgxdZc611zYuBlZj378zsVk3w=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/validation/v0.1.0" + }, + { + "tag": "eventhandler/http/tracer/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "eventhandler/http/tracer", + "version": "v0.1.0", + "sum": "h1:t4Bpc1OIyMQzCR3BbfoXmsJrLpCpUVrrMvVA9x97nrM=", + "go_mod_sum": "h1:gO1H/Gy8/hSUzhlDmYVDQ7FVX40EJp6zZpd/toZT3PY=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/eventhandler/http/tracer/v0.1.0" + }, + { + "tag": "idempotency/cache/v0.1.0", + "tag_created": true, + "consumer_verified": true, + "release_published": true, + "evidence": { + "module": "idempotency/cache", + "version": "v0.1.0", + "sum": "h1:fQT7CGcRfZ1PyE3+KUN4UIzbGOyrqA0cPG4CdE+CX3g=", + "go_mod_sum": "h1:3rINqGFcE5KRQDcg0uH2w4n7DSy/Nj3bj7HdF4/VEYU=", + "consumer_build": true, + "checksum_verification": true + }, + "url": "https://github.com/rambow-cloud/powertools-lambda-go/releases/tag/idempotency/cache/v0.1.0" + } + ] +}