ci: Remove Matrix as factory workflow dependency#5096
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2078be8b47
ℹ️ 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".
CI Software Factory boots Synapse for its test stack via realm-test-harness's startFactorySupportServices, which dynamically imports matrix's synapse docker + environment-config helpers. So the workflow does depend on a slice of the matrix package — dropping `packages/matrix/**` from its trigger entirely (as this branch first did) would let a regression in that harness code slip past PR CI. Rather than re-add the broad `packages/matrix/**` filter (which also fires for matrix-test-only changes that SF never loads), extract the SF-shared harness into a dedicated `packages/matrix/support/` directory and point the trigger at that boundary instead: - Move synapse/ (incl. templates), the docker pull util, and the isolated-realm-server / environment-config / matrix-constants helpers into packages/matrix/support/. These form a self-contained cluster (no imports of matrix test-only code), so the boundary is clean. - Update all importers (matrix specs/helpers/scripts) and the realm-test-harness dynamic-import specifiers to the new paths. - Trigger CI Software Factory on `packages/matrix/support/**` only. Net effect: SF still runs when the harness code it loads changes, but matrix-test-only changes no longer trigger it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
environment-config.ts already statically imports from 'child_process',
so the lazy `require('child_process')` for `spawn` was needless and
tripped `no-var-requires`. Hoist `spawn` into the existing top-level
import. Behavior-preserving.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a7c9c5c6cc
ℹ️ 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".
The Synapse email templates moved to packages/matrix/support/synapse/ templates with the rest of the shared harness, but sync-synapse-templates.yml still watched, sed-edited, and S3-synced the old packages/matrix/docker/synapse/templates path — so a dispatch would fail at the sed steps and future template edits wouldn't trigger the sync, letting staging/prod Synapse email templates silently drift. Point the trigger path, both sed steps, and the S3 sync at the new location. Also fix the now-stale path in scripts/env-slug.js's consumer list. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Chase the last references to the harness files relocated under packages/matrix/support/: - assert-synapse-running.sh: the inline ts-node re-registration ran `import … from './helpers/environment-config'`, which broke after the move — so `pnpm assert-synapse-running` failed (instead of re-adding the Traefik route) on the common dev path where BOXEL_ENVIRONMENT is set and Synapse is already running. Point it at './support/'. - Doc/comment path references (README, observability docker-compose + prometheus comments, indexing-diagnostics skill) updated to the new support/synapse locations. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This rearranges things in
packages/matrixso the filter in the software factory workflow depends on actual Matrix things and not Matrix tests, which will save some CI jobs.