feat(datadog): add the Datadog v1 SDK (monitors + service level objectives) - #456
Draft
gwkline wants to merge 2 commits into
Draft
feat(datadog): add the Datadog v1 SDK (monitors + service level objectives)#456gwkline wants to merge 2 commits into
gwkline wants to merge 2 commits into
Conversation
…tives) New @distilled.cloud/datadog package generated from Datadog's official v1 OpenAPI description (sparse-checked-out submodule of DataDog/datadog-api-client-typescript), following the GitHub tag-bucketed pipeline. Tags are allowlisted — Monitors and Service Level Objectives to start — and grow as alchemy resources are brought up on them. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
gwkline
added a commit
to gwkline/alchemy
that referenced
this pull request
Aug 14, 2026
…tadog Replace the hand-rolled HTTP client with the generated Datadog SDK from distilled (alchemy-run/distilled#456): typed per-op error unions (catchTag("NotFound")), wire-verbatim request/response schemas, and the shared Credentials/protocol/retry machinery. Follows the Axiom provider shape exactly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Collaborator
|
What's the status here? What's left to be done @Mkassabov @gwkline ? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New
@distilled.cloud/datadogpackage generated from Datadog's official v1 OpenAPI description, covering the Monitors and Service Level Objectives services. Companion to alchemy-run/alchemy#1215, which buildsDatadog.Monitor/Datadog.ServiceLevelObjectivealchemy resources on these operations..generator/schemas/v1/openapi.yaml(~1.6 MB on disk;specs:fetchfollows the github package's recipe, README documents the sparse footgun).Bun.YAML, patch chain applied once to the full document, operations bucketed by primary tag, converted per-tag viaconvertOpenApiToSmithy. Tags are allowlisted (TAG_ALLOWLISTinscripts/convert.ts) so every generated operation has a live consumer; coverage grows tag-by-tag (Downtimes, Dashboards, Synthetics, …).makeRestProtocol—DD-API-KEY+ optionalDD-APPLICATION-KEYheaders, base URL from Credentials (regional sites viaDD_SITE/siteToApiBaseUrl),{ "errors": ["…"] }error envelope,UnknownDatadogErrorfallback.@distilled.cloud/datadog/monitors) and theServicesbarrel — no root spread, since each module defines its own per-status error classes.tsc -bgreen for both tsconfigs.Not yet exercised against the live Datadog API — the alchemy PR's lifecycle tests are skipIf-gated on
DD_API_KEY/DD_APP_KEY, which weren't available in this environment; first live runs may surface patch-worthy error typings.🤖 Generated with Claude Code