Skip to content

Upgrade note: cookie consent removed, GTM now opt-in via gtm_id alone (vibexp/vibexp#740) #39

Description

@vibexp-gh

What

Add an upgrade note under user-guide/self-hosting/upgrading for the cookie-consent removal and the GTM config change shipped by vibexp/vibexp#740 (PR vibexp/vibexp#741), and sweep any page that documents the removed surfaces.

Why

The change is breaking for a specific operator configuration and silently changes behaviour:

  • frontend.gtm_enabled (env VITE_GTM_ENABLED) no longer exists. Setting frontend.gtm_id is now the entire opt-in.
  • An operator who set gtm_id but never set gtm_enabled: "true" had GTM off; after upgrading, GTM starts loading. Anyone with both set is unaffected.
  • A leftover gtm_enabled: key does not fail startup — nested unknown keys are silently ignored by the loader (only removed top-level sections fail fast) — so an operator gets no signal. The note is the only warning they will see.
  • VibeXP no longer renders a cookie-consent banner and no longer sets Google Consent Mode defaults. Consent policy is now entirely the operator's, configured in their own GTM container. Operators in consent-required jurisdictions must handle it there.
  • Any stored cookieConsent / vx_cookie_consent localStorage entry is deleted on next load.

How

  1. Add the upgrade entry under user-guide/self-hosting/upgrading, covering: the removed key, the "gtm_id alone is the opt-in" rule, the behaviour flip above, the removed banner, and the consent-is-yours-now framing.
  2. Grep the docs site for gtm_enabled, VITE_GTM_ENABLED, "cookie consent", "consent mode" and update or delete each hit.
  3. Check the configuration-reference page's frontend: block matches the shipped config.example.yaml.

Timing: docs track the latest published release, not main — this lands with the release that carries vibexp/vibexp#740, not before.

Acceptance criteria

  • Upgrade note published under user-guide/self-hosting/upgrading.
  • No gtm_enabled / VITE_GTM_ENABLED reference remains anywhere on the docs site.
  • No page describes a cookie-consent banner or Consent Mode behaviour.
  • The frontend: config reference matches the shipped config.example.yaml.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions