chore: release package#1661
Merged
Merged
Conversation
9da38c0 to
c00eab0
Compare
c00eab0 to
1cfe0b7
Compare
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@adcp/sdk@6.19.1
Patch Changes
ca63b64: Bump AdCP pin to 3.0.11. Pulls in fix(compliance): collapse key_reuse_conflict into replay_same_payload phase (3.0.x) adcp#4365 (3.0.11 release): collapses the
key_reuse_conflictphase ofuniversal/idempotency.yamlintoreplay_same_payloadas a fourth step so the shared$generate:uuid_v4#replay_keyalias stays within a single phase. This is the companion storyboard restructure for the runner-side phase-boundary alias reset shipped in 6.20.0 (fix(runner): reset alias cache at phase boundaries (#1657) #1658 / closes storyboard runner: $generate:uuid_v4#alias persists across the two passes in a full-suite run, causing idempotency replay #1657): with the reset in place, a separate phase would mint a fresh UUID and the seller would treat the conflict step as a new request, masking the IDEMPOTENCY_CONFLICT assertion. No schema shape changes; regen diff is metadata only (adcp_version strings + entity-hydration source version comment).9ebb11f: fix(cli): make
--allow-httpwork end-to-end for local dev loopsTwo paths previously ignored
--allow-httpand broke connections tohttp://localhostagents:MCPOAuthProvider.validateResourceURLrejected non-HTTPS RFC 9728 resource URLs unconditionally (Server at http://localhost:.../mcp advertised non-HTTPS resource URL: http://...). The provider now accepts anallowHttpoption that lifts the HTTPS check, and the CLI threads--allow-httpthrough tocreateCLIOAuthProvider/ensureOAuthTokensForAlias.detectProtocolrefused to probehttp://agent cards because the probe policy readsADCP_ALLOW_INTERNAL_PROBESonce at module load (Failed to detect protocol: Refusing to fetch non-HTTPS URL: http://localhost:.../.well-known/agent.json). The CLI now sets that env var before any library require when--allow-httpis in argv, so the existing well-tested gate widens consistently.Default behavior is unchanged: HTTPS is required unless the caller explicitly opts in.
e1ca951: fix(diagnose-auth): downgrade H1 for spec-correct parent-path resource identifiers (diagnose-auth H1 ("Resource URL mismatch") fires on RFC-9728-correct parent-path resource identifiers #1666)
adcp diagnose-authH1 ("Resource URL mismatch between well-known and agent host") previously fired as[likely]whenever the PRMresourcedidn't string-equal the agent URL. Per RFC 9728 §2 + §3.2 theresourcevalue is the canonical resource identifier the AS binds tokens to (the RFC 9068 §3audclaim target), not the request URI — and RFC 8707 §2 allows any absolute URI with an optional path component. A parent-path resource identifier covering multiple endpoints is the canonical pattern, not a bug. H1 now distinguishes four cases:likely(real bug).ruled_outwith an explanation that this is the intended pattern (e.g. PRMresource=http://localhost:3000/figmafor an agent athttp://localhost:3000/figma/mcp).possiblewith non-prescriptive evidence (the AS may legitimately host multiple resource identifiers on the same origin; we can't tell without inspecting AS aud-binding policy).resourceis not a parseable URL (e.g. opaque URN) →possiblewith a pointer to RFC 8707 §2's absolute-URI requirement.Exact match continues to be
ruled_out. Surfaced during PR fix(cli): make --allow-http work end-to-end for local dev loops #1665 verification against a figma seller agent whose RFC-9728-compliant PRM was flagged as a likely issue.2bf4da5: fix: reset alias cache at phase boundaries in storyboard runner (storyboard runner: $generate:uuid_v4#alias persists across the two passes in a full-suite run, causing idempotency replay #1657)
$generate:uuid_v4#aliasplaceholders now produce fresh UUIDs at each phase boundary instead of leaking the same cached UUID across phases. Independent setup phases that share an alias name (e.g., two phases both using#setup) previously received the same UUID, causing sellers to return stale state from their idempotency cache on the second phase. The fix creates a new context object identity at each phase entry (after theshouldSkipPhaseskip), dropping the WeakMap-keyed alias cache while preserving all$context.*values as plain spread properties.94fc0e5: Fix(types): restore typed Zod for per-asset-type
*AssetRequirementsSchemaRegression in 6.19.0 (introduced by feat(types): tighten Format.assets typing + emit named slot unions/Zod schemas #1654): the 12
*AssetRequirementsSchemaexports (
ImageAssetRequirementsSchema,TextAssetRequirementsSchema, …) andthe parent
AssetRequirementsSchemaunion were emitted asz.any()stubs, andthe
requirementsfield on everyIndividual*AssetSchema/Group*AssetSchemaslot collapsed to
z.optional(z.any()). TypeScript types were unaffected.Root cause: feat(types): tighten Format.assets typing + emit named slot unions/Zod schemas #1654's codegen post-processor injects
import type { ImageAssetRequirements, … } from './core.generated';at the topof
tools.generated.tsso the file typechecks standalone. The Zod codegen stepconcatenates
core.generated.ts+tools.generated.tsand passes the combinedsource to
ts-to-zod, butts-to-zodstill parses the cross-fileimport typeblock and treats those names as external — emitting
z.any()stubs even thoughthe actual interfaces are present in the same source.
Fix: strip cross-file
import type { … } from './core.generated';declarationsfrom
tools.generated.tsbefore merging into the combined source. The typesare already inlined from
core.generated.ts, so the import is redundant.Restores field-level runtime validation on
Individual*AssetSchema.requirementsand re-exports the typed per-asset-type requirements schemas that consumers
like agentic-api had imported in 6.18. Added a regression test in
test/lib/zod-schemas.test.jsthat asserts the schemas reject wrong-typedfields (a
z.any()regression would silently accept them).