Skip to content

test: reconcile P4.2 PostgreSQL integration split - #38

Merged
bayleafwalker merged 3 commits into
mainfrom
codex/sprintctl-p4-2-reconcile
Aug 13, 2026
Merged

test: reconcile P4.2 PostgreSQL integration split#38
bayleafwalker merged 3 commits into
mainfrom
codex/sprintctl-p4-2-reconcile

Conversation

@bayleafwalker

Copy link
Copy Markdown
Owner

Summary

Reconcile the P4.2 PostgreSQL integration test split on merged main (c7de104):

  • retain the twelve-domain tests/pg/ split from cc97543;
  • make collection safe when the optional psycopg dependency is absent;
  • update dispatch risk surfaces and executable documentation to target tests/pg/;
  • remove the split patch's trailing whitespace warning.

Verification

  • uv run --extra dev --extra remote pytest -q --collect-only tests/pg — 126 collected
  • uv run --extra dev pytest -q tests/pg — 126 skipped cleanly without SPRINTCTL_TEST_PG_URL
  • original 121 test definitions == split 121 test definitions
  • git diff --check — clean
  • full suite: 1486 passed, 180 skipped, 12 pre-existing unrelated path-scope failures in disposable /tmp clone

The disposable PostgreSQL run requires an explicitly provisioned SPRINTCTL_TEST_PG_URL and was not attempted here.

actionq-dispatcher and others added 3 commits August 13, 2026 19:18
tests/test_pg_integration.py (3611 lines, 20 test classes) becomes
tests/pg/ -- twelve domain-grouped files (schema/init, outbox ingestion,
sprint+track, work item, event+takeup, claim, ref+dep, remote recovery,
ndjson round-trip, maintain, authority, capability admission) sharing one
tests/pg/_shared.py module for the pg_test_scope/store fixtures, skip
machinery, and helpers, registered for the whole directory by
tests/pg/conftest.py.

Module-scoped fixtures now instantiate once per split file instead of once
for the whole former monolith -- more PG connections and repo scopes, but
each file collects and runs independently, matching the item's stated goal
(faster, focused tests, parallelizable in CI).

Verified zero regressions: full SQLite+PG suite unchanged at 1660 passed,
8 pre-existing unrelated failures, 3 skipped (same baseline as before the
split). Updated the doc/CI references that named the old single file
(docs/guides/postgres-integration-tests.md, .github/workflows/ci.yml,
tests/test_core.py, tests/test_db_recover.py, sprintctl/workitemcore.py).
@bayleafwalker
bayleafwalker marked this pull request as ready for review August 13, 2026 16:30
@bayleafwalker
bayleafwalker merged commit d2926b6 into main Aug 13, 2026
4 checks passed
@bayleafwalker
bayleafwalker deleted the codex/sprintctl-p4-2-reconcile branch August 13, 2026 16:30
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