Skip to content

Releases: cesteral/mcp-open-advertising

contract-v2.0.0 (contract libraries)

Choose a tag to compare

@github-actions github-actions released this 03 Aug 08:06
712c1de

What's Changed

  • docs: fix stale tool counts and inaccurate references in root docs by @cesteral in #119
  • fix: fail-fast when a tool's account-scoping param is ignored (P1) by @cesteral in #121
  • docs: correct search-tool server list + document cross-server naming variants by @cesteral in #122
  • docs(meta): fix misleading get_available_metrics level example by @cesteral in #123
  • docs(meta,gads): honest client-side wording for get_pacing_status by @cesteral in #124
  • docs: document gads_bulk_mutate in cross-server naming variants by @cesteral in #125
  • feat(mcp): fail-fast create-payload validation on the execute path by @cesteral in #127
  • fix(ttd,linkedin): drop required-but-unused params from two tools by @cesteral in #129
  • feat(meta): paginate meta_search_targeting via the after cursor by @cesteral in #130
  • refactor(pinterest,ttd,dbm): align tool file names with wire names by @cesteral in #126
  • feat(mcp): paginate the account-listing tools (pinterest/snapchat/amazon-dsp) by @cesteral in #128
  • refactor(sa360)!: rename sa360_search → sa360_gaql_search by @cesteral in #134
  • fix(msads): register the env-gated conformance tools like every server by @cesteral in #135
  • feat(mcp): add duplicate_entity to snapchat, ttd, msads, gads by @cesteral in #131
  • feat(msads): honest search_targeting + add msads_get_targeting_options by @cesteral in #132
  • feat(gads): add gads_upload_image (image asset upload) by @cesteral in #133
  • fix: unbreak main — README tool counts + pinterest test import + msads flaky-timeout by @cesteral in #136
  • test: raise timeout on remaining pagination-conformance cold-import cases by @cesteral in #138
  • fix(write): validate update_entity payloads on the execute path (M3) by @cesteral in #139
  • fix(audit): thread reason into effect summary / audit log on dv360+ttd writes (M1, M2) by @cesteral in #140
  • fix(write): validate bulk-create payloads on the execute path (M4) by @cesteral in #141
  • refactor(structural): align snapchat file name to wire name + hoist dbm tool name (M10, M11) by @cesteral in #142
  • fix(dv360): schema-validate bulk-create dry-run + validate-entity advertiserId; document cm360 gaps (M5, M6, M7, M9) by @cesteral in #143
  • fix(validate): thread tiktok advertiserId + ttd entityId into validation (M6) by @cesteral in #144
  • fix(msads): decompress ZIP report bodies and strip quoted metadata rows by @cesteral in #147
  • feat(gads): add gads_upload_video; document ttd/amazon-dsp upload gaps (#145) by @cesteral in #148
  • feat(pacing): port get_pacing_status to the 9 remaining platforms (M12) by @cesteral in #150
  • feat(ttd,amazon-dsp): add upload_video — close the remaining #145 gaps by @cesteral in #149
  • fix(dv360): guard update dry-run for out-of-scope kinds; reject read-only types in create/update by @cesteral in #151
  • fix(shared): close the auth/session/log findings from the shared-layer security review by @cesteral in #152
  • shared: transport-factory auth integration tests + pin JWT verification to HS256 by @cesteral in #153
  • harden(shared): constant-time fingerprint compare, tighter session-id validation, truncated fp logs by @cesteral in #154
  • test(contract-hash): pin per-decision cross-repo definitionHash golden vectors by @cesteral in #155
  • harden: external-write-rail safety — method-aware retry (C3), jti fail-closed posture (P3), DV360 dry-run fidelity (P4) by @cesteral in #156
  • fix(contract-hash)!: SECURITY — canonicalization dropped own proto keys (definitionHash collision → attested bypass) by @cesteral in #157
  • harden(contract-schema): enforce write-promise fields in the runtime annotation schema (C5) by @cesteral in #158
  • harden(security): scope report-csv:// resource listing to the calling session by @cesteral in #159
  • C2 (#742) S1 producer: advertise Cloud Run deployment identity on server-card by @cesteral in #160
  • feat(linkedin): offset pagination for linkedin_search_targeting (#146) by @cesteral in #161
  • docs(contract): document gads_gaql_search as the intended targeting-discovery path (#146) by @cesteral in #162
  • docs: note remaining servers lacking a targeting-discovery tool (#146 follow-up to #162) by @cesteral in #163
  • feat(targeting): canonical pagination for linkedin/snapchat get_targeting_options (#146) by @cesteral in #164
  • fix(governance): harden decision-token verify (jti-store errors, mode conflicts, TTL/boundary) by @cesteral in #168
  • Release guard: workspace contract-hash must match the published tarball (F7) by @cesteral in #169
  • Governance hardening sweep — MCP auth, session capacity, destructive-write defaults by @cesteral in #170
  • Release the contract-library fixes: bump to 2.0.0, and make the parity guard able to see them by @cesteral in #172
  • fix(ci): stop style-gating generated code, which turned main red by @cesteral in #173
  • Two recurrence guards for the contract libraries: version-bump at PR time, schema parity at release by @cesteral in #174
  • feat(governance): wire the distributed jti store, and check the posture at boot (#166, #167) by @cesteral in #178
  • fix(dv360): make schema codegen reproducible, and actually run it (#175) by @cesteral in #176
  • feat(release): give the contract libraries their own release lane (#165, #171) by @cesteral in #177
  • docs(runbook): dev fleet LB recovery, and what is NOT broken about it by @cesteral in #179
  • fix(release): stop the contracts-only lane demanding a tool it never uses by @cesteral in #180

Full Changelog: v1.9.0...contract-v2.0.0

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 06:56
fa7c40d

What's Changed

  • chore(release): bump @cesteral/dv360-mcp 1.3.0 -> 1.4.0 (publish #114 v4 descriptions) by @cesteral in #118

Full Changelog: v1.8.0...v1.9.0

v1.8.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 22:01
6114ba8

What's Changed

  • feat(governance): drop forced-off override for effect-class writes (Phase 3) by @cesteral in #112
  • test(scripts): guard that every effect-class write lands in the release manifest by @cesteral in #113
  • fix(dv360): implement DV360 v4 two-step custom bidding script/rules upload by @cesteral in #114
  • chore(cleanup): SessionManager cleanup-failure telemetry + stale dv360 doc note by @cesteral in #115
  • contract-hash: document cross-repo version-coordination contract (F2) by @cesteral in #116
  • contract-schema: export cross-repo annotation parity vector (F1) by @cesteral in #117

Full Changelog: v1.7.0...v1.8.0

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 18 Jun 09:44
c804069

What's Changed

  • test(governance): make the #104 regression guards effective (#95, #102) by @cesteral in #110
  • feat(contract-hash): single-source the cross-repo definitionHash golden vector (#94) by @cesteral in #111

Full Changelog: v1.6.1...v1.7.0

v1.6.1

Choose a tag to compare

@github-actions github-actions released this 18 Jun 09:00

What's Changed

  • terraform: decision-token secret wiring, per-contract enforce staging, API enablement by @cesteral in #82
  • deploy: first-apply hardening + first-deploy checklist by @cesteral in #83
  • feat(terraform): fleet-side invoker grant (governance-invoker SA) + dev tfvars gitignore fix by @cesteral in #84
  • deploy: first Cloud Run rollout of the MCP fleet + the bugs it shook out by @cesteral in #85
  • fix(init): grant Cloud Build builder role to the Compute Engine default SA by @cesteral in #86
  • feat(terraform): fleet load balancer — one custom domain for all 13 servers by @cesteral in #87
  • Lock cross-repo attestation hash parity + release-workflow pin by @cesteral in #88
  • docs: document governance wiring in new-server onboarding guide by @cesteral in #89
  • docs: correct CLAUDE.md contract-package and SA360 references by @cesteral in #90
  • ci(publish): guard against a governed package shipping no attestation manifest by @cesteral in #91
  • harden(contract-hash): route computeDefinitionHash through stableStringify guard by @cesteral in #92
  • refactor(contract-hash): route computeDefinitionHash through stableStringify by @cesteral in #93
  • docs(changelog): ready @cesteral/contract-hash 1.1.1 for release by @cesteral in #98
  • docs(contract): clarify schemaVersion number→string boundary in manifest builder by @cesteral in #96
  • Validate cesteral annotation at manifest time; exempt create from entityIdArgs by @cesteral in #99
  • Pin base image by digest and gate prod deploys by @cesteral in #100
  • fix(governance): fail closed for effect-class writes + surface fail-open default + tighten entity dry-run type (#101, #102, #95) by @cesteral in #104
  • fix(meta-mcp): align bulk_update_status cesteral.platform to "meta_ads" by @cesteral in #106
  • test(scripts): add write-tool mislabel ratchet to detect mutation-named non-writes (#107) by @cesteral in #108
  • test(governance): behavior-derived write detection for the coverage ratchet (#107) by @cesteral in #109

Full Changelog: v1.6.0...v1.6.1

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 10 Jun 15:10
2128234

What's Changed

  • fix(dv360): drop campaign/IO assigned targeting removed from the v4 API by @cesteral in #79
  • chore(deps): migrate pnpm 8.15.0 → 10.34.1 (catalogs, build-script allowlist, lockfile v9) by @cesteral in #78
  • dv360-mcp: align hand-written guidance with DV360 API v4 requirements by @cesteral in #80
  • feat(publish): single-step pnpm publish --provenance + fleet version bumps for the governed-write fixture release by @cesteral in #81

Full Changelog: v1.5.2...v1.6.0

v1.5.2

Choose a tag to compare

@github-actions github-actions released this 10 Jun 09:42
0e52f4b

What's Changed

  • ci(publish): guard attestation manifest presence in governed tarballs by @cesteral in #76
  • fix(contract-schema): portable across module systems and zod majors (v1.1.0) by @cesteral in #77

Full Changelog: v1.5.1...v1.5.2

v1.5.1

Choose a tag to compare

@github-actions github-actions released this 10 Jun 08:01
21c8b35

What's Changed

  • Governance: decision-token verification + write-contract foundations (PR 1) by @cesteral in #43
  • Governance PR2: warn-enrollment enablement + write-coverage ratchet + first delete contract by @cesteral in #44
  • Governance: delete-family contract batch (dv360 + linkedin) by @cesteral in #45
  • Governance: govern gads_remove_entity + delete-family roadmap finding by @cesteral in #46
  • Governance: delete-entity testkit fixtures + release-gate coverage (meta/dv360/linkedin) by @cesteral in #47
  • Governance: create_entity template + meta/gads/linkedin contracts by @cesteral in #48
  • docs(readme): document matured server capabilities by @cesteral in #49
  • docs(readme): trim redundant positioning sections by @cesteral in #50
  • feat(governance): govern create_entity across the remaining 8 platforms by @cesteral in #51
  • fix(governance): out-of-scope delete/remove dry_run must not throw by @cesteral in #52
  • feat(governance): govern duplicate_entity across all 6 platforms by @cesteral in #53
  • docs(governance-plan): record create/delete/duplicate rollout status + open items by @cesteral in #54
  • feat(governance): effect-class write contract (Template B) — meta_adjust_bids reference by @cesteral in #55
  • feat(governance): effect-class write contract for submit_report (9 platforms) by @cesteral in #56
  • feat(governance): effect-class write contract for media uploads (11 tools) by @cesteral in #57
  • test(governance): enforce contractId == slug.toolSlug.vN invariant in CI by @cesteral in #58
  • feat(governance): effect-class write contract for report-schedule CRUD (7 tools) by @cesteral in #59
  • feat(governance): bulk_update_entities effect write contract (10 platforms) by @cesteral in #62
  • feat(governance): bulk_update_status + gads_bulk_mutate effect write contract (12 tools) by @cesteral in #63
  • feat(governance): effect-class write contract for SA360 conversions + TTD report-template/execution (8 tools) by @cesteral in #61
  • feat(governance): effect-class write contract for bulk_create_entities (11 tools) by @cesteral in #60
  • feat(governance): effect-class write contract for bulk delete_entity (5 platforms) by @cesteral in #64
  • feat(governance): entity/effect write contract for single delete_entity (ttd, cm360) by @cesteral in #65
  • fix(governance): honest partial-delete effects + ttd reconciliation argMap by @cesteral in #66
  • feat(governance): self-contained readPartner.argMap fleet-wide + release gate (Risk #6) by @cesteral in #67
  • feat(governance): effect-class write contract for the TTD long tail (8 tools) by @cesteral in #68
  • feat(governance): effect-class write contract for the DV360 long tail (5 tools) by @cesteral in #69
  • feat(governance): write contracts for msads/meta/amazon-dsp long tail (5 tools) by @cesteral in #70
  • shared: make CesteralWriteOperation a runtime source of truth + cross-repo drift guard by @cesteral in #71
  • shared: don't enforce decision tokens for effect-class writes by @cesteral in #72
  • Governance hardening: extract @cesteral/contract-schema + default fleet to decision-token warn mode by @cesteral in #73
  • fix(release): publish @cesteral/contract-schema before @cesteral/shared by @cesteral in #75
  • docs(contract-hash): correct stale actionHash parity note by @cesteral in #74

Full Changelog: v1.5.0...v1.5.1

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 01 Jun 18:51

Full Changelog: v1.4.0...v1.5.0

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 01 Jun 18:13

What's Changed

  • refactor: remove backward-compat aliases, shims, and dead re-exports by @cesteral in #41
  • docs: compact CLAUDE.md (229 → 189 lines, no knowledge loss) by @cesteral in #40
  • Amazon DSP v1 commitments: 7 new tools + governed update_commitment by @cesteral in #42

Full Changelog: v1.3.0...v1.4.0