Skip to content

Commit 8d6ede9

Browse files
committed
feat(create): propose the tracing backend the fleet already uses
Same as the ORM proposal, and rather than a second copy of it the group became data: a probe names a catalog group, its members, and the dependency each member leaves behind. Adding a group now means adding an entry. Tracing differs from the ORM in one way that mattered. Neither backend is recommended — OpenTelemetry versus Datadog is a vendor choice, not a better and a worse — so a fleet using both cannot fall back on a recommendation the way a mixed ORM fleet falls back on pg-prisma. It follows its own majority instead, and a dead heat proposes NOTHING and says so ("This fleet is split evenly between opentelemetry and dd-trace — your call"), because breaking the tie on catalog order would look like advice while being arbitrary. The "moving the fleet to X is worth considering" nudge is now derived rather than hardcoded: it appears when the proposal is not the group's recommended member, so the ORM group carries it and tracing, having no recommendation, does not. One selection records overrides for every group it contradicts, so picking both a different ORM and a different backend is remembered as two. The cache grows a version: 2 holds per-group counts and overrides where 1 held only the ORM. An older cache is discarded rather than migrated — it costs one scan to rebuild. 17 fleet tests, and verified end to end: a Sequelize fleet traced with Datadog preselects sequelize and dd-trace in one run, each with its reason, and the ORM half still carries the pg-prisma recommendation.
1 parent fdfa3db commit 8d6ede9

3 files changed

Lines changed: 425 additions & 182 deletions

File tree

0 commit comments

Comments
 (0)