Skip to content

ci: suppress CLI telemetry in workflows#210

Merged
rhuanbarreto merged 1 commit into
mainfrom
ci/suppress-cli-telemetry
Apr 15, 2026
Merged

ci: suppress CLI telemetry in workflows#210
rhuanbarreto merged 1 commit into
mainfrom
ci/suppress-cli-telemetry

Conversation

@rhuanbarreto

Copy link
Copy Markdown
Contributor

Problem

CI workflows that build and run archgate from source were emitting PostHog telemetry tagged with in-development version strings from package.json (e.g. v0.29.0-prerelease). Each CI run looks like a real user installation in PostHog product-usage dashboards, inflating adoption numbers and polluting version distributions with prerelease tags that never ship.

Fix

Set ARCHGATE_TELEMETRY: "0" as a top-level workflow env: block on every workflow that installs Bun or runs repo scripts. The CLI's isEnvTelemetryDisabled() short-circuits emission when this env var is set, so CI-from-source invocations (bun run src/cli.ts, bunx archgate, compiled smoke-test binaries) no longer reach PostHog. The env var is a no-op for workflows that don't invoke the CLI, so applying it broadly is safe.

Files touched

Added env.ARCHGATE_TELEMETRY: "0":

  • .github/workflows/code-pull-request.yml — runs bun run validate (tests exercise CLI code paths)
  • .github/workflows/release-binaries.yml — runs bun run validate and builds the CLI binary
  • .github/workflows/release.yml — runs bun run validate
  • .github/workflows/smoke-test-linux.yml — runs the compiled binary directly
  • .github/workflows/smoke-test-windows.yml — runs the compiled binary directly
  • .github/workflows/update-llms.yaml — runs a Bun script from the repo
  • .github/workflows/update-lock.yaml — runs bun install

Skipped:

  • .github/workflows/track-adoption.yml — pure gh search + curl to PostHog; does not install Bun or invoke the CLI. (This workflow is itself the intentional archgate_repo_seen event emitter.)

CI workflows that build/run archgate from source were emitting PostHog
telemetry tagged with in-development version strings from package.json
(e.g. v0.29.0-prerelease). This polluted product-usage numbers with
CI-from-source events that look like real user installs.

Set ARCHGATE_TELEMETRY="0" as a top-level workflow env var so the CLI's
isEnvTelemetryDisabled() opt-out short-circuits emission during CI runs.
The env var is a no-op for workflows that don't invoke the CLI, so it is
applied broadly to all workflows that install Bun / run the repo's
scripts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying archgate-cli with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8053174
Status: ✅  Deploy successful!
Preview URL: https://7f7484de.archgate-cli.pages.dev
Branch Preview URL: https://ci-suppress-cli-telemetry.archgate-cli.pages.dev

View logs

@rhuanbarreto rhuanbarreto merged commit f640541 into main Apr 15, 2026
13 of 16 checks passed
@rhuanbarreto rhuanbarreto deleted the ci/suppress-cli-telemetry branch April 15, 2026 19:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant