[Jared][ci] M13 — CI baseline: pnpm workspace + GitHub Actions (closes #13)#23
Merged
Merged
Conversation
Adds root package.json, pnpm-workspace.yaml, .nvmrc, CODEOWNERS, and .github/workflows/ci.yml. Runs pnpm -r --if-present typecheck and test on every PR to main. Required before the v0.1 Varitea release train (#14) starts merging the 7 open connector/landing/bandit PRs.
…kfile on first install
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #13.
What this PR does
Wires the CI/CD baseline for the v0.1 Varitea release train (issue #14). Right now
mainhas zero CI —statusCheckRollupis empty across all 7 open PRs. We're flying blind on regression. This PR fixes that before the merge train starts.What lands
package.json— workspace root.packageManager: pnpm@9.12.0, Node>=20. Root scripts usepnpm -r --if-presentso packages without a given script (e.g. notestyet) don't break CI.pnpm-workspace.yaml— workspace root declaringconnectors/*,packages/*,apps/*. This supersedes the workspace file each open PR currently adds..nvmrc—20..github/workflows/ci.yml— runs on PRs tomainand pushes tomain:pnpm install --frozen-lockfile=false(first install — no root lockfile yet)pnpm -r --if-present run typecheckpnpm -r --if-present run test.github/CODEOWNERS— workflow + workspace root changes require maintainer review. Stops future PRs from silently disabling CI.Why
--if-presentmainis currently prose-only (AGENTS.md,agent.md,design.md,soul.md). There are no packages to typecheck or test until #15 lands.--if-presentlets this PR merge clean and turn green, then real per-package scripts get exercised as each connector PR lands.Heads-up to every open PR
6 of 7 open PRs add a root
pnpm-workspace.yaml(#15, #16, #18, #19, #21, #22). Once this PR merges, those 6 will goCLEAN → CONFLICTINGon that one file. The resolution is trivial — delete the PR'spnpm-workspace.yamland accept the root one (which already includesconnectors/*).Recommended rebase order after this PR merges:
shopify-connector-mcp— clean otherwise, foundationalgoogle-ads-connector— clean otherwise, isolatedtwin-renderer— already CONFLICTING, needs rebase regardlessvaritea-landing— touches no root files, should stay cleandistribution-adapters— was CLEAN, will need 1-line rebasebandit-consumer— already CONFLICTINGanimated-shorts— already CONFLICTING, also depends on feat(twin-renderer): Three.js USD product twin renderer + Varitea demo #16After this merges
Set branch protection on
mainrequiring theTypecheck + Test (Node 20, pnpm)check (commands in the chat that opened this PR — not auto-applied; needs admin).Not in scope (intentionally)
eslint/biomeconfig exists in any open PR yet. Not faking one.Test plan
--if-present).connectors/shopify/{typecheck,test}against the real Vitest suite.