Skip to content

feat: run rstack-editor E2E in the rstest and rslint suites - #115

Merged
fi3ework merged 2 commits into
mainfrom
feat/rstack-editor-e2e
Nov 5, 2026
Merged

fi3ework merged 2 commits into
mainfrom
feat/rstack-editor-e2e

Conversation

@fi3ework

@fi3ework fi3ework commented Nov 5, 2026 •

Copy link
Copy Markdown
Member

Summary

The rstack-editor suites in both stacks ran only test:unit + lint. The editor's E2E fixtures are their own pnpm workspace roots that install published packages from npm, so eco-ci's consumer-side override never reaches them.

runInRepo(<workspace>/rstack-editor/rstack-editor)
  pnpm install                    # eco-ci's overrides land in the consumer
  pnpm build
  test:unit
  lint
  node e2e/run.mjs <slices>       # fixtures injected from stackPath
    RSTACK_E2E_TOOLCHAIN_OVERRIDES="name=<absolute pkg dir>,…"
    VSCODE_TEST_CACHE_PATH=<workspace>/.vscode-test

tests/shared/rstack-editor.ts adds the build step and the E2E step; the stack files are thin re-exports.

  • Slices: rstest for the rstest suite, smoke + lint for rslint.
  • RSTACK_E2E_TOOLCHAIN_OVERRIDES makes the editor pack each package into a tarball and install it into every fixture, so the E2E runs the unreleased build. Rslint needs @rslint/core plus the host @rslint/native-<tuple> from getRslintPackages (the platform tuple is never hardcoded); the rstest core is found by package name through the cached getMonorepoPackages scan.
  • VSCODE_TEST_CACHE_PATH keeps the VS Code download outside the consumer, because runInRepo runs git clean -fdxq in it before each suite.
  • utils.execa now merges options.env into the setupEnvironment snapshot instead of replacing it, so the E2E command keeps CI, ECOSYSTEM_CI, NODE_OPTIONS and TURBO_FORCE.
  • Timeouts: the rstest execute jobs get 30 min (they had none; GitHub's default is 360 min); Prepare Rslint Binding goes 60 → 90 min after measuring 36–48 min in the last runs.

Evidence

  • Before: the rstack-editor suites ran test:unit + lint only; the E2E slices were never exercised against the unreleased toolchain.
    After: selected runs on this branch with suiteRef=ci/eco-e2e:

Merge Danger

Door: two-way

Reverting removes the E2E step and the timeout changes; no consumer behavior is affected.

Blast Radius: ecosystem-ci

Only the rstack-editor suites in the rstest and rslint workflows change. Both stacks gain a VS Code download and a few minutes of E2E time per suite job; the 30 min rstest budget covers the observed 2 min, and the 90 min binding budget covers the observed 36–48 min.

Depends on rstackjs/rstack-editor#126 (merged).

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 5, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-05T06:38:46.285845Z a8f6da9 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3dcf038509

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

Comment thread tests/shared/rstack-editor.ts Resolved
@fi3ework
fi3ework force-pushed the feat/rstack-editor-e2e branch from 3dcf038 to b4fe4bc Compare November 5, 2026 06:26
The editor's E2E fixtures install published packages, so the suites inject
the local build through RSTACK_E2E_TOOLCHAIN_OVERRIDES: a tarball of
@rstest/core or of @rslint/core plus its host native package. Both rslint
packages come from getRslintPackages so the platform tuple is never
hardcoded. The VS Code download is cached outside the checkout, which the
suite cleans with git clean -fdxq.
The rstest execute jobs had no timeout (GitHub's default is 360 min); the
rstack-editor job with E2E measured ~2 min. Prepare Rslint Binding measured
36-48 min in the last runs against a 60 min limit.
@fi3ework
fi3ework force-pushed the feat/rstack-editor-e2e branch from b4fe4bc to a8f6da9 Compare November 5, 2026 06:37
@fi3ework
fi3ework merged commit c0b5ecb into main Nov 5, 2026
59 of 62 checks passed
@fi3ework
fi3ework deleted the feat/rstack-editor-e2e branch November 5, 2026 07:44
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