port(upstream): #2474 - Add Node.js CI workflow#141
Conversation
48138e8 to
9789bfa
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9789bfa49b
ℹ️ 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".
Source: decolua/9router#2474 Lock: origin/dev@a3c97f2a49910278081dfcf1c9d6f847d2da6d6d Hand-ported the upstream 'Add Node.js CI workflow' file onto the two-branch DurinDoor release model. Upstream triggers on master; this fork targets dev + main. Keeps npm ci and cache:npm because package-lock.json is tracked in this fork (verified via git ls-files). Build made unconditional to avoid silently hiding regressions, and Node matrix narrowed to 20 to match ci.yml / test.yml. Upstream npm test step omitted because DurinDoor already runs the vitest suite and no-regression gate in test.yml. Fixes chatgpt-codex-connector review: use the committed lockfile (npm ci + cache:npm).
9789bfa to
9307eba
Compare
|
@chatgpt-codex-connector Fixed the lockfile concern in : restored |
|
To use Codex here, create an environment for this repo. |
|
chatgpt-codex-connector: Fixed the lockfile concern in commit 9307eba. Restored npm ci and cache:npm now that package-lock.json is confirmed tracked. The resolvePullRequestReviewThread mutation is not available via this token scope, so I cannot mark the thread resolved; please resolve it if the fix looks correct. |
|
Closing this redundant workflow unmerged. Source #2474 remains open and unchanged at 80ee0f89bfa629e0c08a4b01276aa05eac4b0087. Its valid lockfile concern is fully retained by canonical recovery #145/#150: exact Node 20.20.2 and npm 10.8.2, root/tests lockfiles, npm ci, fail-closed tests, verified artifacts, and the three required ruleset checks. The single review thread is resolved; a third overlapping Node CI workflow would only duplicate and confuse check ownership. |
Source: decolua/9router#2474
Lock: origin/dev@a3c97f2a49910278081dfcf1c9d6f847d2da6d6d
Scope
Hand-ports the upstream
Add Node.js CI workflowfile (.github/workflows/node.js.yml, +31/-0 upstream) onto the DurinDoor two-branch release model.Fork-only touchpoints / adaptations
The upstream file targets a single
masterbranch, so the workflow was adapted rather than copied verbatim:master->dev+main(matchesci.yml,test.yml,nightly.yml).npm ci+cache: npmkept:package-lock.jsonis tracked in this fork (verified withgit ls-files), so the upstream clean-install/cache pattern is valid here. This also ensures a PR that changespackage.jsonwithout updating the lockfile is caught.npm run build --if-present-> unconditionalnpm run build: this fork always defines abuildscript (Next.js--webpack);--if-presentwould silently no-op on a regression and hide it.npm testomitted: DurinDoor already runs the vitest suite and no-regression gate intest.yml. Including it here would duplicate that job and fail on the same inherited baseline drifts. This workflow is therefore a focused install-and-build smoke check.[18.x, 20.x, 22.x]-> single20: matchesci.yml/test.ymland bounds Actions minutes.concurrencygroup +permissions: contents: readto match the fork's other workflows.Review response
9307ebad6— switched fromnpm installtonpm ciand restoredcache: npmnow that the lockfile is confirmed tracked.Test coverage
No new test files — this is a CI-only change (AGENTS §1 docs-only exemption). The workflow exercises the existing build, so coverage is inherited from
tests/andci.yml.Doc coverage
CI-only change; this PR body is the documentation. No user-facing behavior change, so no
CHANGELOG.mdentry.Baseline impact
None — does not touch
tests/__baseline__/known-fails.txt.Wire-format / migration concerns
None.
Note on commit subject
Task spec asked for
port(upstream/#2474): ...; the conventional-commit parser rejects/inside a scope, so the commit/PR subject uses the AGENTS §3 formport(upstream): #2474 - <title>instead (validated locally withnpx commitlint).