Skip to content

fix(node): remove browser SDK dependencies#342

Open
leoromanovsky wants to merge 2 commits into
mainfrom
leo.romanovsky/remove-js-core-node-dependency
Open

fix(node): remove browser SDK dependencies#342
leoromanovsky wants to merge 2 commits into
mainfrom
leo.romanovsky/remove-js-core-node-dependency

Conversation

@leoromanovsky

@leoromanovsky leoromanovsky commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

Motivation

@datadog/flagging-core@2.0.1 and @datadog/openfeature-node-server@2.0.1 both declare @datadog/js-core@0.0.3. That package is published from DataDog/browser-sdk; its only use in these packages is the timestamp type and helper.

The shared evaluator and Node provider must not install browser SDK runtime dependencies.

Changes

  • Define the branded epoch-millisecond TimeStamp type and export timeStampNow() from the @datadog/flagging-core root API.
  • Reuse the core-owned helper for evaluator, aggregation, and Node provider exposure timestamps.
  • Remove @datadog/js-core from the core and Node package manifests and lockfile edges.
  • Extend the existing packed Node installation test with a dependency-tree purity check.
  • Fail CI if any installed Node dependency is @datadog/js-core, a known browser package, or declares DataDog/browser-sdk as its repository.

Decisions

  • Own the timestamp primitive in runtime-agnostic flagging-core instead of importing it from the browser SDK.
  • Preserve the existing new Date().getTime() behavior and branded timestamp values behind the shared helper.
  • Keep @datadog/openfeature-browser unchanged; it may depend directly on browser SDK packages.
  • Enforce purity on the packed, installed dependency tree so transitive browser dependencies are rejected as well as direct ones.
  • Preserve the existing timestamp wire values and evaluator-reason behavior.

@leoromanovsky
leoromanovsky marked this pull request as ready for review July 22, 2026 05:05
@leoromanovsky
leoromanovsky requested a review from a team as a code owner July 22, 2026 05:05
@leoromanovsky
leoromanovsky requested review from dd-oleksii and typotter and removed request for a team July 22, 2026 05:05
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.

1 participant