Skip to content

Commit 768cd44

Browse files
authored
fix(s3): read every lifecycle rule-level key and translate the noncurrent transition day field (#1426)
1 parent 6d8f6a0 commit 768cd44

7 files changed

Lines changed: 820 additions & 33 deletions

File tree

docs/_generated/integ-coverage.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4635,6 +4635,7 @@
46354635
"l2"
46364636
],
46374637
"s3-lifecycle": [
4638+
"l1",
46384639
"l2",
46394640
"literal"
46404641
],

docs/_generated/integ-last-run.tsv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ s3-asset-deploy 2026-07-26T19:45:58Z PASS 58 verify.sh 0727b sweep-b12 staleness
230230
s3-cloudfront 2026-08-08T17:42:05Z PASS 228 verify.sh 1373 OriginCustomHeaders create+update-survive asserts green; destroy 0 errors 0 orphans
231231
s3-directory-bucket 2026-08-02T15:38:47Z PASS 50 verify.sh re-run for #1347 wontdo-comment PR; guard + clean destroy, 0 orphans
232232
s3-event-notification 2026-07-21T05:28:05Z PASS 79 verify.sh rc ok, orph clean
233-
s3-lifecycle 2026-07-21T14:28:43Z PASS 58 verify.sh rc ok, orph clean
233+
s3-lifecycle 2026-08-09T13:59:22Z PASS 57 verify.sh post-delta-review re-run (#1388/#1424); rule-level keys asserted live; 2 del/0 err, 0 orphans
234234
s3-object-lock 2026-07-21T14:42:20Z PASS 53 verify.sh rc ok, orph clean
235235
s3-replication-and-filter 2026-07-21T14:43:45Z PASS 63 verify.sh rc ok, orph clean
236236
s3-tables 2026-07-27T16:53:47Z PASS 45 verify.sh issue #1270/#1272 post-review re-run; 5 del 0 err, 0 orphans

docs/integ-coverage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ Registered without an integ fixture, with an explicit `// allow-no-integ: <ratio
144144
| `AWS::RDS::DBSubnetGroup` | [`rds-aurora`](../tests/integration/rds-aurora/) (l2)<br>[`rds-dbinstance-backfill`](../tests/integration/rds-dbinstance-backfill/) (l2)<br>[`rds-full-stack`](../tests/integration/rds-full-stack/) (l2) |
145145
| `AWS::Route53::HostedZone` | [`route53`](../tests/integration/route53/) (l2) |
146146
| `AWS::Route53::RecordSet` | [`route53`](../tests/integration/route53/) (l1,l2,literal) |
147-
| `AWS::S3::Bucket` | [`basic`](../tests/integration/basic/) (l2)<br>[`bench-sdk`](../tests/integration/bench-sdk/) (l2)<br>[`bucket-deployment`](../tests/integration/bucket-deployment/) (l2)<br>[`cc-getatt-readback`](../tests/integration/cc-getatt-readback/) (l2)<br>[`ci-cd`](../tests/integration/ci-cd/) (l2,literal)<br>[`composite-stack`](../tests/integration/composite-stack/) (l2,literal)<br>[`conditions`](../tests/integration/conditions/) (l1,l2)<br>[`context-test`](../tests/integration/context-test/) (l2)<br>[`cross-stack-references`](../tests/integration/cross-stack-references/) (l2)<br>[`data-analytics`](../tests/integration/data-analytics/) (l2,literal)<br>[`destroy-data-guard`](../tests/integration/destroy-data-guard/) (l2)<br>[`diff-intrinsic-target-change`](../tests/integration/diff-intrinsic-target-change/) (l2)<br>[`drift-revert`](../tests/integration/drift-revert/) (l2)<br>[`drift-revert-arrays`](../tests/integration/drift-revert-arrays/) (l2)<br>[`event-driven`](../tests/integration/event-driven/) (l2)<br>[`export`](../tests/integration/export/) (l2,literal)<br>[`full-stack-demo`](../tests/integration/full-stack-demo/) (l2)<br>[`glue-update-hardening`](../tests/integration/glue-update-hardening/) (l2)<br>[`import-value-strong-ref`](../tests/integration/import-value-strong-ref/) (l2)<br>[`infra-security`](../tests/integration/infra-security/) (l2)<br>[`intrinsic-functions`](../tests/integration/intrinsic-functions/) (l2)<br>[`kms-encryption`](../tests/integration/kms-encryption/) (l2,literal)<br>[`local-invoke-agentcore-from-state`](../tests/integration/local-invoke-agentcore-from-state/) (l2)<br>[`local-invoke-from-state`](../tests/integration/local-invoke-from-state/) (l2)<br>[`local-start-cloudfront`](../tests/integration/local-start-cloudfront/) (l2)<br>[`log-pipeline`](../tests/integration/log-pipeline/) (l2)<br>[`migrate-from-cfn`](../tests/integration/migrate-from-cfn/) (l2)<br>[`multi-resource`](../tests/integration/multi-resource/) (l2)<br>[`multi-stack-deps`](../tests/integration/multi-stack-deps/) (l2)<br>[`nested-stack`](../tests/integration/nested-stack/) (l2)<br>[`orphan-resource`](../tests/integration/orphan-resource/) (l2,literal)<br>[`outputs-only-export`](../tests/integration/outputs-only-export/) (l2)<br>[`propagation-races-2`](../tests/integration/propagation-races-2/) (l2)<br>[`recreate-via-cc-api`](../tests/integration/recreate-via-cc-api/) (l1)<br>[`s3-cloudfront`](../tests/integration/s3-cloudfront/) (l2)<br>[`s3-event-notification`](../tests/integration/s3-event-notification/) (l2)<br>[`s3-lifecycle`](../tests/integration/s3-lifecycle/) (l2,literal)<br>[`s3-object-lock`](../tests/integration/s3-object-lock/) (l1,literal)<br>[`s3-replication-and-filter`](../tests/integration/s3-replication-and-filter/) (l1,literal)<br>[`state-destroy`](../tests/integration/state-destroy/) (l2)<br>[`synthetics-canary`](../tests/integration/synthetics-canary/) (l2)<br>[`tags-propagation`](../tests/integration/tags-propagation/) (l2)<br>[`update-policy-mutations`](../tests/integration/update-policy-mutations/) (l2,literal)<br>[`update-replace`](../tests/integration/update-replace/) (l2,literal) |
147+
| `AWS::S3::Bucket` | [`basic`](../tests/integration/basic/) (l2)<br>[`bench-sdk`](../tests/integration/bench-sdk/) (l2)<br>[`bucket-deployment`](../tests/integration/bucket-deployment/) (l2)<br>[`cc-getatt-readback`](../tests/integration/cc-getatt-readback/) (l2)<br>[`ci-cd`](../tests/integration/ci-cd/) (l2,literal)<br>[`composite-stack`](../tests/integration/composite-stack/) (l2,literal)<br>[`conditions`](../tests/integration/conditions/) (l1,l2)<br>[`context-test`](../tests/integration/context-test/) (l2)<br>[`cross-stack-references`](../tests/integration/cross-stack-references/) (l2)<br>[`data-analytics`](../tests/integration/data-analytics/) (l2,literal)<br>[`destroy-data-guard`](../tests/integration/destroy-data-guard/) (l2)<br>[`diff-intrinsic-target-change`](../tests/integration/diff-intrinsic-target-change/) (l2)<br>[`drift-revert`](../tests/integration/drift-revert/) (l2)<br>[`drift-revert-arrays`](../tests/integration/drift-revert-arrays/) (l2)<br>[`event-driven`](../tests/integration/event-driven/) (l2)<br>[`export`](../tests/integration/export/) (l2,literal)<br>[`full-stack-demo`](../tests/integration/full-stack-demo/) (l2)<br>[`glue-update-hardening`](../tests/integration/glue-update-hardening/) (l2)<br>[`import-value-strong-ref`](../tests/integration/import-value-strong-ref/) (l2)<br>[`infra-security`](../tests/integration/infra-security/) (l2)<br>[`intrinsic-functions`](../tests/integration/intrinsic-functions/) (l2)<br>[`kms-encryption`](../tests/integration/kms-encryption/) (l2,literal)<br>[`local-invoke-agentcore-from-state`](../tests/integration/local-invoke-agentcore-from-state/) (l2)<br>[`local-invoke-from-state`](../tests/integration/local-invoke-from-state/) (l2)<br>[`local-start-cloudfront`](../tests/integration/local-start-cloudfront/) (l2)<br>[`log-pipeline`](../tests/integration/log-pipeline/) (l2)<br>[`migrate-from-cfn`](../tests/integration/migrate-from-cfn/) (l2)<br>[`multi-resource`](../tests/integration/multi-resource/) (l2)<br>[`multi-stack-deps`](../tests/integration/multi-stack-deps/) (l2)<br>[`nested-stack`](../tests/integration/nested-stack/) (l2)<br>[`orphan-resource`](../tests/integration/orphan-resource/) (l2,literal)<br>[`outputs-only-export`](../tests/integration/outputs-only-export/) (l2)<br>[`propagation-races-2`](../tests/integration/propagation-races-2/) (l2)<br>[`recreate-via-cc-api`](../tests/integration/recreate-via-cc-api/) (l1)<br>[`s3-cloudfront`](../tests/integration/s3-cloudfront/) (l2)<br>[`s3-event-notification`](../tests/integration/s3-event-notification/) (l2)<br>[`s3-lifecycle`](../tests/integration/s3-lifecycle/) (l1,l2,literal)<br>[`s3-object-lock`](../tests/integration/s3-object-lock/) (l1,literal)<br>[`s3-replication-and-filter`](../tests/integration/s3-replication-and-filter/) (l1,literal)<br>[`state-destroy`](../tests/integration/state-destroy/) (l2)<br>[`synthetics-canary`](../tests/integration/synthetics-canary/) (l2)<br>[`tags-propagation`](../tests/integration/tags-propagation/) (l2)<br>[`update-policy-mutations`](../tests/integration/update-policy-mutations/) (l2,literal)<br>[`update-replace`](../tests/integration/update-replace/) (l2,literal) |
148148
| `AWS::S3::BucketPolicy` | [`migrate-from-cfn`](../tests/integration/migrate-from-cfn/) (literal)<br>[`propagation-races-2`](../tests/integration/propagation-races-2/) (l1) |
149149
| `AWS::S3Express::DirectoryBucket` | [`s3-directory-bucket`](../tests/integration/s3-directory-bucket/) (l1) |
150150
| `AWS::S3Tables::Namespace` | [`s3-tables`](../tests/integration/s3-tables/) (l1) |

0 commit comments

Comments
 (0)