Skip to content

CS-11047: Consolidate workspace-sync-cli integration tests into boxel-cli CI job#4853

Draft
FadhlanR wants to merge 1 commit into
mainfrom
cs-11047-consolidate-workspace-sync-cli-integration-tests-into-boxel
Draft

CS-11047: Consolidate workspace-sync-cli integration tests into boxel-cli CI job#4853
FadhlanR wants to merge 1 commit into
mainfrom
cs-11047-consolidate-workspace-sync-cli-integration-tests-into-boxel

Conversation

@FadhlanR
Copy link
Copy Markdown
Contributor

Summary

  • Folds workspace-sync-cli's qunit integration suite into the boxel-cli vitest suite; removes the standalone workspace-sync-cli-test CI job.
  • workspace-sync-cli-build and the package source stay (explicitly out of scope per the ticket).
  • Net change: +189 / −1113 across 10 files.

Linear: CS-11047
Plan doc: docs/cs-11047-consolidate-workspace-sync-cli-tests-plan.md

Per-case audit verdict

# Source qunit case Verdict Destination
1 Pull files from realm to local DROP — already covered realm-pull.test.ts:56
2 Push modified files DROP — already covered realm-push.test.ts:153, 194
3 Pull --delete removes extras DROP — already covered realm-pull.test.ts:123
4 Push --dry-run modifies nothing DROP — already covered realm-push.test.ts:328
5 .realm.json bidirectional sync DROP — deliberate design change. boxel-cli treats .realm.json as protected; CS-11131 phases the sidecar out. Existing inverse coverage at realm-sync.test.ts:441 ("protected files (.realm.json) are never synced").
6 REALM_SECRET_SEED password derivation DROP — N/A. boxel-cli uses boxel profile add for credentials; no equivalent code path.
7 Respects .boxelignore patterns PORT — new it(...) in realm-push.test.ts. boxel-cli supports .boxelignore (src/lib/realm-sync-base.ts:697) but had no integration coverage.

What got deleted

  • packages/workspace-sync-cli/tests/ (integration-test.ts, helpers/start-test-realm.ts, index.ts, README.md).
  • test script + qunit / @types/qunit devDeps from packages/workspace-sync-cli/package.json.
  • Dead qunit override in packages/workspace-sync-cli/.eslintrc.js.
  • workspace-sync-cli-test job (and its dead test-web-assets if: clause) in .github/workflows/ci.yaml.

The spawn-based start-test-realm.ts is replaced by boxel-cli's in-process startTestRealmServer — stronger cleanup, no IPC handshake (the same shape that caused the flake fixed in 2950dfd256).

Test plan

  • pnpm lint in packages/workspace-sync-cli — clean.
  • pnpm build in packages/boxel-cli — clean.
  • pnpm test:unit in packages/boxel-cli — 206/206 pass.
  • pnpm test:integration in packages/boxel-cli (targeted realm-push.test.ts) — 20/20 pass; new .boxelignore case verified (count went from 19 → 20).
  • CI: Boxel CLI Tests passes, Workspace Sync CLI Build still present and passes, Workspace Sync CLI Integration Tests is gone.

🤖 Generated with Claude Code

…-cli CI job

Folds workspace-sync-cli's qunit integration suite into the boxel-cli vitest
suite and removes the standalone `workspace-sync-cli-test` CI job. The
`workspace-sync-cli-build` job and the package source stay (out of scope per
the ticket).

Audit of the seven qunit cases:
- Cases 1-4 (pull, push, pull --delete, push --dry-run): already covered by
  existing boxel-cli specs — dropped to avoid duplicate coverage.
- Case 5 (.realm.json bidirectional): deliberately inverted by design.
  boxel-cli treats .realm.json as a protected file and never syncs it;
  CS-11131 phases the sidecar out entirely.
- Case 6 (REALM_SECRET_SEED password derivation): N/A. boxel-cli captures
  credentials via `boxel profile add`; no equivalent code path.
- Case 7 (.boxelignore patterns): ported as a new `it(...)` in
  `realm-push.test.ts` — boxel-cli supports .boxelignore (realm-sync-base.ts)
  but had no integration coverage for it.

The spawn-based `start-test-realm.ts` helper is replaced by boxel-cli's
in-process `startTestRealmServer` (stronger cleanup, no IPC handshake).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 18, 2026

Host Test Results

    1 files      1 suites   1h 25m 4s ⏱️
2 659 tests 2 644 ✅ 15 💤 0 ❌
2 678 runs  2 663 ✅ 15 💤 0 ❌

Results for commit 48cc348.

Realm Server Test Results

    1 files      1 suites   9m 21s ⏱️
1 377 tests 1 377 ✅ 0 💤 0 ❌
1 458 runs  1 458 ✅ 0 💤 0 ❌

Results for commit 48cc348.

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