Aws/event Topology
Event topology observation — discovers the directed graph of event relationships across EventBridge, SNS, SQS, and Lambda event source mappings. Produces a unified graph of nodes and edges with connected component analysis, boundary detection, and hub identification.
Methods
- discover — Single fan-out observation: queries all 4 services in parallel, produces unified graph with nodes, edges, and computed statistics
- analyze — Pure data-layer queries against stored graph: hubs, boundaries, orphans, connected components, and node-centric path queries
2026.09.04.1
Changed: Bump @aws-sdk/* 3.1121.0 → 3.1126.0 (6 packages)
2026.08.29.1
Changed: Bump @aws-sdk/* 3.1120.0 → 3.1121.0. Dependency-only update; no schema, API, or behavioral changes.
2026.08.28.2
Changed: Normalized the extension license to Apache-2.0 and corrected the copyright holder to "Sean Escriva". Extensions that previously shipped an MIT LICENSE.md are now Apache-2.0, consistent with the repository root and every other extension. No code or behavioral changes.
Upgrade note: License text only. No API, schema, or runtime behavior changed.
2026.08.28.1
Changed: Bump @aws-sdk/* 3.1114.0 → 3.1120.0 (6 packages)
2026.08.26.2
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
Global Arguments
| Argument | Type | Description |
|---|---|---|
| profile? | string | AWS profile to use |
| region? | string | AWS region |
| Argument | Type | Description |
|---|---|---|
| maxRulesPerBus? | number | Max EventBridge rules to fetch per bus |
| maxTopics? | number | Max SNS topics to enumerate |
| maxQueues? | number | Max SQS queues to enumerate |
| Argument | Type | Description |
|---|---|---|
| query | enum | Analysis query type |
| nodeId? | string | Node ID for path queries |
| threshold? | number | Degree threshold for hub detection |
Resources
2026.08.29.1
Changed: Bump @aws-sdk/* 3.1120.0 → 3.1121.0. Dependency-only update; no schema, API, or behavioral changes.
2026.08.28.2
Changed: Normalized the extension license to Apache-2.0 and corrected the copyright holder to "Sean Escriva". Extensions that previously shipped an MIT LICENSE.md are now Apache-2.0, consistent with the repository root and every other extension. No code or behavioral changes.
Upgrade note: License text only. No API, schema, or runtime behavior changed.
2026.08.28.1
Changed: Bump @aws-sdk/* 3.1114.0 → 3.1120.0 (6 packages)
2026.08.26.2
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
2026.08.28.2
Changed: Normalized the extension license to Apache-2.0 and corrected the copyright holder to "Sean Escriva". Extensions that previously shipped an MIT LICENSE.md are now Apache-2.0, consistent with the repository root and every other extension. No code or behavioral changes.
Upgrade note: License text only. No API, schema, or runtime behavior changed.
2026.08.28.1
Changed: Bump @aws-sdk/* 3.1114.0 → 3.1120.0 (6 packages)
2026.08.26.2
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
2026.08.28.1
Changed: Bump @aws-sdk/* 3.1114.0 → 3.1120.0 (6 packages)
2026.08.26.2
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
2026.08.26.2
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
2026.08.25.1
Changed: Updated labels for improved extension discoverability. Added cross-cutting category labels (security, observability, finops, infrastructure, networking, compliance, devops, ai, incident-response) where applicable.
updated labels
2026.08.24.2
Added: list_event_buses method — enumerate EventBridge buses with the
number of rules on each. A lightweight alternative to discover when you only
need to know which buses exist and how many rules they carry, without
performing full topology graph construction.
Added: event_buses resource spec to store the bus listing output.
Modified 1 models
2026.08.24.1
Added: Output metadata attributes for observability.
durationMs: Method execution duration in milliseconds.collectedBy: Extension name that produced the data.fetchedAt: ISO 8601 timestamp when data was fetched (added to resources that previously lacked it).
2026.08.23.1
Changed: Documentation only — no code changes. Expanded the discover and
analyze method descriptions with actual argument names/defaults and resource
instance names. Added a ## Troubleshooting section covering the region
default (us-east-1), the hardcoded MAX_PAGES = 50 cap on two specific
loops, and — the most notable finding — that the user-supplied
maxTopics/maxQueues/maxRulesPerBus caps break enumeration silently
without setting truncated, an honesty gap distinct from the hardcoded
caps. Also documents per-queue attribute-fetch failures that silently drop
queues (and their DLQ/redrive edges) from the graph.
2026.08.21.1
Changed: Error messages from discover now say which AWS call failed and
with what identifier, instead of surfacing the raw SDK error. Failures listing
EventBridge buses/rules/targets, SNS topics/subscriptions, SQS queues, or
Lambda event source mappings now name the operation, the resource (bus name,
rule name, topic ARN), and the region, with the original SDK error preserved
as the cause.
Resolving the caller's account ID via STS now raises a clear error naming the
region if GetCallerIdentity fails, instead of an unannotated SDK exception.
analyze used to log an error and silently return zero results when called
with query=path and no nodeId, or when no graph had been discovered yet,
or when the given nodeId didn't exist in the stored graph — callers had no
signal that anything went wrong. All three cases now throw a descriptive
error explaining what was missing and how to fix it (e.g. "run discover
first" or "nodeId not found in the stored topology graph").
No schema changes.
2026.08.20.1
Changed: Bump @aws-sdk/* 3.1111.0 → 3.1114.0 (6 packages)
2026.08.15.1
Changed: Bump @aws-sdk/* 3.1104.0 → 3.1111.0 (6 packages)
2026.08.05.1
Changed: Bump @aws-sdk/* 3.1101.0 → 3.1104.0 (6 packages)
2026.08.02.1
Changed: Bump @aws-sdk/* 3.1100.0 → 3.1101.0 (6 packages)
2026.08.01.1
Fixed: Broken model-upgrade chain. The prior version bump (to 2026.07.31.1) updated version but left the upgrades array terminating one step short, which blocks swamp extension push ("model upgrade chain errors"). That version never actually published — the registry was still serving 2026.07.29.1. This release closes the chain with a no-op upgrade entry and republishes everything that had accumulated since 2026.07.29.1.
2026.07.31.1
Changed: Bump @aws-sdk/* 3.1096.0 → 3.1100.0 (6 packages)
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.08.15.1
Changed: Bump @aws-sdk/* 3.1104.0 → 3.1111.0 (6 packages)
2026.08.05.1
Changed: Bump @aws-sdk/* 3.1101.0 → 3.1104.0 (6 packages)
2026.08.02.1
Changed: Bump @aws-sdk/* 3.1100.0 → 3.1101.0 (6 packages)
2026.08.01.1
Fixed: Broken model-upgrade chain. The prior version bump (to 2026.07.31.1) updated version but left the upgrades array terminating one step short, which blocks swamp extension push ("model upgrade chain errors"). That version never actually published — the registry was still serving 2026.07.29.1. This release closes the chain with a no-op upgrade entry and republishes everything that had accumulated since 2026.07.29.1.
2026.07.31.1
Changed: Bump @aws-sdk/* 3.1096.0 → 3.1100.0 (6 packages)
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.08.05.1
Changed: Bump @aws-sdk/* 3.1101.0 → 3.1104.0 (6 packages)
2026.08.02.1
Changed: Bump @aws-sdk/* 3.1100.0 → 3.1101.0 (6 packages)
2026.08.01.1
Fixed: Broken model-upgrade chain. The prior version bump (to 2026.07.31.1) updated version but left the upgrades array terminating one step short, which blocks swamp extension push ("model upgrade chain errors"). That version never actually published — the registry was still serving 2026.07.29.1. This release closes the chain with a no-op upgrade entry and republishes everything that had accumulated since 2026.07.29.1.
2026.07.31.1
Changed: Bump @aws-sdk/* 3.1096.0 → 3.1100.0 (6 packages)
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.08.02.1
Changed: Bump @aws-sdk/* 3.1100.0 → 3.1101.0 (6 packages)
2026.08.01.1
Fixed: Broken model-upgrade chain. The prior version bump (to 2026.07.31.1) updated version but left the upgrades array terminating one step short, which blocks swamp extension push ("model upgrade chain errors"). That version never actually published — the registry was still serving 2026.07.29.1. This release closes the chain with a no-op upgrade entry and republishes everything that had accumulated since 2026.07.29.1.
2026.07.31.1
Changed: Bump @aws-sdk/* 3.1096.0 → 3.1100.0 (6 packages)
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.08.01.1
Fixed: Broken model-upgrade chain. The prior version bump (to 2026.07.31.1) updated version but left the upgrades array terminating one step short, which blocks swamp extension push ("model upgrade chain errors"). That version never actually published — the registry was still serving 2026.07.29.1. This release closes the chain with a no-op upgrade entry and republishes everything that had accumulated since 2026.07.29.1.
2026.07.31.1
Changed: Bump @aws-sdk/* 3.1096.0 → 3.1100.0 (6 packages)
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.07.29.1
Fixed: Terminate upgrade chain at current version (extension was uninstallable due to broken upgrade chain).
2026.07.27.1
Changed: Bump @aws-sdk/* 3.1094.0 → 3.1096.0 (6 packages)
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.07.24.1
Changed: Bump AWS SDK from 3.1091.0 to 3.1094.0 (patch-level update).
2026.07.21.1
Changed: Bumped AWS SDK dependencies to 3.1091.0 (from 3.1090.0).
Upgrade note: No behavioral changes. Routine dependency maintenance.
2026.07.18.2
Added: An upgrades array entry (no-op) to event_topology.ts for proper
typeVersion tracking on existing instances. No schema or behavior changes.
2026.07.18.1
Changed: Bumped @aws-sdk/client-eventbridge, @aws-sdk/client-lambda,
@aws-sdk/client-sns, @aws-sdk/client-sqs, @aws-sdk/client-sts, and
@aws-sdk/credential-providers from 3.1069.0 to 3.1090.0 for dependency
freshness. No behavior change.
2026.07.13.1
Changed: Upgraded the AWS SDK v3 client pins from 3.821.0 to 3.1069.0
(eventbridge, sns, sqs, lambda, sts, credential-providers), bringing this
extension in line with the rest of the repo's AWS models.
Fixed: The per-topic SNS subscription listing and the Lambda event-source
mapping listing paginated with no upper bound. Both now stop after a defensive
MAX_PAGES (50) ceiling and log a warning, preventing an unbounded discovery
loop on pathological accounts. Rule/topic/queue listings were already bounded by
their max* arguments and are unchanged.
Added: A truncated boolean on the graph resource. It is set to true
whenever either pagination cap fires, so downstream consumers can distinguish an
incomplete graph from a complete one. The field defaults to false, so graphs
stored before this release still validate on read.
2026.07.18.1
Changed: Bumped @aws-sdk/client-eventbridge, @aws-sdk/client-lambda,
@aws-sdk/client-sns, @aws-sdk/client-sqs, @aws-sdk/client-sts, and
@aws-sdk/credential-providers from 3.1069.0 to 3.1090.0 for dependency
freshness. No behavior change.
2026.07.13.1
Changed: Upgraded the AWS SDK v3 client pins from 3.821.0 to 3.1069.0
(eventbridge, sns, sqs, lambda, sts, credential-providers), bringing this
extension in line with the rest of the repo's AWS models.
Fixed: The per-topic SNS subscription listing and the Lambda event-source
mapping listing paginated with no upper bound. Both now stop after a defensive
MAX_PAGES (50) ceiling and log a warning, preventing an unbounded discovery
loop on pathological accounts. Rule/topic/queue listings were already bounded by
their max* arguments and are unchanged.
Added: A truncated boolean on the graph resource. It is set to true
whenever either pagination cap fires, so downstream consumers can distinguish an
incomplete graph from a complete one. The field defaults to false, so graphs
stored before this release still validate on read.
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License declared1/1earned
- Verified public repository2/2earned