Skip to content

Releases: upspawn/ads-as-code

v0.3.0 — paused-campaign round-trip + protected files

Choose a tag to compare

@alexerm alexerm released this 29 Apr 14:53
c4b3877

First release after merging #8 — fixes the import/plan/apply round-trip for accounts with paused campaigns or orphan shared budgets, and adds an opt-in marker to protect hand-tuned files from re-import. Also includes the publish-workflow hotfixes (#9, #10, #11).

v0.2.0

Choose a tag to compare

@alexerm alexerm released this 18 Mar 19:14

What's Changed

  • fix: shared resources not routed to provider in apply, not fetched by @alexerm in #4
  • feat: add performance module — metrics, analysis, AI strategy evaluation by @alexerm in #6
  • fix: RSA ad content updates via remove+create, better gRPC errors by @alexerm in #5

Full Changelog: v0.1.4...v0.2.0

v0.1.4

Choose a tag to compare

@alexerm alexerm released this 18 Mar 11:33

Bug Fixes

  • Shared budgets, shared negative lists, and conversion actions no longer silently skipped during apply
  • Campaigns can reference shared budgets directly via budget: sharedBudget('Pool', daily(8))
  • Shared budget create (explicitly_shared=true), update (amount), and delete now work
  • Fetch detects shared budgets for zero-diff round-trips
  • SharedBudgetConfig.currency tightened to 'EUR' | 'USD'

v0.1.3

Choose a tag to compare

@alexerm alexerm released this 18 Mar 10:54

Bug Fixes

  • Budget updates no longer silently dropped during apply
  • Bidding strategy enum mapping corrected to match official proto
  • Shared budget configs no longer crash flattenAll()
  • Bidding field masks use leaf subfield paths (fixes FIELD_HAS_SUBFIELDS errors)
  • Batch updates continue on individual campaign failure instead of aborting

Internal

  • Type-safe GoogleFlattenable union for flattenAll()
  • Trusted publishing via GitHub Actions OIDC