AWS deprecation: v3.1086.0
What changed
GuardDuty findings deprecate GuardrailArn and GuardrailVersion in favor of the guardrails list
From the upstream announcement:
3.1086.0(2026-07-13) New Features clients: update client endpoints as of 2026-07-13 ( 22a3bc51 ) client-guardduty: GuardDuty AI Protection is now publicly available. Findings include Bedrock guardrail details, model details, observation numbers, and continuous scan details. GuardrailArn and GuardrailVersion are deprecated in favor of the guardrails list. ( 7456befb ) client-gamelift: Amazon GameLift Servers now includes fleet expiration for managed fleets. A managed fleet expires one year after creation, transitioning to EXPIRED status, emitting a FLEET EXPIRED event, and scaling to zero instances. Expired fleets cannot host new game sessions or increase capacity. ( ca1487ca ) client-redshift-serverless: Add support for preserving datasharing, zero-ETL and S3 event integrations on snapshot restore to serverless namespace. ( 0ed5e330 ) client-elasticsearch-service: Adds support for the En […]
Who is affected
Read-site remap with a scalar-to-list shape change.
To find out whether your repo is hit — file and line number, no code leaving your machine:
npx mendapi scan --repo .
How to fix it
Migration path:
Read-site remap with a scalar-to-list shape change. Consumers reading GuardrailArn/GuardrailVersion from GuardDuty AI Protection finding details must switch to iterating the guardrails list and reading the ARN/version off each entry; code that assumed exactly one guardrail should take the first entry explicitly and decide policy for multi-guardrail findings. Because the successor is a list, this is a semantic widening (one-to-many) rather than a pure rename — a regex pack could mend the single-read form conservatively, but call sites aggregating findings need the widening decision, so it is graded LLM-assisted draft until a fixture-backed pack narrows the safe shapes.
Before:
const arn = finding.service.detail.GuardrailArn; const version = finding.service.detail.GuardrailVersion;
After:
const [g] = finding.service.detail.guardrails ?? []; const arn = g?.arn; const version = g?.version;
Replacement data source: The guardrails list on the same GuardDuty finding detail carries the ARN and version per guardrail entry
With your own LLM key configured (BYO compute — mendapi never proxies your credentials), npx mendapi llmfix turns this guide into a reviewable draft patch for your repo.
Detected and tracked by mendapi — Dependabot for every API you depend on. Scans run locally; your code never leaves your machine.
Related
- All monitored providers — live change counts for aws and 19 others.
- Migration pack catalog — every deterministic fix mendapi ships.
- Getting started — scan your repo in 30 seconds, no code leaves your machine.