Skip to content

Retry telemetry registration quickly instead of hourly - #460

Merged
gmelikov merged 1 commit into
masterfrom
reg
Jul 14, 2026
Merged

Retry telemetry registration quickly instead of hourly#460
gmelikov merged 1 commit into
masterfrom
reg

Conversation

@gmelikov

@gmelikov gmelikov commented Jul 8, 2026

Copy link
Copy Markdown
Member

No description provided.

@gmelikov
gmelikov requested a review from a team as a code owner July 8, 2026 08:28

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a fast retry cadence for the telemetry service until registration is successful, and implements automatic personal workspace provisioning for users upon email confirmation based on their registration client. It also includes corresponding unit and functional tests, database migrations, and a downgrade fix for an older migration. The review feedback highlights two critical issues: a typo in the migration base class name (AbstarctMigrationStep instead of AbstractMigrationStep) that will cause an AttributeError, and an exception handling mismatch in the controller where iam_e.InvalidAuthTokenError is raised but only gcl_iam_e.InvalidAuthTokenError is caught, potentially leading to uncaught 500 errors during anonymous registration.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread migrations/0064-registration-client-auto-provision-b7f2d9.py
Comment thread exordos_core/user_api/iam/api/controllers.py
Comment thread exordos_core/user_api/iam/dm/models.py
Comment thread exordos_core/user_api/iam/api/controllers.py
Comment thread exordos_core/user_api/iam/api/controllers.py
@akremenetsky

Copy link
Copy Markdown
Member

Duplicates #443 ?

Comment thread exordos_core/telemetry/service.py
Comment thread migrations/0003-Organization-Roles-4b584d.py
@gmelikov
gmelikov force-pushed the reg branch 2 times, most recently from 2a81757 to 03d6fe9 Compare July 13, 2026 15:29

@cassi-volkova cassi-volkova left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested commit 03d6fe9. The PR is not currently deployable: both the image build and functional-test setup fail before the telemetry behavior can be exercised because the migration graph has two heads.

Comment thread migrations/0064-registration-client-auto-provision-b7f2d9.py Outdated
TelemetryService only retried every iter_min_period (up to 1 hour), but
exordos-bootstrap sets the VS variables it depends on with no systemd
ordering guarantee relative to ec-gservice, so the very first attempt can
silently skip (variables not set yet). With a 1-hour retry period, a
managed realm's ecosystem-side provisioning_timeout (also defaulting to
1 hour) can fire before the next attempt, permanently erroring the realm.

Retry starting at 30s until registration is confirmed, then relax to the
caller's steady-state period immediately. Stands with no network access at
all would otherwise retry every 30s forever, so each failed attempt
doubles the retry period, capped at the steady-state period, until
registration succeeds. Also bump the "variables not configured" log from
DEBUG to INFO so this condition is visible in normal logs.

Signed-off-by: George Melikov <mail@gmelikov.ru>
@gmelikov
gmelikov merged commit 5f9d703 into master Jul 14, 2026
7 checks passed
@gmelikov
gmelikov deleted the reg branch July 14, 2026 14:21
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.

4 participants