Skip to content

PostgreSQL recovery fixture collides with an occupied host port #755

Closed

Description

@devantler

🤖 Generated by the Agentic Engineer

Description

The catalogue's required CI can fail before the real PostgreSQL recovery checks run because the disposable fixture always claims one fixed host port.

Steps to Reproduce

  1. Run the PostgreSQL recovery fixture while its fixed loopback port is occupied.
  2. Docker cannot start the fixture, so the database recovery and restricted-role checks never execute.

Expected Behavior

The disposable service receives an available loopback port and the unchanged real database tests exercise the recovered service.

Actual Behavior

Default-branch run 40184809207 fails with an address-in-use error at merged revision 26a761ff74a2d625d4cfbe1ed1ebae2780d7aacd. The native test hard-codes that host port in both Docker publication and the generated client URLs.

Acceptance Criteria

  • Docker allocates the fixture's loopback host port and both database URLs use the observed binding.
  • Malformed or absent binding observations fail closed.
  • Real stopped-service recovery, database privilege checks and owned container/volume cleanup still pass in required CI.
  • Protected merge and a successful default-branch run verify the repair.

Size: S. This is a live CI hotfix. Related to #573; no production database or credential changes are needed.

Activity

  1. added theissue type on Oct 25, 2026
  2. added a commit that references this issue on Oct 25, 2026
  3. moved this to 🏃🏻‍♂️ In Progress in 🌊 Project Boardon Oct 25, 2026
  4. added 4 commits that reference this issue on Oct 25, 2026
  5. moved this from 🏃🏻‍♂️ In Progress to 👀 In Review in 🌊 Project Boardon Oct 25, 2026
  6. moved this from 👀 In Review to ✅ Done in 🌊 Project Boardon Oct 25, 2026
  7. devantler commented on Oct 25, 2026

    @devantler
    ContributorAuthor

    🤖 Generated by the Agentic Engineer

    Verified after protected merge #756 at 5c32ee64719c107a99f35580d60a34839850e2b8. The signature is valid and its complete Git tree equals reviewed head ffeaa63025977646c256f7b956af6dd913f8b7ea.

    The original PR CI completed all 237 jobs, including real stopped-service PostgreSQL recovery, restricted-role checks and owned cleanup. The exact merged revision now has successful main CI: all 236 jobs settled, with 191 successful and 45 intentionally skipped. The other three actual post-merge workflows also succeeded. The loopback binding is Docker-assigned and malformed or absent observations remain refusals.

    All four acceptance criteria are verified. No production service or credential was changed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Priority

    None yet

    Effort

    None yet

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions