Uh oh!
There was an error while loading. Please reload this page.
telemetry: emit install_method=github-actions from CI runs - #24
Merged
Conversation
Installer beacons fired during GitHub Actions runs were indistinguishable from real curl-pipe installs. The is_test flag is validated at the edge but never persisted to the data lake, so dashboards had no way to filter out CI traffic (kernel os_version strings like "linux 6.17.0-1010-azure" polluted real-user metrics). Changes: - _telem_resolve_install_method(): return "github-actions" when $GITHUB_ACTIONS=true, before the LOWKEY_INSTALL_CHANNEL override. - case allowlist: add github-actions so the env override round-trips. - docs/reference/telemetry-v1.schema.json: InstallMethod enum now reflects the actual delivery-channel values (brew/curl/msi/dmg/pkg + github-actions) instead of the stale cfn/terraform/console enum (those are deploy methods, tracked separately via _telem_resolve_method). - docs/reference/telemetry-schema.mdx: example + enum description aligned with the schema above. Server side: see inceptionstack/loki-dashboard PR #1 which adds the value to ALLOWED_INSTALL_METHOD. Ship order: server first, then this.
Codex nit on PR #24: the case-statement comment listed the pre-change enum. Updated so future readers see the full server-accepted set.
Uh oh!
There was an error while loading. Please reload this page.
royosherove added a commit
that referenced
this pull request
May 1, 2026
* telemetry: emit install_method=github-actions from CI Installer beacons fired during GitHub Actions runs were indistinguishable from real curl-pipe installs. The is_test flag is validated at the edge but never persisted to the data lake, so dashboards had no way to filter out CI traffic (kernel os_version strings like "linux 6.17.0-1010-azure" polluted real-user metrics). Changes: - _telem_resolve_install_method(): return "github-actions" when $GITHUB_ACTIONS=true, before the LOWKEY_INSTALL_CHANNEL override. - case allowlist: add github-actions so the env override round-trips. - docs/reference/telemetry-v1.schema.json: InstallMethod enum now reflects the actual delivery-channel values (brew/curl/msi/dmg/pkg + github-actions) instead of the stale cfn/terraform/console enum (those are deploy methods, tracked separately via _telem_resolve_method). - docs/reference/telemetry-schema.mdx: example + enum description aligned with the schema above. Server side: see inceptionstack/loki-dashboard PR #1 which adds the value to ALLOWED_INSTALL_METHOD. Ship order: server first, then this. * telemetry: document github-actions in install_method enum comment Codex nit on PR #24: the case-statement comment listed the pre-change enum. Updated so future readers see the full server-accepted set. --------- Co-authored-by: Roy Osherove <575051+royosherove@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Installer beacons fired during GitHub Actions runs are indistinguishable from real
curl | bashinstalls. Theis_testflag is validated at the edge but never persisted to the data lake (see validate_install row whitelist), so dashboards have no way to filter out CI traffic. Kernel strings likelinux 6.17.0-1010-azurewere polluting real-user metrics.What
_telem_resolve_install_method(): returngithub-actionswhen$GITHUB_ACTIONS=true, ahead of anyLOWKEY_INSTALL_CHANNELoverride.github-actionsso the env override round-trips.docs/reference/telemetry-v1.schema.json:InstallMethodenum now reflects the actual delivery-channel values (brew|curl|msi|dmg|pkg|github-actions) instead of the stalecfn|terraform|tf|console|unknownenum. Those are deploy methods (how AWS gets provisioned), tracked separately via_telem_resolve_methodoninstall.method_selectedevents.docs/reference/telemetry-schema.mdx: example + enum description aligned with the schema above.Ship order (don't merge until server is ready)
If you merge this first, installer runs from CI will hit
install_method must be one of ['brew', 'curl', 'dmg', 'msi', 'pkg']400s (silently, because telemetry is fire-and-forget — so low risk, just no new value reaching the data lake until the server catches up).Still to do (not in this PR)
lowkey.run/api/telemetry-v1.openapi.{yaml,json}lives in S3 bucket523877807430(separate account Loki can't reach from here). TheInstallBeaconMethodenum in that artifact needs the same update — Roy or someone with access to the telemetry account should re-publish, or we wire up a build step.lambda-api-notify) will now showmethod: github-actionsin Telegram for every CI run. Optional follow-up: skip the notification for CI runs to cut noise.Version auto-bump
.github/workflows/version-bump.ymlwill tick patch → 0.5.115 on merge. No[skip ci]in commit since this is a functional change.