Skip to content

ci(fewer-jobs): batch the small per-PR jobs so the sharded suites stop queueing - #457

Merged
astubbs merged 16 commits into
masterfrom
ci/fewer-per-pr-jobs
Sep 7, 2026
Merged

astubbs merged 16 commits into
masterfrom
ci/fewer-per-pr-jobs

Conversation

@astubbs

@astubbs astubbs commented Sep 7, 2026 •

Copy link
Copy Markdown
Owner

Description

The big suites were queueing behind the small jobs. This repo is public on the
free plan, whose ceiling is 20 concurrent jobs across the whole account, and a
single PR push was launching more than that on its own before any other PR
pushed. Sharding the heavy suites made each one faster and made the crowding
worse.

So this batches the small jobs. Each fold is its own commit, and each keeps
every check that ran before:

Fold Becomes
Copyright header check, quarantine: audit, docs data: audit deleted - repo: hygiene already ran those gates
PR Checklist steps of repo: hygiene
dups: clones, dups: similarity, deps: vulnerabilities one scan: repo job
static: infer, static: spotbugs one static: analysis job
deps: whole-tree CVE scan (the PR half) a step of scan: repo
Mutation Tests (PIT, PR-scoped) a step of scan: repo

What changed is the number of jobs: entries a pull_request event starts.
Read it off any ref rather than off this sentence:

gh api repos/astubbs/parallel-consumer/commits/<sha>/check-runs --jq '.check_runs[].name'

Every batched job still reports every failure. Each folded step is guarded
if: ${{ !cancelled() }}, so a red first step never hides the ones behind it,
and the job conclusion aggregates them. No verdict step, because the platform
already does that job. No new continue-on-error.

The deletions were duplicates, and the fold closed a hole

repo: hygiene runs bin/check-all.sh --with-tests, which discovers gates by
glob, so the copyright, quarantine-registry, quarantine-owners and docs-data
gates were each running twice on every push. Evidence before deletion: master
run 34066495360 shows all four, and their self-tests, passing inside the sweep.

The dedicated jobs had been papering over something. check-all.sh exits 0 when
a gate reports CANNOT, so a missing tool on the hosted image would have read as
a pass, and those jobs hid it by installing what they needed explicitly. The
sweep now takes --strict, which fails on a CANNOT, and asserts its tools up
front.

What is owed at merge, and what is not

Required status-check contexts disappear and two arrive. The authoritative
lists, and the ordering in both directions, are in
docs/inflight/ci-fewer-jobs-ruleset-edits.md, which also carries the command
that derives them from the live ruleset. Removals happen in the same sitting as
the merge; additions only once a PR has produced the new context. Get it
backwards and every PR in the repo pends on a check nothing emits.

One context vanishes with no ruleset edit owed at all. The PIT lane was
deliberately never required, because continue-on-error makes requiring it
vacuous, and the note says so explicitly so nobody diffing the checks list goes
hunting for a removal that was never needed.

Review, and what changed after it

The @claude route was asked four times and errored out every time without
producing a review, so Codex reviewed this instead - against 1bfa32b21,
not the current head. It raised four findings, all of them fair, all fixed in
their own commits with a control arm each:

  • the ruleset note stored derived counts that could drift into an incomplete
    ruleset edit - removed, lists kept, deriving command added
  • --strict had no regression case in bin/test-check-all.sh, so a regression
    accepting CANNOT would have left repo: hygiene green while folded gates
    measured nothing - four arms added, checked against the pre---strict script
  • a prepare-deps failure could skip the required scan: repo job, and a
    skipped required check pends forever, wedging the PR - the batched jobs now
    name a status function so they run and report when the cache lane fails
  • the new trigger assertion was satisfied by a literal inside a comment, so it
    did not protect its stated invariant - it now parses the on: block, proven
    by deleting the real trigger and watching the old form still pass

Those four fixes are themselves unreviewed, which this repo has a name for.
Master was also merged in after the review, resolving one conflict in
docs/inflight/test-untracked-ci-flakes.md where both sides had edited adjacent
rows about different tests; both were kept.

What this does not do

It does not get a single push under the cap. CodeQL's default setup adds four
analyze jobs that compete for the same slots, and both Python and JavaScript
have real source here, so none of them is idle. Closing the remaining gap is no
longer a batching question: it is either a coverage decision or a plan decision,
since GitHub Pro doubles the ceiling.

The prepare-deps cache job was going to be the last fold, and it was refused.
It is the recorded fix for the Azure west-US Maven Central timeout, where an
uncached artifact hangs for four minutes per attempt, and
#379 added a step to it that an open branch depends on.
Removing it would have reinstated a diagnosed failure to save one slot.

The duplicated JDK-and-cache setup block across the jobs in maven.yml is left
alone and registered in docs/refactoring.md, together with the measurement
showing why neither duplication engine reports it.

Checklist

  • Docs updated - docs/ci.md, .github/workflows/README.md and the affected docs/inflight/ notes track every fold; the live prose that named a deleted job now names its successor
  • User-facing feature documentation data added under docs/features/ - N/A - CI topology, nothing a user of the library can observe
  • Tests added/updated - bin/test-check-all.sh gained the --strict regression arms; QuarantinedAnnotationContractTest now parses the workflow trigger instead of grepping the file text; both changes carry a control arm that fails without the fix
  • docs/inflight/ working note started at the PR's first commit - docs/inflight/ci-fewer-jobs-ruleset-edits.md, opened with the first fold and extended by each one after it
  • Title & body reflect the final content of this PR
  • Ran ce-simplify and ce-code-review locally - N/A - Codex reviewed the PR instead; the @claude route errored on every attempt without producing a review

astubbs and others added 7 commits September 7, 2026 11:41
…te jobs into repo: hygiene

Three per-PR jobs ran gates that `repo: hygiene` already runs in its
`bin/check-all.sh --with-tests` sweep: `Copyright header check`
(copyright.yml, deleted), `quarantine: audit` and `docs data: audit`
(maven.yml, deleted). Every PR push launched them twice. Master run
34066495360 shows all four gates and their self-tests `ok` inside the
sweep before this deletion.

Why it matters: the repo is public on the free plan, whose cap is 20
concurrent jobs, and a PR push launched 27 of ours plus 3 CodeQL
analyzes. The big sharded suites were queueing behind one-minute jobs.
This is the first cut of the ce-optimize run `ci-fewer-jobs`: 27 -> 24.

What the fold had to carry over so nothing quietly stops running:
- COPYRIGHT_CHECK_REQUIRE_FORK_POINT=1 and an explicit PyYAML
  assertion on the hygiene job, mirroring its shellcheck one.
- check-all.sh gains --strict: a CANNOT (exit 2, cannot run) fails
  the sweep. Without it a missing tool on the hosted image would have
  read as a pass, because check-all exits 0 with a CANNOT among
  passes. CI runs strict; the local default is unchanged.
- No token added to hygiene: check-quarantine-owners.sh is advisory
  there, and quarantine-lane.yml (required `tests`) already runs both
  quarantine gates with a token on every push.

The three deleted job names are required checks in the master ruleset.
docs/inflight/ci-fewer-jobs-ruleset-edits.md lists the removals and the
merge-time ordering; a required context nothing produces leaves every
PR pending. Two citations of the deleted workflow were repaired: the
live docs/copyright.md reworded, the dated solution record given a
history pointer per docs/citations.md.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
`PR Checklist` (pr-checklist.yml, deleted) ran eleven steps in its own
job on every PR push: three bin/test-* self-tests that the hygiene
sweep already runs, a Node compile-check, the gate-module unit tests,
the marker-index check, and five github-script gates that read the PR
body and diff. All of them now run as steps of `repo: hygiene`.
Second cut of the ce-optimize run `ci-fewer-jobs`: 24 -> 23 jobs.

What the fold had to preserve:
- Triggers are the union. The checklist ran on `edited` because its
  gates read the PR body; hygiene now does too, so a body edit still
  re-evaluates them (and re-runs the macOS lane, an accepted cost).
- A concurrency group per PR, keyed on the PR number or the sha so
  master pushes never cancel each other.
- Read-only token. Hygiene held no token by design; the checklist
  needs contents+pull-requests read. No write scope was added - the
  sweep runs PR-authored scripts, and the reviewer-isolation rule in
  docs/ci.md forbids a write grant beside them.
- persist-credentials: false on the checkout. Nothing in the sweep
  uses the checkout credential; gh reads GH_TOKEN and the one fetch
  is anonymous against a public remote.
- The github-script gates are guarded to pull_request events; the
  tree-only steps also run on master pushes, which is more coverage.

Why hygiene and not the other PR-metadata job: `Check PR Dependencies`
needs checks: write and a `closed` trigger to unblock child PRs when a
parent merges, and PR-authored steps must not sit beside a write grant.
The two review-gate jobs each produce a required check with its own
semantics. Recorded in docs/inflight/ci-fewer-jobs-ruleset-edits.md,
which now lists four required contexts to remove at merge time.

The old job name was cited as the authoritative gate across AGENTS.md,
bin/, docs/ and the PR template; those live references now name
`repo: hygiene`, and the two dated records that cited the deleted file
carry a history pointer per docs/citations.md.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
… job

`dups: clones`, `dups: similarity` and `deps: vulnerabilities` each
took a runner slot for a scan that finishes in well under two minutes,
with no Maven build between them. They are now three steps of one
`scan: repo` job in maven.yml: dependency review first because it is
the fastest signal, then the two duplicate detectors. Third cut of the
ce-optimize run `ci-fewer-jobs`: 23 -> 21 jobs per PR push.

Fail at the end, report everything: every scanner step is guarded with
`!cancelled()`, so a red first scanner never hides the second or the
third, and the job conclusion aggregates them - no verdict step, no
continue-on-error. One full-depth checkout serves all three (both
duplicate tools compare against the base). The job restates the
contents: read and pull-requests: write scopes the clones job carried;
maven.yml already granted those workflow-wide, so nothing widened.

Each step keeps the name of the job it replaces. The log then reads
as the checks list used to, and the sentences across docs/inflight/
of the form "dups: clones found X on astubbs#NNN" stay literally true:
only the check name changed. The explanatory comment blocks moved with
their steps.

Three required contexts go and one arrives; the ordering is in
docs/inflight/ci-fewer-jobs-ruleset-edits.md - remove at merge time,
promote `scan: repo` once a PR against merged master has produced it.
bin/check-pr-analysis-surfaces.sh reads annotations by count and
comments by bot type, never by these names, so it is unaffected.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
The two build-dependent analysers each waited on the dependency cache
job, then restored the same Maven cache with a byte-identical step, to
run for about a minute and about six. They are now two steps of one
`static: analysis` job: Infer first because it is the cheaper signal,
then SpotBugs with its annotation and sticky-comment steps unchanged.
Fourth and last cut of the ce-optimize run `ci-fewer-jobs`: 21 -> 20
jobs per PR push, and 27 -> 20 across the run.

Fail at the end, report everything: each analyser step is guarded with
`!cancelled()`, so a red Infer never hides SpotBugs, and the two
reporting steps that were `always()` are now `!cancelled()` for the
same reason. The SpotBugs summary step keeps its deliberate
`continue-on-error`. The job conclusion aggregates; no verdict step.

This is the last safe fold of build-dependent lanes. The two together
run to roughly seven minutes against a Unit Tests critical path of
about nine, so the headroom is nearly spent - folding the PIT lane in
as well would blow through it, because that lane runs to half an hour
whenever it has something to mutate.

Permissions narrowed rather than widened: neither job declared any, so
both inherited the workflow-wide grant. The merged job declares only
what the two used - contents read, pull-requests write for the sticky
comment, checks write for the annotations - and drops actions: read,
which neither analyser touched.

A check rename breaks consumers that match by name, even when the step
names are preserved. bin/check-pr-analysis-surfaces.sh filters check
runs through a name regex, and `racerd` had been dead in it since the
job became `static: infer`, dropping that surface from the listing with
nothing to say so. The pattern now names the live checks and carries
the rule.

Nine required contexts now go and two arrive;
docs/inflight/ci-fewer-jobs-ruleset-edits.md carries the list and the
ordering for both directions.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…n PRs

The OSS Index audit took a runner slot of its own on every PR to do
about two minutes of work. On PRs it is now the last step of
`scan: repo`, after the three scanners have reported. dependency-audit.yml
keeps the job for its weekly schedule and its dispatch, which is where
the lane earns its keep: a new advisory arrives without anybody
pushing. Only the pull_request trigger left. Fifth cut of the
ce-optimize run `ci-fewer-jobs`: 20 -> 19 jobs per PR push.

The fork and Dependabot guard is carried over exactly. A job-level
`if:` cannot express "skip seven of these ten steps", so the condition
became a job-level env var that each CVE step reads. A PR from a fork
or from Dependabot gets no CVE steps at all, which is what it got
before when it got no job, and pays none of the setup cost. A secret
that is present but empty still reds the build from the preflight.

Cost: `scan: repo` now needs the dependency cache, so it gains
`needs: prepare-deps` and runs to roughly four and a half minutes
against a Unit Tests critical path of about nine.

Two things this leaves behind, both recorded in the workflow headers:
the three no-build scanners now start behind the cache job rather than
immediately, which the next commit in this series removes along with
the cache job itself; and the five audit steps are duplicated across
the two workflows, so each header says to change both or neither.
Sharing them wants a composite action, which is not this change.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
The PR-scoped mutation lane held a runner slot to do about eleven
seconds of work on most pushes, because it usually finds no changed
core class in a decidable package to mutate. It is now the last step
of `scan: repo`, behind everything that reports: the scanners and the
CVE audit have already posted before PIT starts. Sixth cut of the
ce-optimize run `ci-fewer-jobs`: 19 -> 18 jobs per PR push.

Its semantics are carried over exactly, because they are the whole
point of the lane. The exit-code handling is unchanged, including the
branch that turns "could not run, or ran and scored nothing" into a
failure rather than a green tick. The step keeps continue-on-error, so
a PIT verdict still cannot red the required `scan: repo` job - the
same reason requiring the old job would have been vacuous. No ruleset
edit is owed for this one, and the working note says so, so nobody
diffing the checks list before and after goes hunting for a missed
removal.

The step bound is better than what it replaces. The job used to carry
a 30-minute cap, and a run that hit it was cancelled outright, which
is one of the sightings recorded against the untracked-flakes note. A
20-minute step bound ends the step and lets the job report instead,
and it sits above the longest scored run on record.

One guard needed widening. The JDK and cache-restore steps sat behind
the CVE credentials condition from the previous commit, and PIT runs
on fork and Dependabot pull requests, which is exactly where that
condition is false. They now run unconditionally, so PIT has a JDK
where the CVE steps skip. Everything touching OSS Index stays guarded.

The analysis-surfaces script matched check runs on a `Mutation`
alternation that now names nothing, the same way `racerd` did after an
earlier rename. Removed, with a note that the survivor table hangs off
`scan: repo` now.

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

PackageVersionScoreDetails
actions/actions/github-script 7.*.* 🟢 6.7
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Maintained⚠️ 00 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 1dependency not pinned by hash detected -- score normalized to 1
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
SAST🟢 10SAST tool is run on all commits
Branch-Protection🟢 6branch protection is not maximal on development and all release branches

Scanned Files

  • .github/workflows/pr-checklist.yml
  • .github/workflows/repo-hygiene.yml

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

✅ Duplicate Code Report

Two engines run in parallel for cross-validation. Each has its own thresholds tuned to its baseline - the real safety net is the per-engine "max increase vs base" check.

✅ PMD CPD

PR Base Change
Clones 26 26 ➖ 0
Duplicated lines 857 857 ➖ 0
Duplication 0.37% 0.37% ➖ 0
Rule Limit Status
Max duplication 0.5% ✅ Pass (0.37%)
Max increase vs base +0.1% ✅ Pass (+0.00%)

No new clones introduced by this PR.

✅ jscpd (language-agnostic)

PR Base Change
Clones 96 96 ➖ 0
Duplicated lines 1361 1361 ➖ 0
Duplication 0.82% 0.82% ➖ 0
Rule Limit Status
Max duplication 2% ✅ Pass (0.82%)
Max increase vs base +0.1% ✅ Pass (+0.00%)

No new clones introduced by this PR.

Powered by astubbs/duplicate-code-cross-check

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

📌 Duplicate code detection tool report

The tool analyzed your source code and found the following degree of similarity between the files:

🆕 New file similarities introduced

File A File B Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java 30.4
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ProgressProbe.java 30.1

🔺 Increased similarities

File A File B Base (%) PR (%) Change
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java 43.6 44.4 +0.8
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java 39.3 39.9 +0.6
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java 38.8 39.1 +0.3
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorConfigurationTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java 37.1 37.3 +0.3
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 35.5 35.8 +0.3
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 35.1 35.3 +0.2
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 36.0 36.2 +0.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 34.0 34.2 +0.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java 30.1 30.3 +0.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java 40.0 40.2 +0.2
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java 32.8 32.9 +0.1
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 44.8 44.9 +0.1
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java 32.4 32.6 +0.1
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionTimeoutsTest.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 33.3 33.4 +0.1
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java 41.2 41.3 +0.1
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ExternalEnginePipelineBufferTest.java 41.2 41.2 +0.1
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardAvailableCountOwnershipTest.java 34.9 34.9 +0.1
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeIT.java parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkIT.java 39.8 39.8 +0.1
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java 33.1 33.1 +0.0
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/BatchTestBase.java parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java 30.4 30.5 +0.0

...and 76 more

Full similarity report
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/BootstrapResetTripleWriteProbes.java

📄 jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/BootstrapResetTripleWriteProbes.java

File Similarity (%)
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CommitPathVisibilityProbes.java 38.56
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/SeenSucceededOrderingProbes.java 34.64
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CalibrationProbes.java

📄 jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CalibrationProbes.java

File Similarity (%)
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CommitPathVisibilityProbes.java 37.48
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/SeenSucceededOrderingProbes.java 36.63
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CommitPathVisibilityProbes.java

📄 jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CommitPathVisibilityProbes.java

File Similarity (%)
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/SeenSucceededOrderingProbes.java 55.17 ⚠️
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/BootstrapResetTripleWriteProbes.java 38.56
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CalibrationProbes.java 37.48
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/SeenSucceededOrderingProbes.java

📄 jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/SeenSucceededOrderingProbes.java

File Similarity (%)
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CommitPathVisibilityProbes.java 55.17 ⚠️
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/CalibrationProbes.java 36.63
jcstress-poc/src/main/java/bz/stub/parallelconsumer/jcstress/BootstrapResetTripleWriteProbes.java 34.64
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerException.java 55.6 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 37.61
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetDecodingError.java 32.05
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java 30.06
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java 30.06
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 55.19 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java 55.12 ⚠️
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 43.23
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java 41.21
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TestParallelEoSStreamProcessor.java 33.32
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java 32.89
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCModule.java 31.41
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 55.12 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 48.08
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java 41.24
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java 38.65
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 33.99
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PCRetriableException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PCRetriableException.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/PCRetriableExceptionTest.java 32.43
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtils.java 30.68
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java 55.6 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 46.66
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerOptions.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerOptions.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 32.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 55.19 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java 52.04 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java 48.08
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TestParallelEoSStreamProcessor.java 40.32
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 34.23
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCModule.java 33.6
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 52.04 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 41.21
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java 38.75
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java 38.65
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContext.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContext.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContextInternal.java 46.12
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java 40.17
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 35.78
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java 30.3
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContext.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContext.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContextInternal.java 30.03
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContextInternal.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContextInternal.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContext.java 46.12
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/RecordContext.java 30.03
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java 41.29
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java 39.23
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java 37.09
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/BrokerPollSystem.java 35.73
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java 33.97
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerOptions.java 32.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ConsumerManager.java 31.63
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 30.38
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionState.java 30.19
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/BrokerPollSystem.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/BrokerPollSystem.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 35.73
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerPauseCacheTest.java 30.16
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ConsumerManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ConsumerManager.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 31.63
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/DynamicLoadFactor.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/DynamicLoadFactor.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LoadFactorCeilingReportingTest.java 30.33
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ExternalEnginePipelineBufferTest.java 41.25
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 39.23
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelEoSStreamProcessor.java 35.24
parallel-consumer-reactor/src/main/java/bz/stub/parallelconsumer/reactor/ReactorProcessor.java 30.36
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetDecodingError.java 49.42
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java 47.53
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelConsumerException.java 46.66
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java 37.61
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCInternalRuntimeException.java 36.88
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodingNotSupportedException.java 36.29
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java 31.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCInternalRuntimeException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCInternalRuntimeException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 36.88
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCModule.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCModule.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 33.6
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 31.41
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PCModuleCollaboratorOwnershipTest.java 30.16
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 34.17
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 33.97
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java 30.3
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtils.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtils.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtilsTest.java 35.56
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/JavaUtils.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/JavaUtils.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/CollectionUtils.java 35.12
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtils.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtils.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtilsTest.java 33.08
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PCRetriableException.java 30.68
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/metrics/PCMetrics.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/metrics/PCMetrics.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/metrics/PCMetrics859Test.java 41.21
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/MetricsTeardownCannotBreakCloseTest.java 30.81
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java 31.57
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 31.2
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV2EncodingNotSupported.java 30.77
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java 30.06
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnsupportedOffsetEncodingException.java 36.9
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnknownOffsetMetadataMagicException.java 31.73
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodedOffsetPair.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodedOffsetPair.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetMapCodecManager.java 36.74
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodingNotSupportedException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodingNotSupportedException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 36.29
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 47.53
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetDecodingError.java 44.19
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java 33.5
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV2EncodingNotSupported.java 32.65
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetDecodingError.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetDecodingError.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/InternalException.java 49.42
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java 44.19
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java 32.05
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetEncoding.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetEncoding.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnknownOffsetMetadataMagicException.java 37.89
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/WorkManagerOffsetMapCodecManagerTest.java 31.1
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetMapCodecManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetMapCodecManager.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/EncodedOffsetPair.java 36.74
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV2EncodingNotSupported.java 57.96 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java 33.5
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java 31.57
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ExceptionInUserFunctionException.java 30.06
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV2EncodingNotSupported.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV2EncodingNotSupported.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/RunLengthV1EncodingNotSupported.java 57.96 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/NoEncodingPossibleException.java 32.65
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/BitSetEncodingNotSupportedException.java 30.77
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnknownOffsetMetadataMagicException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnknownOffsetMetadataMagicException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnsupportedOffsetEncodingException.java 49.98
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetEncoding.java 37.89
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataException.java 31.73
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnsupportedOffsetEncodingException.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnsupportedOffsetEncodingException.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/UnknownOffsetMetadataMagicException.java 49.98
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataException.java 36.9
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionState.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionState.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java 32.26
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionStateManager.java 32.11
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 30.19
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionStateManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionStateManager.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java 42.93
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionState.java 32.11
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java 44.41
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java 39.44
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java 36.96
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardAvailableCountOwnershipTest.java 34.93
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java 32.57
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java 30.17
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 44.41
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java 40.24
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java 38.53
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java 36.87
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerRevokeSweepNpeTest.java 31.35
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkClaimStateMachineTest.java 49.54
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TransactionalBulkCommitTest.java 37.05
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 32.57
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java

📄 parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkManager.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionStateManager.java 42.93
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 37.09
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 36.96
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java 36.87
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/PartitionState.java 32.26
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/KafkaSanityTests.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/KafkaSanityTests.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/LoopingResumingIteratorTest.java 34.48
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/MultiInstanceHighVolumeTest.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/MultiInstanceHighVolumeTest.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/VeryLargeMessageVolumeTest.java 58.24 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionAndCommitModeTest.java 45.5
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/Rebalance857CommitSyncDeadlockProbeBase.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/Rebalance857CommitSyncDeadlockProbeBase.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/RebalanceEoSDeadlockTest.java 33.01
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/RebalanceEoSDeadlockTest.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/RebalanceEoSDeadlockTest.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/Rebalance857CommitSyncDeadlockProbeBase.java 33.01
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionAndCommitModeTest.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionAndCommitModeTest.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/VeryLargeMessageVolumeTest.java 53.4 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/MultiInstanceHighVolumeTest.java 45.5
parallel-consumer-vertx/src/test-integration/java/bz/stub/parallelconsumer/vertx/integrationTests/VertxConcurrencyIT.java 30.17
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionTimeoutsTest.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionTimeoutsTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 33.39
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalCrashReplayIT.java 46.23
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalPartialResultSetIT.java 36.58
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java 33.79
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalVisibilityIT.java 32.56
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java 31.17
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalCrashReplayIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalCrashReplayIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java 46.23
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java 35.28
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java 33.01
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 35.33
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java 33.1
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalCrashReplayIT.java 33.01
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java 31.17
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalPartialResultSetIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalPartialResultSetIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java 36.58
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalVisibilityIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalVisibilityIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java 32.56
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/VeryLargeMessageVolumeTest.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/VeryLargeMessageVolumeTest.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/MultiInstanceHighVolumeTest.java 58.24 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionAndCommitModeTest.java 53.4 ⚠️
parallel-consumer-vertx/src/test-integration/java/bz/stub/parallelconsumer/vertx/integrationTests/VertxConcurrencyIT.java 36.37
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java 42.67
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkKeyOrderIT.java 40.75
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java 37.36
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java 33.8
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkIT.java 32.99
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ProgressProbe.java 30.08
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java 43.29
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 42.67
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java 39.09
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkKeyOrderIT.java 51.6 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java 43.29
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 37.36
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java 33.88
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeDrainIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeDrainIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkDrainIT.java 38.61
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkIT.java 39.83
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkDrainIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkDrainIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeDrainIT.java 38.61
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkCooperativeIT.java 39.83
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 32.99
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkKeyOrderIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosRevokeUnderWorkKeyOrderIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java 51.6 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 40.75
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosChurnStormIT.java 39.09
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosKeyOrderIT.java 33.88
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 33.8
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ProgressProbe.java 31.5
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCap.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCap.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCapIT.java 51.22 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCapIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCapIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/DiagnosticQuietCap.java 51.22 ⚠️
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedger.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedger.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedgerIT.java 30.53
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedgerIT.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedgerIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/KeyOrderLedger.java 30.53
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ProgressProbe.java

📄 parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ProgressProbe.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/ChaosScenarioBase.java 31.5
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/chaostests/AbstractRevokeUnderWorkScenario.java 30.08
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorConfigurationTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorConfigurationTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java 37.34
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorTestBase.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorTestBase.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessorTest.java 31.77
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/BatchTestBase.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/BatchTestBase.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java 30.48
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java 44.41
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java 39.93
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitRejectionTestBase.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitRejectionTestBase.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitResponseTimeoutSymptomTest.java 30.58
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitResponseTimeoutSymptomTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitResponseTimeoutSymptomTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerTestBase.java 32.56
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitRejectionTestBase.java 30.58
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java

File Similarity (%)
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorBatchTest.java 52.48 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyBatchTest.java 50.69 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/VertxBatchTest.java 44.51
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/BatchTestBase.java 30.48
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ForeignThread.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ForeignThread.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTestBase.java 34.91
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/JStreamLiveResultStreamTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/JStreamLiveResultStreamTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtilsTest.java 30.2
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcBoundaryProbe.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcBoundaryProbe.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcContextPropagationTest.java 35.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcContextPropagationTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcContextPropagationTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MdcBoundaryProbe.java 35.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerCommitTimeoutTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerCommitTimeoutTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerSaslAuthenticationTest.java 44.31
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerSaslAuthenticationTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerSaslAuthenticationTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerCommitTimeoutTest.java 44.31
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerTestBase.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/MockConsumerTestBase.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CommitResponseTimeoutSymptomTest.java 32.56
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/PCRetriableExceptionTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/PCRetriableExceptionTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PCRetriableException.java 32.43
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSSStreamProcessorRebalancedTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSSStreamProcessorRebalancedTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessorTest.java 32.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessorTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessorTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ParallelEoSSStreamProcessorRebalancedTest.java 32.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorTestBase.java 31.77
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java 39.93
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java 30.39
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineRegistryScriptTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CheckQuarantineOwnersScriptTest.java 44.41
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/QuarantineLaneReportScriptTest.java 30.39
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilter.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilter.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilterTest.java 35.35
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilterTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilterTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/RunTagFilter.java 35.35
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 87.24 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 86.86 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 86.86 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 82.0 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 82.0 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TransactionalClaim.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalCrashReplayIT.java 35.28
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalBatchVisibilityIT.java 33.79
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java 33.1
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerCloseOwnershipTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerCloseOwnershipTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTest.java 35.11
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerPauseCacheTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerPauseCacheTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/BrokerPollSystem.java 30.16
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/EpochAndRecordsMapRaceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/EpochAndRecordsMapRaceTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerStaleContainerTest.java 33.5
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ExternalEnginePipelineBufferTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ExternalEnginePipelineBufferTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java 41.25
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LastCommitTimeFenceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LastCommitTimeFenceTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateDirtyFlagFenceTest.java 39.94
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LoadFactorCeilingReportingTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LoadFactorCeilingReportingTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/DynamicLoadFactor.java 30.33
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/MetricsTeardownCannotBreakCloseTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/MetricsTeardownCannotBreakCloseTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/metrics/PCMetrics859Test.java 35.77
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/metrics/PCMetrics.java 30.81
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PCModuleCollaboratorOwnershipTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PCModuleCollaboratorOwnershipTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/PCModule.java 30.16
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 44.92
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java 40.17
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java 32.94
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java 36.22
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java 32.94
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProducerManagerTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/PollContextInternalTest.java 44.92
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ProduceLockHandover.java 36.22
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/PollContextInternal.java 35.78
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionalEagerProcessingIT.java 35.33
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ProducerManager.java 34.17
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionTimeoutsTest.java 33.39
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 30.38
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/SubmitWorkToPoolShutdownRaceTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/AbstractParallelEoSStreamProcessor.java 41.29
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/AbstractParallelEoSStreamProcessorConfigurationTest.java 37.34
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TestParallelEoSStreamProcessor.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TestParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 40.32
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 33.32
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ConsumerManagerCloseOwnershipTest.java 35.11
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTestBase.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/ThreadConfinedConsumerTestBase.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/ForeignThread.java 34.91
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TransactionalBulkCommitTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TransactionalBulkCommitTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkClaimStateMachineTest.java 74.29 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerTest.java 44.91
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java 37.05
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/CollectionUtils.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/CollectionUtils.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/JavaUtils.java 35.12
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtilsTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtilsTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/Java8StreamUtils.java 35.56
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/JStreamLiveResultStreamTest.java 30.2
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/LoopingResumingIteratorTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/LoopingResumingIteratorTest.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/KafkaSanityTests.java 34.48
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtilsTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtilsTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/utils/ThrowableUtils.java 33.08
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/metrics/PCMetrics859Test.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/metrics/PCMetrics859Test.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/metrics/PCMetrics.java 41.21
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/MetricsTeardownCannotBreakCloseTest.java 35.77
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/EncoderOutputSurvivesDecodeValidationTest.java 30.24
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/EncoderOutputSurvivesDecodeValidationTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/EncoderOutputSurvivesDecodeValidationTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/CorruptOffsetMetadataTest.java 30.24
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetCodecTestUtils.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetCodecTestUtils.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/WorkManagerOffsetMapCodecManagerTest.java 30.06
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureUnitTest.java 36.89
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureUnitTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureUnitTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetEncodingBackPressureTest.java 36.89
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/WorkManagerOffsetMapCodecManagerTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/WorkManagerOffsetMapCodecManagerTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/offsets/OffsetEncoding.java 31.1
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/offsets/OffsetCodecTestUtils.java 30.06
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/LincheckToolchainProbeTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/LincheckToolchainProbeTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java 30.07
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/OffsetEncoderWidenedRangeRaceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/OffsetEncoderWidenedRangeRaceTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitEncodeShift894Test.java 44.06
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingEncodeWindowState.java 36.56
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitEncodeShift894Test.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitEncodeShift894Test.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/OffsetEncoderWidenedRangeRaceTest.java 44.06
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitShiftCompounding894Test.java 39.96
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateLincheckTest.java 30.18
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitShiftCompounding894Test.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitShiftCompounding894Test.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitEncodeShift894Test.java 39.96
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateDirtyFlagFenceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateDirtyFlagFenceTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/LastCommitTimeFenceTest.java 39.94
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateLincheckTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateLincheckTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java 32.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateCommitEncodeShift894Test.java 30.18
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ProcessingShardStaleReplacement909Test.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ProcessingShardStaleReplacement909Test.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerStaleContainerTest.java 44.72
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingCommitCycleState.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingCommitCycleState.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingEncodeWindowState.java 58.84 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingEncodeWindowState.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingEncodeWindowState.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RacingCommitCycleState.java 58.84 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/OffsetEncoderWidenedRangeRaceTest.java 36.56
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueLincheckTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueLincheckTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java 40.19
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerStaleCheckDoubleLookupTest.java 43.76
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java 40.24
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java 33.77
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 30.17
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardAvailableCountOwnershipTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardAvailableCountOwnershipTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 34.93
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java 31.27
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueLincheckTest.java 40.19
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/PartitionStateLincheckTest.java 32.26
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerLincheckTest.java 31.21
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/LincheckToolchainProbeTest.java 30.07
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerRevokeSweepNpeTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerRevokeSweepNpeTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java 31.35
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerStaleContainerTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerStaleContainerTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ProcessingShardStaleReplacement909Test.java 44.72
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/EpochAndRecordsMapRaceTest.java 33.5
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardPopulationRaceTest.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ProcessingShard.java 39.44
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/ShardManager.java 38.53
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java 33.77
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardAvailableCountOwnershipTest.java 31.27
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkClaimStateMachineTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkClaimStateMachineTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TransactionalBulkCommitTest.java 74.29 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerTest.java 53.81 ⚠️
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/state/WorkContainer.java 49.54
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerLincheckTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerLincheckTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/ShardManagerLincheckTest.java 31.21
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerStaleCheckDoubleLookupTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerStaleCheckDoubleLookupTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/RetryQueueRequeueWindowTest.java 43.76
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerTest.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkManagerTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/state/WorkClaimStateMachineTest.java 53.81 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/internal/TransactionalBulkCommitTest.java 44.91
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/CommitHistorySubject.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/CommitHistorySubject.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/LongPollingMockConsumerSubject.java 36.25
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/LongPollingMockConsumerSubject.java

📄 parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/LongPollingMockConsumerSubject.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/truth/CommitHistorySubject.java 36.25
parallel-consumer-examples/parallel-consumer-example-core/src/main/java/bz/stub/parallelconsumer/examples/core/CoreApp.java

📄 parallel-consumer-examples/parallel-consumer-example-core/src/main/java/bz/stub/parallelconsumer/examples/core/CoreApp.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-reactor/src/main/java/bz/stub/parallelconsumer/examples/reactor/ReactorApp.java 35.73
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/CoreAppTest.java

📄 parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/CoreAppTest.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/ReactorAppTest.java 39.23
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/integrationTests/CoreAppMetricsIntegrationTest.java 36.57
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/VertxAppTest.java 35.08
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java

📄 parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java

📄 parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 82.0 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 81.28 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 76.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/integrationTests/CoreAppMetricsIntegrationTest.java

📄 parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/integrationTests/CoreAppMetricsIntegrationTest.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/CoreAppTest.java 36.57
parallel-consumer-examples/parallel-consumer-example-reactor/src/main/java/bz/stub/parallelconsumer/examples/reactor/ReactorApp.java

📄 parallel-consumer-examples/parallel-consumer-example-reactor/src/main/java/bz/stub/parallelconsumer/examples/reactor/ReactorApp.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-vertx/src/main/java/bz/stub/parallelconsumer/examples/vertx/VertxApp.java 63.92 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/main/java/bz/stub/parallelconsumer/examples/core/CoreApp.java 35.73
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/ReactorAppTest.java

📄 parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/ReactorAppTest.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/VertxAppTest.java 45.72
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/CoreAppTest.java 39.23
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java

📄 parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java

📄 parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 82.0 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 81.28 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 76.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/main/java/bz/stub/parallelconsumer/examples/vertx/VertxApp.java

📄 parallel-consumer-examples/parallel-consumer-example-vertx/src/main/java/bz/stub/parallelconsumer/examples/vertx/VertxApp.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-reactor/src/main/java/bz/stub/parallelconsumer/examples/reactor/ReactorApp.java 63.92 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java

📄 parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 83.48 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 79.2 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 77.79 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/VertxAppTest.java

📄 parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/VertxAppTest.java

File Similarity (%)
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/ReactorAppTest.java 45.72
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/CoreAppTest.java 35.08
parallel-consumer-mutiny/src/main/java/bz/stub/parallelconsumer/mutiny/MutinyProcessor.java

📄 parallel-consumer-mutiny/src/main/java/bz/stub/parallelconsumer/mutiny/MutinyProcessor.java

File Similarity (%)
parallel-consumer-reactor/src/main/java/bz/stub/parallelconsumer/reactor/ReactorProcessor.java 42.27
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyBatchTest.java

📄 parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyBatchTest.java

File Similarity (%)
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorBatchTest.java 81.39 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java 50.69 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/VertxBatchTest.java 48.31
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyMdcPropagationTest.java

📄 parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyMdcPropagationTest.java

File Similarity (%)
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorMdcPropagationTest.java 47.08
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyPCTest.java

📄 parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyPCTest.java

File Similarity (%)
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorPCTest.java 69.48 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java

📄 parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 86.86 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 86.1 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 85.73 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-reactor/src/main/java/bz/stub/parallelconsumer/reactor/ReactorProcessor.java

📄 parallel-consumer-reactor/src/main/java/bz/stub/parallelconsumer/reactor/ReactorProcessor.java

File Similarity (%)
parallel-consumer-mutiny/src/main/java/bz/stub/parallelconsumer/mutiny/MutinyProcessor.java 42.27
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java 30.36
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorBatchTest.java

📄 parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorBatchTest.java

File Similarity (%)
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyBatchTest.java 81.39 ⚠️
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java 52.48 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/VertxBatchTest.java 49.99
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorMdcPropagationTest.java

📄 parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorMdcPropagationTest.java

File Similarity (%)
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyMdcPropagationTest.java 47.08
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorPCTest.java

📄 parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorPCTest.java

File Similarity (%)
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyPCTest.java 69.48 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java

📄 parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 86.86 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java 86.1 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 85.73 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 82.4 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 80.93 ⚠️
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java

📄 parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 43.23
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java 42.0
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelStreamProcessor.java 38.07
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelEoSStreamProcessor.java 37.88
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelEoSStreamProcessor.java 34.23
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java 33.99
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java

📄 parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java

File Similarity (%)
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelStreamProcessor.java 43.38
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 42.0
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelStreamProcessor.java 41.24
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/ParallelStreamProcessor.java 38.75
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/JStreamParallelEoSStreamProcessor.java 32.89
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelEoSStreamProcessor.java

📄 parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelEoSStreamProcessor.java

File Similarity (%)
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelStreamProcessor.java 40.39
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 37.88
parallel-consumer-core/src/main/java/bz/stub/parallelconsumer/internal/ExternalEngine.java 35.24
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelStreamProcessor.java

📄 parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelStreamProcessor.java

File Similarity (%)
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelStreamProcessor.java 43.38
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/VertxParallelEoSStreamProcessor.java 40.39
parallel-consumer-vertx/src/main/java/bz/stub/parallelconsumer/vertx/JStreamVertxParallelEoSStreamProcessor.java 38.07
parallel-consumer-vertx/src/test-integration/java/bz/stub/parallelconsumer/vertx/integrationTests/VertxConcurrencyIT.java

📄 parallel-consumer-vertx/src/test-integration/java/bz/stub/parallelconsumer/vertx/integrationTests/VertxConcurrencyIT.java

File Similarity (%)
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/VeryLargeMessageVolumeTest.java 36.37
parallel-consumer-core/src/test-integration/java/bz/stub/parallelconsumer/integrationTests/TransactionAndCommitModeTest.java 30.17
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java

📄 parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/TestConventionsArchTest.java

File Similarity (%)
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/TestConventionsArchTest.java 87.24 ⚠️
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/TestConventionsArchTest.java 86.1 ⚠️
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/TestConventionsArchTest.java 86.1 ⚠️
parallel-consumer-examples/parallel-consumer-example-core/src/test/java/bz/stub/parallelconsumer/examples/core/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-examples/parallel-consumer-example-reactor/src/test/java/bz/stub/parallelconsumer/examples/reactor/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-examples/parallel-consumer-example-vertx/src/test/java/bz/stub/parallelconsumer/examples/vertx/TestConventionsArchTest.java 82.76 ⚠️
parallel-consumer-examples/parallel-consumer-example-metrics/src/test/java/bz/stub/parallelconsumer/examples/metrics/TestConventionsArchTest.java 81.28 ⚠️
parallel-consumer-examples/parallel-consumer-example-streams/src/test/java/bz/stub/parallelconsumer/examples/streams/TestConventionsArchTest.java 81.28 ⚠️
parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/VertxBatchTest.java

📄 parallel-consumer-vertx/src/test/java/bz/stub/parallelconsumer/vertx/VertxBatchTest.java

File Similarity (%)
parallel-consumer-reactor/src/test/java/bz/stub/parallelconsumer/reactor/ReactorBatchTest.java 49.99
parallel-consumer-mutiny/src/test/java/bz/stub/parallelconsumer/mutiny/MutinyBatchTest.java 48.31
parallel-consumer-core/src/test/java/bz/stub/parallelconsumer/CoreBatchTest.java 44.51

@codecov

codecov Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.47%. Comparing base (df3bd71) to head (8bd41a6).
⚠️ Report is 1 commits behind head on master.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #457      +/-   ##
============================================
- Coverage     83.07%   82.47%   -0.60%     
- Complexity     1350     1482     +132     
============================================
  Files            84       95      +11     
  Lines          4597     5165     +568     
  Branches        492      505      +13     
