Releases: adcontextprotocol/salesagent
Releases · adcontextprotocol/salesagent
v0.8.0
0.8.0 (2026-01-14)
Features
- update to adcp 2.18.0 with new assets field support (6d19499)
- update to adcp 2.18.0 with new assets field support (4c94434)
Bug Fixes
- Accept Authorization: Bearer header for MCP authentication (#948) (a1ae3ff)
- Fix CI test failures and security vulnerabilities (f1e4c40)
- Improve onboarding experience and resolve first-run issues (#946) (e803e85)
- resolve mypy type errors for adcp 2.18.0 format assets (7d0a021)
- Update adcp to 2.18.0 for assets field support (9693fcc)
- Update adcp to 2.18.0 for assets field support (ebfb27d)
- update tests for adcp 2.18.0 compatibility (0a60085)
- update urllib3 and werkzeug to fix security vulnerabilities (9490db8)
- use dynamic adcp version in e2e tests instead of hardcoded 2.5.0 (ecee6f2)
Code Refactoring
- rename asset_req to asset_spec for clarity (f15c9ea)
Documentation
- clarify that repeatable groups were never supported in asset extraction (dbee49e)
v0.7.0
0.7.0 (2026-01-08)
Features
Bug Fixes
- a2a bugs with media buy and media buy delivery (c5325b9)
- a2a bugs with media buy and media buy delivery (ea98357)
- Add security audit to CI and upgrade fastmcp (#941) (ec592ed)
- Include empty pricing_options in serialization for anonymous users (#939) (4e57265)
- Set default role to admin for SSO auto-provisioned users (#937) (e64440c)
v0.6.0
0.6.0 (2026-01-05)
Features
- Add GAM placement targeting for creative-level targeting (adcp#208) (#915) (b2f9585)
- apply suggestions (362513f)
- apply suggestions (9b75990)
- improve e2e test for a2a push notification delivery v2 (f9008b9)
- Make SSO optional for multi-tenant deployments (#931) (8ac80a1)
- migrate push notification sending for media_buy (6fa4cda)
- undo unrelated changes (9a7e45f)
- update webhook delivery function to support both mcp and a2a payloads (7f41d98)
- update webhook delivery function to support both mcp and a2a payloads (27b2eaa)
- wip (0713543)
Bug Fixes
- adcp version; media buy status change; media buy delivery look up (41dd1dc)
- Add Fly.io header middleware for proper HTTPS detection (#920) (a115fc9)
- Add multi-admin domain support for cross-domain OAuth (#919) (f373ebb)
- Clear session before OAuth to prevent stale cookie conflicts (#924) (addab84)
- Correct middleware ordering for Fly.io header processing (#921) (c4d373d)
- e2e webhook delivery check (1599266)
- Explicitly save session on OAuth redirect to persist state cookie (#928) (e78ae67)
- Fix list_creatives enum serialization and invalid creative count (#930) (3d9c643)
- improve tests (676690b)
- integration test v2 (756d6d4)
- integrations (8050605)
- link validator check for cyclic bugs (91fe6f7)
- mypy failures (79de36d)
- Preserve tenant context on OAuth callback errors (#918) (c82760b)
- Preserve X-Forwarded-Proto from Fly.io through nginx (#922) (5eddd36)
- Prevent redirect loop for super admins accessing /admin/ (#929) (95d7cac)
- Restore deleted migration to fix Fly.io deploy (#914) (2cfbccc)
- Reuse unwrapped brand_manifest for policy checks (#932) (#935) (03ba408)
- Route multi-tenant subdomain requests to tenant-specific login (#916) (c0152db)
- Run database migrations automatically on docker compose up (#933) (c5c73a8)
- run_all_tests ci (3a1b1d2)
- Show full values in Pydantic extra_forbidden errors (#912) (165d985)
- Task and TaskStatusUpdate serializations (a8e7792)
- Use global OAuth as fallback, not setup mode for multi-tenant (#917) (ef63349)
Documentation
v0.5.0
0.5.0 (2026-01-01)
Features
- Add dynamic per-tenant OIDC/SSO authentication (#903) (ed05a41)
- Add format template picker UI for AdCP 2.5 parameterized formats (#782) (#882) (532657e)
- Add vidium MCP server to local configuration (#904) (ebcfdd1)
- Convert advertising channel from single to multi-select (#897) (a1aa8e4)
- Display sales agent version in agent card (#902) (663702b)
- Implement AI product ranking with simplified catalog (#906) (d59e76b)
- Simplify user authorization with User records as primary auth method (#907) (504b489)
Bug Fixes
- Simplify Docker Compose setup to fix mount errors (#910) (723b0b2)
- Single-tenant deployment and SSO configuration (#908) (e725781)
- src.core.format_spec_cache undefined (#901) (e3e701c)
- Update docs links and fix alembic migrations (#911) (e498a43)
- Use pull_request_target for PR title check on fork PRs (#909) (bb9817d)
Documentation
v0.4.1
v0.4.0
0.4.0 (2025-12-28)
Features
- Add GAM currency detection and Budget Controls integration (#887) (f7539e3)
- Consolidate Docker entrypoint to use Python directly (#880) (a12b19d)
- Default to production setup, make demo mode opt-in (#883) (580bcfe)
- Restrict currency selection to GAM-supported currencies (#890) (1076539)
Bug Fixes
Code Refactoring
Documentation
v0.3.0
v0.2.1
v0.2.0
0.2.0 (2025-12-24)
Features
- Improve Docker quickstart - ARM64 support, better docs, fail-fast validation (#859) (ba3f81a)
- Improve single-tenant mode UX and Docker quickstart (#868) (8559f8d)
- Pydantic AI multi-provider integration with admin UI (#860) (1ff0366)
- show access token directly in advertisers table (#867) (ceac7b0)
Bug Fixes
- enforce tenant human_review_required for media buy approval (#866) (92c562e)
- Fix/format ids type handling for the format_ids in the products table (#864) (bd65beb)
- Update release-please to use manifest mode (v4 config) (925a1b2)
Code Refactoring
Documentation
v0.1.0
0.1.0 (2025-12-20)
⚠ BREAKING CHANGES
- Media buy creation now FAILS when creatives are missing required fields (URL, dimensions) instead of silently skipping them.
Features
- Add AdCP 2.5 extension to A2A agent card (#783) (a979cb6)
- add auth_header and timeout columns to creative_agents table (#714) (64eecd8)
- add background scheduler to auto-transition media buy statuses based on flight dates (4af1343)
- add background scheduler to auto-transition media buy statuses based on flight dates (d6f8d78)
- Add brand manifest policy system for flexible product discovery (#663) (1c00e1d)
- Add brand manifest policy UI dropdown in Admin (#726) (55d2414)
- add commitizen for automated version management (#666) (4c49051)
- Add creative format size filtering with inventory-based suggestions (#690) (ced6466)
- add date range validation and testing for validation (9706fd1)
- Add hierarchical product picker with search and caching (#707) (6a6c23d)
- Add inventory profiles for reusable inventory configuration (#722) (ceb2363)
- Add manual delivery webhook trigger to admin UI (f91d55e)
- Add manual delivery webhook trigger to admin UI (e95d6f4)
- Add real-time custom targeting values endpoint and visual selector widget (#678) (ebd89b9)
- Add signals agent registry with unified MCP client (#621) (9a15431)
- alphabetize targeting keys/values and show display names (#687) (c6be06d)
- Auto-download AdCP schemas on workspace startup (#616) (94c3876)
- calculate clicks and ctr (ebe7d66)
- enforce strict AdCP v1 spec compliance for Creative model (BREAKING CHANGE) (#706) (ff1cbc4)
- improve product workflow - always show formats and descriptive targeting values (#688) (4530f25)
- Publish Docker images on release (#855) (47e88e3)
- refactor and add integration and e2e tests for delivery metrics webhooks (3df36de)
- refactor webhook deliveries (f1302ba)
- Remove Scope3 dependencies - make codebase vendor-neutral (#668) (de503bf)
- Simplify targeting selector to match existing UI patterns (#679) (ce76f8e)
- support application level context (#735) (ea6891d)
- Update budget handling to match AdCP v2.2.0 specification (#635) (0a9dd4a)
Bug Fixes
- 'Select All' buttons in Create Product page by fixing JS scope (5f5553a)
- 'Select All' buttons in Create Product page by fixing JS scope (6bcca14)
- Achieve 100% mypy compliance in src/ directory - 881 errors to 0 (#662) (d7f4711)
- ad unit format button, targeting selector crash, and service account auth (#723) (83bd497)
- AdCP responses now exclude None values in JSON serialization (#642) (c3fa69a)
- AdCP responses now properly omit null/empty optional fields (#638) (ab7c4cd)
- Add /admin prefix to OAuth redirect URI for nginx routing (#651) (a95a534)
- Add content hash verification to prevent meta file noise (#659) (20b0a16)
- add e2e tests for get_media_buy_delivery direct request (1263a81)
- Add logging + fix targeting browser sync button (#677) (bdf19cc)
- Add missing /api/tenant/<tenant_id>/products endpoint (9dc4bdc)
- Add missing activity feed and audit logs to manual approval path (#729) (114778c)
- Add missing adapter_type to SyncJob creation (fb0fb79)
- Add null safety checks for audience.type and audience.segment_type (#682) (b8e6e77)
- add pricing to delivery (78eab1e)
- Add timeout to discover_ad_units to prevent stuck syncs (56457ad)
- add type field to audience segments API for filtering (28302f2)
- add type field to audience segments API for filtering (474df9a)
- advertiser creation (4e9e32d)
- advertiser creation (d323477)
- apply type filter when fetching inventory by IDs ([3...