ci: run checks on pull requests into dev, including the integration suite - #37
Merged
Merged
Conversation
Feature work lands on dev, and until now nothing checked it: CI only triggered for main. The image build and publish jobs stay gated on a push to main. Co-Authored-By: Claude Opus 5.5 <[email protected]>
The ~260 integration tests in crates/test-support/tests/ are #[ignore]d, and CI never ran them. A new job starts Postgres (1GB /dev/shm), Redis and ClickHouse as services and runs them with nextest. The harness FLUSHDBs its Redis logical DB on every spawn, which is why make test-it runs one test at a time. Under nextest each running test now takes DB base + NEXTEST_TEST_GLOBAL_SLOT, so four can run at once without clearing each other's state. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Each login in the integration suite runs Argon2 and grinds a SHA-256 proof-of-work, both unoptimised in a test build. In CI the login-heavy tests took one to two minutes each, and the slowest (128s) was close to the 180s kill limit. Co-Authored-By: Claude Opus 5.5 <[email protected]>
fylorn
force-pushed
the
ci/integration-tests
branch
from
September 24, 2026 06:31
257cdf7 to
7c3bf24
Compare
fylorn
marked this pull request as ready for review
September 24, 2026 06:31
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.
CI only triggered for
main, so pull requests intodevmerged with no checks at all; and even onmain, the ~260 integration tests incrates/test-support/tests/are#[ignore]d and never ran, so billing, cache, streaming and PII paths merged untested. (Replaces #35.)devas well asmain. The image jobs keep theirpushtomaingate, and now also wait for the integration job.--shm-size=1g; every test creates its own database), Redis 8 and ClickHouse 26.3 as services, thencargo nextest run -p think-watch-test-support --run-ignored only --profile ci. Separate from the unit job so a red check names the suite that broke..config/nextest.tomladds aciprofile: no fail-fast, 4 threads (a runner has 4 vCPUs), and a hung test is killed after 3 minutes.make test-itruns one test at a time. Under nextest each running test now uses DBbase + NEXTEST_TEST_GLOBAL_SLOT, so parallel tests no longer clear each other's state. Plaincargo testis unchanged.The first CI run: 260/260 passed; the second: 263/263.
🤖 Generated with Claude Code