Skip to content

test(core): select the create_bug request by method and path - #112

Merged
plusky merged 1 commit into
mainfrom
fix/issue-93
Aug 18, 2026
Merged

test(core): select the create_bug request by method and path#112
plusky merged 1 commit into
mainfrom
fix/issue-93

Conversation

@plusky

@plusky plusky commented Aug 18, 2026

Copy link
Copy Markdown
Owner

Closes #93. Root cause established against wiremock 0.6.5 source and reproduced: bodies record atomically under the match lock (partial body impossible — the issue's assumption 2 cannot happen); the real mechanism is the process-wide wiremock server pool keeping listener ports for the process lifetime while freed-port I12 tests fire bodyless GETs at recycled ephemeral ports — a foreign GET recorded on another test's server, caught in the act under stress by both implementer and reviewer independently. Deterministic repro of the byte-identical EOF panic fails pre-fix, passes post-fix; seven mutations prove the selector and diagnostics. Known follow-up (issue to come): this fixes the one body-parsing victim; the binary-wide freed-port hazard (3 sibling tests, ~1%/run under load, worst case silently skipping I12 sanitization) needs its own change. Adversarially reviewed (APPROVE).

client_create_bug_posts_the_payload_to_rest_bug parsed reqs[0].body,
assuming the first recorded request was its POST. wiremock 0.6.5
records bodies atomically under the same lock as matching, so a partial
body is impossible - but the process-wide server pool keeps listener
ports for the process lifetime, and the freed-port I12 tests in this
binary fire bodyless GETs at recycled ephemeral ports, so a foreign GET
can land first on another test's server. That yields exactly the
reported EOF-at-column-0 panic, reproduced deterministically by
injecting one such GET. The test now selects the sole recorded POST
/rest/bug and asserts a non-empty body before parsing, so a future
failure names what actually went wrong.

Closes #93
@plusky
plusky merged commit dd5e9a5 into main Aug 18, 2026
13 checks passed
@plusky
plusky deleted the fix/issue-93 branch August 18, 2026 13:45
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.

Flaky: client_create_bug_posts_the_payload_to_rest_bug parses an empty recorded body under load

1 participant