[aidan] feat/affiliate-filenames: bind installs from stamped filenames#124
Merged
Conversation
abccodes
force-pushed
the
agent/installer-filename-attribution
branch
from
July 10, 2026 10:01
e4b6f5f to
ac2f8e3
Compare
abccodes
marked this pull request as ready for review
July 10, 2026 10:07
…d python backend Electron resolves ONE install id before spawning the backend (install.json app_install_id -> python settings installation_id -> fresh uuid) and exports it as OPENSWARM_INSTALLATION_ID; the backend adopts it when settings has no installation_id yet. The affiliate app_install_id and the analytics install_id are now the same value, so affiliate refs join directly to telemetry with no sign-in required. Drops the frontend app_install_id forwarding through sign-in flows; the desktop auth router forwards settings.installation_id as install_id instead.
abccodes
force-pushed
the
agent/installer-filename-attribution
branch
from
July 11, 2026 01:09
c8f374d to
c7004c9
Compare
…all artifact shapes The Downloads scan rejected any file whose mtime was newer than the scan's Date.now() snapshot (sub-ms fs timestamps, NTP stepping the clock back), and the ambiguity test was green only because both fixtures were skipped by that guard. Allow 60s of future skew, add a win32 end-to-end bind test, and cover every stamped artifact name (mac arm64/x64 dmg, windows setup exe, linux AppImages) plus unstamped negatives in the parser test.
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 free
to 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.
Affiliate installs can lose referral attribution after download, and the desktop's two per-install ids (analytics
installation_idvs affiliateapp_install_id) never met — so affiliate data only joined to analytics through an optional sign-in.[ac2f8e3]: Adds first-launch filename attribution in Electron by scanning recent stamped installers, binding known affiliate hashes before opening the welcome fallback, and recording
ref_bind_method='affiliate_filename_hash'.[c7004c9]: Unifies the install identity. Electron resolves ONE id before spawning the Python backend (install.json
app_install_id→ existing settingsinstallation_id→ fresh uuid) and exports it asOPENSWARM_INSTALLATION_ID; the backend adopts it when it has noinstallation_idyet. The affiliate id and the analytics install_id are now the same value, so affiliate refs join directly to telemetry with no sign-in required. The frontendapp_install_idforwarding through sign-in flows is dropped; the desktop auth router forwardssettings.installation_idasinstall_idon signin-activate instead.[1e1d0d3]: Fixes the Downloads scan rejecting freshly-written/future-mtime installers (60s skew tolerance) and adds Windows + all-artifact-shape test coverage; the ambiguity test now genuinely exercises the ambiguity branch.
Pairs with openswarm-ai/openswarm-cloud#5 and openswarm-ai/landing-page#5.