Öffentliches Register
Software-GesundheitsberichtSchema 0.27.0 · Metriken 1.13.0 · 2026-07-27 17:13 UTC

cdklabs / cdk-monitoring-constructs

Easy-to-use CDK constructs for monitoring your AWS infrastructure

TypeScriptApache-2.0★ 552 Sterne⑂ 86 Forksseit Feb. 2022Auf GitHub ansehen ↗

cdklabs/cdk-monitoring-constructs erreicht einen Gesundheitsindex von 80 von 100 und liegt damit im Bereich Gut. Am stärksten schneidet es bei Vitality (95/100) ab, am schwächsten bei AI Readiness (58/100). Zuletzt heute aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

80
gesamt / 100
Gut

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

80
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Eigentümerschaft

CDK Labs at AWSOrganisation
431 Follower108 öffentliche Reposseit Nov. 2020

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlichtTags
npmcdk-monitoring-constructs10.2.0292.223312vor 6 Tagencdkcloudwatchmonitoring

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

95Exzellent · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 0 Tagen
29.1/36Commit-Rhythmus — 42/52 Wochen mit Commits
16.7/18Commit-Volumen — 72 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year72
human_commit_share0,93
days_since_last_push0
active_weeks_last_year42

Release-Disziplin

100Exzellent
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 100 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 6 Tagen
27/27Release-Rhythmus — ein Release etwa alle 16,4 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count100
latest_release_tagv10.2.0
releases_from_tagsnein
days_since_latest_release6
mean_days_between_releases16,4
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

82Gut · 18 % des Gesamtindex
Wie die Bewertung erfolgt
44.5/60Stars — 552 Stars
16.1/25Forks — 86 Forks
7.5/15Watcher — 23 Watcher
Verwendete Eingangsdaten
forks86
stars552
watchers23
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (Apache-2.0)
18/18CONTRIBUTING-Leitfaden
13.5/13.5Verhaltenskodex
0/7.2Issue-Vorlage
6.3/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingja
has_issue_templatenein
has_code_of_conductja
has_pull_request_templateja
Wie die Bewertung erfolgt
72.9/80Downloads pro Monat — 292.223 Downloads/Monat über npm
0/20Abhängige in der Registry — von diesem Ökosystem nicht ausgewiesen
Verwendete Eingangsdaten
packagescdk-monitoring-constructs
dependents
ecosystemsnpm
total_downloads
monthly_downloads292.223
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Abhängige in der Registry. Die verbleibenden Gewichte wurden renormalisiert.

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

70Gut · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
9.4/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 58 % der Commits
13.5/13.5Breite der Beitragenden — 57 Beitragende
6/10OpenSSF Scorecard: Contributors — project has 2 contributing companies or organizations -- score normalized to 6
Verwendete Eingangsdaten
bus_factor1
contributors_sampled57
top_contributor_share0,583
Wie die Bewertung erfolgt
31.4/46.8Issue-Lösungsquote — 67 % der Issues geschlossen
34.4/38.3PR-Annahme — 489/543 entschiedene PRs gemergt
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Verwendete Eingangsdaten
merged_prs489
open_issues62
closed_issues127
issue_closed_ratio0,672
closed_unmerged_prs54
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
18.9/25Reichweite des Inhabers — 431 Follower von cdklabs
24.3/25Kontohistorie — 108 öffentliche Repos, Kontoalter ca. 5 Jahre
Verwendete Eingangsdaten
followers431
owner_typeOrganization
is_verified
owner_logincdklabs
public_repos108
account_age_days2.065

Paketpflege

100Exzellent
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 1 Paket(e) auf npm
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 6 Tagen
20/20Versionshistorie — 312 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagescdk-monitoring-constructs
ecosystemsnpm
any_deprecatednein
min_days_since_publish6

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

76Gut · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 9 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — .eslintrc.json
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_configja
has_precommit_confignein
Wie die Bewertung erfolgt
30/30README
0/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://constructs.dev/packages/cdk-monitoring-constructs
10/10Repository-Beschreibung
10/10Topics — 6 Topics
0/10Wiki
Verwendete Eingangsdaten
topicsmonitoring, cdk, cdk-constructs, cdk-construct, ops, aws
has_wikinein
homepagehttps://constructs.dev/packages/cdk-monitoring-constructs
has_readmeja
has_docs_dirnein
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

76Gut · 16 % des Gesamtindex
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
6/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
7.5/7.5Code-Review — all changesets reviewed
1.5/2.5Contributors — project has 2 contributing companies or organizations -- score normalized to 6
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — keine Daten
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
3.5/5SAST — SAST tool is not run on all commits -- score normalized to 7
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — keine Daten
3.8/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 16 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate7
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): packaging, signed_releases. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
35/35Direkte Abhängigkeiten ohne bekannte Advisories — keine direkte Abhängigkeit trägt ein bekanntes Advisory
0/25Indirekte Abhängigkeiten ohne bekannte Advisories — transitive Menge in diesem Bereich nicht von Entwicklungs- und Test-Abhängigkeiten trennbar
0/40Keine offenen Advisories — kein Advisory trägt ein Veröffentlichungsdatum
Verwendete Eingangsdaten
sourceosv
advisories17
affected_packages9
assessed_packages787
unassessed_packages0
affected_by_severityhigh 5, moderate 3, low 1
direct_affected_packages0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Indirekte Abhängigkeiten ohne bekannte Advisories, Keine offenen Advisories. Die verbleibenden Gewichte wurden renormalisiert. 787 aufgelöste Abhängigkeiten wurden mit OSV abgeglichen. Dieses Repository veröffentlicht kein Paket, das der Index auflöst; bewertet wurde daher der Abhängigkeitsgraph des Repositorys. Dieser Graph vermischt Entwicklungs- und Test-Pins mit ausgelieferten Abhängigkeiten, daher werden nur die deklarierten Laufzeit-Abhängigkeiten bewertet; transitive Befunde werden als Kontext ausgewiesen und fließen nicht in die Bewertung ein. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

58Mittel · 0 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungen — keine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
40/40Lesbare Commit-Historie — 93 von 93 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share1
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
0/18Bootstrap mit einem Befehl
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — .eslintrc.json
11/11Statische Typprüfung — TypeScript (statisch typisiert)
10/10Reproduzierbare Umgebung — lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
8/8Automatisierte Wartung — 7 der letzten 100 Commits sind automatisierte Abhängigkeits-Updates
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilesyarn.lock
has_dockerfilenein
typed_languageja
bootstrap_files
has_devcontainernein
has_linter_configja
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0,07
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — TypeScript (statisch typisiert)
55/55Handhabbare Dateigrößen — 0/304 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageTypeScript
largest_source_bytes33.758
source_files_sampled304
oversized_source_files0
Wie die Bewertung erfolgt
40/40API-Schema (OpenAPI/GraphQL/proto) — test/assets/schema.graphql
0/20MCP-Server
0/40Lauffähige Beispiele
Verwendete Eingangsdaten
example_dirs
has_mcp_signalnein
api_schema_filestest/assets/schema.graphql

Eckdaten

552GitHub-Sterne
57Mitwirkende
72Commits, letzte 12 Monate
0Tage seit letztem Push
100Releases
1Bus-Faktor
62offene Issues
npmPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

Weitere Details

Stern- und Fork-Verlauf 0 ★ / 86 ⇿
0Sterne
86Forks
100Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

0204060801008632022-022024-052026-07
Major 5Minor 48Patch 47

Jeder Punkt umfasst 5 Tage.

OpenSSF Scorecard 7.0 / 10
7.0Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-07-27 17:13 UTC