============================================
+ Hits           3819     4260     +441     
- Misses          594      711     +117     
- Partials        184      194      +10     
Flag Coverage Δ
chaos 52.75% <ø> (?)
integration 61.53% <ø> (+0.14%) ⬆️
performance 51.42% <ø> (?)
unit 78.60% <ø> (-2.91%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

[superseded - a quarantined test changed outcome] 🧪🔒 Quarantine Lane Report

Quarantined test Outcome Owner Meaning
MultiInstanceRebalanceTest.largeNumberOfInstances 🟡🎲 passed (flapper) ⚠️ unowned proves nothing - passes most runs by nature
RegistrationRaceStaleResidentIT.freshArrivalCollidingWithStaleShardResidentMustStillGetProcessed 🟡🎲 passed (flapper) ⚠️ unowned proves nothing - passes most runs by nature

🔴 expected while the owner PR is open · 🟡🎲 flapper, pass proves nothing · 🚨 a deterministic quarantined test passing means its fix landed: delete its @Quarantined annotation + docs/quarantined-tests.md entry (a merge-blocking review thread has been opened). Lane: non-gating; rules: see the Quarantine Audit check.

Updated for eb9ebe7 · run 34071716484 · 2026-09-07 01:08 UTC

Superseded by a newer quarantine lane report.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

🟢 Throughput — OK

This branch measured the same speed as master, on the one test this measures.

What Value Meaning
Compared with master 1.004 above 1.00 is faster, below is slower
Subject test took 51.0s the test under measurement
Control tests took 30.7s the other tests in this same run
Subject ÷ controls, here 1.662 not a speed - a shape that cancels machine speed
Subject ÷ controls, master 1.670 median of recent master runs
Reported rate 70242 rec/s this machine only; not comparable across runners

Allowable range 🟢 ≥ 0.70 · 🟡 0.50–0.70 (about a 30% loss) · 🔴 < 0.50 (about a 50% loss)

What the numbers mean, and what they cannot tell you

The one that gets misread. Subject ÷ controls is a shape, not a speed. 1.7 means the subject took 1.7 times as long as the control tests in the same run - it says nothing about master on its own, and a reviewer has already read it as "1.7x faster than master". Only Compared with master answers that question.

Why a shape and not a rate. A rate depends on which runner you drew. A shape does not: every test here processes a fixed number of records, so a runner twice as slow doubles the subject and the controls together and leaves their ratio alone. That is the whole trick, and it is why the reported rate is shown last and labelled as this machine only.

Reading the comparison. master ÷ this run. Above 1.00 the subject is proportionally quicker here than on master; below 1.00 it is slower. 0.50 means it takes twice as long relative to its controls - that is the failing bound, not a small one.

By conservation, not by correction. Every test in this lane processes a fixed number of records, so within one run the ratio of one test's time to another's is invariant under machine speed — a runner twice as slow doubles both terms and leaves the ratio alone. There is no machine-index correction to be wrong, because nothing needed correcting. share = subjectSeconds / controlSeconds, both from this same run.

Per-method times, not class times. A class time is work + setup, and container startup and @BeforeAll do not scale with work — they are the non-conserved term, and leaving them in breaks the invariant.

Reference is the median of 10 recent perf baseline (master) run(s), read from their artifacts. There is no committed baseline to go stale, and a share is dimensionless, so an old entry stays comparable to a new one without re-baselining. Shares observed: 1.469 – 1.765.

What this still cannot do. It removes machine-to-machine variance. It does not remove this test's own run-to-run variance, measured at about 30% on a single unchanged commit while its controls stayed within 5%. That is a property of the test, not of the comparison, and no arithmetic here can touch it — which is why the reference is a median and the bounds are deliberately coarse. 🟡 means look at this; only 🔴 is outside the measured spread.

Runs used: 7a8dd92, df3bd71, 440b9bd, 11e0500, e20e898, 9999144, cc36b64, 1941cdf, 05c02bb, 5706686

Since the previous push: ratio 1.092 -> 1.004, share 1.528 -> 1.662, rate 95453 -> 70242 (-26.4%). One push of difference sits inside this test's measured spread - read it as movement, not as a result.

Updated for 8bd41a6 · run 34080380729 · 2026-09-07 03:49 UTC

@astubbs astubbs left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs a bit

astubbs and others added 3 commits September 7, 2026 13:39
… fold cannot redefine its default

The copyright scanner's self-test asserts BOTH arms of the fork-point rule: a
missing fork point warns and skips (exit 0) by default, and hard-fails (exit 2)
under COPYRIGHT_CHECK_REQUIRE_FORK_POINT=1. The default-behaviour case set no
variable at all, so it asserted whatever the ambient environment said the
default was - which was fine for as long as nothing set it.

The fold of copyright.yml into `repo: hygiene` set it. The deleted workflow put
COPYRIGHT_CHECK_REQUIRE_FORK_POINT on the SCAN STEP only, so its self-test step
never saw it; repo-hygiene.yml carries it on the JOB-level env block, where
every step inherits it - including the sweep step, `bin/check-all.sh
--with-tests --strict`, which discovers and runs this self-test by glob. Strict
mode became the ambient default, the fixture repos deliberately have no fork
point, and the assertion read "expected '0', got '2'".

The default case now clears the variable explicitly with `env -u`, and says at
the fix site why that is load-bearing. This STRENGTHENS the test rather than
relaxing it: a case asserting a default must define the environment it is
asserting about, not inherit one. Nothing was removed, nothing accepts exit 2
now that did not before, and the strict-mode case immediately below - which sets
the variable explicitly, for the same reason - is untouched.

CONTROL ARM. With the `env -u` reverted in place and everything else identical,
`COPYRIGHT_CHECK_REQUIRE_FORK_POINT=1 bash bin/test-check-copyright-headers.sh`
fails on exactly that one case (expected '0', got '2') and exits 1; with it
restored, both arms exit 0. The clean arm passes either way, which is why this
was green on a laptop and red only in CI.

SAME DEFECT CLASS, SWEPT. The `repo: hygiene` job sets two variables at job
level, PR_NUMBER and COPYRIGHT_CHECK_REQUIRE_FORK_POINT. Every `bin/test-*.sh`
and `bin/test-*.mjs` was checked for reads of either. Only two self-tests read
one at all: this one, and bin/test-check-branch-self-reference.sh, which already
sets PR_NUMBER explicitly on all three of its gate invocations and unsets the
GITHUB_* variables beside them - with a comment recording this same lesson from
the last time it bit. No other self-test is exposed. The wider sweep for
uncontrolled ambient reads across all 34 self-tests turned up only
locally-assigned names and INFER_JDK / CI in bin/test-check-infer.sh, neither of
which the job sets.

The stale citation at the fix site is repaired in passing: the authoritative
gate it named, copyright.yml, is a file this branch deleted.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…ns it, not the workflow that named it

QuarantinedAnnotationContractTest asserted that .github/workflows/maven.yml
contained the literal strings `bin/check-quarantine-registry.sh` and
`bin/check-quarantine-owners.sh`. This branch deleted maven.yml's
`quarantine: audit` job, because both gates were already running on every pull
request inside `repo: hygiene`'s `bin/check-all.sh --with-tests --strict` sweep,
which DISCOVERS gates by globbing `bin/check-*.sh` rather than naming them. No
workflow names either script on the per-PR path any more, so the test's
grep-the-workflow mechanism could only fail - it cannot express "runs via a glob
sweep".

THE ASSERTION IS REPLACED, NOT DELETED, and the guarantee it protects is
end-to-end as before. The per-PR audit now has two homes and both are asserted:

(a) The discovering sweep. repo-hygiene.yml runs `bin/check-all.sh --with-tests
    --strict` and triggers on `pull_request`; check-all.sh discovers gates by
    the `bin/check-*.sh` glob; each gate EXISTS at a path that glob matches; and
    neither gate is named in check-all.sh's two exception lists, PR_SCOPED and
    NEEDS_ARGS, which are the only ways a globbed gate is skipped. That last
    link is what actually proves the glob still covers them - without it, "the
    glob covers them" is an assumption rather than a measurement. The lists are
    read through a helper that fails loudly if either stops being a plain
    double-quoted assignment, because a silently-empty read would turn every
    membership check into a pass.

(b) quarantine-lane.yml, which still names both scripts explicitly as fail-fast
    steps ahead of the lane run. Those assertions are unchanged.

The assertion that the lane RUN (`bin/quarantined-test.sh`) must NOT be in
maven.yml is kept, and maven.yml is still read for it.

The method is renamed from perPrWorkflowRunsTheAuditAndTheLaneWorkflowRunsTheTests
to theHygieneSweepRunsTheAuditOnEveryPrAndTheLaneWorkflowRunsTheTests, and both
the class javadoc and the method javadoc now state where the audit runs and why
grepping a workflow proves nothing about it. A reader arriving at a failure can
tell the topology from the test alone.

CONTROL ARM. Adding `check-quarantine-registry.sh` to check-all.sh's PR_SCOPED
list - the one change that would silently stop the per-PR sweep running the
audit, with every workflow still green - fails the new case with the message
naming the list and its contents. Restored, the class is 12/12 green. The
previous assertion could not detect that state at all.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…k, and why no scanner reports it

Six jobs in maven.yml open with the same checkout, setup-java and
cache-restore steps, and the cache key must agree in all six because
the file's header forbids setup-java's own cache. Two of the six
arrived with the job folds on this branch. There is no
.github/actions/ directory, so nothing shares them.

The entry carries the measurement rather than the assertion, because
"the duplication scanners are green" reads as evidence and here it is
not. PMD CPD never reads a workflow at all: its language detect is
winner-take-all, Java wins, and YAML is not mappable by it. jscpd is
language-agnostic and does read them - pointed at the workflow
directory it reports real clones, including the one pair it still sees
at the job's own default threshold, between the two review workflows.
Pointed at maven.yml alone it reports nothing at any threshold down to
20 tokens, because each copy of the block has different comments
interleaved between its steps: strip the comments and the six are
identical, leave them in and the token streams differ.

That is the capability half of the 2026-08-12 write-up on the scanners
not looking where agents duplicate. Its scope half was fixed when the
scan widened to the whole repo; this half survived that fix, and the
entry says so where somebody checking a green report will find it.

Recorded with the OSS Index audit steps, now duplicated across two
workflows behind a "change both, or neither" note, because one
composite-action decision settles both. Deliberately not done here:
this PR already rewrites every workflow and owes ruleset edits at
merge, and its whole risk is a check quietly ceasing to run.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

[superseded - a quarantined test changed outcome] 🧪🔒 Quarantine Lane Report

Quarantined test Outcome Owner Meaning
MultiInstanceRebalanceTest.largeNumberOfInstances ⚪ not run ⚠️ unowned report missing - check the lane job
RegistrationRaceStaleResidentIT.freshArrivalCollidingWithStaleShardResidentMustStillGetProcessed ⚪ not run ⚠️ unowned report missing - check the lane job

🔴 expected while the owner PR is open · 🟡🎲 flapper, pass proves nothing · 🚨 a deterministic quarantined test passing means its fix landed: delete its @Quarantined annotation + docs/quarantined-tests.md entry (a merge-blocking review thread has been opened). Lane: non-gating; rules: see the Quarantine Audit check.

Since the previous push: MultiInstanceRebalanceTest.largeNumberOfInstances: 🟡🎲 passed (flapper) → ⚪ not run; RegistrationRaceStaleResidentIT.freshArrivalCollidingWithStaleShardResidentMustStillGetProcessed: 🟡🎲 passed (flapper) → ⚪ not run.

Updated for 1c54ed3 · run 34073754181 · 2026-09-07 01:41 UTC

Superseded by a newer quarantine lane report.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

[superseded - a quarantined test changed outcome] 🧪🔒 Quarantine Lane Report

Quarantined test Outcome Owner Meaning
MultiInstanceRebalanceTest.largeNumberOfInstances 🟡🎲 passed (flapper) ⚠️ unowned proves nothing - passes most runs by nature
RegistrationRaceStaleResidentIT.freshArrivalCollidingWithStaleShardResidentMustStillGetProcessed 🟡🎲 passed (flapper) ⚠️ unowned proves nothing - passes most runs by nature

🔴 expected while the owner PR is open · 🟡🎲 flapper, pass proves nothing · 🚨 a deterministic quarantined test passing means its fix landed: delete its @Quarantined annotation + docs/quarantined-tests.md entry (a merge-blocking review thread has been opened). Lane: non-gating; rules: see the Quarantine Audit check.

No quarantined test changed outcome since the previous push.

Updated for d86f2a7 · run 34077022140 · 2026-09-07 02:43 UTC

Superseded by a newer quarantine lane report.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

⚠️ SpotBugs Report

334 bug(s) found (rule-level exclusions only - see docs/inflight/static-spotbugs-rule-registry.md). See the annotations on the Files Changed tab for details.

Updated for 8bd41a6 · run 34080380729 · 2026-09-07 03:49 UTC

@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

❌ 1 Tests Failed:

bz.stub.parallelconsumer.QuarantinedAnnotationContractTest::perPrWorkflowRunsTheAuditAndTheLaneWorkflowRunsTheTests ... expected to contain bin/check-quarantine-registry.sh

needs a bit

Not addressing as new work: both are already covered by commits already on this branch. a3d75a634 fixed the copyright self-test's ambient-environment leak (env -u on the default-behaviour case), and 1c54ed322 replaced the failing assertion above — the method was renamed to theHygieneSweepRunsTheAuditOnEveryPrAndTheLaneWorkflowRunsTheTests and now asserts the quarantine audit through the discovering check-all.sh sweep instead of grepping a workflow that no longer names the script directly.

Verified locally against the current head (1bfa32b21): QuarantinedAnnotationContractTest is 12/12 green, and bin/test-check-copyright-headers.sh's full self-test suite passes. The codecov comment above is stale — it reports a run against a commit before 1c54ed322 landed, and the method name it cites no longer exists in the test file.

@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@claude review this

@claude

claude Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Claude encountered an error after 9s —— View job


I'll analyze this and get back to you.

1 similar comment
@claude

claude Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Claude encountered an error after 9s —— View job


I'll analyze this and get back to you.

@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@claude review this

@claude

claude Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Claude encountered an error after 7s —— View job


I'll analyze this and get back to you.

@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@claude review this

@claude

claude Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Claude encountered an error after 9s —— View job


I'll analyze this and get back to you.

@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

@astubbs astubbs left a comment •

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1bfa32b218

ℹ️ 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".

Comment thread docs/inflight/ci-fewer-jobs-ruleset-edits.md Outdated
Comment thread .github/workflows/maven.yml
Comment thread bin/check-all.sh
astubbs and others added 5 commits September 7, 2026 14:38
One conflict, in the untracked-CI-flakes note, and both sides kept.
The two edits are to adjacent rows of the same table and are about
different things: this branch rewrote the PIT lane's row to record
that the fold moved its bound from a job cap that cancelled the whole
row to a step bound that lets the job report, and master rewrote the
row above it to add a second sighting of the lifecycle test along with
the prose block explaining what that sighting adds. Neither touches
what the other says.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…ting them

The note is the merge-time checklist for the ruleset edit the folds owe, and it
was writing derived cardinalities all through its prose - "All ten old names",
"An eleventh", "the four jobs", ordinal step positions, "Add two". Every one of
them is a second copy of a list that sits a few lines away, and
docs/inflight/AGENTS.md forbids exactly this ("Never write down what a command
can answer" - and it says counts of any kind, not just git facts) because the
copy is wrong the first time somebody edits the list and nothing goes red.

Here the drift has an unusually sharp failure mode, which is why this was worth
doing rather than filing: a reader who trusts "ten" over the list can leave a
name required that no run will ever produce, and a required context nothing
produces pends every PR in the repository - the spotbugs incident again. The
count is the one thing in this document that can silently make its own
instructions wrong.

So the name lists are untouched and are now stated to be the authority, the
ordinals are gone, and "how many" is answered by a command instead:

  gh api repos/astubbs/parallel-consumer/rules/branches/master \
    --jq '.[] | select(.type == "required_status_checks")
          | .parameters.required_status_checks[].context'

Run at the merge, that prints what is actually required, which is the thing the
tally was standing in for. Verified against the live ruleset while writing this:
it returns every name on the removal list.

Two counts stay, because they cannot drift apart from what they count - each
names its members in the same sentence ("three of the checklist's named
self-test steps (a, b, c)", "all four self-tests ok" directly under the four
script names). The rule is about a number that can outlive its list.

The `<!-- file-refs: N/A -->` marker moved with the paragraph it excuses: the
gate reads upward and stops at a blank line, so inserting a paragraph between
the citation and its marker silently orphans both. bin/check-file-refs.sh caught
that, which is the second time this run that a gate found something a read-
through did not.

Raised by codex in review on #457.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…ched checks

The scanner fold handed `scan: repo` a `needs: prepare-deps` edge that none of
the three jobs it replaces had. `dups: clones`, `dups: similarity` and
`deps: vulnerabilities` never built anything and never touched the Maven cache;
they reported through a failed cache lane. Only the CVE and PIT steps at the
tail of the merged job want the cache, and the edge was added for them.

With the implicit job-level `success()` still in force, that edge is a new way
to wedge the repository. A failed or timed-out `prepare-deps` - the Azure
west-US Maven Central timeout that job exists to fix, so not hypothetical -
SKIPS the whole job. `scan: repo` is a required check, and a skipped required
check does not go red: it stays PENDING, forever, on every PR. So a transient
cache failure would have suppressed three scanners that need no cache at all
and left the PR waiting on a context that would never arrive.

MECHANISM CHOSEN, and why it is this one. The job's `if:` now reads
`!cancelled() && github.event_name == 'pull_request'`. Naming a status function
replaces the implicit `success()` gate on the `needs:` edge, so the job runs
when prepare-deps fails and still reports a conclusion. `!cancelled()` rather
than `always()` so a superseded push still cancels it instead of spending a
runner on work nobody will read.

NOTHING DEGRADES INTO A PASS, which is the constraint that ruled out the
alternatives. Moving the dependency onto the Maven-dependent steps alone would
have needed a per-step `needs`, which does not exist; dropping the edge would
have cost every scan run a cold cache. Running anyway costs nothing false: the
scanners need no Maven, the cache step is `actions/cache/restore` with a prefix
`restore-keys` fallback so the CVE and PIT steps get an older or cold cache
rather than none, and a Maven step that genuinely cannot resolve fails its step
and reds the job. A cannot-measure reads as red, never as a tick - the defect
class this repo keeps relearning.

SAME DEFECT, SECOND SITE, fixed with it. `static: analysis` is the other
required context this fold creates and it carries the same edge. There it is
not a regression - `static: infer` and `static: spotbugs` were both already
required and both already had it - but a required name about to be added to the
ruleset can be wedged the same way, so it takes the same guard. Checked and
dismissed: `test`, `test-kafka-compat` and `build` also need prepare-deps and
are untouched by this PR, so their behaviour is unchanged and out of scope here.

Verified: actionlint reports the same three findings as the base and no new
ones, and the job-count harness still measures 18 PR jobs with 0 dropped checks,
so the `if:` rewrite has not changed what the fold delivers.

Raised by codex in review on #457.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…ded gates

The dedicated per-gate CI jobs are gone from this branch - copyright, the
quarantine audit, docs-data - and what replaced them is one `repo: hygiene` step
running `bin/check-all.sh --with-tests --strict`. Those jobs installed what they
needed explicitly, so a hosted image that stopped shipping PyYAML or ShellCheck
turned them red. Folded into the sweep, the same image change turns the gate
into a CANNOT, and the sweep's DEFAULT exits 0 on a CANNOT as long as something
else ran. `--strict` is the single line of behaviour standing between that and a
green `repo: hygiene` over gates that measured nothing.

bin/test-check-all.sh never invoked it. Its exit-2 fixture asserted only the
default's exit 0, so a regression accepting a CANNOT under strict would have
been caught by no test in this repository, and the fold's own justification -
"the sweep now takes --strict" - rested on an untested line. bin/AGENTS.md
requires a checker fix to carry a case that goes red against the old code; this
one had been recorded as a follow-up and not done.

Four arms, and the pair of controls that make them mean something:

  - exit 2 FAILS under --strict, and says why a CANNOT on a runner is never a
    legitimate skip.
  - CONTROL, same fixture, one term changed: without --strict the identical
    CANNOT still exits 0. So the arm above measures the flag, not the fixture.
  - exit 3 stays nothing-in-scope under --strict. That distinction is what makes
    --strict safe to run in CI at all - "measured, nothing in scope" is a result
    where "could not measure" is not - and pinning it stops a later tightening
    quietly redefining one as the other.
  - a genuine exit-1 failure is still reported as a FAILURE and not relabelled a
    strict-CANNOT. Both exit 1, so only the message separates them.

VERIFIED AGAINST THE PARENT IMPLEMENTATION, twice, because "it did not exist
yet" is the weaker of the two controls:

  1. Against origin/master's check-all.sh (pre---strict), the four new arms fail
     and every pre-existing arm passes: 20 passed, 4 failed. That proves the
     arms are exercising --strict and nothing else, but it fails for the trivial
     reason that the flag is an unknown argument.
  2. The targeted one. Take the current script, keep --strict parsed and
     accepted, delete only the block that turns a CANNOT into exit 1. Exactly
     the two arms asserting that behaviour go red - exit 0 where 1 was wanted -
     and all 22 others stay green, the exit-3 and genuine-failure arms included.
     That is the regression the reviewer described, reproduced and caught.

On this branch, unmodified: 24 passed, 0 failed.

Raised by codex in review on #457.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
…e file text

`theHygieneSweepRunsTheAuditOnEveryPrAndTheLaneWorkflowRunsTheTests` asserted
that the quarantine audit reaches every pull request by checking that
repo-hygiene.yml contains the literal `pull_request:`. That file also carries
the literal inside a comment - the roadmap gate's carrier line,
`pull_request: astubbs#NNN` - so the assertion was satisfied by prose. Delete
the real trigger and the test stayed green while the invariant it names, "the
per-PR audit runs on every PR", was false.

That matters more here than it looks. The whole point of the assertion is that
the per-PR audit no longer has a job naming it: the fold left the discovering
`check-all.sh` sweep as the only path, and this test is the chain that proves
the sweep is reached. A link in that chain a comment can satisfy is not a link.

The fix is a `workflowTriggers(String)` helper that walks the top-level `on:`
block: it opens at a column-0 `on:` (or `"on":` - YAML 1.1 reads a bare `on` as
a boolean, so some editors quote it), closes at the next column-0 key, skips
comment and blank lines, and returns keys at the block's own indent, so `types:`
nested under `pull_request:` is not mistaken for a trigger. The inline forms
(`on: push`, `on: [push, pull_request]`) are handled too, so rewriting the block
in flow style will not silently empty the result rather than failing. The
assertion messages print the triggers actually found, which is the thing a
reader needs when this goes red.

CONTROL. Removed the real `pull_request:` trigger and its `types:` line from
repo-hygiene.yml and ran the test:

  - the old assertion's evidence survived - `grep 'pull_request:'` still matched,
    on the comment line, so the previous form would have passed;
  - the new assertion failed, reporting `Declared triggers: [push,
    workflow_dispatch]`.

Restored, and the class passes 12/12.

SAME DEFECT, SECOND SITE, in the same file. `laneWorkflowDeclaresItsTriggers`
asserts quarantine-lane.yml's three triggers the same way. It is pre-existing
and happens to be correct today only because that file has no comment carrying
one of those literals WITH its colon - correct by luck, not by construction,
which is precisely the shape that went wrong one method up. It now reads through
the same helper. Checked and dismissed: nothing else in the tree asserts a
workflow trigger by substring (`grep -rn "pull_request\|workflow_dispatch\|
schedule:" --include=*.java` returns only these two methods and unrelated
javadoc).

Raised by codex in review on #457.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
@astubbs

astubbs commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@claude review this

@claude

claude Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Claude finished @astubbs's task in 3m 23s —— View job


Review complete

  • Gather context (PR body, comments, prior Codex review + fix commits)
  • Check out branch tip and diff against origin/master
  • Review workflow YAML changes (maven.yml, repo-hygiene.yml, dependency-audit.yml, quarantine-lane.yml)
  • Review bin/check-all.sh --strict implementation + its test coverage
  • Review QuarantinedAnnotationContractTest changes
  • Review docs/inflight/ci-fewer-jobs-ruleset-edits.md

Reviewed at head ab82a73f (the local worktree's .claude/hooks/after-push-check-ci.sh shows an unrelated uncommitted local revert of one PR line — not part of this PR's committed history, ignored below).

All four Codex findings are already fixed on this branch, and I independently verified each fix rather than just trusting the reply:

  1. P1 — derived counts in docs/inflight/ci-fewer-jobs-ruleset-edits.md. Confirmed: grep-ing the note for the flagged phrases ("All ten old names", "An eleventh", "Three more"/"Two more"/"A tenth", ordinal step positions) returns nothing. The doc now states "The lists below are the authority; nothing here counts them" and gives the gh api .../rules/branches/master command to derive the count on demand (docs/inflight/ci-fewer-jobs-ruleset-edits.md:25-29).

  2. P2 — scan: repo wedged by a prepare-deps failure. Confirmed fixed in .github/workflows/maven.yml:639: if: ${{ !cancelled() && github.event_name == 'pull_request' }} on the scan job, replacing the implicit needs-driven success(). The same fix is applied to static: analysis (maven.yml:975) even though that one wasn't a regression (both static jobs were already required with the same needs edge pre-fold) — correctly identified and fixed as the same defect class under a soon-to-be-required name. Comments at both sites explain why !cancelled() rather than always() (a superseded push should stay cancelled) and why nothing degrades into a false pass (the scanners need no Maven; the CVE/PIT steps get a stale-but-real cache via restore-keys, not silence).

  3. P2 — workflowTriggers parsing a comment instead of the real on: block. Confirmed fixed in QuarantinedAnnotationContractTest.java:214-262: a real (if regex-based) YAML on:-block walker that opens at column-0 on:, tracks block indent so types: isn't mistaken for a trigger, and handles both block and inline (on: [push, pull_request]) forms. I verified the premise directly — repo-hygiene.yml:532 does contain the literal string pull_request: astubbs#NNN inside a comment, so the old .contains("pull_request:") assertion really was vacuous. The new assertion reads workflowTriggers(hygiene) and includes the parsed list in its failure message.

  4. P1 — no regression test for --strict CANNOT-handling. Confirmed fixed in bin/test-check-all.sh:86-124: four arms — exit 2 fails under --strict with the right message, a same-fixture control showing the identical CANNOT still exits 0 without --strict (proving the arm tests the flag, not the fixture), exit 3 ("nothing in scope") staying unaffected by --strict, and a genuine exit-1 failure not being relabelled as a strict-CANNOT. bin/check-all.sh:349-351 implements exactly this (STRICT=1 && cannot>0 → exit 1, message distinct from the plain-failure path at line 347).

Two other things worth noting, not blocking:

  • The credentials guard removed from dependency-audit.yml's job-level if: (fork-PR + Dependabot secret-store cases) is carried forward verbatim as CVE_SCAN_CREDENTIALS_PRESENT in maven.yml:682-684, gating the four CVE steps individually since a job-level if can't selectively skip steps in a job with other work. Checked this rather than assumed it, since a dropped guard here would have been a real security regression (this job holds pull-requests: write and OSS Index credentials).
  • docs/ci.md, bin/AGENTS.md, and the .github/scripts/*.js header comments were all updated to point at repo: hygiene / scan: repo / static: analysis instead of the deleted job names — spot-checked several and found no stale references to pr-checklist.yml or copyright.yml left in prose that would mislead a future reader.

I did not re-run actionlint or a YAML parser myself (not available in this environment); the PR body's claim of "same three findings as base" is consistent with the CI comments already on the thread showing repo: hygiene, scan: repo and static: analysis all executing successfully on this exact commit (SpotBugs report, Codecov, Quarantine Lane, Throughput comments all reference d86f2a7/ab82a73f), which is reasonably strong empirical evidence the workflows parse and run correctly.

Nothing further to flag. The PR does what it says, the prior automated review's findings were all genuinely fixed (not just replied to), and the fixes carry their own regression coverage and controls rather than just patching the reported symptom. LGTM.

…at were refuted

The experiment record lived in gitignored scratch, so every hypothesis,
measurement and conclusion from this work would have died with the
machine that ran it. The squash message carries what changed; this
carries why, what was tried and rejected, and the traps.

The refuted ones are the point, and the cache-warming job is the worked
example. It looked like a free job and the only lever that also cut
wall clock. It is the recorded fix for a diagnosed Maven Central
timeout, and an open branch depends on a step added to it. The failure
worth writing down is not the wrong guess but the reason it survived
review: the prior-art sweep searched the words the problem was framed
in, and the owning document is filed under build errors. It was one
grep away on the mechanism word.

Also recorded: the target was set against the wrong CodeQL job count,
so it was never reachable; the reviewer-failure explanation was refuted
by a same-size comparison; and two things a job-count harness cannot
see by construction, one of which let two failures reach CI because the
local sweep was not the sweep CI runs.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown

🧪🔒 Quarantine Lane Report

Quarantined test Outcome Owner Meaning
MultiInstanceRebalanceTest.largeNumberOfInstances 🔴 failing (expected) ⚠️ unowned quarantine holding
RegistrationRaceStaleResidentIT.freshArrivalCollidingWithStaleShardResidentMustStillGetProcessed 🟡🎲 passed (flapper) ⚠️ unowned proves nothing - passes most runs by nature

🔴 expected while the owner PR is open · 🟡🎲 flapper, pass proves nothing · 🚨 a deterministic quarantined test passing means its fix landed: delete its @Quarantined annotation + docs/quarantined-tests.md entry (a merge-blocking review thread has been opened). Lane: non-gating; rules: see the Quarantine Audit check.

Since the previous push: MultiInstanceRebalanceTest.largeNumberOfInstances: 🟡🎲 passed (flapper) → 🔴 failing.

Updated for 8bd41a6 · run 34080380693 · 2026-09-07 03:45 UTC

@astubbs
astubbs merged commit 867c407 into master Sep 7, 2026
29 of 30 checks passed
@astubbs
astubbs deleted the ci/fewer-per-pr-jobs branch September 7, 2026 03:54
astubbs added a commit that referenced this pull request Sep 7, 2026
…w's job names, and a test says so

Un-folding the PIT lane into its own job broke `bin/check-pr-analysis-surfaces.sh`, whose
"SURFACES THIS SCRIPT CANNOT READ" listing filters check runs by name. #457 had dropped
the `Mutation` alternative because the fold made `scan: repo` the row carrying the PIT job
summary; with the job back, nothing matched `Mutation Tests (PIT, PR-scoped)` and its summary
silently stopped being listed - no failure, just a row that stops appearing.

That is the third instance of one class, and the second self-inflicted: the comment two lines
above the regex already warned about it, citing `racerd` outliving the job that became
`static: infer`. A warning that has now been walked into twice is not a control.

So the class is closed with a test rather than a fourth comment.
`bin/test-check-pr-analysis-surfaces.sh` reads the `scan`, `mutation` and `static` job names out
of `.github/workflows/maven.yml`, extracts the pattern out of the subject, and asserts each name
still matches. Neither side is restated in the test, so a rename or an un-fold flips it red with
nobody editing it, and a job that disappears fails loudly instead of passing over an absent name.

Control: against the pre-fix regex the new arm reports
`the mutation job is named "Mutation Tests (PIT, PR-scoped)" ... which the listing pattern
"static: analysis|scan: repo|CVE|Quarantine" does NOT match`, with `scan` and `static` still ok -
9 passed, 1 failed. With the alternative restored, 10 passed, 0 failed.

The arm is static where every other arm is end-to-end through a faked `gh`, and deliberately: the
filtering happens inside `gh --jq`, so a fake would have to reimplement jq, and a fake that knows
the pattern would be testing itself. The invariant is testable without the plumbing.

Only maven.yml jobs are asserted, because only their `name:` is the check-run name verbatim. The
pattern's other two alternatives match no check run on a PR head today - the quarantine lane's job
is named `tests` (`Quarantine Lane` is the workflow, which the check-runs API does not return) and
`deps: whole-tree CVE scan` is `schedule`-only since the CVE fold - but deciding their fate is not
this change's, so they are left alone.

Notes that described the fold as current state are corrected rather than annotated, since they are
live notes: `ci-fewer-jobs-ruleset-edits.md` (the fold is undone, the job cap is 25 on `mutation`,
and the "second repair" paragraph now records the revert and names the guard),
`test-untracked-ci-flakes.md` (the step-level `timeout-minutes: 20` is unchanged and still in
force - only its location moved), `ci-orphaned-pit-comment-on-open-prs.md`, and
`docs/refactoring.md`, whose setup-block duplication entry gained a seventh copy with the restored
job.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RRMqsJQrGcF6ZH8xyX8AU6
astubbs added a commit that referenced this pull request Sep 7, 2026
Picks up the batched per-PR jobs (#457) whose `scan: repo` and `static: analysis` contexts master's
ruleset now requires, plus #450's offset-registration ordering in the same shard code this branch's
put-back touches. One conflict, docs/inflight/ci-codecov-flags-not-like-for-like.md: both sides
appended a dated sighting; both kept, this branch's 2026-09-03 one first. Master's text naming this
PR in two notes is marked post-merge-correct rather than rewritten - dated records of runs against
this branch while it was open, which read as history once it lands.

State and ArchUnit tests green on the merged tree from fresh reports:
RetryQueueRequeueWindowTest, RetryQueueRebalancePathTest, RetryQueueTest,
RetryQueueIteratorConfinementTest, ShardManagerTest, ShardPopulationRaceTest, ArchitectureTest,
RebalanceCallbackRuleControlTest.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018rEzrWYFr6oEzy6porczd3
astubbs added a commit that referenced this pull request Sep 7, 2026
…must not wait on it (#463)

#457 batched several small per-PR jobs together to
stop the sharded suites queueing behind them. One of those folds was wrong.

PIT went in as the last STEP of `scan: repo`, which is a REQUIRED check. A
GitHub job emits one check run, and that check does not report until the whole
job finishes. PIT's runtime is bimodal - about 11 seconds when no in-scope
class changed, about 19 minutes when it actually mutates - so on any PR that
touches mutable code the scanners and the CVE audit finished in about three and
a half minutes and their verdict was then withheld for another seventeen. A
lane deliberately kept non-gating, because its OUTCOME must not block a merge,
was blocking the merge with its RUNTIME.

So the mutation lane is its own job again. Its two steps move back verbatim,
`continue-on-error` stays on the steps rather than the job - a job-level one
makes the check-run conclusion success even when the step failed, which is why
requiring it would be vacuous - and `timeout-minutes: 20` stays on the run
step, where a hit ends the step and lets the job report, rather than on the job
where a hit cancelled the whole row. Both job caps come down to fit what each
job now holds, and the JDK and cache-restore steps in `scan: repo` go back
behind the credentials guard they were only pulled out from for the folded lane.

The measurement that hid this is the more useful half. The harness scored each
fold on MEDIAN step durations, and a median is meaningless for a bimodal lane:
it reported eleven seconds and hid a twenty-minute worst case. Batching is safe
for fast, bounded, gating work; a slow, bimodal, deliberately non-gating lane is
the one shape that must not be folded into a required job. Recorded in the
solutions write-up of that run, which now says so.

Un-folding also broke `bin/check-pr-analysis-surfaces.sh`, whose listing matches
check runs against a hand-maintained set of job names: the mutation entry was
removed when the fold landed, so restoring the job dropped its surface from the
listing silently. That is the third instance of one defect class, and the
comment directly above the pattern warns about it. The pattern is fixed and its
self-test now derives the job names from the workflow, so the two cannot drift -
proven by a control that fails against the old pattern.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
astubbs added a commit that referenced this pull request Sep 8, 2026
56 commits of master, none of which touched this PR's mechanism: master
changed neither `.github/workflows/release.yml`, `bin/release-notes.py`,
`bin/test-release-notes.sh` nor `.github/workflows/mutation-full-sweep.yml`
since the branch's last master merge, so the renderer and the workflow step
that calls it merge unchanged. Master's `release.yml` still carries the inline
`awk`/`sed` converter this PR replaces.

Master also changed six of the files this PR touches. Four auto-merged:
`docs/releasing.md` and `bin/AGENTS.md` (#457's job batching, #442's
integration sharding), `.gitignore` (#378, #440), and
`docs/inflight/release-0.6.0.0.md` (#448, #476). Two conflicted.

`docs/inflight/release-0600-blockers.md` - the #197 triage bullet, inside
the `post-merge: checked` markers. This branch (2026-09-01, 2026-09-03) rewrote it
in post-merge terms as "all four landed"; master's grooming sweep (#476,
2026-09-08, correcting on 2026-09-07) rewrote the same bullet to say the
empty-release-body item **was already false when written** - #72 gave the
workflow a `--notes-file` built from the `CHANGELOG.adoc` section on 2026-07-29,
with `--generate-notes` only as a fallback. Master's correction is right and is
the later decision, so it is kept; master's claim that MDC is still open is not -
#205 merged 2026-08-27, which is why this branch corrected it, and that
correction is kept. Resolved as one bullet carrying both later facts, and it now
states what #199 actually does (replace the inline converter, and fail the
release on a missing or unrenderable section) rather than the retired claim that
it restores a body that was never absent.

`docs/refactoring.md` - two unrelated new sections appended at the same point.
Both kept: this branch's "`bin/release-notes.py` is Python in a Node-default
`bin/`" and master's "JUnit tag resolution is implemented twice". No content
from either side dropped.

Neither `--ours` nor `--theirs` was used.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019XS64Xttx4vF5datYh7fmk
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