Repository navigation
[APPS-2961] Add: CI matrix running local execution against real Vite 5 to 8 installs - #606
Conversation
Live Debugger Runtime BenchmarkSDK-loaded dormant-probe runtime overhead, measured against an uninstrumented bundle in the same browser session.
What do the Tiny and Hot workloads represent? Browser Debugger SDK: Full diagnosticsRaw samples are in the |
93a01cb to
11af6d6
Compare
11af6d6 to
1797661
Compare
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
🟢 Approval recommended
No blocking issues were identified in the CI configuration or test suite, and production code is unchanged.
No open issues 🎉
What changed in this PR
Adds real-install CI coverage for Apps local backend execution across Vite 5–8, complementing Jest coverage without changing production code.
Changes:
- Adds five Vite matrix legs and a stable aggregate status check.
- Adds integration tests for execution state, concurrency, sandbox restrictions, runtime context, and logs.
| File | Description |
|---|---|
| packages/tests/src/apps-vite-versions/local-execution.mjs | Tests the packed plugin against fresh Vite installs. |
| .github/workflows/ci.yaml | Runs the version matrix using cached builds and read-only permissions. |
Review effort: Balanced
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
1797661 to
63840ca
Compare
63840ca to
ee4b237
Compare
ee4b237 to
fbc33a2
Compare
A matrix job packs the plugin, installs it with one Vite version (5.4.21, 6.0.5, 6.4.3, 7.3.7 or 8.3.3) in a fresh project, and runs a node:test suite through the real dev server: fresh module state and parallel calls with prefixed logs in a child process on Vite 6+, kept state and one call at a time on Vite 5, each path's sandbox, and $.Source. Jest can't load Vite 7+, which ships ESM only. The job runs after the unit tests so it can restore their build cache, never writes that cache, and has read-only permissions, since its npm install isn't locked. A result job gives the matrix one stable check name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
fbc33a2 to
676e2ce
Compare
🎉 All green!🧪 All tests passed 🔗 Commit SHA: 676e2ce | Docs | View more details | Give us feedback! |
|
@codex review |
|
Codex Review: Didn't find any major issues. Bravo. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Motivation
Architecture
flowchart TD A["CI matrix leg (Vite N)"] -->|npm pack| B["datadog-vite-plugin.tgz"] A --> C["node --test local-execution.mjs"] C --> D["Temp project: vite@N + the tgz + @datadog/apps-backend, npm install"] B --> D D --> E["Real dev server with datadogVitePlugin, fake Datadog API via fetch"] E -->|"POST /__dd/executeAction"| G["Assertions on each response"]vitefrom the temp project like a customer install.Changes
6 changes across ci.yaml and local-execution.mjs
ci.yamlci.yamlApps local executionresult job gives the matrix one stable check name.ci.yamllocal-execution.mjslocal-execution.mjs$.Sourcethrough@datadog/apps-backend, at the fixture project's version.local-execution.mjsQA Instructions
Apps local execution (Vite …)jobs run the suite on each version.yarn build:all, from a checkout outside the temp dir:Output for Vite 8.3.3
Blast Radius
Out of Scope / Follow-ups
4 items deferred
npm packkeeps the repo's source-pointing exports; covering the map needs a pack that appliespublishConfig.Documentation
🤖 Generated with Claude Code