Skip to content

telemetry [4]: persist and attach installation IDs - #882

Draft
bfjelds (bfjelds) wants to merge 2 commits into
user/bfjelds/mjolnir/telemetry-operation-contextfrom
user/bfjelds/mjolnir/telemetry-installation-id
Draft

bfjelds (bfjelds) wants to merge 2 commits into
user/bfjelds/mjolnir/telemetry-operation-contextfrom
user/bfjelds/mjolnir/telemetry-installation-id

Conversation

@bfjelds

@bfjelds bfjelds (bfjelds) commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
1 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI 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.

🟡 Changes recommended

Multiboot datastore reuse and the unconditional operation-ID fallback can attribute telemetry to the wrong installation.

2 open issues
What changed in this PR

Adds persistent installation IDs to Trident’s telemetry, building on datastore key-value storage and operation context to correlate activity across commands and reboots.

Changes:

  • Stores stable installation IDs with legacy-datastore migration.
  • Attaches IDs through CLI, daemon, install, and bootstrap paths, with deferred attachment for multiboot.
  • Adds persistence, concurrency, and telemetry serialization tests.
File Description
crates/​trident/​src/​server/​tridentserver/​mod.rs Refreshes IDs before servicing-request telemetry.
crates/​trident/​src/​server/​mod.rs Attaches existing IDs at daemon startup.
crates/​trident/​src/​main.rs Preloads IDs and defers multiboot attachment.
crates/​trident/​src/​logging/​tracestream.rs Shares and emits installation IDs; adds attachment tests.
crates/​trident/​src/​lib.rs Integrates ID creation with installation and bootstrap workflows.
crates/​trident/​src/​datastore.rs Adds ID storage, migration, and stability tests.

Review effort: Balanced

Comment thread crates/trident/src/lib.rs Outdated
Comment thread crates/trident/src/logging/tracestream.rs Outdated

Copilot AI 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.

🔵 Needs a closer look

Installation-ID isolation when multiboot reuses a temporary datastore needs human validation before approval.

1 open issue
1 resolved since last review

Review effort: Balanced

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: d0e7cadc-8f44-443f-affe-6ce8e856a218
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/telemetry-installation-id branch from 44ebea1 to 248fafa Compare October 26, 2026 01:53
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot October 26, 2026 01:55

Copilot AI 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.

🔵 Needs a closer look

Multiboot datastore reuse needs human verification to establish that distinct installations retain separate installation IDs.

1 open issue

Review effort: Balanced

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 43cb811b-f191-4d90-852f-e3373041ca11

Copilot AI 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.

🔵 Needs a closer look

Human assessment is needed because streaming can report an installation ID that is not persisted on the deployed host, breaking telemetry correlation after boot.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

Copilot AI 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.

🟡 Changes recommended

Streaming installs attach an installation ID that is not persisted to the deployed OS, preventing target-side commands from recovering it after boot.

1 open issue

Review effort: Balanced

Comment thread crates/trident/src/lib.rs

Copilot AI 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.

🟢 Approval recommended

No active review issues block the changes adding persistent installation IDs to telemetry.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

This branch has not been deployed

No deployments
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.

2 participants