getsentry / getsentry/sentry-javascript

deno: 22 of 24 orchestrion suites never load the real library

Open
#23,897 1 comment 0 reactions 0 assignees View on GitHub
Deno javascript
Dominant language
TypeScript
Stars
8.7k
Forks
1.8k
Avg merge
1d 17h
Merged PRs (30d)
523

Description

In `dev-packages/deno-integration-tests/suites/orchestrion-*`, only `orchestrion-mysql` and `orchestrion-postgres` spawn a real `deno run` scenario. The other 22 publish the diagnostics channel by hand:

```ts
const channel = tracingChannel('orchestrion:openai:chat');
channel.start.runStores(ctx, () => undefined);
channel.end.publish(ctx);
```

That tests the subscriber, which is shared with Node and already covered there. It proves nothing about whether Deno's `Module.registerHooks` transform actually injects the channel into that package. The Deno-specific risk is exactly the part not covered.

**Work item.** Promote three or four suites to real scenarios: express (the most-used), redis, and one AI provider. Reuse the `scenario.mjs` + `Deno.Command` shape from `orchestrion-mysql`.

**Prior art ***(related history only)*. No issue. getsentry/sentry-javascript#21827 (merged) created the `deno-integration-tests` package that these suites live in. [#18635]() (open) is the nearest umbrella.

Contributor guide

Open the contributing guide

Research direction

Start in dev-packages/deno-integration-tests/suites/orchestrion-mysql and orchestrion-postgres, then compare the other orchestrion-* suites. Reuse the scenario.mjs and Deno.Command shape to promote express, redis, and one AI-provider suite to real scenarios. Done means those suites load the real library and exercise the Deno-specific transform rather than publishing the diagnostics channel by hand.

Written by the indexing model from the issue text.

Assessment

Tech stack
deno, typescript
Domain
testing
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
74/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.