awslabs / awslabs/agent-plugins

amazon-location-service: follow-ups from #250 review

Open
#269 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
893
Forks
155
Avg merge
5d 20h
Merged PRs (30d)
7

Description

Deferred items from Scott's review of #250, all marked non-blocking there. Line numbers are as of 31fabbb on `conniescl:update-amazon-location-v1.1.0`. Paths are relative to `plugins/amazon-location-service/skills/amazon-location-service/references/`.

1. `address-verification.md:254` - `waitForJob` polls `GetJob` in a `while (true)` with no deadline or attempt cap and no retry on transient `ThrottlingException`. Add `maxWaitMs`/`maxAttempts`, retry transient errors, and either make the "back off" comment true or point harder at the EventBridge alternative. Also state near line 290 whether the `Output_AddressMetadata_DeliveryIndicators_*` columns are always present, since `triage()` rejects every record when `Mailable` is absent. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807508

2. `google-migration-android.md:642` - `routePoints` is never defined in the route polyline sample and `Point.fromLngLat(it.second, it.first)` assumes `Pair(lat, lon)`. Define the source explicitly: `leg.geometry.lineString.map { Point.fromLngLat(it[0], it[1]) }` if it comes from `CalculateRoutes` (already GeoJSON order), or declare `routePoints: List>` as (lat, lon) and destructure. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807573

3. `device-tracking.md:195` - live-tracking poll does not drain `NextToken` (contradicts line 138) and the `async` `setInterval` callback can overlap under throttling. Replace with a self-scheduling loop that paginates, then `setTimeout(loop, 15000)`. The `map.on("load")` block at line 170 has the same pagination gap. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807545

4. `google-migration-android.md:381` - `MapActivity` never calls `mapView.onCreate(savedInstanceState)` before `getMapAsync` and forwards none of `onStart`/`onResume`/`onPause`/`onStop`/`onSaveInstanceState`/`onLowMemory`/`onDestroy`. Add the full MapLibre lifecycle set to the sample. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807562

5. `calculate-routes.md:305` - the ordered lists under "When to Use Simple Format" (lines 305, 319, 326, 338, 357) and "When to Use FlexiblePolyline Format" (389, 408, 432, 453, 487, 516) all render as `1.` because the unindented code fences terminate each list. Use explicit sequential numbers (as at lines 1037-1039 and 1412-1414) or indent the fences and sub-bullets by 3 spaces. Line 297 `##### Bandwidth savings: 5-10x smaller with FlexiblePolyline` should go back to bold prose. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807613

6. `zone-alerts.md:189` - the comment text was corrected in 31fabbb, but the `BatchEvaluateGeofences` sample still does not inspect `response.Errors`. Add the check to match the guidance at line 296. Thread: https://github.com/awslabs/agent-plugins/pull/250#discussion_r3896807498

Contributor guide

Open the contributing guide

Research direction

Start with the six referenced files under plugins/amazon-location-service/skills/amazon-location-service/references/ and compare each example with the linked #250 review thread. Check the polling, pagination, lifecycle, routing, and error-handling sections first. Done means all six numbered follow-ups are addressed and the rendered lists and code samples match the stated guidance.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, javascript, kotlin
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
64/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.