10Binary-Artifactsno binaries found in the repo
8Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
10Code-Reviewall changesets reviewed
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
k. A.Packagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
7SASTSAST tool is not run on all commits -- score normalized to 7
10Security-Policysecurity policy file detected
k. A.Signed-Releasesno releases found
5Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities16 existing vulnerabilities detected
Alle Abhängigkeiten 787

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 0 direkte und 787 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
npm@aws-cdk/asset-awscli-v12.2.215indirekt
npm@aws-cdk/asset-kubectl-v202.1.3indirekt
npm@aws-cdk/asset-node-proxy-agent-v62.1.0indirekt
npm@aws-cdk/aws-redshift-alpha2.160.0-alpha.0indirekt
npm@aws-cdk/aws-service-spec0.1.190indirekt
npm@aws-cdk/cloud-assembly-schema38.0.1indirekt
npm@aws-cdk/integ-runner2.203.2indirekt
npm@aws-cdk/integ-tests-alpha2.262.1-alpha.0indirekt
npm@aws-cdk/service-spec-types0.0.256indirekt
npm@babel/code-frame7.29.7indirekt
npm@babel/compat-data7.29.7indirekt
npm@babel/core7.29.7indirekt
npm@babel/generator7.29.7indirekt
npm@babel/helper-compilation-targets7.29.7indirekt
npm@babel/helper-globals7.29.7indirekt
npm@babel/helper-module-imports7.29.7indirekt
npm@babel/helper-module-transforms7.29.7indirekt
npm@babel/helper-plugin-utils7.29.7indirekt
npm@babel/helper-string-parser7.29.7indirekt
npm@babel/helper-validator-identifier7.29.7indirekt
npm@babel/helper-validator-option7.29.7indirekt
npm@babel/helpers7.29.7indirekt
npm@babel/parser7.29.7indirekt
npm@babel/plugin-syntax-async-generators7.8.4indirekt
npm@babel/plugin-syntax-bigint7.8.3indirekt
npm@babel/plugin-syntax-class-properties7.12.13indirekt
npm@babel/plugin-syntax-class-static-block7.14.5indirekt
npm@babel/plugin-syntax-import-attributes7.29.7indirekt
npm@babel/plugin-syntax-import-meta7.10.4indirekt
npm@babel/plugin-syntax-json-strings7.8.3indirekt
npm@babel/plugin-syntax-logical-assignment-operators7.10.4indirekt
npm@babel/plugin-syntax-nullish-coalescing-operator7.8.3indirekt
npm@babel/plugin-syntax-numeric-separator7.10.4indirekt
npm@babel/plugin-syntax-object-rest-spread7.8.3indirekt
npm@babel/plugin-syntax-optional-catch-binding7.8.3indirekt
npm@babel/plugin-syntax-optional-chaining7.8.3indirekt
npm@babel/plugin-syntax-private-property-in-object7.14.5indirekt
npm@babel/plugin-syntax-top-level-await7.14.5indirekt
npm@babel/plugin-syntax-typescript7.29.7indirekt
npm@babel/template7.29.7indirekt
npm@babel/traverse7.29.7indirekt
npm@babel/types7.29.7indirekt
npm@balena/dockerignore1.0.2indirekt
npm@bcoe/v8-coverage0.2.3indirekt
npm@cdklabs/tskb0.0.4indirekt
npm@cspotcode/source-map-support0.8.1indirekt
npm@eslint-community/eslint-utils4.10.1indirekt
npm@eslint-community/regexpp4.12.2indirekt
npm@eslint/config-array0.21.2indirekt
npm@eslint/config-helpers0.4.2indirekt
npm@eslint/core0.17.0indirekt
npm@eslint/eslintrc3.3.6indirekt
npm@eslint/js9.39.5indirekt
npm@eslint/object-schema2.1.7indirekt
npm@eslint/plugin-kit0.4.1indirekt
npm@humanfs/core0.19.2indirekt
npm@humanfs/node0.16.8indirekt
npm@humanfs/types0.15.0indirekt
npm@humanwhocodes/module-importer1.0.1indirekt
npm@humanwhocodes/retry0.4.3indirekt
npm@hutson/parse-repository-url3.0.2indirekt
npm@iarna/toml2.2.5indirekt
npm@istanbuljs/load-nyc-config1.1.0indirekt
npm@istanbuljs/schema0.1.6indirekt
npm@jest/console27.5.1indirekt
npm@jest/core27.5.1indirekt
npm@jest/environment27.5.1indirekt
npm@jest/fake-timers27.5.1indirekt
npm@jest/globals27.5.1indirekt
npm@jest/reporters27.5.1indirekt
npm@jest/source-map27.5.1indirekt
npm@jest/test-result27.5.1indirekt
npm@jest/test-sequencer27.5.1indirekt
npm@jest/transform27.5.1indirekt
npm@jest/types27.5.1indirekt
npm@jridgewell/gen-mapping0.3.13indirekt
npm@jridgewell/remapping2.3.5indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/sourcemap-codec1.5.5indirekt
npm@jridgewell/trace-mapping0.3.31indirekt
npm@jridgewell/trace-mapping0.3.9indirekt
npm@jsii/check-node1.139.0indirekt
npm@jsii/spec1.139.0indirekt
npm@nodable/entities3.0.0indirekt
npm@nodelib/fs.scandir2.1.5indirekt
npm@nodelib/fs.stat2.0.5indirekt
npm@nodelib/fs.walk1.2.8indirekt
npm@oozcitak/dom1.15.10indirekt
npm@oozcitak/infra1.0.8indirekt
npm@oozcitak/url1.0.4indirekt
npm@oozcitak/util8.3.8indirekt
npm@rtsao/scc1.1.0indirekt
npm@sinonjs/commons1.8.6indirekt
npm@sinonjs/fake-timers8.1.0indirekt
npm@tootallnate/once1.1.2indirekt
npm@tsconfig/node101.0.12indirekt
npm@tsconfig/node121.0.11indirekt
npm@tsconfig/node141.0.3indirekt
npm@tsconfig/node161.0.4indirekt
npm@types/babel__core7.20.5indirekt
npm@types/babel__generator7.27.0indirekt
npm@types/babel__template7.4.4indirekt
npm@types/babel__traverse7.28.0indirekt
npm@types/estree1.0.9indirekt
npm@types/graceful-fs4.1.9indirekt
npm@types/istanbul-lib-coverage2.0.6indirekt
npm@types/istanbul-lib-report3.0.3indirekt
npm@types/istanbul-reports3.0.4indirekt
npm@types/jest27.5.2indirekt
npm@types/json-schema7.0.15indirekt
npm@types/json50.0.29indirekt
npm@types/minimist1.2.5indirekt
npm@types/node18.19.130indirekt
npm@types/node26.1.1indirekt
npm@types/normalize-package-data2.4.4indirekt
npm@types/prettier2.7.3indirekt
npm@types/stack-utils2.0.3indirekt
npm@types/yargs16.0.11indirekt
npm@types/yargs-parser21.0.3indirekt
npm@typescript-eslint/eslint-plugin8.65.0indirekt
npm@typescript-eslint/parser8.65.0indirekt
npm@typescript-eslint/project-service8.65.0indirekt
npm@typescript-eslint/scope-manager8.65.0indirekt
npm@typescript-eslint/tsconfig-utils8.65.0indirekt
npm@typescript-eslint/type-utils8.65.0indirekt
npm@typescript-eslint/types8.65.0indirekt
npm@typescript-eslint/typescript-estree8.65.0indirekt
npm@typescript-eslint/utils8.65.0indirekt
npm@typescript-eslint/visitor-keys8.65.0indirekt
npm@xmldom/xmldom0.9.10indirekt
npmabab2.0.6indirekt
npmacorn7.4.1indirekt
npmacorn8.17.0indirekt
npmacorn-globals6.0.0indirekt
npmacorn-jsx5.3.2indirekt
npmacorn-walk7.2.0indirekt
npmacorn-walk8.3.5indirekt
npmadd-stream1.0.0indirekt
npmagent-base6.0.2indirekt
npmajv6.15.0indirekt
npmajv8.17.1indirekt
npmansi-escapes4.3.2indirekt
npmansi-regex5.0.1indirekt
npmansi-styles3.2.1indirekt
npmansi-styles4.3.0indirekt
npmansi-styles5.2.0indirekt
npmanymatch3.1.3indirekt
npmanynum1.0.1indirekt
npmarg4.1.3indirekt
npmargparse1.0.10indirekt
npmargparse2.0.1indirekt
npmarray-buffer-byte-length1.0.2indirekt
npmarray-ify1.0.0indirekt
npmarray-includes3.1.9indirekt
npmarray-timsort1.0.3indirekt
npmarray.prototype.findlastindex1.2.6indirekt
npmarray.prototype.flat1.3.3indirekt
npmarray.prototype.flatmap1.3.3indirekt
npmarraybuffer.prototype.slice1.0.4indirekt
npmarrify1.0.1indirekt
npmastral-regex2.0.0indirekt
npmasync-function1.0.0indirekt
npmasynckit0.4.0indirekt
npmavailable-typed-arrays1.0.7indirekt
npmaws-cdk-lib2.160.0indirekt
npmbabel-jest27.5.1indirekt
npmbabel-plugin-istanbul6.1.1indirekt
npmbabel-plugin-jest-hoist27.5.1indirekt
npmbabel-preset-current-node-syntax1.2.0indirekt
npmbabel-preset-jest27.5.1indirekt
npmbalanced-match1.0.2indirekt
npmbalanced-match4.0.4indirekt
npmbaseline-browser-mapping2.11.4indirekt
npmbrace-expansion1.1.16indirekt
npmbrace-expansion5.0.8indirekt
npmbraces3.0.3indirekt
npmbrowser-process-hrtime1.0.0indirekt
npmbrowserslist4.28.7indirekt
npmbs-logger0.2.6indirekt
npmbser2.1.1indirekt
npmbuffer-from1.1.2indirekt
npmcall-bind1.0.9indirekt
npmcall-bind-apply-helpers1.0.2indirekt
npmcall-bound1.0.4indirekt
npmcallsites3.1.0indirekt
npmcamelcase5.3.1indirekt
npmcamelcase6.3.0indirekt
npmcamelcase-keys6.2.2indirekt
npmcaniuse-lite1.0.30001806indirekt
npmcase1.6.3indirekt
npmcdklabs-projen-project-types0.3.7indirekt
npmchalk2.4.2indirekt
npmchalk4.1.2indirekt
npmchar-regex1.0.2indirekt
npmci-info3.9.0indirekt
npmcjs-module-lexer1.4.3indirekt
npmcliui7.0.4indirekt
npmcliui8.0.1indirekt
npmclone2.1.2indirekt
npmco4.6.0indirekt
npmcodemaker1.139.0indirekt
npmcollect-v8-coverage1.0.3indirekt
npmcolor-convert1.9.3indirekt
npmcolor-convert2.0.1indirekt
npmcolor-name1.1.3indirekt
npmcolor-name1.1.4indirekt
npmcombined-stream1.0.8indirekt
npmcomment-json4.2.2indirekt
npmcommit-and-tag-version12.7.3indirekt
npmcommonmark0.31.2indirekt
npmcompare-func2.0.0indirekt
npmconcat-map0.0.1indirekt
npmconcat-stream2.0.0indirekt
npmconstructs10.0.5indirekt
npmconstructs10.4.2indirekt
npmconventional-changelog4.0.0indirekt
npmconventional-changelog-angular6.0.0indirekt
npmconventional-changelog-atom3.0.0indirekt
npmconventional-changelog-codemirror3.0.0indirekt
npmconventional-changelog-config-spec2.1.0indirekt
npmconventional-changelog-conventionalcommits6.1.0indirekt
npmconventional-changelog-core5.0.2indirekt
npmconventional-changelog-ember3.0.0indirekt
npmconventional-changelog-eslint4.0.0indirekt
npmconventional-changelog-express3.0.0indirekt
npmconventional-changelog-jquery4.0.0indirekt
npmconventional-changelog-jshint3.0.0indirekt
npmconventional-changelog-preset-loader3.0.0indirekt
npmconventional-changelog-writer6.0.1indirekt
npmconventional-commits-filter3.0.0indirekt
npmconventional-commits-parser4.0.0indirekt
npmconventional-recommended-bump7.0.1indirekt
npmconvert-source-map1.9.0indirekt
npmconvert-source-map2.0.0indirekt
npmcore-util-is1.0.3indirekt
npmcreate-require1.1.1indirekt
npmcross-spawn6.0.6indirekt
npmcross-spawn7.0.6indirekt
npmcssom0.3.8indirekt
npmcssom0.4.4indirekt
npmcssstyle2.3.0indirekt
npmdargs7.0.0indirekt
npmdata-urls2.0.0indirekt
npmdata-view-buffer1.0.2indirekt
npmdata-view-byte-length1.0.2indirekt
npmdata-view-byte-offset1.0.1indirekt
npmdate-format4.0.14indirekt
npmdateformat3.0.3indirekt
npmdebug3.2.7indirekt
npmdebug4.4.3indirekt
npmdecamelize1.2.0indirekt
npmdecamelize5.0.1indirekt
npmdecamelize-keys1.1.1indirekt
npmdecimal.js10.6.0indirekt
npmdedent0.7.0indirekt
npmdeep-is0.1.4indirekt
npmdeepmerge4.3.1indirekt
npmdefine-data-property1.1.4indirekt
npmdefine-properties1.2.1indirekt
npmdelayed-stream1.0.0indirekt
npmdetect-indent5.0.0indirekt
npmdetect-indent6.1.0indirekt
npmdetect-newline2.1.0indirekt
npmdetect-newline3.1.0indirekt
npmdiff4.0.4indirekt
npmdiff-sequences27.5.1indirekt
npmdoctrine2.1.0indirekt
npmdomexception2.0.1indirekt
npmdot-prop5.3.0indirekt
npmdotgitignore2.1.0indirekt
npmdunder-proto1.0.1indirekt
npmelectron-to-chromium1.5.396indirekt
npmemittery0.8.1indirekt
npmemoji-regex8.0.0indirekt
npmend-of-stream1.4.5indirekt
npmentities3.0.1indirekt
npmerror-ex1.3.4indirekt
npmes-abstract1.24.2indirekt
npmes-abstract-get1.0.0indirekt
npmes-define-property1.0.1indirekt
npmes-errors1.3.0indirekt
npmes-object-atoms1.1.2indirekt
npmes-set-tostringtag2.1.0indirekt
npmes-shim-unscopables1.1.0indirekt
npmes-to-primitive1.3.4indirekt
npmescalade3.2.0indirekt
npmescape-string-regexp1.0.5indirekt
npmescape-string-regexp2.0.0indirekt
npmescape-string-regexp4.0.0indirekt
npmescodegen2.1.0indirekt
npmeslint9.39.5indirekt
npmeslint-config-prettier8.10.2indirekt
npmeslint-import-resolver-node0.3.10indirekt
npmeslint-import-resolver-typescript2.7.1indirekt
npmeslint-module-utils2.14.0indirekt
npmeslint-plugin-import2.32.0indirekt
npmeslint-plugin-prettier4.2.5indirekt
npmeslint-scope8.4.0indirekt
npmeslint-visitor-keys3.4.3indirekt
npmeslint-visitor-keys4.2.1indirekt
npmeslint-visitor-keys5.0.1indirekt
npmespree10.4.0indirekt
npmesprima4.0.1indirekt
npmesquery1.7.0indirekt
npmesrecurse4.3.0indirekt
npmestraverse5.3.0indirekt
npmesutils2.0.3indirekt
npmexeca1.0.0indirekt
npmexeca5.1.1indirekt
npmexit0.1.2indirekt
npmexpect27.5.1indirekt
npmfast-deep-equal3.1.3indirekt
npmfast-diff1.3.0indirekt
npmfast-glob3.3.3indirekt
npmfast-json-patch3.1.1indirekt
npmfast-json-stable-stringify2.1.0indirekt
npmfast-levenshtein2.0.6indirekt
npmfast-uri3.1.2indirekt
npmfast-xml-builder1.3.0indirekt
npmfast-xml-parser5.10.1indirekt
npmfastq1.20.1indirekt
npmfb-watchman2.0.2indirekt
npmfdir6.5.0indirekt
npmfigures3.2.0indirekt
npmfile-entry-cache8.0.0indirekt
npmfill-range7.1.1indirekt
npmfind-up2.1.0indirekt
npmfind-up3.0.0indirekt
npmfind-up4.1.0indirekt
npmfind-up5.0.0indirekt
npmflat-cache4.0.1indirekt
npmflatted3.4.3indirekt
npmfor-each0.3.5indirekt
npmform-data3.0.5indirekt
npmfs-extra10.1.0indirekt
npmfs-extra11.2.0indirekt
npmfs-extra8.1.0indirekt
npmfs.realpath1.0.0indirekt
npmfsevents2.3.3indirekt
npmfunction-bind1.1.2indirekt
npmfunction.prototype.name1.2.0indirekt
npmfunctions-have-names1.2.3indirekt
npmgenerator-function2.0.1indirekt
npmgensync1.0.0-beta.2indirekt
npmget-caller-file2.0.5indirekt
npmget-intrinsic1.3.0indirekt
npmget-package-type0.1.0indirekt
npmget-pkg-repo4.2.1indirekt
npmget-proto1.0.1indirekt
npmget-stream4.1.0indirekt
npmget-stream6.0.1indirekt
npmget-symbol-description1.1.0indirekt
npmgit-raw-commits3.0.0indirekt
npmgit-remote-origin-url2.0.0indirekt
npmgit-semver-tags5.0.1indirekt
npmgitconfiglocal1.0.0indirekt
npmglob7.2.3indirekt
npmglob-parent5.1.2indirekt
npmglob-parent6.0.2indirekt
npmglobals14.0.0indirekt
npmglobalthis1.0.4indirekt
npmgopd1.2.0indirekt
npmgraceful-fs4.2.11indirekt
npmhandlebars4.7.9indirekt
npmhard-rejection2.1.0indirekt
npmhas-bigints1.1.0indirekt
npmhas-flag3.0.0indirekt
npmhas-flag4.0.0indirekt
npmhas-own-prop2.0.0indirekt
npmhas-property-descriptors1.0.2indirekt
npmhas-proto1.2.0indirekt
npmhas-symbols1.1.0indirekt
npmhas-tostringtag1.0.2indirekt
npmhasown2.0.4indirekt
npmhosted-git-info2.8.9indirekt
npmhosted-git-info4.1.0indirekt
npmhtml-encoding-sniffer2.0.1indirekt
npmhtml-escaper2.0.2indirekt
npmhttp-proxy-agent4.0.1indirekt
npmhttps-proxy-agent5.0.1indirekt
npmhuman-signals2.1.0indirekt
npmiconv-lite0.4.24indirekt
npmignore5.3.2indirekt
npmignore7.0.6indirekt
npmimport-fresh3.3.1indirekt
npmimport-local3.2.0indirekt
npmimurmurhash0.1.4indirekt
npmindent-string4.0.0indirekt
npminflight1.0.6indirekt
npminherits2.0.4indirekt
npmini1.3.8indirekt
npmini2.0.0indirekt
npminternal-slot1.1.0indirekt
npminterpret1.4.0indirekt
npmis-array-buffer3.0.5indirekt
npmis-arrayish0.2.1indirekt
npmis-async-function2.1.1indirekt
npmis-bigint1.1.0indirekt
npmis-boolean-object1.2.2indirekt
npmis-callable1.2.7indirekt
npmis-core-module2.16.2indirekt
npmis-data-view1.0.2indirekt
npmis-date-object1.1.0indirekt
npmis-document.all1.0.0indirekt
npmis-extglob2.1.1indirekt
npmis-finalizationregistry1.1.1indirekt
npmis-fullwidth-code-point3.0.0indirekt
npmis-generator-fn2.1.0indirekt
npmis-generator-function1.1.2indirekt
npmis-glob4.0.3indirekt
npmis-map2.0.3indirekt
npmis-negative-zero2.0.3indirekt
npmis-number7.0.0indirekt
npmis-number-object1.1.1indirekt
npmis-obj2.0.0indirekt
npmis-plain-obj1.1.0indirekt
npmis-potential-custom-element-name1.0.1indirekt
npmis-regex1.2.1indirekt
npmis-set2.0.3indirekt
npmis-shared-array-buffer1.0.4indirekt
npmis-stream1.1.0indirekt
npmis-stream2.0.1indirekt
npmis-string1.1.1indirekt
npmis-symbol1.1.1indirekt
npmis-text-path1.0.1indirekt
npmis-typed-array1.1.15indirekt
npmis-typedarray1.0.0indirekt
npmis-unsafe2.0.0indirekt
npmis-weakmap2.0.2indirekt
npmis-weakref1.1.1indirekt
npmis-weakset2.0.4indirekt
npmisarray1.0.0indirekt
npmisarray2.0.5indirekt
npmisexe2.0.0indirekt
npmistanbul-lib-coverage3.2.2indirekt
npmistanbul-lib-instrument5.2.1indirekt
npmistanbul-lib-report3.0.1indirekt
npmistanbul-lib-source-maps4.0.1indirekt
npmistanbul-reports3.2.0indirekt
npmjest27.5.1indirekt
npmjest-changed-files27.5.1indirekt
npmjest-circus27.5.1indirekt
npmjest-cli27.5.1indirekt
npmjest-config27.5.1indirekt
npmjest-diff27.5.1indirekt
npmjest-docblock27.5.1indirekt
npmjest-each27.5.1indirekt
npmjest-environment-jsdom27.5.1indirekt
npmjest-environment-node27.5.1indirekt
npmjest-get-type27.5.1indirekt
npmjest-haste-map27.5.1indirekt
npmjest-jasmine227.5.1indirekt
npmjest-junit16.0.0indirekt
npmjest-leak-detector27.5.1indirekt
npmjest-matcher-utils27.5.1indirekt
npmjest-message-util27.5.1indirekt
npmjest-mock27.5.1indirekt
npmjest-pnp-resolver1.2.3indirekt
npmjest-regex-util27.5.1indirekt
npmjest-resolve27.5.1indirekt
npmjest-resolve-dependencies27.5.1indirekt
npmjest-runner27.5.1indirekt
npmjest-runtime27.5.1indirekt
npmjest-serializer27.5.1indirekt
npmjest-snapshot27.5.1indirekt
npmjest-util27.5.1indirekt
npmjest-validate27.5.1indirekt
npmjest-watcher27.5.1indirekt
npmjest-worker27.5.1indirekt
npmjs-tokens4.0.0indirekt
npmjs-yaml3.14.1indirekt
npmjs-yaml3.15.0indirekt
npmjs-yaml4.3.0indirekt
npmjsdom16.7.0indirekt
npmjsesc3.1.0indirekt
npmjsii5.9.48indirekt
npmjsii-diff1.139.0indirekt
npmjsii-docgen10.12.4indirekt
npmjsii-pacmak1.139.0indirekt
npmjsii-reflect1.139.0indirekt
npmjsii-rosetta5.9.57indirekt
npmjson-buffer3.0.1indirekt
npmjson-parse-better-errors1.0.2indirekt
npmjson-parse-even-better-errors2.3.1indirekt
npmjson-parse-even-better-errors4.0.0indirekt
npmjson-schema-traverse0.4.1indirekt
npmjson-schema-traverse1.0.0indirekt
npmjson-stable-stringify-without-jsonify1.0.1indirekt
npmjson-stream-stringify3.1.7indirekt
npmjson-stringify-safe5.0.1indirekt
npmjson51.0.2indirekt
npmjson52.2.3indirekt
npmjsonfile4.0.0indirekt
npmjsonfile6.2.1indirekt
npmjsonparse1.3.1indirekt
npmjsonschema1.4.1indirekt
npmJSONStream1.3.5indirekt
npmjust-diff6.0.2indirekt
npmjust-diff-apply5.5.0indirekt
npmkeyv4.5.4indirekt
npmkind-of6.0.3indirekt
npmkleur3.0.3indirekt
npmleven3.1.0indirekt
npmlevn0.4.1indirekt
npmlines-and-columns1.2.4indirekt
npmload-json-file4.0.0indirekt
npmlocate-path2.0.0indirekt
npmlocate-path3.0.0indirekt
npmlocate-path5.0.0indirekt
npmlocate-path6.0.0indirekt
npmlodash4.18.1indirekt
npmlodash.ismatch4.4.0indirekt
npmlodash.memoize4.1.2indirekt
npmlodash.merge4.6.2indirekt
npmlodash.truncate4.4.2indirekt
npmlog4js6.9.1indirekt
npmlru-cache5.1.1indirekt
npmlru-cache6.0.0indirekt
npmmake-dir4.0.0indirekt
npmmake-error1.3.6indirekt
npmmakeerror1.0.12indirekt
npmmap-obj1.0.1indirekt
npmmap-obj4.3.0indirekt
npmmath-intrinsics1.1.0indirekt
npmmdurl1.0.1indirekt
npmmeow8.1.2indirekt
npmmerge-stream2.0.0indirekt
npmmerge21.4.1indirekt
npmmicromatch4.0.8indirekt
npmmime-db1.52.0indirekt
npmmime-types2.1.35indirekt
npmmimic-fn2.1.0indirekt
npmmin-indent1.0.1indirekt
npmminimatch10.2.5indirekt
npmminimatch3.1.5indirekt
npmminimist1.2.8indirekt
npmminimist-options4.1.0indirekt
npmmkdirp1.0.4indirekt
npmmodify-values1.0.1indirekt
npmms2.1.3indirekt
npmnatural-compare1.4.0indirekt
npmneo-async2.6.2indirekt
npmnice-try1.0.5indirekt
npmnode-exports-info1.6.2indirekt
npmnode-int640.4.0indirekt
npmnode-releases2.0.51indirekt
npmnormalize-package-data2.5.0indirekt
npmnormalize-package-data3.0.3indirekt
npmnormalize-path3.0.0indirekt
npmnpm-run-path2.0.2indirekt
npmnpm-run-path4.0.1indirekt
npmnwsapi2.2.24indirekt
npmobject-inspect1.13.4indirekt
npmobject-keys1.1.1indirekt
npmobject.assign4.1.7indirekt
npmobject.entries1.1.9indirekt
npmobject.fromentries2.0.8indirekt
npmobject.groupby1.0.3indirekt
npmobject.values1.2.1indirekt
npmonce1.4.0indirekt
npmonetime5.1.2indirekt
npmoo-ascii-tree1.139.0indirekt
npmoptionator0.9.4indirekt
npmown-keys1.0.2indirekt
npmp-finally1.0.0indirekt
npmp-limit1.3.0indirekt
npmp-limit2.3.0indirekt
npmp-limit3.1.0indirekt
npmp-locate2.0.0indirekt
npmp-locate3.0.0indirekt
npmp-locate4.1.0indirekt
npmp-locate5.0.0indirekt
npmp-try1.0.0indirekt
npmp-try2.2.0indirekt
npmparent-module1.0.1indirekt
npmparse-conflict-json4.0.0indirekt
npmparse-json4.0.0indirekt
npmparse-json5.2.0indirekt
npmparse56.0.1indirekt
npmpath-exists3.0.0indirekt
npmpath-exists4.0.0indirekt
npmpath-expression-matcher1.6.2indirekt
npmpath-is-absolute1.0.1indirekt
npmpath-key2.0.1indirekt
npmpath-key3.1.1indirekt
npmpath-parse1.0.7indirekt
npmpath-type3.0.0indirekt
npmpicocolors1.1.1indirekt
npmpicomatch2.3.2indirekt
npmpicomatch4.0.5indirekt
npmpify2.3.0indirekt
npmpify3.0.0indirekt
npmpirates4.0.7indirekt
npmpkg-dir4.2.0indirekt
npmpossible-typed-array-names1.1.0indirekt
npmprelude-ls1.2.1indirekt
npmprettier2.8.8indirekt
npmprettier-linter-helpers1.0.1indirekt
npmpretty-format27.5.1indirekt
npmprocess-nextick-args2.0.1indirekt
npmprojen0.98.6indirekt
npmprompts2.4.2indirekt
npmpsl1.15.0indirekt
npmpump3.0.3indirekt
npmpunycode2.3.1indirekt
npmquerystringify2.2.0indirekt
npmqueue-microtask1.2.3indirekt
npmquick-lru4.0.1indirekt
npmreact-is17.0.2indirekt
npmread-pkg3.0.0indirekt
npmread-pkg5.2.0indirekt
npmread-pkg-up3.0.0indirekt
npmread-pkg-up7.0.1indirekt
npmreadable-stream2.3.8indirekt
npmreadable-stream3.6.2indirekt
npmrechoir0.6.2indirekt
npmredent3.0.0indirekt
npmreflect.getprototypeof1.0.10indirekt
npmregexp.prototype.flags1.5.4indirekt
npmrepeat-string1.6.1indirekt
npmrequire-directory2.1.1indirekt
npmrequire-from-string2.0.2indirekt
npmrequires-port1.0.0indirekt
npmresolve1.22.11indirekt
npmresolve1.22.12indirekt
npmresolve2.0.0-next.7indirekt
npmresolve-cwd3.0.0indirekt
npmresolve-from4.0.0indirekt
npmresolve-from5.0.0indirekt
npmresolve.exports1.1.1indirekt
npmreusify1.1.0indirekt
npmrfdc1.4.1indirekt
npmrimraf3.0.2indirekt
npmrun-parallel1.2.0indirekt
npmsafe-array-concat1.1.4indirekt
npmsafe-buffer5.1.2indirekt
npmsafe-buffer5.2.1indirekt
npmsafe-push-apply1.0.0indirekt
npmsafe-regex-test1.1.0indirekt
npmsafer-buffer2.1.2indirekt
npmsaxes5.0.1indirekt
npmsemver5.7.2indirekt
npmsemver6.3.1indirekt
npmsemver7.7.4indirekt
npmsemver7.8.5indirekt
npmsemver-intersect1.5.0indirekt
npmset-function-length1.2.2indirekt
npmset-function-name2.0.2indirekt
npmset-proto1.0.0indirekt
npmshebang-command1.2.0indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex1.0.0indirekt
npmshebang-regex3.0.0indirekt
npmshelljs0.9.2indirekt
npmshx0.4.0indirekt
npmside-channel1.1.1indirekt
npmside-channel-list1.0.1indirekt
npmside-channel-map1.0.1indirekt
npmside-channel-weakmap1.0.2indirekt
npmsignal-exit3.0.7indirekt
npmsisteransi1.0.5indirekt
npmslash3.0.0indirekt
npmslice-ansi4.0.0indirekt
npmsort-json2.0.1indirekt
npmsource-map0.6.1indirekt
npmsource-map0.7.6indirekt
npmsource-map-support0.5.21indirekt
npmspdx-correct3.2.0indirekt
npmspdx-exceptions2.5.0indirekt
npmspdx-expression-parse3.0.1indirekt
npmspdx-license-ids3.0.23indirekt
npmspdx-license-list6.12.0indirekt
npmsplit1.0.1indirekt
npmsplit23.2.2indirekt
npmsprintf-js1.0.3indirekt
npmstack-utils2.0.6indirekt
npmstop-iteration-iterator1.1.0indirekt
npmstream-chain2.2.5indirekt
npmstream-json1.9.1indirekt
npmstreamroller3.1.5indirekt
npmstring-length4.0.2indirekt
npmstring-width4.2.3indirekt
npmstring.prototype.trim1.2.11indirekt
npmstring.prototype.trimend1.0.10indirekt
npmstring.prototype.trimstart1.0.8indirekt
npmstring_decoder1.1.1indirekt
npmstring_decoder1.3.0indirekt
npmstrip-ansi6.0.1indirekt
npmstrip-bom3.0.0indirekt
npmstrip-bom4.0.0indirekt
npmstrip-eof1.0.0indirekt
npmstrip-final-newline2.0.0indirekt
npmstrip-indent3.0.0indirekt
npmstrip-json-comments3.1.1indirekt
npmstrnum2.4.1indirekt
npmsupports-color5.5.0indirekt
npmsupports-color7.2.0indirekt
npmsupports-color8.1.1indirekt
npmsupports-hyperlinks2.3.0indirekt
npmsupports-preserve-symlinks-flag1.0.0indirekt
npmsymbol-tree3.2.4indirekt
npmtable6.9.0indirekt
npmterminal-link2.1.1indirekt
npmtest-exclude6.0.0indirekt
npmtext-extensions1.9.0indirekt
npmthroat6.0.2indirekt
npmthrough2.3.8indirekt
npmthrough22.0.5indirekt
npmtinyglobby0.2.17indirekt
npmtmpl1.0.5indirekt
npmto-regex-range5.0.1indirekt
npmtough-cookie4.1.4indirekt
npmtr462.1.0indirekt
npmtrim-newlines3.0.1indirekt
npmts-api-utils2.5.0indirekt
npmts-jest27.1.5indirekt
npmts-node10.9.2indirekt
npmtsconfig-paths3.15.0indirekt
npmtype-check0.4.0indirekt
npmtype-detect4.0.8indirekt
npmtype-fest0.18.1indirekt
npmtype-fest0.21.3indirekt
npmtype-fest0.6.0indirekt
npmtype-fest0.8.1indirekt
npmtyped-array-buffer1.0.3indirekt
npmtyped-array-byte-length1.0.3indirekt
npmtyped-array-byte-offset1.0.4indirekt
npmtyped-array-length1.0.8indirekt
npmtypedarray0.0.6indirekt
npmtypedarray-to-buffer3.1.5indirekt
npmtypescript4.9.5indirekt
npmtypescript5.9.3indirekt
npmuglify-js3.19.3indirekt
npmunbox-primitive1.1.0indirekt
npmundici-types5.26.5indirekt
npmundici-types8.3.0indirekt
npmuniversalify0.1.2indirekt
npmuniversalify0.2.0indirekt
npmuniversalify2.0.1indirekt
npmupdate-browserslist-db1.2.3indirekt
npmuri-js4.4.1indirekt
npmurl-parse1.5.10indirekt
npmutil-deprecate1.0.2indirekt
npmuuid8.3.2indirekt
npmv8-compile-cache-lib3.0.1indirekt
npmv8-to-istanbul8.1.1indirekt
npmvalidate-npm-package-license3.0.4indirekt
npmw3c-hr-time1.0.2indirekt
npmw3c-xmlserializer2.0.0indirekt
npmwalker1.0.8indirekt
npmwebidl-conversions5.0.0indirekt
npmwebidl-conversions6.1.0indirekt
npmwhatwg-encoding1.0.5indirekt
npmwhatwg-mimetype2.3.0indirekt
npmwhatwg-url8.7.0indirekt
npmwhich1.3.1indirekt
npmwhich2.0.2indirekt
npmwhich-boxed-primitive1.1.1indirekt
npmwhich-builtin-type1.2.1indirekt
npmwhich-collection1.0.2indirekt
npmwhich-typed-array1.1.22indirekt
npmword-wrap1.2.5indirekt
npmwordwrap1.0.0indirekt
npmworkerpool6.5.1indirekt
npmwrap-ansi7.0.0indirekt
npmwrappy1.0.2indirekt
npmwrite-file-atomic3.0.3indirekt
npmws7.5.13indirekt
npmxml1.0.1indirekt
npmxml-name-validator3.0.0indirekt
npmxml-naming0.3.0indirekt
npmxmlbuilder15.1.1indirekt
npmxmlbuilder23.1.1indirekt
npmxmlchars2.2.0indirekt
npmxtend4.0.2indirekt
npmy18n5.0.8indirekt
npmyallist3.1.1indirekt
npmyallist4.0.0indirekt
npmyaml1.10.2indirekt
npmyaml2.8.1indirekt
npmyaml2.9.0indirekt
npmyargs16.2.2indirekt
npmyargs17.7.3indirekt
npmyargs-parser20.2.9indirekt
npmyargs-parser21.1.1indirekt
npmyn3.1.1indirekt
npmyocto-queue0.1.0indirekt
Abhängigkeits-Advisories 9

Dieses Repository veröffentlicht kein vom Index auflösbares Paket, daher wurde sein eigener Abhängigkeitsgraph bewertet – 787 Pakete, darunter auch Entwicklungs- und Test-Pins, die nie ausgeliefert werden: 9 tragen bekannte Advisories, davon 0 direkte.

PaketVersionBeziehungSchweregradAdvisoriesBehoben in
aws-cdk-lib2.160.0indirekthoch62.260.0
brace-expansion1.1.16indirekthoch15.0.8
fast-uri3.1.2indirekthoch24.1.1
js-yaml3.14.1indirekthoch34.3.0
uuid8.3.2indirekthoch113.0.1
ajv8.17.1indirektmittel18.18.0
yaml1.10.2indirektmittel12.8.3
yaml2.8.1indirektmittel12.8.3
@tootallnate/once1.1.2indirektniedrig13.0.1

Ein Advisory bedeutet, dass die im Abhängigkeitsgraphen erfasste Version in den betroffenen Bereich eines Advisories fällt. Erreichbarkeit wird nicht analysiert, und der Graph enthält Entwicklungs- und Test-Pins — ein Fund kann das Werkzeug betreffen und nicht die ausgelieferte Software.

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "monitoring",
        "cdk",
        "cdk-constructs",
        "cdk-construct",
        "ops",
        "aws"
      ],
      "is_fork": false,
      "size_kb": 7914,
      "has_wiki": false,
      "homepage": "https://constructs.dev/packages/cdk-monitoring-constructs",
      "languages": {
        "JavaScript": 4304,
        "TypeScript": 1286857
      },
      "pushed_at": "2026-07-27T00:39:33Z",
      "created_at": "2022-02-21T21:53:18Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-27T00:37:16Z",
      "description": "Easy-to-use CDK constructs for monitoring your AWS infrastructure",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://aws.amazon.com/cdk",
      "name": "CDK Labs at AWS",
      "type": "Organization",
      "login": "cdklabs",
      "company": null,
      "location": null,
      "followers": 431,
      "avatar_url": "https://avatars.githubusercontent.com/u/75227353?v=4",
      "created_at": "2020-11-29T23:37:10Z",
      "is_verified": null,
      "public_repos": 108,
      "account_age_days": 2065
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v10.2.0",
          "kind": "minor",
          "published_at": "2026-07-20T22:59:15Z"
        },
        {
          "tag": "v10.1.0",
          "kind": "minor",
          "published_at": "2026-05-27T21:22:01Z"
        },
        {
          "tag": "v10.0.0",
          "kind": "major",
          "published_at": "2026-04-25T01:04:55Z"
        },
        {
          "tag": "v9.23.0",
          "kind": "minor",
          "published_at": "2026-04-24T04:53:43Z"
        },
        {
          "tag": "v9.22.2",
          "kind": "patch",
          "published_at": "2026-03-29T04:54:45Z"
        },
        {
          "tag": "v9.22.1",
          "kind": "patch",
          "published_at": "2026-03-24T18:02:35Z"
        },
        {
          "tag": "v9.22.0",
          "kind": "minor",
          "published_at": "2026-03-09T18:50:12Z"
        },
        {
          "tag": "v9.21.0",
          "kind": "minor",
          "published_at": "2026-03-09T18:43:31Z"
        },
        {
          "tag": "v9.20.0",
          "kind": "minor",
          "published_at": "2026-03-04T17:47:40Z"
        },
        {
          "tag": "v9.19.3",
          "kind": "patch",
          "published_at": "2026-02-23T06:16:16Z"
        },
        {
          "tag": "v9.19.2",
          "kind": "patch",
          "published_at": "2026-02-20T10:36:32Z"
        },
        {
          "tag": "v9.19.1",
          "kind": "patch",
          "published_at": "2026-02-06T21:18:04Z"
        },
        {
          "tag": "v9.19.0",
          "kind": "minor",
          "published_at": "2025-12-11T04:21:27Z"
        },
        {
          "tag": "v9.18.0",
          "kind": "minor",
          "published_at": "2025-12-10T01:37:38Z"
        },
        {
          "tag": "v9.17.1",
          "kind": "patch",
          "published_at": "2025-12-08T23:21:35Z"
        },
        {
          "tag": "v9.17.0",
          "kind": "minor",
          "published_at": "2025-12-07T00:48:06Z"
        },
        {
          "tag": "v9.16.1",
          "kind": "patch",
          "published_at": "2025-12-07T00:41:06Z"
        },
        {
          "tag": "v9.16.0",
          "kind": "minor",
          "published_at": "2025-10-31T11:09:47Z"
        },
        {
          "tag": "v9.15.2",
          "kind": "patch",
          "published_at": "2025-08-19T18:33:35Z"
        },
        {
          "tag": "v9.15.1",
          "kind": "patch",
          "published_at": "2025-08-19T15:42:32Z"
        },
        {
          "tag": "v9.15.0",
          "kind": "minor",
          "published_at": "2025-08-15T20:44:43Z"
        },
        {
          "tag": "v9.14.0",
          "kind": "minor",
          "published_at": "2025-08-15T13:44:50Z"
        },
        {
          "tag": "v9.13.0",
          "kind": "minor",
          "published_at": "2025-07-30T22:13:38Z"
        },
        {
          "tag": "v9.12.0",
          "kind": "minor",
          "published_at": "2025-05-21T18:32:18Z"
        },
        {
          "tag": "v9.11.0",
          "kind": "minor",
          "published_at": "2025-05-20T15:30:21Z"
        },
        {
          "tag": "v9.10.0",
          "kind": "minor",
          "published_at": "2025-05-02T13:39:27Z"
        },
        {
          "tag": "v9.9.0",
          "kind": "minor",
          "published_at": "2025-05-01T21:00:26Z"
        },
        {
          "tag": "v9.8.0",
          "kind": "minor",
          "published_at": "2025-04-28T15:08:33Z"
        },
        {
          "tag": "v9.7.1",
          "kind": "patch",
          "published_at": "2025-04-14T21:07:16Z"
        },
        {
          "tag": "v9.7.0",
          "kind": "minor",
          "published_at": "2025-04-10T19:14:15Z"
        },
        {
          "tag": "v9.6.1",
          "kind": "patch",
          "published_at": "2025-04-08T18:31:28Z"
        },
        {
          "tag": "v9.6.0",
          "kind": "minor",
          "published_at": "2025-03-31T13:36:34Z"
        },
        {
          "tag": "v9.5.0",
          "kind": "minor",
          "published_at": "2025-03-26T18:14:24Z"
        },
        {
          "tag": "v9.4.0",
          "kind": "minor",
          "published_at": "2025-03-21T14:14:07Z"
        },
        {
          "tag": "v9.3.0",
          "kind": "minor",
          "published_at": "2025-03-21T02:54:26Z"
        },
        {
          "tag": "v9.2.0",
          "kind": "minor",
          "published_at": "2025-02-05T15:53:11Z"
        },
        {
          "tag": "v9.1.3",
          "kind": "patch",
          "published_at": "2024-12-18T14:57:57Z"
        },
        {
          "tag": "v9.1.2",
          "kind": "patch",
          "published_at": "2024-12-07T00:35:33Z"
        },
        {
          "tag": "v9.1.1",
          "kind": "patch",
          "published_at": "2024-11-21T09:51:59Z"
        },
        {
          "tag": "v9.1.0",
          "kind": "minor",
          "published_at": "2024-11-13T17:35:36Z"
        },
        {
          "tag": "v9.0.0",
          "kind": "major",
          "published_at": "2024-11-13T17:09:00Z"
        },
        {
          "tag": "v8.4.0",
          "kind": "minor",
          "published_at": "2024-11-12T15:02:25Z"
        },
        {
          "tag": "v8.3.6",
          "kind": "patch",
          "published_at": "2024-11-12T14:45:26Z"
        },
        {
          "tag": "v8.3.5",
          "kind": "patch",
          "published_at": "2024-10-30T14:04:51Z"
        },
        {
          "tag": "v8.3.4",
          "kind": "patch",
          "published_at": "2024-10-28T19:12:06Z"
        },
        {
          "tag": "v8.3.3",
          "kind": "patch",
          "published_at": "2024-10-24T21:30:36Z"
        },
        {
          "tag": "v8.3.2",
          "kind": "patch",
          "published_at": "2024-10-16T19:45:07Z"
        },
        {
          "tag": "v8.3.1",
          "kind": "patch",
          "published_at": "2024-09-24T17:38:28Z"
        },
        {
          "tag": "v8.3.0",
          "kind": "minor",
          "published_at": "2024-09-18T19:53:47Z"
        },
        {
          "tag": "v8.2.0",
          "kind": "minor",
          "published_at": "2024-09-09T20:44:12Z"
        },
        {
          "tag": "v8.1.1",
          "kind": "patch",
          "published_at": "2024-08-23T13:36:42Z"
        },
        {
          "tag": "v8.1.0",
          "kind": "minor",
          "published_at": "2024-08-01T14:08:04Z"
        },
        {
          "tag": "v8.0.1",
          "kind": "patch",
          "published_at": "2024-07-17T20:17:40Z"
        },
        {
          "tag": "v8.0.0",
          "kind": "major",
          "published_at": "2024-07-03T15:51:04Z"
        },
        {
          "tag": "v7.13.1",
          "kind": "patch",
          "published_at": "2024-07-02T14:38:18Z"
        },
        {
          "tag": "v7.13.0",
          "kind": "minor",
          "published_at": "2024-06-26T14:38:06Z"
        },
        {
          "tag": "v7.12.0",
          "kind": "minor",
          "published_at": "2024-06-25T17:46:29Z"
        },
        {
          "tag": "v7.11.0",
          "kind": "minor",
          "published_at": "2024-05-30T19:27:16Z"
        },
        {
          "tag": "v7.10.1",
          "kind": "patch",
          "published_at": "2024-05-10T19:54:14Z"
        },
        {
          "tag": "v7.10.0",
          "kind": "minor",
          "published_at": "2024-05-10T18:06:06Z"
        },
        {
          "tag": "v7.9.0",
          "kind": "minor",
          "published_at": "2024-05-09T18:48:02Z"
        },
        {
          "tag": "v7.8.0",
          "kind": "minor",
          "published_at": "2024-03-22T21:58:00Z"
        },
        {
          "tag": "v7.7.0",
          "kind": "minor",
          "published_at": "2024-02-12T14:37:28Z"
        },
        {
          "tag": "v7.6.0",
          "kind": "minor",
          "published_at": "2024-01-19T20:38:38Z"
        },
        {
          "tag": "v7.5.0",
          "kind": "minor",
          "published_at": "2024-01-17T14:58:27Z"
        },
        {
          "tag": "v7.4.0",
          "kind": "minor",
          "published_at": "2024-01-16T19:49:18Z"
        },
        {
          "tag": "v7.3.2",
          "kind": "patch",
          "published_at": "2024-01-15T00:34:46Z"
        },
        {
          "tag": "v7.3.1",
          "kind": "patch",
          "published_at": "2024-01-08T00:34:20Z"
        },
        {
          "tag": "v7.3.0",
          "kind": "minor",
          "published_at": "2024-01-02T16:46:50Z"
        },
        {
          "tag": "v7.2.3",
          "kind": "patch",
          "published_at": "2024-01-01T00:37:46Z"
        },
        {
          "tag": "v7.2.2",
          "kind": "patch",
          "published_at": "2023-12-25T00:34:25Z"
        },
        {
          "tag": "v7.2.1",
          "kind": "patch",
          "published_at": "2023-12-18T00:35:18Z"
        },
        {
          "tag": "v7.2.0",
          "kind": "minor",
          "published_at": "2023-12-12T18:53:05Z"
        },
        {
          "tag": "v7.1.1",
          "kind": "patch",
          "published_at": "2023-12-11T00:31:26Z"
        },
        {
          "tag": "v7.1.0",
          "kind": "minor",
          "published_at": "2023-12-04T17:12:46Z"
        },
        {
          "tag": "v7.0.1",
          "kind": "patch",
          "published_at": "2023-12-04T00:34:07Z"
        },
        {
          "tag": "v7.0.0",
          "kind": "major",
          "published_at": "2023-12-01T17:23:37Z"
        },
        {
          "tag": "v6.5.2",
          "kind": "patch",
          "published_at": "2023-11-27T00:32:07Z"
        },
        {
          "tag": "v6.5.1",
          "kind": "patch",
          "published_at": "2023-11-20T00:32:31Z"
        },
        {
          "tag": "v6.5.0",
          "kind": "minor",
          "published_at": "2023-11-16T14:55:14Z"
        },
        {
          "tag": "v6.4.1",
          "kind": "patch",
          "published_at": "2023-11-13T00:34:18Z"
        },
        {
          "tag": "v6.4.0",
          "kind": "minor",
          "published_at": "2023-11-10T21:31:55Z"
        },
        {
          "tag": "v6.3.0",
          "kind": "minor",
          "published_at": "2023-11-09T18:41:22Z"
        },
        {
          "tag": "v6.2.3",
          "kind": "patch",
          "published_at": "2023-11-06T00:34:18Z"
        },
        {
          "tag": "v6.2.2",
          "kind": "patch",
          "published_at": "2023-10-30T00:41:59Z"
        },
        {
          "tag": "v6.2.1",
          "kind": "patch",
          "published_at": "2023-10-23T00:38:34Z"
        },
        {
          "tag": "v6.2.0",
          "kind": "minor",
          "published_at": "2023-10-20T16:57:54Z"
        },
        {
          "tag": "v6.1.0",
          "kind": "minor",
          "published_at": "2023-10-20T14:38:34Z"
        },
        {
          "tag": "v6.0.4",
          "kind": "patch",
          "published_at": "2023-10-16T00:38:28Z"
        },
        {
          "tag": "v6.0.3",
          "kind": "patch",
          "published_at": "2023-10-09T00:37:45Z"
        },
        {
          "tag": "v6.0.2",
          "kind": "patch",
          "published_at": "2023-10-02T00:41:02Z"
        },
        {
          "tag": "v6.0.1",
          "kind": "patch",
          "published_at": "2023-09-28T20:04:10Z"
        },
        {
          "tag": "v6.0.0",
          "kind": "major",
          "published_at": "2023-09-28T14:25:39Z"
        },
        {
          "tag": "v5.10.4",
          "kind": "patch",
          "published_at": "2023-09-25T00:32:43Z"
        },
        {
          "tag": "v5.10.3",
          "kind": "patch",
          "published_at": "2023-09-18T00:37:27Z"
        },
        {
          "tag": "v5.10.2",
          "kind": "patch",
          "published_at": "2023-09-14T14:15:20Z"
        },
        {
          "tag": "v5.10.1",
          "kind": "patch",
          "published_at": "2023-09-11T00:35:59Z"
        },
        {
          "tag": "v5.10.0",
          "kind": "minor",
          "published_at": "2023-09-05T15:42:22Z"
        },
        {
          "tag": "v5.9.2",
          "kind": "patch",
          "published_at": "2023-09-04T00:37:44Z"
        },
        {
          "tag": "v5.9.1",
          "kind": "patch",
          "published_at": "2023-08-31T21:16:28Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "a6050f6baa2dd990019823246078141d7c6e5536",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/30227669783\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#760)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-07-27T00:37:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4093e83f76a6d4f34308e532facce0053d16000b",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/29709608896\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: Caymon / Kayo <24500457+giantcow@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#756)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-07-20T22:57:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "10f6919a8277776aa55dc064840a7dcf13563e57",
          "body": "Add EventBridge rule-based alarms that detect Glue job FAILED and\nTIMEOUT state changes, catching failures that occur before Spark metrics\nare emitted (e.g., early script errors).\n\nNew props:\n- addJobFailedStateCountAlarm\n- addJobTimeoutStateCountAlarm\n\nThese create EventBridge rules matching 'Glue \n[…]\nhat my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Sriram Palacharla <srirpa@amazon.com>\nCo-authored-by: Caymon / Kayo <24500457+giantcow@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat(glue): add state-change-based alarms for FAILED and TIMEOUT (#748)",
          "author_name": "Sriram Palacharla",
          "author_login": "srirampalacharla",
          "committed_at": "2026-07-20T22:53:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "32a1140a6b2ab08248466b3ec0105876dda62bb1",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/29215487309\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#755)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-07-13T00:36:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d44f498584d8086f68786f8955017b2da1fc5cf2",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/28760469227\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#754)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-07-06T00:40:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e61d18aa7a4a6a2f7c5f4cd2e42f5a6551be8844",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/28341705786\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#753)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-06-29T00:48:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11e34fbba451f2ce8074e91a06b1b1a72227d57c",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/27922950361\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#752)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-06-22T00:51:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6badc44caab0bad9d254b779b908241ad0bd3349",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/27517574537\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#749)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-06-15T00:52:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41a113e01b29f5ea60d75c8d100857e4da8e4791",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/27109908455\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#747)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-06-08T00:50:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6e9e1a97b0b2bb41cbc08f725acfae7e32f8d63d",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/26729342902\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#746)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-06-01T00:49:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e18d922fab579df644dee7f06e1a1d7eba7d7c76",
          "body": "…(#744)\n\nCloses #671\n\nAdded TrimmedSum (TS) statistics to the MetricStatistic enum, following\nthe same pattern as the existing TrimmedMean (TM) statistics:\n\n- Basic: TS50, TS70, TS90, TS95, TS99, TS999, TS9999\n- Bidirectional: TS99_BOTH, TS95_BOTH, TS90_BOTH, TS85_BOTH, TS80_BOTH,\nTS75_BOTH, TS70_BO\n[…]\nP, TS99_TOP, TS999_TOP, TS9999_TOP\n\nAll values follow the AWS CloudWatch statistics syntax as documented at:\n\nhttps://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Statistics-definitions.html",
          "is_bot": false,
          "headline": "feat(metric): add TrimmedSum (TS) statistics to MetricStatistic enum …",
          "author_name": "Abhinav Chinta",
          "author_login": "chintaabhinav",
          "committed_at": "2026-05-27T21:16:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "537c61e55889c8861699f86dc416d83d7dfadeaa",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/26377390245\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#745)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-05-25T00:45:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96f08c6114b6e76203719c7f323d16818b47732f",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/26007433710\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#743)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-05-18T15:39:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a457c936b803978f315b0dd3b55090d865ec2ff",
          "body": "Bumps [fast-uri](https://github.com/fastify/fast-uri) from 3.1.0 to\n3.1.2.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a\nhref=\"https://github.com/fastify/fast-uri/releases\">fast-uri's\nreleases</a>.</em></p>\n<blockquote>\n<h2>v3.1.2</h2>\n<h2>⚠️ Security Release</h2>\n<ul>\n<li>Fix fo\n[…]\n/v3.1.0...v3.1.2\">compare\nview</a></li>\n</ul>\n</details>\n<br />\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump fast-uri from 3.1.0 to 3.1.2 (#741)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-11T06:03:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5e4f5cd8ad0aa0ee1f9f59acadd28d2fdcdd2e88",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/25644260627\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#742)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-05-11T00:41:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8b47c0c2dfb9e7c17e515a7812b85d2f3d25d7eb",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/25295367197\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#739)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-05-04T00:38:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b8f3dc61c214a9b29619810682c56778cbaadc7d",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/24971007796\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#737)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-04-27T00:34:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "838eee7ed81fe8344810fe48e48e7e96018704f4",
          "body": "This removes some APIs/types that had replacements added previously in\norder to avoid using generics and tuples, which JSII@5 does not support.\n    \nThe BaseMetricFactory might affect other extensions of that abstract\nclass outside of this library, which would need to be confirmed by\nreviewers.\n\nThi\n[…]\nder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: arkon <arkon@users.noreply.github.com>\nCo-authored-by: Caymon Sullivan <cayman@amazon.com>\nCo-authored-by: Kayo <kayo@giantcow.dev>",
          "is_bot": false,
          "headline": "feat(build)!: upgrade to JSII@5 (#686)",
          "author_name": "arkon",
          "author_login": "arkon",
          "committed_at": "2026-04-25T00:59:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a3ff647190295eb6c4795ed98074858f458ee5cb",
          "body": "## Summary\n\nAdds `KinesisDataStreamConsumerMonitoring` for enhanced fan-out (EFO)\nconsumers of Kinesis Data Streams, dimensioned by `{StreamName,\nConsumerName}`. Complements the existing stream-level\n`KinesisDataStreamMonitoring` which only covers stream-wide metrics.\n\n## Metrics (6)\n\nAll on namespa\n[…]\nBy submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license\n\n---------\n\nCo-authored-by: Caymon / Kayo <24500457+giantcow@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat(kinesis): add per-consumer EFO monitoring (#736)",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2026-04-24T04:45:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6dc214d3b0079fceabbb2e2eee65dda499c4469b",
          "body": "## What\n\nWires Fargate services into the auto-applied `MonitoringAspect` so that\nteams relying on the aspect for fleet-wide auto-monitoring get Fargate\ncoverage without manual opt-in.\n\nCovers three cases:\n\n| Matched construct | Facade method | Metrics covered |\n| --- | --- | --- |\n| `ecs.FargateServ\n[…]\nith the same pattern (bare `Ec2Service` + L3 patterns with\nancestor-skip logic).\n\n---\n\nBy submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license",
          "is_bot": false,
          "headline": "feat(MonitoringAspect): add Fargate service support (#734)",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2026-04-24T04:41:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c58ad73daf09b4f8153cde7a015a8a4115f19daa",
          "body": "…oring and alarms (#733)\n\nChanges:\n\n* KinesisDataAnalyticsMetricFactory: add\nmetricBackPressuredTimeMsPerSecond()\n* KinesisDataAnalyticsAlarmFactory: add\nMaxBackPressuredTimeMsPerSecondThreshold interface and\naddBackPressuredTimeMsPerSecondAlarm()\n* KinesisDataAnalyticsMonitoring: expose\naddBackPres\n[…]\nessured\nTime\" widget in the dashboard\n* Tests and snapshots updated accordingly\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(KinesisDataAnalytics): add maxBackPressuredTimeMsPerSecond monit…",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2026-04-24T04:31:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5f61f67d8828442ee5d91294d9fb6cf0b07541bd",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/24642914128\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#735)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-04-20T00:32:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5908bfb960625238a26a8f7f9639d328ed19fab3",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/24320156008\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#731)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-04-13T00:32:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1463f19dd1fc4ad3912669cbbea52e94f33821c",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/24013855335\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#730)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-04-06T00:29:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "484d9c7f4c43ae5d345089a76bca3c2f266fb94f",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/23722730133\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#729)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-03-30T00:31:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6fb7956aca4612065171ae8aa5a7a52d56bcabdb",
          "body": "Bumps [handlebars](https://github.com/handlebars-lang/handlebars.js)\nfrom 4.7.8 to 4.7.9.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a\nhref=\"https://github.com/handlebars-lang/handlebars.js/releases\">handlebars's\nreleases</a>.</em></p>\n<blockquote>\n<h2>v4.7.9</h2>\n<ul>\n<li>fix: \n[…]\n/cdklabs/cdk-monitoring-constructs/network/alerts).\n\n</details>\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump handlebars from 4.7.8 to 4.7.9 (#728)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-03-29T04:49:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a6688fff243691fa053801ddefecdc9b57ddee69",
          "body": "…ssed (#726)\n\nAdds logic to use the `stageName` of the API `deploymentStage` when an\noverride is not explicitly passed to the construct. Prevents\nmisconfigured alarms and dashboard widgets when the user does not pass\nthe `stageName` explicitly.\n\nSee also: #409, #381\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix(apigateway): use API deployment stage name when not explicitly pa…",
          "author_name": "Drew Davis",
          "author_login": "typeparameter",
          "committed_at": "2026-03-24T17:38:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "67a8cdce477c7e0942705053b54c9d32ce896dd6",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/23416162850\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#727)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-03-23T00:28:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d13e608c3083d1700008ca59a46a378a5fc60a5",
          "body": "Bumps [flatted](https://github.com/WebReflection/flatted) from 3.4.1 to\n3.4.2.\n<details>\n<summary>Commits</summary>\n<ul>\n<li><a\nhref=\"https://github.com/WebReflection/flatted/commit/3bf09091c3562e17a0647bc06710dd6097079cf7\"><code>3bf0909</code></a>\n3.4.2</li>\n<li><a\nhref=\"https://github.com/WebRefle\n[…]\n/cdklabs/cdk-monitoring-constructs/network/alerts).\n\n</details>\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump flatted from 3.4.1 to 3.4.2 (#725)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-03-20T04:03:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7eba849c4a5ce9d543d53dc515de6923164a8c85",
          "body": "Bumps\n[fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser)\nfrom 5.5.6 to 5.5.7.\n<details>\n<summary>Changelog</summary>\n<p><em>Sourced from <a\nhref=\"https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md\">fast-xml-parser's\nchangelog</a>.</em></p>\n<blockqu\n[…]\n/cdklabs/cdk-monitoring-constructs/network/alerts).\n\n</details>\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump fast-xml-parser from 5.5.6 to 5.5.7 (#724)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-03-20T02:10:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9d65d0cab2698236b057c3fcd29f6934ed7537c0",
          "body": "Bumps\n[fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser)\nfrom 5.5.5 to 5.5.6.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a\nhref=\"https://github.com/NaturalIntelligence/fast-xml-parser/releases\">fast-xml-parser's\nreleases</a>.</em></p>\n<blockquote>\n<h2>fix \n[…]\n/cdklabs/cdk-monitoring-constructs/network/alerts).\n\n</details>\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump fast-xml-parser from 5.5.5 to 5.5.6 (#723)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-03-18T04:34:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "77170777bdb981e20193e6fd8efa02fda9c815e9",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/23122858839\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#721)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-03-16T00:29:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "63bb22fc07680fe125c7f472ff67305cae7ed459",
          "body": "Add p100 statistic alongside existing average for CPU and memory\nutilization widgets in Fargate and Ec2 service monitoring, enabling\noperators to monitor peak resource usage.\n\nFixes #714\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Colton White <coltonawhite@gmail.com>",
          "is_bot": false,
          "headline": "feat(ecs): add p100 CPU and memory utilization metrics and alarms (#715)",
          "author_name": "Milosz Watroba",
          "author_login": "miloszwatroba",
          "committed_at": "2026-03-09T18:41:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d076703d8d8171de493a4203628d63d02394176",
          "body": "…er (#719)\n\nRelax the `errorType` parameter type from `ErrorType` to `ErrorType |\nstring` in `addErrorCountAlarm` and `addErrorRateAlarm` methods. This\nenables creating multiple alarms for error types that fall into the same\nenum category but need distinct names (e.g., `Elb500Error`,\n`Elb502Error` for ALB metrics).\n\nFixes #718\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(ErrorAlarmFactory): allow arbitrary string for errorType paramet…",
          "author_name": "Milosz Watroba",
          "author_login": "miloszwatroba",
          "committed_at": "2026-03-09T18:37:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca4f5b7484a4dcca7c820a8cf6e11f45d3ae3586",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/22833288761\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#717)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-03-09T00:25:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7843764a55874a726e85902a9f8e209042b89330",
          "body": "Add three TCP reset metrics (client, target, ELB) to\nNetworkLoadBalancerMetricFactory and integrate them into\nNetworkLoadBalancerMonitoring dashboard with adaptive layout.\n\n- Add metricClientResetCount(), metricTargetResetCount(),\nmetricElbResetCount() methods\n- Create TCP Reset Counts widget displa\n[…]\net type scenarios\n\nFixes #712\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Milosz Watroba <miw@amazon.com>",
          "is_bot": false,
          "headline": "feat(nlb): add TCP reset count metrics and dashboard widget (#713)",
          "author_name": "Milosz Watroba",
          "author_login": "miloszwatroba",
          "committed_at": "2026-03-04T17:41:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3b4351552ab355fc99d33828421c0f1b5a266056",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/22556392968\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#711)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-03-02T00:25:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f8e41c3d3fdc00d7562a17112cb99697e2d0868c",
          "body": "Bumps\n[fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser)\nfrom 5.3.7 to 5.4.1.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a\nhref=\"https://github.com/NaturalIntelligence/fast-xml-parser/releases\">fast-xml-parser's\nreleases</a>.</em></p>\n<blockquote>\n<h2>Sepa\n[…]\n/cdklabs/cdk-monitoring-constructs/network/alerts).\n\n</details>\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump fast-xml-parser from 5.3.7 to 5.4.1 (#710)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-02-28T21:59:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9a920598b8b3b6eee2bea7f6d0a1953c331c36fc",
          "body": "Fixes #706\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: Colton White <whitcolt@amazon.com>\nCo-authored-by: Caymon / Kayo <24500457+giantcow@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix: Fixing incorrect usage of searchRegion and searchAccount (#708)",
          "author_name": "Colton White",
          "author_login": "bigbadtrumpet",
          "committed_at": "2026-02-23T06:10:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9226d28f9c536f85f68df46f871dd4d56223f732",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/22288603087\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#709)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-02-23T00:25:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f6d34cc388b6219677fff1f9d6760de621e5b2db",
          "body": "Fixes a naming inconsistency in the CloudFront metric factory by\nchanging the request count metric label from \"Uploaded\" to \"Requests.\"\nDue to [special handling in the `toRate` method on\n`MetricFactory`](https://github.com/cdklabs/cdk-monitoring-constructs/blob/7a613f24f379d6997ca2ef518411a5b04b8a60\n[…]\n rate metrics to \"TPS.\"\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Colton White <coltonawhite@gmail.com>",
          "is_bot": false,
          "headline": "fix(cloudfront): correct requests metric label (#703)",
          "author_name": "Drew Davis",
          "author_login": "typeparameter",
          "committed_at": "2026-02-19T23:05:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9e945c5e30946249ef945772ab78dff8bf2950a3",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/22097566430\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#705)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-02-17T12:03:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aa8299c3a546d049ac865f8979b075943501cbfb",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/21808151890\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#704)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-02-09T00:26:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a613f24f379d6997ca2ef518411a5b04b8a60e5",
          "body": "…ported (#702)\n\nFixes #701 \n\n`monitorNetworkLoadBalancer` always renders the Task Health widgets,\neven in case of `ALB` target types for which the `HealthyHostCount`\nmetrics are not supported\n(https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html).\nIn \n[…]\nor NLB monitoring.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: Milosz Watroba <miw@amazon.com>",
          "is_bot": false,
          "headline": "fix(loadbalancing): do not display NLB task health widgets if not sup…",
          "author_name": "Milosz Watroba",
          "author_login": "miloszwatroba",
          "committed_at": "2026-02-06T21:11:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6105a93b9265161e66c05bfabb572586bd328a1b",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/21573077552\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#700)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-02-02T00:25:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14f8a9dca4815084b0d425aac986a24ccf60f6f8",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/21342145137\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#698)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-01-26T00:23:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "383175a41a205fd5dcb9dedc37ca41c1bdec8d47",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/21121146956\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#696)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-01-19T00:22:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b9d57286b0a0d83c6de20ad993bacaf311694725",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20904310228\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#695)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-01-12T00:22:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "464e0e86ab66c4ddbac7fe2192dc532dc8753311",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20701386138\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#694)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2026-01-05T00:23:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4a99f0ac45cbf3ad245646365b2336888b43502f",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20561600793\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#693)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-12-29T00:22:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8ff12619b9be7c8d3c12ea046a7618f47f41d132",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20418022210\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#692)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-12-22T00:22:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1e30170f190a159221bf3fb01445d6ea2347b4f3",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20216469003\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#689)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-12-15T00:22:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b69e97aa80707d6e84fbe1807fed4a82e9bd69e1",
          "body": "This is probably the smarter way of changing the constructor param types\nrather than just having an entirely new class.\n\n---\n\nExample change to replace deprecated constructor usage:\n\n```diff\nnew KeyValueTableWidget([\n-  [\"foo\", \"bar\"],\n+  { key: \"foo\", value: \"bar\" },\n-  [\"baz\", \"qux\"],\n+  { key: \"b\n[…]\nalue: \"qux\" },\n]);\n```\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: arkon <arkon@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat: merge KeyValueTableWidget and KeyValueTableWidgetV2 (#688)",
          "author_name": "arkon",
          "author_login": "arkon",
          "committed_at": "2025-12-11T04:14:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "61156bf75eb80b444c23b546a4f706d3a1f210f3",
          "body": "This is extracted from #686 and an incremental step towards upgrading to\nJSII@5.x.\n\nThis introduces new types to replace the usage of the generic type that\nneeds to be removed since JSII@5.x doesn't support generics as part of\nconstructs' APIs.\n\nThis does kind of spam new interfaces into the API, bu\n[…]\nibution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: arkon <arkon@users.noreply.github.com>\nCo-authored-by: Caymon / Kayo <24500457+giantcow@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat: introduce replacement types for aspect (#687)",
          "author_name": "arkon",
          "author_login": "arkon",
          "committed_at": "2025-12-10T01:30:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "82128bb55754e2ad97b9048c564d9d40e4b41cdd",
          "body": "The behaviour \"conflicts\" with the later added XAXR support. We more\nexplicitely check for the relevant ACL scope now rather than just the\nprescence of now ubiquitous \"region\" prop.\n\nFixes #681\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: arkon <arkon@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix(wafv2): don't include Region dimension for CLOUDFRONT ACLs (#683)",
          "author_name": "arkon",
          "author_login": "arkon",
          "committed_at": "2025-12-08T23:14:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "51cb629872638b6b95baf065b5aaaecf5d750075",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/20012637263\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#685)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-12-08T00:21:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b3769ce4f00ffb5094420c05810383c68051d416",
          "body": "Fixes #676\n\nAdds support for monitoring Serverless Elasticache.\n\nGenerated widget would look like:\n\n```\n\n┌─────────────────────────────────────────────────────────────┐\n│  Title Widget: \"Serverless ElastiCache - {cluster name}\"   │                                                                     \n[…]\nt, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: Ashish Gupta <ashugpta@amazon.com>\nCo-authored-by: Momo Kornher <kornherm@amazon.co.uk>",
          "is_bot": false,
          "headline": "feat(ElastiCache): add support for serverless cache (#677)",
          "author_name": "Ashish Gupta",
          "author_login": "Ashish0804",
          "committed_at": "2025-12-07T00:41:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2c6b9e71a0c3ac6a5f6b0f3ce26dc63bd44424db",
          "body": "Ideally at some point, the project needs to get to newer versions of\nTS/JSII/etc., but that's a more dramatic set of changes.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: arkon <arkon@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix(build): resolve to older version of types (#682)",
          "author_name": "arkon",
          "author_login": "arkon",
          "committed_at": "2025-12-07T00:33:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "506a283c314630da17b1d5a13ac27fb1ab005d39",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/19807106808\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#680)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-12-01T00:20:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47d1b35a5b25ad392561a794627c892efeea4dd2",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/19619515153\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#679)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-11-24T00:18:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "471ce7094a0ded1c5d76393cfea7e0b6c5b7f603",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/19414363507\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#678)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-11-17T00:29:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cee037266332210a5a089f78fc1ca38e218879f",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/19216663518\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#675)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-11-10T00:18:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a9d1dfcb2ff598451e0b734da8882dda25a1d220",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/19020287923\n\n------\n\n*Automatically created by projen via the \"upgrade-dev-deps-main\"\nworkflow*\n\nSigned-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies (#673)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2025-11-03T00:17:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bfe1831769da42997bce33630b87ae5ceb779109",
          "body": "Fixes failing releases.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "chore: upgrade projen and repo config to latest version (#672)",
          "author_name": "Momo Kornher",
          "author_login": "mrgrain",
          "committed_at": "2025-10-31T11:02:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "696804ea21a1e5fb481cc08a86b7cb8ad295071a",
          "body": "…nd add Full Restart Rate monitoring (#668)\n\n### Changes\n\n**Fixed Checkpoint Failure Rate**\n- Replaced manual rate calculation with CloudWatch's native RATE()\nfunction\n- Changed from (3600 * checkpoints) / PERIOD(checkpoints) to\nRATE(numberOfFailedCheckpoints)\n\n**Added Full Restart Rate Monitoring**\n[…]\nalarms\n- Added test coverage for new functionality\n- All 5 alarms now supported (was 4)\n\nProvides more accurate rate monitoring and better insights into Kinesis\nData Analytics application performance.",
          "is_bot": false,
          "headline": "feat(kinesisdataanalytics): Fix Checkpoint Failure Rate calculation a…",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2025-10-29T03:28:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4254fbf6e5145b1ea5c71d8858df83628a31c7fa",
          "body": "…s (#664)\n\nDocs:\nhttps://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cloudwatch.GraphWidgetProps.html#setperiodtotimerange\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix(widget): show values from entire time range for bar and pie chart…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-08-19T18:28:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d400bfb842ebdee42deccbf97070a7289ebdbc37",
          "body": "Fixes #\nIn the previous PR where I added monitoring for network egress ingress I\nstarted setting color to 'Total Network In\" unfortunately this is not\ncaught during test or synthesis but only during deployment, and I only\ndid e2e testing for ASG monitoring.\n\n\n<img width=\"1795\" height=\"672\" alt=\"per-\n[…]\n/>\n\n\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: Jerzy 'Cedric' Zagorski <jzagorsk@amazon.com>",
          "is_bot": false,
          "headline": "fix:  monitorEc2Instances for instanceId list failing  (#663)",
          "author_name": "xendo",
          "author_login": "xendo",
          "committed_at": "2025-08-19T15:36:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4e6f2ffbf5893039f553c38d941f7328ad4d18fd",
          "body": "This PR adds checkpoint alarms for Kinesis Data Analytics monitoring.",
          "is_bot": false,
          "headline": "feat(kinesisdataanalytics): Add alarms for Checkpoints (#661)",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2025-08-15T20:38:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "27ae4086fa5d453481e68a11a9993861dc15c540",
          "body": "…s (#660)\n\nCloses #335\n\nExamples:\n<img width=\"1656\" height=\"528\" alt=\"Screenshot 2025-08-14 at 11 50 30\"\nsrc=\"https://github.com/user-attachments/assets/c3dac59d-db96-4bcc-8cd9-a670289ae2c8\"\n/>\n<img width=\"1654\" height=\"290\" alt=\"Screenshot 2025-08-14 at 11 50 39\"\nsrc=\"https://github.com/user-attachments/assets/dd824f03-e5d6-4f33-a357-52631768e6c1\"\n/>\n\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(opensearchserverless): add monitoring for Collections and Indice…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-08-15T13:39:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9b64e669877e17ab7f2e30360082652a59e4083",
          "body": "Adding network egress and ingress monitoring to the EC2Monitoring.\n\nThis partially addresses:\nhttps://github.com/cdklabs/cdk-monitoring-constructs/issues/515\n\nI tested this by deploying to my infrastructure and eyeballing the\ndashboard and alarms from the console\n\n```\nmonitoring.monitorEC2Instances(\n[…]\nes #\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\n---------\n\nCo-authored-by: Jerzy 'Cedric' Zagorski <jzagorsk@amazon.com>",
          "is_bot": false,
          "headline": "feat: add EC2Monitoring for network ingress/egress (#658)",
          "author_name": "xendo",
          "author_login": "xendo",
          "committed_at": "2025-08-14T20:59:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "525411f7a4c74d044722c31fa4e4d91b09031929",
          "body": "Example:\n<img width=\"1650\" height=\"288\" alt=\"Screenshot 2025-08-14 at 11 20 04\"\nsrc=\"https://github.com/user-attachments/assets/e6d99e37-cab9-4f98-ae54-596d0297972e\"\n/>\n\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(osis): add monitoring for OpenSearch Ingestion pipelines (#659)",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-08-14T17:21:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "327eab645a93f361c38514ee869de2d6567f1820",
          "body": "## Add RDS Cluster IOPS and Latency Monitoring Support\n\n### Changes\n- **RdsClusterMetricFactory**: Added `metricReadIOPS()` and\n`metricWriteIOPS()` methods with proper role-based dimensions\n- **RdsClusterMonitoring**: Added latency alarms for all query types\n(Select, Insert, Update, Delete, Commit) \n[…]\n\n### Breaking Changes\nNone - all changes are additive and backward compatible.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(rds): Add support for IOPS and Latency alarms (#657)",
          "author_name": "costmatt-amzn",
          "author_login": "costmatt-amzn",
          "committed_at": "2025-08-14T17:21:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3c7227a593f00379cc06371fa9866cf0e2f4909a",
          "body": "… groups (#656)\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: replace deprecated logRetention usages with explicit Lambda log…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-07-30T22:07:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5880e64c59a9678425e641eec1af6f54c0db3eb8",
          "body": null,
          "is_bot": false,
          "headline": "chore: update to use new Maven endpoint (#650)",
          "author_name": "Rico Hermans",
          "author_login": "rix0rrr",
          "committed_at": "2025-05-30T10:49:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72da8fd182a342f601c80c9cf1701aa1d9a5bdbd",
          "body": "Fixes https://github.com/cdklabs/cdk-monitoring-constructs/issues/645\n\nImplement what was described in the issue.\n\n![image](https://github.com/user-attachments/assets/5fa11ccf-87fb-4793-b9b5-6fabae7d3151)\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(lambda): fix calculation on function cost (#647)",
          "author_name": "Laxenade",
          "author_login": "Laxenade",
          "committed_at": "2025-05-21T18:26:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84e95279535667fd9269b76b0465b055641bec4b",
          "body": "…log queries (#644)\n\nIntroduces `filterExpressions: string[]` as an additional option to filter logs\n\nFixes #643 \n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(LogMonitoring): Added filterExpressions to enable advanced JSON …",
          "author_name": "Fethi Ozdol",
          "author_login": "fethiozdol",
          "committed_at": "2025-05-20T15:24:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c29d3da063c0ac17b2a833c2a118324a8b7f92cb",
          "body": "Fixes https://github.com/cdklabs/cdk-monitoring-constructs/issues/462\n\nAdd `init_duration` to `LambdaFunctionMonitoring`. Monitoring INIT has\nbecome increasingly important due to:\n\n1. Lambda now bills for the INIT phase.\n[Blog](https://aws.amazon.com/blogs/compute/aws-lambda-standardizes-billing-for\n[…]\ns://github.com/user-attachments/assets/5e0b53ce-304c-4ae6-94ff-e2d1e30b05ad\"\n/>\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(lambda): Add widget and alarms on init duration (#646)",
          "author_name": "Laxenade",
          "author_login": "Laxenade",
          "committed_at": "2025-05-20T15:09:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cf1aaded92823800080f0533fa3ef5ac9ea4012d",
          "body": "Fixes https://github.com/cdklabs/cdk-monitoring-constructs/issues/391\n\nNot sure if this change is really needed — I’ve been creating dashboards with variables by just grabbing the underlying dashboards and attaching variables that way. That said, it’s a nice cleanup and does make the code a bit cleaner. Totally fine to close the PR if you don’t think it’s worth it.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(dashboard): add support for dashboard variables (#639)",
          "author_name": "Laxenade",
          "author_login": "Laxenade",
          "committed_at": "2025-05-02T13:33:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1b39b7c95d81c80f47cb3888763450266ad825a4",
          "body": "…ndlers instead (#641)\n\n`NODEJS_LATEST` still points to Node.js 18, which is already EOL.\n\nRelated upstream issue: https://github.com/aws/aws-cdk/issues/28125\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: use dynamically determined latest Node.js runtime for Lambda ha…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-05-01T20:54:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7b7d081097ef4a87fbb218e00f42304fb6220a07",
          "body": "Closes #550\n\nAdd support for `TableWidget` in dashboards.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Danny Zhao <zikangz@amazon.com>",
          "is_bot": false,
          "headline": "feat(widget): add TABLE widget type (#638)",
          "author_name": "Laxenade",
          "author_login": "Laxenade",
          "committed_at": "2025-04-28T15:01:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eee95818460077bd7e59fdad6506fdaed2ef603e",
          "body": "…y wrapped (#637)\n\nThis change splits the namespaces to wrap them individually.\n\nFixes #623\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Martin Sommer <mtsommer@amazon.com>",
          "is_bot": false,
          "headline": "fix(MetricFactory): Metric Search with multiple namespaces are wrongl…",
          "author_name": "GeeK",
          "author_login": "SeeSharpSoft",
          "committed_at": "2025-04-14T21:01:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a686e1fc510193c8440eba028beb3a6638ffdf98",
          "body": "Closes #631\n\n---\n\n### Summary\n\nThe changes in this pull request implement [a feature to clone conservative ticketing alarms to be more aggressive for rollback alarms](https://github.com/cdklabs/cdk-monitoring-constructs/issues/631). `MonitoringFacade` introduces the capability to specify that all mo\n[…]\nre to a personal account and manually verified it created the expected alarms.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: add ability to clone monitors (#632)",
          "author_name": "Kyle Peter Fritz",
          "author_login": "kfritz",
          "committed_at": "2025-04-10T19:08:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "18c6bb3ac2bba5b1553e93b142cbae7223eeb00e",
          "body": "---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "chore(docs): add more info about available actions in README (#635)",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-04-09T14:53:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2f9e5dbdfea8f3f2ba263cb693e8bf6460cf492",
          "body": "Node.js 18 will be blocked later this year.\n\nSee https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix: use latest Node.js runtime for utility Lambda functions (#634)",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-04-08T18:25:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "911f5a0cbbfe640d40dc1b7dca179af07854f6fb",
          "body": "…621)\n\nFixes #567 \n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(lambda): allow latency alarms to be based on function timeout (#…",
          "author_name": "Amin Fazl",
          "author_login": "AminFazlMondo",
          "committed_at": "2025-03-31T13:30:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3991ec84981064adf06400b10af36fc799248595",
          "body": "…pect localAlarmNamePrefixOverride (#629)\n\nFixes #628\n\nThis change passes the BaseMonitoringProps passed into\nDynamoTableGlobalSecondaryIndexMonitoring along to the super class\nconstructor, which exposes `localAlarmNamePrefixOverride` to be consumed\nby Monitoring.createAlarmFactory. Additionally, th\n[…]\nng the default naming behavior. (i.e. including table name\nin the alarm name).\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix(dynamo): adjusts DynamoTableGlobalSecondaryIndexMonitoring to res…",
          "author_name": "Hal Jarrett",
          "author_login": "haljarrett",
          "committed_at": "2025-03-31T13:29:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0b2bee627bc73ba115bdf96dddc207aca4bbf2a0",
          "body": "…op (#627)\n\nThe conversions widget is useless for any Firehose which doesn't have\ndata format conversions enabled.\n\nDefault is true for backwards compatability.\n\nImplementation is based on the similar `isIterator` parameter for Lambda\nFunctions.\n\nNote that the AWS docs are not consistent about what \n[…]\ns repo's\ntesting approach.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made\nunder the terms of the Apache-2.0 license_\n\nCo-authored-by: Paul Sinclair <pssincl@amazon.com>",
          "is_bot": false,
          "headline": "feat(KinesisFirehoseMonitoring): add isDataFormatConversionEnabled pr…",
          "author_name": "Paul Sinclair",
          "author_login": "pbsinclair42",
          "committed_at": "2025-03-26T18:06:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f50190586d8fbf03fef66ec34f65603ec2aa0a70",
          "body": "…naming strategy (#625)\n\nThis can be useful if you want to name the alarm based on properties of the action being applied.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat(AlarmFactory): allow accessing action strategy as part of alarm …",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-03-21T14:08:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d473fd0657fa9d0ad7891af10279cb26524f5d63",
          "body": "So we can fully remove these later.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "chore: replace usages of deprecated TPS metric methods (#620)",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-03-20T23:16:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "09f66a7d3060f31956febc8d5cf5628e31be468a",
          "body": "…d (#622)\n\nAddresses a gap where the deduplication string wasn’t easily customizable via typical facade usage. It can be customized using dedupeStringOverride, but this overrides the entire deduplication string. Since alarm name prefixes (globalPrefix, localPrefix in AlarmNamingStrategy) are usually\n[…]\nally constructed by concatenating prefixes passed as parameters to the facade.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: Allow specifying alarmDedupeStringSuffix in CustomAlarmThreshol…",
          "author_name": "slawek-amzn",
          "author_login": "slawek-amzn",
          "committed_at": "2025-03-20T17:14:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "53a5c03122cb36e4e4f3442ab21c5de9a9a2d863",
          "body": "…619)\n\nAs noted in https://aws.github.io/jsii/compiler-and-rosetta-maintenance/#how-difficult-is-it-to-migrate-from-1x-to-50x, tuples aren't supported with jsii@5.\n\n`KeyValueTableWidget` will be removed in a future version for the upgrade.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: create jsii@5 compatible replacement for KeyValueTableWidget (#…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2025-02-05T15:47:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "59bc23709eafe70a40a3bc2a30ab82ecaccd082f",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]: https://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/12458969299\n\n------\n\n*Automatically created by projen via the \"upgrade-main\" workflow*",
          "is_bot": false,
          "headline": "chore(deps): upgrade dependencies (#613)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2024-12-23T15:23:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8b50140bd40a370815d2761a75e5c2f42422242b",
          "body": "Adds them to the metric in adaptMetric if they are present in\r\nglobalDefault\r\n\r\n---\r\n\r\n_By submitting this pull request, I confirm that my contribution is made\r\nunder the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix: Global Default Region and Account not set in certain metrics (#615)",
          "author_name": "umardab-amzn",
          "author_login": "umardab-amzn",
          "committed_at": "2024-12-18T14:51:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54d6a06126645ee848f5564062001c06bcfd0ca7",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]: https://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/12226655446\n\n------\n\n*Automatically created by projen via the \"upgrade-main\" workflow*",
          "is_bot": false,
          "headline": "chore(deps): upgrade dependencies (#611)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2024-12-09T00:33:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dc1edac60837a68a81b9692de292f9cf64e87840",
          "body": "…fV2 alarms (#609)\n\nFixes #607\n\nAlso replaces some things marked as deprecated in the unit tests just to make it less noisy.\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "fix(MonitoringAspect): allow specifying CloudFrontDistribution and Wa…",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2024-12-07T00:29:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a397b93c4a6b835fb9fad7af7d21bb1cff609898",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]: https://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/12110447183\n\n------\n\n*Automatically created by projen via the \"upgrade-main\" workflow*",
          "is_bot": false,
          "headline": "chore(deps): upgrade dependencies (#604)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2024-12-02T00:33:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0bd841fb738fa0674381627036a84040b0c63e6",
          "body": "Upgrades project dependencies. See details in [workflow run].\n\n[Workflow Run]: https://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/12000946196\n\n------\n\n*Automatically created by projen via the \"upgrade-main\" workflow*",
          "is_bot": false,
          "headline": "chore(deps): upgrade dependencies (#603)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2024-11-25T00:32:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "934b13a51fc647418e236b2c6bc2c4e7b2986823",
          "body": "Upgrades project dependencies. See details in [workflow run].\r\n\r\n[Workflow Run]:\r\nhttps://github.com/cdklabs/cdk-monitoring-constructs/actions/runs/11883528858\r\n\r\n------\r\n\r\n*Automatically created by projen via the \"upgrade-main\" workflow*\r\n\r\nSigned-off-by: github-actions <github-actions@github.com>\r\nCo-authored-by: github-actions <github-actions@github.com>",
          "is_bot": false,
          "headline": "chore(deps): upgrade dependencies (#601)",
          "author_name": "cdklabs-automation",
          "author_login": "cdklabs-automation",
          "committed_at": "2024-11-18T14:54:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f27e485d77469a97da47faf9088b9dc705fe25f9",
          "body": "Bumps [@eslint/plugin-kit](https://github.com/eslint/rewrite) from 0.2.2\r\nto 0.2.3.\r\n<details>\r\n<summary>Release notes</summary>\r\n<p><em>Sourced from <a\r\nhref=\"https://github.com/eslint/rewrite/releases\"><code>@​eslint/plugin-kit</code>'s\r\nreleases</a>.</em></p>\r\n<blockquote>\r\n<h2>plugin-kit: v0.2.3\n[…]\nabs/cdk-monitoring-constructs/network/alerts).\r\n\r\n</details>\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump @eslint/plugin-kit from 0.2.2 to 0.2.3 (#600)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2024-11-15T22:13:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1f8ca082a122af8775f01be2d30c92c3de1344a1",
          "body": "Closes #560\n\n---\n\n_By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license_",
          "is_bot": false,
          "headline": "feat: support Lambda actions (#597)",
          "author_name": "Eugene Cheung",
          "author_login": null,
          "committed_at": "2024-11-13T17:29:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 72,
      "latest_release_at": "2026-07-20T22:59:15Z",
      "latest_release_tag": "v10.2.0",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 42,
      "days_since_latest_release": 6,
      "mean_days_between_releases": 16.4
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 87,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "cdk-monitoring-constructs",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "cdk",
            "cloudwatch",
            "monitoring"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/cdk-monitoring-constructs",
          "is_deprecated": false,
          "latest_version": "10.2.0",
          "repository_url": "https://github.com/cdklabs/cdk-monitoring-constructs",
          "versions_count": 312,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 292223,
          "first_published_at": "2022-02-25T09:38:36.148000Z",
          "latest_published_at": "2026-07-20T22:57:34.891000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 6
        }
      ]
    },
    "popularity": {
      "forks": 86,
      "stars": 552,
      "watchers": 23,
      "fork_history": {
        "days": [
          {
            "date": "2022-02-25",
            "count": 1
          },
          {
            "date": "2022-03-08",
            "count": 1
          },
          {
            "date": "2022-03-25",
            "count": 1
          },
          {
            "date": "2022-04-06",
            "count": 1
          },
          {
            "date": "2022-04-19",
            "count": 1
          },
          {
            "date": "2022-05-13",
            "count": 1
          },
          {
            "date": "2022-07-19",
            "count": 1
          },
          {
            "date": "2022-08-02",
            "count": 1
          },
          {
            "date": "2022-08-22",
            "count": 1
          },
          {
            "date": "2022-08-26",
            "count": 1
          },
          {
            "date": "2022-09-08",
            "count": 1
          },
          {
            "date": "2022-09-20",
            "count": 1
          },
          {
            "date": "2022-10-10",
            "count": 1
          },
          {
            "date": "2022-10-21",
            "count": 1
          },
          {
            "date": "2022-11-14",
            "count": 1
          },
          {
            "date": "2022-11-30",
            "count": 1
          },
          {
            "date": "2022-12-07",
            "count": 1
          },
          {
            "date": "2022-12-08",
            "count": 1
          },
          {
            "date": "2023-01-05",
            "count": 1
          },
          {
            "date": "2023-01-22",
            "count": 1
          },
          {
            "date": "2023-01-24",
            "count": 1
          },
          {
            "date": "2023-02-01",
            "count": 1
          },
          {
            "date": "2023-02-14",
            "count": 1
          },
          {
            "date": "2023-03-06",
            "count": 1
          },
          {
            "date": "2023-03-12",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 1
          },
          {
            "date": "2023-04-10",
            "count": 1
          },
          {
            "date": "2023-04-18",
            "count": 1
          },
          {
            "date": "2023-04-28",
            "count": 1
          },
          {
            "date": "2023-05-31",
            "count": 1
          },
          {
            "date": "2023-06-15",
            "count": 1
          },
          {
            "date": "2023-07-28",
            "count": 1
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-22",
            "count": 1
          },
          {
            "date": "2023-08-26",
            "count": 1
          },
          {
            "date": "2023-08-30",
            "count": 1
          },
          {
            "date": "2023-10-19",
            "count": 1
          },
          {
            "date": "2023-10-20",
            "count": 1
          },
          {
            "date": "2023-11-03",
            "count": 1
          },
          {
            "date": "2023-11-09",
            "count": 1
          },
          {
            "date": "2023-12-12",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 1
          },
          {
            "date": "2024-01-25",
            "count": 1
          },
          {
            "date": "2024-02-21",
            "count": 1
          },
          {
            "date": "2024-03-06",
            "count": 1
          },
          {
            "date": "2024-03-08",
            "count": 1
          },
          {
            "date": "2024-04-30",
            "count": 1
          },
          {
            "date": "2024-05-01",
            "count": 1
          },
          {
            "date": "2024-05-03",
            "count": 1
          },
          {
            "date": "2024-05-06",
            "count": 1
          },
          {
            "date": "2024-05-07",
            "count": 1
          },
          {
            "date": "2024-07-01",
            "count": 1
          },
          {
            "date": "2024-07-14",
            "count": 1
          },
          {
            "date": "2024-07-23",
            "count": 1
          },
          {
            "date": "2024-08-19",
            "count": 1
          },
          {
            "date": "2024-08-20",
            "count": 1
          },
          {
            "date": "2024-08-26",
            "count": 1
          },
          {
            "date": "2024-09-17",
            "count": 1
          },
          {
            "date": "2024-10-11",
            "count": 1
          },
          {
            "date": "2024-10-16",
            "count": 1
          },
          {
            "date": "2024-10-19",
            "count": 1
          },
          {
            "date": "2024-10-28",
            "count": 1
          },
          {
            "date": "2024-10-29",
            "count": 1
          },
          {
            "date": "2024-11-14",
            "count": 1
          },
          {
            "date": "2024-12-18",
            "count": 1
          },
          {
            "date": "2024-12-20",
            "count": 1
          },
          {
            "date": "2025-02-20",
            "count": 1
          },
          {
            "date": "2025-03-06",
            "count": 1
          },
          {
            "date": "2025-03-24",
            "count": 2
          },
          {
            "date": "2025-03-26",
            "count": 1
          },
          {
            "date": "2025-03-28",
            "count": 1
          },
          {
            "date": "2025-04-14",
            "count": 1
          },
          {
            "date": "2025-04-30",
            "count": 1
          },
          {
            "date": "2025-05-14",
            "count": 1
          },
          {
            "date": "2025-08-13",
            "count": 2
          },
          {
            "date": "2025-09-04",
            "count": 1
          },
          {
            "date": "2025-10-31",
            "count": 1
          },
          {
            "date": "2025-11-13",
            "count": 1
          },
          {
            "date": "2026-01-27",
            "count": 1
          },
          {
            "date": "2026-03-08",
            "count": 1
          },
          {
            "date": "2026-04-01",
            "count": 1
          },
          {
            "date": "2026-05-21",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 1
          },
          {
            "date": "2026-07-27",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 86,
        "total_forks": 86
      },
      "star_history": null,
      "open_issues_and_prs": 67
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [
        "test/assets/schema.graphql"
      ],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 33758,
      "source_files_sampled": 304,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "aws-cdk-lib",
            "direct": false,
            "version": "2.160.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-464c-974j-9xm6",
              "GHSA-5pq3-h73f-66hr",
              "GHSA-999r-qq7v-r334",
              "GHSA-qq4x-c6h6-rfxh",
              "GHSA-v4mq-x674-ff73",
              "GHSA-vcrf-j523-4mrf"
            ],
            "fixed_version": "2.260.0",
            "advisory_count": 6,
            "oldest_advisory_days": 555
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-4c8g-83qw-93j6",
              "GHSA-v2hh-gcrm-f6hx"
            ],
            "fixed_version": "4.1.1",
            "advisory_count": 2,
            "oldest_advisory_days": 5
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68",
              "GHSA-mh29-5h37-fv8m"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 3,
            "oldest_advisory_days": 255
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "8.3.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-w5hq-g745-h8pq"
            ],
            "fixed_version": "13.0.1",
            "advisory_count": 1,
            "oldest_advisory_days": 95
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.17.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2g4f-4pwh-qvx6"
            ],
            "fixed_version": "8.18.0",
            "advisory_count": 1,
            "oldest_advisory_days": 165
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 4.3,
            "advisory_ids": [
              "GHSA-48c2-rrv3-qjmp"
            ],
            "fixed_version": "2.8.3",
            "advisory_count": 1,
            "oldest_advisory_days": 123
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.8.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 4.3,
            "advisory_ids": [
              "GHSA-48c2-rrv3-qjmp"
            ],
            "fixed_version": "2.8.3",
            "advisory_count": 1,
            "oldest_advisory_days": 123
          },
          {
            "name": "@tootallnate/once",
            "direct": false,
            "version": "1.1.2",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.3,
            "advisory_ids": [
              "GHSA-vpq2-c234-7xj6"
            ],
            "fixed_version": "3.0.1",
            "advisory_count": 1,
            "oldest_advisory_days": 146
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 5,
          "moderate": 3
        },
        "advisory_count": 17,
        "affected_count": 9,
        "assessed_count": 787,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@aws-cdk/asset-awscli-v1",
            "direct": false,
            "version": "2.2.215",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/asset-kubectl-v20",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/asset-node-proxy-agent-v6",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/aws-redshift-alpha",
            "direct": false,
            "version": "2.160.0-alpha.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/aws-service-spec",
            "direct": false,
            "version": "0.1.190",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/cloud-assembly-schema",
            "direct": false,
            "version": "38.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/integ-runner",
            "direct": false,
            "version": "2.203.2",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/integ-tests-alpha",
            "direct": false,
            "version": "2.262.1-alpha.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-cdk/service-spec-types",
            "direct": false,
            "version": "0.0.256",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-async-generators",
            "direct": false,
            "version": "7.8.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-bigint",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-class-properties",
            "direct": false,
            "version": "7.12.13",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-class-static-block",
            "direct": false,
            "version": "7.14.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-import-attributes",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-import-meta",
            "direct": false,
            "version": "7.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-json-strings",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-logical-assignment-operators",
            "direct": false,
            "version": "7.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-nullish-coalescing-operator",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-numeric-separator",
            "direct": false,
            "version": "7.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-object-rest-spread",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-optional-catch-binding",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-optional-chaining",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-private-property-in-object",
            "direct": false,
            "version": "7.14.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-top-level-await",
            "direct": false,
            "version": "7.14.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-typescript",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@balena/dockerignore",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@bcoe/v8-coverage",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@cdklabs/tskb",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@cspotcode/source-map-support",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "9.39.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@hutson/parse-repository-url",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@iarna/toml",
            "direct": false,
            "version": "2.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@istanbuljs/load-nyc-config",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@istanbuljs/schema",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/console",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/core",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/environment",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/fake-timers",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/globals",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/reporters",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/source-map",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/test-result",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/test-sequencer",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/transform",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jest/types",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@jsii/check-node",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jsii/spec",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodable/entities",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@oozcitak/dom",
            "direct": false,
            "version": "1.15.10",
            "ecosystem": "npm"
          },
          {
            "name": "@oozcitak/infra",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@oozcitak/url",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@oozcitak/util",
            "direct": false,
            "version": "8.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "@rtsao/scc",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/commons",
            "direct": false,
            "version": "1.8.6",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/fake-timers",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tootallnate/once",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node10",
            "direct": false,
            "version": "1.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node12",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node14",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node16",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__core",
            "direct": false,
            "version": "7.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__generator",
            "direct": false,
            "version": "7.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__template",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__traverse",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/graceful-fs",
            "direct": false,
            "version": "4.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/istanbul-lib-coverage",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/istanbul-lib-report",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/istanbul-reports",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/jest",
            "direct": false,
            "version": "27.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json5",
            "direct": false,
            "version": "0.0.29",
            "ecosystem": "npm"
          },
          {
            "name": "@types/minimist",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "18.19.130",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/normalize-package-data",
            "direct": false,
            "version": "2.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/prettier",
            "direct": false,
            "version": "2.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/stack-utils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yargs",
            "direct": false,
            "version": "16.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yargs-parser",
            "direct": false,
            "version": "21.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xmldom/xmldom",
            "direct": false,
            "version": "0.9.10",
            "ecosystem": "npm"
          },
          {
            "name": "abab",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "7.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-globals",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": false,
            "version": "8.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "add-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "anynum",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-buffer-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-ify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "array-includes",
            "direct": false,
            "version": "3.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "array-timsort",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.findlastindex",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flat",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flatmap",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "arraybuffer.prototype.slice",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "arrify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "astral-regex",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "async-function",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "asynckit",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "available-typed-arrays",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "aws-cdk-lib",
            "direct": false,
            "version": "2.160.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-jest",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-istanbul",
            "direct": false,
            "version": "6.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-jest-hoist",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "babel-preset-current-node-syntax",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-preset-jest",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browser-process-hrtime",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.7",
            "ecosystem": "npm"
          },
          {
            "name": "bs-logger",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "bser",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase-keys",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001806",
            "ecosystem": "npm"
          },
          {
            "name": "case",
            "direct": false,
            "version": "1.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "cdklabs-projen-project-types",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "char-regex",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "3.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "cjs-module-lexer",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clone",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "co",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "codemaker",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "collect-v8-coverage",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "combined-stream",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "comment-json",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "commit-and-tag-version",
            "direct": false,
            "version": "12.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "commonmark",
            "direct": false,
            "version": "0.31.2",
            "ecosystem": "npm"
          },
          {
            "name": "compare-func",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "concat-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "constructs",
            "direct": false,
            "version": "10.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "constructs",
            "direct": false,
            "version": "10.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-angular",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-atom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-codemirror",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-config-spec",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-conventionalcommits",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-core",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-ember",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-eslint",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-express",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-jquery",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-jshint",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-preset-loader",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-writer",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-commits-filter",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-commits-parser",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-recommended-bump",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "create-require",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "6.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "cssom",
            "direct": false,
            "version": "0.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "cssom",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "cssstyle",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dargs",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-buffer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-offset",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "date-format",
            "direct": false,
            "version": "4.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "dateformat",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "3.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "dedent",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-data-property",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "define-properties",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "delayed-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-newline",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-newline",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "diff-sequences",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "domexception",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dot-prop",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dotgitignore",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.396",
            "ecosystem": "npm"
          },
          {
            "name": "emittery",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract",
            "direct": false,
            "version": "1.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract-get",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-set-tostringtag",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-shim-unscopables",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-to-primitive",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escodegen",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "9.39.5",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": false,
            "version": "8.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-resolver-node",
            "direct": false,
            "version": "0.3.10",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-resolver-typescript",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-module-utils",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-import",
            "direct": false,
            "version": "2.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-prettier",
            "direct": false,
            "version": "4.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "execa",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "execa",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "exit",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "expect",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-diff",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-patch",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-builder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-parser",
            "direct": false,
            "version": "5.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fb-watchman",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "for-each",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "function.prototype.name",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "functions-have-names",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "generator-function",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-package-type",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-pkg-repo",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-symbol-description",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "git-raw-commits",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "git-remote-origin-url",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "git-semver-tags",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "gitconfiglocal",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globalthis",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "handlebars",
            "direct": false,
            "version": "4.7.9",
            "ecosystem": "npm"
          },
          {
            "name": "hard-rejection",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-bigints",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-own-prop",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-proto",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "2.8.9",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "human-signals",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "import-local",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "indent-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "internal-slot",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-array-buffer",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-async-function",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-bigint",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-boolean-object",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-callable",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-data-view",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-date-object",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-document.all",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-finalizationregistry",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-generator-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-generator-function",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-map",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-negative-zero",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number-object",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-obj",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-regex",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-set",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-shared-array-buffer",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-string",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-symbol",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-text-path",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-typed-array",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "is-typedarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-unsafe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakmap",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakset",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-instrument",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-source-maps",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jest",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-changed-files",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-circus",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-cli",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-config",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-diff",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-docblock",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-each",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-environment-jsdom",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-environment-node",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-get-type",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-haste-map",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-jasmine2",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-junit",
            "direct": false,
            "version": "16.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jest-leak-detector",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-matcher-utils",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-message-util",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-mock",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-pnp-resolver",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jest-regex-util",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-resolve",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-resolve-dependencies",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-runner",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-runtime",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-serializer",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-snapshot",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-util",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-validate",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-watcher",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-worker",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "16.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsii",
            "direct": false,
            "version": "5.9.48",
            "ecosystem": "npm"
          },
          {
            "name": "jsii-diff",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsii-docgen",
            "direct": false,
            "version": "10.12.4",
            "ecosystem": "npm"
          },
          {
            "name": "jsii-pacmak",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsii-reflect",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsii-rosetta",
            "direct": false,
            "version": "5.9.57",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-better-errors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stream-stringify",
            "direct": false,
            "version": "3.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "json-stringify-safe",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonparse",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "JSONStream",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "just-diff",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "just-diff-apply",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "kind-of",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "leven",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "load-json-file",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.ismatch",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.memoize",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.truncate",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "log4js",
            "direct": false,
            "version": "6.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "make-error",
            "direct": false,
            "version": "1.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "makeerror",
            "direct": false,
            "version": "1.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "map-obj",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "map-obj",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "meow",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "merge-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "min-indent",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minimist-options",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "modify-values",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "neo-async",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "nice-try",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "node-exports-info",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-int64",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.51",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-package-data",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-package-data",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-run-path",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "npm-run-path",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "nwsapi",
            "direct": false,
            "version": "2.2.24",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "object-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object.assign",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "object.entries",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "object.fromentries",
            "direct": false,
            "version": "2.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "object.groupby",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "object.values",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "oo-ascii-tree",
            "direct": false,
            "version": "1.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "own-keys",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "p-finally",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-conflict-json",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-expression-matcher",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-dir",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "possible-typed-array-names",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "prettier-linter-helpers",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-format",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "projen",
            "direct": false,
            "version": "0.98.6",
            "ecosystem": "npm"
          },
          {
            "name": "prompts",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "psl",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "querystringify",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "quick-lru",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-is",
            "direct": false,
            "version": "17.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg-up",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg-up",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "rechoir",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "redent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "reflect.getprototypeof",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "regexp.prototype.flags",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "repeat-string",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "requires-port",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.11",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.12",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "2.0.0-next.7",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-cwd",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve.exports",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-array-concat",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-push-apply",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-regex-test",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "semver-intersect",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-length",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-name",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-proto",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shelljs",
            "direct": false,
            "version": "0.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "shx",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "sisteransi",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sort-json",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-correct",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-exceptions",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-expression-parse",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-license-ids",
            "direct": false,
            "version": "3.0.23",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-license-list",
            "direct": false,
            "version": "6.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "split",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "split2",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stack-utils",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "stop-iteration-iterator",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-chain",
            "direct": false,
            "version": "2.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "stream-json",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "streamroller",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "string-length",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trim",
            "direct": false,
            "version": "1.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimend",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimstart",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-eof",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-final-newline",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-indent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "strnum",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-hyperlinks",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "table",
            "direct": false,
            "version": "6.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "terminal-link",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "test-exclude",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "text-extensions",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "throat",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "through2",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tmpl",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "4.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "trim-newlines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-jest",
            "direct": false,
            "version": "27.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "ts-node",
            "direct": false,
            "version": "10.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-detect",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-buffer",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-length",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-offset",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-length",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "typedarray",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "typedarray-to-buffer",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "4.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "uglify-js",
            "direct": false,
            "version": "3.19.3",
            "ecosystem": "npm"
          },
          {
            "name": "unbox-primitive",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "5.26.5",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "url-parse",
            "direct": false,
            "version": "1.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "8.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "v8-compile-cache-lib",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "v8-to-istanbul",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "validate-npm-package-license",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-hr-time",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "walker",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-encoding",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "8.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-boxed-primitive",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-builtin-type",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-collection",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.22",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wordwrap",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "workerpool",
            "direct": false,
            "version": "6.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "write-file-atomic",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "xml",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-naming",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlbuilder",
            "direct": false,
            "version": "15.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "xmlbuilder2",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "16.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "20.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yn",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 787,
        "direct_count": 0,
        "indirect_count": 787
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 5,
        "merged_prs": 489,
        "open_issues": 62,
        "closed_ratio": 0.672,
        "closed_issues": 127,
        "closed_unmerged_prs": 54
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "cdklabs-automation",
          "commits": 196,
          "avatar_url": "https://avatars.githubusercontent.com/u/90142015?v=4"
        },
        {
          "type": "User",
          "login": "voho",
          "commits": 46,
          "avatar_url": "https://avatars.githubusercontent.com/u/1161187?v=4"
        },
        {
          "type": "User",
          "login": "ayush987goyal",
          "commits": 8,
          "avatar_url": "https://avatars.githubusercontent.com/u/5697227?v=4"
        },
        {
          "type": "User",
          "login": "miloszwatroba",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/19204604?v=4"
        },
        {
          "type": "User",
          "login": "costmatt-amzn",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/211401892?v=4"
        },
        {
          "type": "User",
          "login": "edisongustavo",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/234595?v=4"
        },
        {
          "type": "User",
          "login": "Laxenade",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/7145271?v=4"
        },
        {
          "type": "User",
          "login": "arkon",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/4098258?v=4"
        },
        {
          "type": "User",
          "login": "mrgrain",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/379814?v=4"
        },
        {
          "type": "User",
          "login": "zqumei0",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/92476851?v=4"
        }
      ],
      "contributors_sampled": 57,
      "top_contributor_share": 0.583
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "auto-approve.yml",
        "auto-queue.yml",
        "build.yml",
        "pull-request-lint.yml",
        "release.yml",
        "retry-automerge.yml",
        "upgrade-cdklabs-projen-project-types-main.yml",
        "upgrade-dev-deps-main.yml",
        "upgrade-main.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [
        ".eslintrc.json"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "yarn.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 8,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 10,
            "reason": "all changesets reviewed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 6,
            "reason": "project has 2 contributing companies or organizations -- score normalized to 6",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 7,
            "reason": "SAST tool is not run on all commits -- score normalized to 7",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 5,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "16 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "a6050f6baa2dd990019823246078141d7c6e5536",
        "ran_at": "2026-07-27T17:13:07Z",
        "aggregate_score": 7,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": true,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-27T00:47:35Z",
      "oldest_open_prs": [
        {
          "number": 665,
          "created_at": "2025-09-04T15:26:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 691,
          "created_at": "2025-12-18T23:54:44Z",
          "last_comment_at": "2026-02-20T02:42:32Z",
          "last_comment_author": "giantcow"
        },
        {
          "number": 757,
          "created_at": "2026-07-23T23:05:00Z",
          "last_comment_at": "2026-07-25T03:01:24Z",
          "last_comment_author": "giantcow"
        },
        {
          "number": 758,
          "created_at": "2026-07-25T08:26:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 759,
          "created_at": "2026-07-25T23:14:18Z",
          "last_comment_at": "2026-07-26T07:11:01Z",
          "last_comment_author": "giantcow"
        }
      ],
      "last_merged_pr_at": "2026-07-27T00:37:11Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 21,
          "created_at": "2022-02-25T17:20:42Z",
          "last_comment_at": "2022-08-12T18:01:11Z",
          "last_comment_author": null
        },
        {
          "number": 25,
          "created_at": "2022-02-25T22:17:58Z",
          "last_comment_at": "2022-04-17T07:01:57Z",
          "last_comment_author": "ayush987goyal"
        },
        {
          "number": 41,
          "created_at": "2022-03-05T06:07:47Z",
          "last_comment_at": "2022-07-05T18:46:52Z",
          "last_comment_author": "RichiCoder1"
        },
        {
          "number": 44,
          "created_at": "2022-03-05T07:55:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 46,
          "created_at": "2022-03-05T08:08:13Z",
          "last_comment_at": "2025-04-16T20:23:18Z",
          "last_comment_author": "stocks29"
        },
        {
          "number": 50,
          "created_at": "2022-03-05T15:19:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 52,
          "created_at": "2022-03-05T15:26:12Z",
          "last_comment_at": "2023-07-07T18:44:12Z",
          "last_comment_author": "zqumei0"
        },
        {
          "number": 64,
          "created_at": "2022-03-08T21:02:32Z",
          "last_comment_at": "2022-07-15T19:09:09Z",
          "last_comment_author": null
        },
        {
          "number": 66,
          "created_at": "2022-03-08T21:13:16Z",
          "last_comment_at": "2022-09-07T21:41:37Z",
          "last_comment_author": "djdawson3"
        },
        {
          "number": 67,
          "created_at": "2022-03-08T21:20:22Z",
          "last_comment_at": "2023-03-20T14:10:29Z",
          "last_comment_author": null
        },
        {
          "number": 82,
          "created_at": "2022-03-23T20:02:22Z",
          "last_comment_at": "2022-03-24T08:01:53Z",
          "last_comment_author": "voho"
        },
        {
          "number": 90,
          "created_at": "2022-03-26T15:53:21Z",
          "last_comment_at": "2022-08-23T15:13:19Z",
          "last_comment_author": "voho"
        },
        {
          "number": 91,
          "created_at": "2022-03-27T19:56:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 120,
          "created_at": "2022-04-13T15:46:49Z",
          "last_comment_at": "2024-10-21T23:21:32Z",
          "last_comment_author": "mobob"
        },
        {
          "number": 170,
          "created_at": "2022-06-20T20:22:23Z",
          "last_comment_at": "2022-06-21T06:58:37Z",
          "last_comment_author": "voho"
        },
        {
          "number": 190,
          "created_at": "2022-07-06T15:36:04Z",
          "last_comment_at": "2022-07-07T12:27:18Z",
          "last_comment_author": "voho"
        },
        {
          "number": 193,
          "created_at": "2022-07-12T08:39:49Z",
          "last_comment_at": "2022-10-25T06:05:10Z",
          "last_comment_author": "jaco-smit"
        },
        {
          "number": 199,
          "created_at": "2022-07-20T15:17:18Z",
          "last_comment_at": "2022-08-23T15:12:12Z",
          "last_comment_author": "voho"
        },
        {
          "number": 237,
          "created_at": "2022-08-29T21:49:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 239,
          "created_at": "2022-09-06T17:23:06Z",
          "last_comment_at": "2022-09-13T11:49:05Z",
          "last_comment_author": "voho"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/cdklabs/cdk-monitoring-constructs",
    "host": "github.com",
    "name": "cdk-monitoring-constructs",
    "owner": "cdklabs"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 80,
      "inputs": {
        "security": 76,
        "vitality": 95,
        "community": 82,
        "governance": 70,
        "engineering": 76
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 95,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "commits_last_year": 72,
              "human_commit_share": 0.93,
              "days_since_last_push": 0,
              "active_weeks_last_year": 42
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "42/52 weeks with commits",
                "points": 29.1,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 42
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "72 commits in the last year",
                "points": 16.7,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 72
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v10.2.0",
              "releases_from_tags": false,
              "days_since_latest_release": 6,
              "mean_days_between_releases": 16.4
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~16.4 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 16.4
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 82,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "forks": 86,
              "stars": 552,
              "watchers": 23,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "552 stars",
                "points": 44.5,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 552
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "86 forks",
                "points": 16.1,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 86
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "23 watchers",
                "points": 7.5,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 23
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "excellent",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 91,
            "inputs": {
              "packages": [
                "cdk-monitoring-constructs"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 292223
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "292,223 downloads/month across npm",
                "points": 72.9,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 292223,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 70,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 38,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 57,
              "top_contributor_share": 0.583
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 58% of commits",
                "points": 9.4,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 58
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "57 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 57
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "merged_prs": 489,
              "open_issues": 62,
              "closed_issues": 127,
              "issue_closed_ratio": 0.672,
              "closed_unmerged_prs": 54
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "67% of issues closed",
                "points": 31.4,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 67
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "489/543 decided PRs merged",
                "points": 34.4,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 489,
                      "decided": 543
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "all changesets reviewed",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "followers": 431,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "cdklabs",
              "public_repos": 108,
              "account_age_days": 2065
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "431 followers of cdklabs",
                "points": 18.9,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 431,
                      "login": "cdklabs"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "108 public repos, account ~5 yr old",
                "points": 24.3,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 108
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 5
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "cdk-monitoring-constructs"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 6
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 6 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "312 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 312
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 76,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "9 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 9
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": ".eslintrc.json",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.json"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [
                "monitoring",
                "cdk",
                "cdk-constructs",
                "cdk-construct",
                "ops",
                "aws"
              ],
              "has_wiki": false,
              "homepage": "https://constructs.dev/packages/cdk-monitoring-constructs",
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://constructs.dev/packages/cdk-monitoring-constructs",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "6 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 76,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "good",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 70,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 7
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "all changesets reviewed",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "16 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 7",
                "points": 3.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 3.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "16 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 787 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 787
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 17,
              "affected_packages": 9,
              "assessed_packages": 787,
              "unassessed_packages": 0,
              "affected_by_severity": "high 5, moderate 3, low 1",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 787,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 4
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 58,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "93 of 93 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 93,
                      "sampled": 93
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "yarn.lock"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0.07
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".eslintrc.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "TypeScript (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "7 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 7,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 33758,
              "source_files_sampled": 304,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/304 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 304,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [],
              "has_mcp_signal": false,
              "api_schema_files": [
                "test/assets/schema.graphql"
              ]
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": "test/assets/schema.graphql",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "test/assets/schema.graphql"
                    }
                  }
                ],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-27T17:13:39.520982Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/cdklabs/cdk-monitoring-constructs.svg",
  "full_name": "cdklabs/cdk-monitoring-constructs",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v1.13.0, Schema v0.27.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte Statistikennpm.