diff --git a/.changeset/afraid-bats-tie.md b/.changeset/afraid-bats-tie.md deleted file mode 100644 index fe58b8d3..00000000 --- a/.changeset/afraid-bats-tie.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix navbar auth display, session token refresh, and add self-serve org rename. diff --git a/.changeset/beige-glasses-remain.md b/.changeset/beige-glasses-remain.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/beige-glasses-remain.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/brown-baths-film.md b/.changeset/brown-baths-film.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/brown-baths-film.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/bumpy-ants-smash.md b/.changeset/bumpy-ants-smash.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/bumpy-ants-smash.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/chilly-colts-cross.md b/.changeset/chilly-colts-cross.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/chilly-colts-cross.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/chubby-rivers-swim.md b/.changeset/chubby-rivers-swim.md deleted file mode 100644 index 5554c59e..00000000 --- a/.changeset/chubby-rivers-swim.md +++ /dev/null @@ -1,36 +0,0 @@ ---- ---- - -Add registry infrastructure: authentication, billing, and testing. - -This PR adds the infrastructure needed for the AdCP registry but does not modify -the core protocol specification, schemas, or APIs. Changes include: - -**Authentication System:** -- WorkOS AuthKit integration for user authentication -- Session management with encrypted cookies -- Role-based access control middleware -- OAuth callback handling - -**Billing Integration:** -- Stripe billing integration for subscriptions -- Customer and subscription management -- Webhook handlers for subscription events -- Stripe Customer Portal and Pricing Table support - -**Database Schema:** -- Organizations table with billing fields -- Agreement management and audit logging -- PostgreSQL database integration - -**Testing Infrastructure:** -- Jest unit tests for billing and database code -- 92.3% coverage on Stripe client -- Comprehensive test suite for authentication flows - -**UI Pages:** -- Onboarding flow (/onboarding) -- Dashboard page (/dashboard) - -These changes are registry-specific infrastructure and do not affect the AdCP -protocol specification, versioning, or client/server compatibility. diff --git a/.changeset/clever-regions-kick.md b/.changeset/clever-regions-kick.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/clever-regions-kick.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/cozy-flowers-switch.md b/.changeset/cozy-flowers-switch.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/cozy-flowers-switch.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/cross-domain-auth-routing.md b/.changeset/cross-domain-auth-routing.md deleted file mode 100644 index 640a12b8..00000000 --- a/.changeset/cross-domain-auth-routing.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Infrastructure and styling changes for AAO website (no protocol changes). diff --git a/.changeset/curly-rabbits-drive.md b/.changeset/curly-rabbits-drive.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/curly-rabbits-drive.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/cyan-flowers-yawn.md b/.changeset/cyan-flowers-yawn.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/cyan-flowers-yawn.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/deep-peaches-obey.md b/.changeset/deep-peaches-obey.md deleted file mode 100644 index b13f841d..00000000 --- a/.changeset/deep-peaches-obey.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Add $schema declarations to error documentation examples for automated CI validation. Update CLAUDE.md with guidance for self-describing JSON examples. diff --git a/.changeset/deep-squids-dig.md b/.changeset/deep-squids-dig.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/deep-squids-dig.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/dirty-chicken-dress.md b/.changeset/dirty-chicken-dress.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/dirty-chicken-dress.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/empty-bees-make.md b/.changeset/empty-bees-make.md deleted file mode 100644 index a847a3fc..00000000 --- a/.changeset/empty-bees-make.md +++ /dev/null @@ -1,6 +0,0 @@ ---- ---- - -Enhanced 2.5.0 release messaging across documentation and homepage. - -Updated release notes, intro page info box, and homepage to consistently emphasize the "developer experience and API refinement" theme with clearer, more benefit-focused descriptions including the "5-10x faster" batch preview performance improvement. \ No newline at end of file diff --git a/.changeset/fancy-cloths-melt.md b/.changeset/fancy-cloths-melt.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/fancy-cloths-melt.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/five-years-attend.md b/.changeset/five-years-attend.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/five-years-attend.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/fix-agent-directory-visibility.md b/.changeset/fix-agent-directory-visibility.md deleted file mode 100644 index 5c7b2904..00000000 --- a/.changeset/fix-agent-directory-visibility.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix agent directory visibility - registered agents now appear immediately without approval diff --git a/.changeset/fix-agreement-version-sort.md b/.changeset/fix-agreement-version-sort.md deleted file mode 100644 index 251c573d..00000000 --- a/.changeset/fix-agreement-version-sort.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"adcontextprotocol": patch ---- - -Fix semantic version sorting for agreements. When multiple agreement versions share the same effective date, the system now correctly selects the highest version (e.g., 1.1.1 before 1.1). diff --git a/.changeset/fix-allof-additional-properties.md b/.changeset/fix-allof-additional-properties.md deleted file mode 100644 index 56112247..00000000 --- a/.changeset/fix-allof-additional-properties.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -"adcontextprotocol": patch ---- - -Fix JSON Schema validation failures when using allOf composition with additionalProperties: false. - -Schemas using `allOf` to compose with base schemas (dimensions.json, push-notification-config.json) were failing AJV validation because each sub-schema independently rejected the other's properties. - -**Fixed schemas:** -- `dimensions.json` - removed `additionalProperties: false` (composition-only schema) -- `push-notification-config.json` - removed `additionalProperties: false` (used via allOf in reporting_webhook) -- `video-asset.json` - inlined width/height properties, removed allOf -- `image-asset.json` - inlined width/height properties, removed allOf - -**Added:** -- New `test:composed` script to validate data against schemas using allOf composition -- Added to CI pipeline to prevent regression -- Bundled (dereferenced) schemas at `/schemas/{version}/bundled/` for tools that don't support $ref resolution - -Fixes #275. diff --git a/.changeset/fix-analytics-revenue.md b/.changeset/fix-analytics-revenue.md deleted file mode 100644 index 316481d3..00000000 --- a/.changeset/fix-analytics-revenue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"adcontextprotocol": patch ---- - -Fix analytics dashboard revenue tracking with Stripe webhook customer linkage diff --git a/.changeset/fix-analytics-zeroes.md b/.changeset/fix-analytics-zeroes.md deleted file mode 100644 index b52b6e6c..00000000 --- a/.changeset/fix-analytics-zeroes.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix analytics dashboard showing zeroes by syncing subscription data during backfill (internal admin change) diff --git a/.changeset/fix-auth-optional.md b/.changeset/fix-auth-optional.md deleted file mode 100644 index 5fdb6a35..00000000 --- a/.changeset/fix-auth-optional.md +++ /dev/null @@ -1,15 +0,0 @@ ---- ---- - -Fix server startup when authentication is not configured - -Make WorkOS authentication features optional to allow the server to start without authentication environment variables. This fixes deployment issues where DATABASE_URL is configured but authentication services (WorkOS, Stripe) are not yet set up. - -**Changes:** -- WorkOS client initialization is now conditional on having all required auth env vars -- Auth routes are only registered when authentication is properly configured -- Server logs clear warnings when auth features are disabled -- Authentication routes gracefully handle missing WorkOS client -- Fix ES module import error (require() → import statements) - -**Note:** This is an internal deployment fix with no API changes, hence no version bump. diff --git a/.changeset/fix-owner-email-display.md b/.changeset/fix-owner-email-display.md deleted file mode 100644 index c1af44ac..00000000 --- a/.changeset/fix-owner-email-display.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix owner email showing as "Unknown" on admin members page. The WorkOS API doesn't populate the user object on memberships by default, so we now explicitly fetch user details via getUser() to retrieve the email. diff --git a/.changeset/fix-sticky-nav.md b/.changeset/fix-sticky-nav.md deleted file mode 100644 index 14b6ed77..00000000 --- a/.changeset/fix-sticky-nav.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix sticky navigation across homepage, registry, and AdAgents pages. This is a UI-only fix with no API or schema changes. diff --git a/.changeset/four-planets-grin.md b/.changeset/four-planets-grin.md deleted file mode 100644 index 24374df4..00000000 --- a/.changeset/four-planets-grin.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Update dependencies to fix npm audit vulnerabilities, remove unused packages (react, react-dom, zod), and update security docs to use Go example for custom implementations. diff --git a/.changeset/free-oranges-crash.md b/.changeset/free-oranges-crash.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/free-oranges-crash.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/free-pandas-cheer.md b/.changeset/free-pandas-cheer.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/free-pandas-cheer.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/fresh-cloths-sip.md b/.changeset/fresh-cloths-sip.md deleted file mode 100644 index 3d3575ef..00000000 --- a/.changeset/fresh-cloths-sip.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Documentation improvements for list_authorized_properties endpoint. Added response examples and testing for all code snippets. Updated conductor.json setup script to include Python SDK installation. Fixed TypeScript imports for @adcp/client v3.2.1 compatibility. \ No newline at end of file diff --git a/.changeset/fuzzy-stars-admire.md b/.changeset/fuzzy-stars-admire.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/fuzzy-stars-admire.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/gentle-corners-report.md b/.changeset/gentle-corners-report.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/gentle-corners-report.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/good-ghosts-dream.md b/.changeset/good-ghosts-dream.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/good-ghosts-dream.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/huge-vans-unite.md b/.changeset/huge-vans-unite.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/huge-vans-unite.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/hungry-items-mix.md b/.changeset/hungry-items-mix.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/hungry-items-mix.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/icy-ends-behave.md b/.changeset/icy-ends-behave.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/icy-ends-behave.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/kind-friends-teach.md b/.changeset/kind-friends-teach.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/kind-friends-teach.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/legal-jokes-wink.md b/.changeset/legal-jokes-wink.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/legal-jokes-wink.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/light-impalas-cough.md b/.changeset/light-impalas-cough.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/light-impalas-cough.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/major-lies-listen.md b/.changeset/major-lies-listen.md deleted file mode 100644 index 42c7c7ce..00000000 --- a/.changeset/major-lies-listen.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Build tooling change: Schema versioning now preserves released versions and only rebuilds latest/ during development. diff --git a/.changeset/member-profiles.md b/.changeset/member-profiles.md deleted file mode 100644 index 4c5ee982..00000000 --- a/.changeset/member-profiles.md +++ /dev/null @@ -1,10 +0,0 @@ ---- ---- - -Add member profiles with agent discovery and rich agent cards - -- Agent cards now display agent type (Creative Agent, Sales Agent, Signals Agent) -- Show type-specific stats: formats for creative agents, products/publishers for sales agents -- Display both MCP and A2A protocol badges when agents support both -- Shared agent card component ensures consistency across edit profile, member detail, and member directory pages -- Default MEMBERSHIP_ENABLED to false for production safety diff --git a/.changeset/neat-coins-shake.md b/.changeset/neat-coins-shake.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/neat-coins-shake.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/old-coins-rest.md b/.changeset/old-coins-rest.md deleted file mode 100644 index 5043c6b2..00000000 --- a/.changeset/old-coins-rest.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Fix agreement dialog dismiss button not working in read-only view mode. diff --git a/.changeset/prepare-for-next-release.md b/.changeset/prepare-for-next-release.md deleted file mode 100644 index 55bc1028..00000000 --- a/.changeset/prepare-for-next-release.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -This changeset marks the completion of v2.5.0 documentation updates and prepares the repository for future development. diff --git a/.changeset/pretty-bats-show.md b/.changeset/pretty-bats-show.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/pretty-bats-show.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/proud-coats-stand.md b/.changeset/proud-coats-stand.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/proud-coats-stand.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/rajeev-goel-interview.md b/.changeset/rajeev-goel-interview.md deleted file mode 100644 index aefe1959..00000000 --- a/.changeset/rajeev-goel-interview.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Add Rajeev Goel interview link to AAO insights page. diff --git a/.changeset/rare-canyons-shake.md b/.changeset/rare-canyons-shake.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/rare-canyons-shake.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/real-seals-spend.md b/.changeset/real-seals-spend.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/real-seals-spend.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/refactor-push-notification-config.md b/.changeset/refactor-push-notification-config.md deleted file mode 100644 index 2dc407fc..00000000 --- a/.changeset/refactor-push-notification-config.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -"adcontextprotocol": patch ---- - -Redesign how AdCP handles push notifications for async tasks. The key change is separating **what data is sent** (AdCP's responsibility) from **how it's delivered** (protocol's responsibility). - -**Renamed:** - -- `webhook-payload.json` → `mcp-webhook-payload.json` (clarifies this envelope is MCP-specific) - -**Created:** - -- `async-response-data.json` - Union schema for all async response data types -- Status-specific schemas for `working`, `input-required`, and `submitted` statuses - -**Deleted:** - -- Removed redundant `-async-response-completed.json` and `-async-response-failed.json` files (6 total) -- For `completed`/`failed`, we now use the existing task response schemas directly - -**Before:** The webhook spec tried to be universal, which created confusion about how A2A's native push notifications fit in. - -**After:** - -- MCP uses `mcp-webhook-payload.json` as its envelope, with AdCP data in `result` -- A2A uses its native `Task`/`TaskStatusUpdateEvent` messages, with AdCP data in `status.message.parts[].data` -- Both use the **exact same data schemas** - only the envelope differs - -This makes it clear that AdCP only specifies the data layer, while each protocol handles delivery in its own way. - -**Schemas:** - -- `static/schemas/source/core/mcp-webhook-payload.json` (renamed + simplified) -- `static/schemas/source/core/async-response-data.json` (new) -- `static/schemas/source/media-buy/*-async-response-*.json` (6 deleted, 9 remain) - -- Clarified that both MCP and A2A use HTTP webhooks (A2A's is native to the spec, MCP's is AdCP-provided) -- Fixed webhook trigger rules: webhooks fire for **all status changes** if `pushNotificationConfig` is provided and the task runs async -- Added proper A2A webhook payload examples (`Task` vs `TaskStatusUpdateEvent`) -- **Task Management** added to sidebar, it was missing diff --git a/.changeset/registry-database-only.md b/.changeset/registry-database-only.md deleted file mode 100644 index e74e55d2..00000000 --- a/.changeset/registry-database-only.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Simplify registry to database-only by removing file-based fallback. Production already uses the database (PR #254), so this change removes unused code and simplifies the architecture. Internal refactoring with no API or schema changes. diff --git a/.changeset/shaggy-pears-boil.md b/.changeset/shaggy-pears-boil.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/shaggy-pears-boil.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/shaggy-tips-hope.md b/.changeset/shaggy-tips-hope.md deleted file mode 100644 index e9fffff4..00000000 --- a/.changeset/shaggy-tips-hope.md +++ /dev/null @@ -1,21 +0,0 @@ ---- ---- - -Add database-backed registry for partner onboarding framework. - -Introduces UnifiedRegistry that transparently supports both file-based and PostgreSQL-backed agent/partner data storage. The system uses fail-fast initialization - if database configuration is provided but connection fails, the system will not fall back to file mode. - -**New features:** -- Database schema with migrations for agents, partners, and authorization entries -- UnifiedRegistry abstraction providing consistent interface across storage backends -- CLI tools for database migration and management -- SSL/TLS configuration via DATABASE_SSL environment variables -- property_ids support for scoping agent authorization to specific properties - -**Implementation notes:** -- Database mode is opt-in via DATABASE_URL environment variable -- Schema supports 'agent' and 'partner' entry types -- Migrations tracked in schema_migrations table -- All existing file-based registry tests continue to pass - -This is an infrastructure change that does not affect the AdCP protocol specification or public APIs. diff --git a/.changeset/sharp-dogs-double.md b/.changeset/sharp-dogs-double.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/sharp-dogs-double.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/shy-oranges-worry.md b/.changeset/shy-oranges-worry.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/shy-oranges-worry.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/sour-ears-press.md b/.changeset/sour-ears-press.md deleted file mode 100644 index 5ade94fe..00000000 --- a/.changeset/sour-ears-press.md +++ /dev/null @@ -1,10 +0,0 @@ ---- ---- - -Improve documentations. Specfically: - -- Clarify that completed/failed statuses use Task object with data in .artifacts -- Clarify that interim statuses (working, input-required) use TaskStatusUpdateEvent with data in status.message.parts -- Add best practice guidance for URL-based routing (task_type and operation_id in URL) -- Deprecate task_type and operation_id fields in webhook payload (backward compatible) -- Update webhook handler examples to use URL parameters - Consistent guidance across both MCP and A2A protocols diff --git a/.changeset/sparkly-ideas-win.md b/.changeset/sparkly-ideas-win.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/sparkly-ideas-win.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/spotty-hotels-notice.md b/.changeset/spotty-hotels-notice.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/spotty-hotels-notice.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/stale-plums-sneeze.md b/.changeset/stale-plums-sneeze.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/stale-plums-sneeze.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/sweet-grapes-occur.md b/.changeset/sweet-grapes-occur.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/sweet-grapes-occur.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tame-cows-rescue.md b/.changeset/tame-cows-rescue.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tame-cows-rescue.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tangy-ravens-type.md b/.changeset/tangy-ravens-type.md deleted file mode 100644 index 282e9012..00000000 --- a/.changeset/tangy-ravens-type.md +++ /dev/null @@ -1,8 +0,0 @@ ---- ---- - -Fix inconsistency in `url_type` enum documentation in asset-types.mdx to match schema - -- Changed `tracker` to `impression_tracker` to match the schema enum value -- Added missing `video_tracker` and `landing_page` enum values to documentation -- Documentation now correctly lists all four `url_type` values: `clickthrough`, `impression_tracker`, `video_tracker`, `landing_page` diff --git a/.changeset/tasty-breads-tap.md b/.changeset/tasty-breads-tap.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tasty-breads-tap.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tasty-candies-run.md b/.changeset/tasty-candies-run.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tasty-candies-run.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/team-membership-security.md b/.changeset/team-membership-security.md deleted file mode 100644 index 8fa6bbbd..00000000 --- a/.changeset/team-membership-security.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Registry server updates: team membership features and security hardening. diff --git a/.changeset/ten-candles-ask.md b/.changeset/ten-candles-ask.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/ten-candles-ask.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tender-pans-wear.md b/.changeset/tender-pans-wear.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tender-pans-wear.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/thick-schools-repeat.md b/.changeset/thick-schools-repeat.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/thick-schools-repeat.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/three-jokes-raise.md b/.changeset/three-jokes-raise.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/three-jokes-raise.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tiny-signs-win.md b/.changeset/tiny-signs-win.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tiny-signs-win.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tos-checkbox-onboarding.md b/.changeset/tos-checkbox-onboarding.md deleted file mode 100644 index f1992e68..00000000 --- a/.changeset/tos-checkbox-onboarding.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Add Terms of Service checkbox to onboarding forms (registry UI change, no protocol impact). diff --git a/.changeset/tough-buttons-wear.md b/.changeset/tough-buttons-wear.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tough-buttons-wear.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tough-pots-obey.md b/.changeset/tough-pots-obey.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tough-pots-obey.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/tough-suits-jog.md b/.changeset/tough-suits-jog.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/tough-suits-jog.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/twelve-teams-laugh.md b/.changeset/twelve-teams-laugh.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/twelve-teams-laugh.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/warm-radios-relate.md b/.changeset/warm-radios-relate.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/warm-radios-relate.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/witty-mice-attack.md b/.changeset/witty-mice-attack.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/witty-mice-attack.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/witty-papayas-cover.md b/.changeset/witty-papayas-cover.md deleted file mode 100644 index a845151c..00000000 --- a/.changeset/witty-papayas-cover.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.changeset/workspace-full-name.md b/.changeset/workspace-full-name.md deleted file mode 100644 index 4e346f3d..00000000 --- a/.changeset/workspace-full-name.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -Use full name (first + last) for personal workspace display names to differentiate users with the same first name. diff --git a/CHANGELOG.md b/CHANGELOG.md index 13952e51..b491ccf6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,67 @@ # Changelog +## 2.5.1 + +### Patch Changes + +- 72a5802: Fix semantic version sorting for agreements. When multiple agreement versions share the same effective date, the system now correctly selects the highest version (e.g., 1.1.1 before 1.1). +- 935eb43: Fix JSON Schema validation failures when using allOf composition with additionalProperties: false. + + Schemas using `allOf` to compose with base schemas (dimensions.json, push-notification-config.json) were failing AJV validation because each sub-schema independently rejected the other's properties. + + **Fixed schemas:** + + - `dimensions.json` - removed `additionalProperties: false` (composition-only schema) + - `push-notification-config.json` - removed `additionalProperties: false` (used via allOf in reporting_webhook) + - `video-asset.json` - inlined width/height properties, removed allOf + - `image-asset.json` - inlined width/height properties, removed allOf + + **Added:** + + - New `test:composed` script to validate data against schemas using allOf composition + - Added to CI pipeline to prevent regression + - Bundled (dereferenced) schemas at `/schemas/{version}/bundled/` for tools that don't support $ref resolution + + Fixes #275. + +- 10d5b6a: Fix analytics dashboard revenue tracking with Stripe webhook customer linkage +- 64b08a1: Redesign how AdCP handles push notifications for async tasks. The key change is separating **what data is sent** (AdCP's responsibility) from **how it's delivered** (protocol's responsibility). + + **Renamed:** + + - `webhook-payload.json` → `mcp-webhook-payload.json` (clarifies this envelope is MCP-specific) + + **Created:** + + - `async-response-data.json` - Union schema for all async response data types + - Status-specific schemas for `working`, `input-required`, and `submitted` statuses + + **Deleted:** + + - Removed redundant `-async-response-completed.json` and `-async-response-failed.json` files (6 total) + - For `completed`/`failed`, we now use the existing task response schemas directly + + **Before:** The webhook spec tried to be universal, which created confusion about how A2A's native push notifications fit in. + + **After:** + + - MCP uses `mcp-webhook-payload.json` as its envelope, with AdCP data in `result` + - A2A uses its native `Task`/`TaskStatusUpdateEvent` messages, with AdCP data in `status.message.parts[].data` + - Both use the **exact same data schemas** - only the envelope differs + + This makes it clear that AdCP only specifies the data layer, while each protocol handles delivery in its own way. + + **Schemas:** + + - `static/schemas/source/core/mcp-webhook-payload.json` (renamed + simplified) + - `static/schemas/source/core/async-response-data.json` (new) + - `static/schemas/source/media-buy/*-async-response-*.json` (6 deleted, 9 remain) + + - Clarified that both MCP and A2A use HTTP webhooks (A2A's is native to the spec, MCP's is AdCP-provided) + - Fixed webhook trigger rules: webhooks fire for **all status changes** if `pushNotificationConfig` is provided and the task runs async + - Added proper A2A webhook payload examples (`Task` vs `TaskStatusUpdateEvent`) + - **Task Management** added to sidebar, it was missing + ## 2.5.0 ### Minor Changes diff --git a/package.json b/package.json index d4bb7dca..2b289d9b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "adcontextprotocol", - "version": "2.5.0", + "version": "2.5.1", "private": true, "scripts": { "start": "bash -c 'source <(grep CONDUCTOR_PORT .env.local | sed \"s/^/export /\") && DOTENV_CONFIG_PATH=.env.local PORT=${CONDUCTOR_PORT:-3000} tsx watch server/src/index.ts'", diff --git a/static/schemas/source/index.json b/static/schemas/source/index.json index 641737e5..2056c90c 100644 --- a/static/schemas/source/index.json +++ b/static/schemas/source/index.json @@ -4,7 +4,7 @@ "title": "AdCP Schema Registry v1", "version": "1.0.0", "description": "Registry of all AdCP JSON schemas for validation and discovery", - "adcp_version": "2.5.0", + "adcp_version": "2.5.1", "standard_formats_version": "2.0.0", "versioning": { "note": "AdCP uses path-based versioning. The schema URL path (/schemas/) indicates the version. Individual request/response schemas do NOT include adcp_version fields. Compatibility follows semantic versioning rules."