diff --git a/.changeset/spicy-otters-derive.md b/.changeset/spicy-otters-derive.md deleted file mode 100644 index ce2735a..0000000 --- a/.changeset/spicy-otters-derive.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -"@stackmade/gtm-as-code": minor ---- - -Adds `ga4.measurementProtocolSecrets` as a stream-scoped create/update/delete resource (config key -is the secret's `displayName`; `secretValue` is server-generated and never in config). Creating one -requires the property's User Data Collection Acknowledgement to already be attested through the GA4 -UI. `apply` surfaces GA4's `FAILED_PRECONDITION` with a remediation hint naming that requirement. - -`google.ga4.measurementId` no longer has to be set by hand: `plan`/`apply`/`drift` now derive it from -`ga4.streamWebsiteUrl`'s resolved web stream when config leaves it unset. - -iOS/Android GA4 data streams are confirmed **not implementable** through the Admin API (it refuses -creation outright, directing callers to the Firebase API instead) and are documented as a hard -blocker rather than left as an open roadmap item. diff --git a/.changeset/wild-rivers-decide.md b/.changeset/wild-rivers-decide.md deleted file mode 100644 index 3f9cfd9..0000000 --- a/.changeset/wild-rivers-decide.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -"@stackmade/gtm-as-code": minor ---- - -Adds `ga4.attributionSettings` (`reportingAttributionModel`, -`acquisitionConversionEventLookbackWindow`, `otherConversionEventLookbackWindow`) as a -property-level, settings-diffed field, following the same pattern as `dataRetention` and -`googleSignals`: `plan`/`drift` compare it against the property's live state and `apply` PATCHes -only the fields that changed. - -Internal and developer traffic filters are confirmed **not implementable** through the GA4 Admin -API: no `dataFilters`-shaped collection exists under either `v1alpha` or `v1beta`. Documented as a -hard blocker in README and ROADMAP, the same way iOS/Android data streams and Search Console links -already are. This closes out 0.7's GA4 coverage milestone. diff --git a/CHANGELOG.md b/CHANGELOG.md index 58d6c3b..362a780 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,32 @@ # @stackmade/gtm-as-code +## 0.8.0 + +### Minor Changes + +- 2d02443: Adds `ga4.measurementProtocolSecrets` as a stream-scoped create/update/delete resource (config key + is the secret's `displayName`; `secretValue` is server-generated and never in config). Creating one + requires the property's User Data Collection Acknowledgement to already be attested through the GA4 + UI. `apply` surfaces GA4's `FAILED_PRECONDITION` with a remediation hint naming that requirement. + + `google.ga4.measurementId` no longer has to be set by hand: `plan`/`apply`/`drift` now derive it from + `ga4.streamWebsiteUrl`'s resolved web stream when config leaves it unset. + + iOS/Android GA4 data streams are confirmed **not implementable** through the Admin API (it refuses + creation outright, directing callers to the Firebase API instead) and are documented as a hard + blocker rather than left as an open roadmap item. + +- 31be5a4: Adds `ga4.attributionSettings` (`reportingAttributionModel`, + `acquisitionConversionEventLookbackWindow`, `otherConversionEventLookbackWindow`) as a + property-level, settings-diffed field, following the same pattern as `dataRetention` and + `googleSignals`: `plan`/`drift` compare it against the property's live state and `apply` PATCHes + only the fields that changed. + + Internal and developer traffic filters are confirmed **not implementable** through the GA4 Admin + API: no `dataFilters`-shaped collection exists under either `v1alpha` or `v1beta`. Documented as a + hard blocker in README and ROADMAP, the same way iOS/Android data streams and Search Console links + already are. This closes out 0.7's GA4 coverage milestone. + ## 0.7.0 ### Minor Changes diff --git a/package.json b/package.json index 6fbf9b2..06c8de3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@stackmade/gtm-as-code", - "version": "0.7.0", + "version": "0.8.0", "description": "GTM & GA4 as code — define Google Tag Manager and Analytics 4 config in YAML, plan/apply like Terraform.", "license": "MIT", "type": "module",