Task · SKT-0168.02.07

Capture and emit Lambda and DynamoDB throttle metrics

Description

The captured Lambda and DynamoDB families have no throttle series, because the earlier lab never induced throttling. Capture throttling live (a function with low reserved concurrency driven past it, a table with low provisioned capacity driven past it), read it back, record what was observed positive-only, then emit those families from the existing constructs with incident-aware shapes.

Acceptance Criteria

Definition of Done

Implementation Plan

Loop55: prepare and independently review bounded root-only capture driver; root refreshes admission and cost, captures positive throttles and cadence with durable ownership inventory, fixes forward, then restores shared baseline and tears down before the hard end.

Loop56: fresh read-only cost/IAM/headroom admission, copied native capture driver with inventoried untaggable children and tested independent cleanup monitor; no live creation before cost-scope decision, exact review and admission. Capture-derived construct work follows observed evidence only.

Implementation Notes

Offline capture driver delivered. Live creation remains held on owner interpretation for non-taggable API child resources; independent native safety review is in progress. No capture resources have been created.

Native driver safety repair and independent re-review passed nineteen cases; live capture remains owner-held on interpretation of non-taggable API children. No capture resources created. Current cost, permissions, headroom and a tested independent cleanup monitor are additional admission prerequisites, not inferred from offline fixtures.

Closeout: no capture resources created and first-create clock never started. Resume only after explicit parent-tag/non-taggable-child ownership approval, fresh cost and IAM/headroom checks and tested independent cleanup monitoring. Native offline safety review is passing, not live evidence.

Capture held after provider startup changed a function revision while code and complete configuration remained equal. Original identity evidence is retained; no throttle metrics admitted. Independent cleanup verified unused scheduling resources absent and the shared stream baseline unchanged. Remaining function and dependencies are protected pending explicit cleanup/retry decision; complete teardown is not claimed.

Clarification: the revision change was observed between Pending and Active startup states; its cause and continuity are not established by equal configuration or absent audit updates.

The single bounded capture stopped before stream expansion, schedule creation or probe traffic because accepted versus active function revision identity differed. All known created parents/configuration lifetimes are now physically verified absent, with the shared stream unchanged and final tag/name scans empty; dependent IAM cleanup followed a complete enabled-region role-reference census. No throttle source/backend telemetry was admitted. Fresh capture remains owner-held; do not model telemetry or claim completion from resource metadata or cleanup.

Terminal partial closeout: capture stopped before traffic; all known created resource/configuration lifetimes verified absent and shared stream unchanged. No throttle telemetry or emission acceptance. Fresh capture remains owner-held; unexplained function startup revision and original evidence remain intact.

loop57: captured and landed (0826600; zero-valued Lambda samples, DynamoDB throttle bases opt-in). AC2 open: Lambda throttles are incident-aware (function_throttle_storm, 71753e1) but DynamoDB throttles have no incident mode yet.

loop58: AC2 landed e6e98cd (table_throttle_storm, axis table), 0d5fc25; gate gate-1 pass, hosted CI green on 0fc3a55.

View the source file on GitHub