Skip to content

Add rich GitHub Actions suite and modernize build plugins#20

Open
astubbs wants to merge 2 commits into
masterfrom
dev-cc-gh-actions
Open

Add rich GitHub Actions suite and modernize build plugins#20
astubbs wants to merge 2 commits into
masterfrom
dev-cc-gh-actions

Conversation

@astubbs

@astubbs astubbs commented Apr 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • Port CI setup from parallel-consumer's dev/ci-tweak branch: parallel test matrix, SpotBugs, PIT mutation testing, duplicate code detection, file similarity, dependency scan, Codecov
  • Add Claude Code interactive + auto-review workflows
  • Add PR dependency gating, Dependabot, PR template
  • Upgrade Lombok 1.18.10 -> 1.18.34 and JaCoCo 0.8.4 -> 0.8.12 for JDK 16+ compatibility
  • Add --add-opens for Guice 4.x cglib on modern JDKs
  • Add SpotBugs and PIT plugin configs to pom.xml

depends on #19

Secrets required

  • CLAUDE_CODE_OAUTH_TOKEN for Claude workflows
  • CODECOV_TOKEN for coverage upload

Test plan

  • GitHub Actions workflows appear and are enabled after push
  • PR checks fire: prepare-deps, unit tests, integration tests, SpotBugs, PIT, duplicate detection, file similarity, dependency scan
  • Master push triggers the single build job (not PR jobs)

🤖 Generated with Claude Code

astubbs and others added 2 commits April 11, 2026 03:32
Replace three poorly-maintained CI configs (Travis, CircleCI, Drone) with
a single GitHub Actions workflow. Remove dead Scala source directories
and stale TODO comments from the build files.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Port CI setup from parallel-consumer's dev/ci-tweak branch, adapted for
ks-tributary. Replaces the placeholder ci.yml with a comprehensive
maven.yml: parallel unit+integration test matrix with fail-fast,
SpotBugs static analysis, PIT mutation testing with PR summary,
duplicate code detection, file similarity check, dependency vulnerability
scan, and Codecov coverage upload. Master push runs a single build.

Also adds Claude Code interactive (@claude) and auto-review workflows,
PR dependency gating for stacked PRs, Dependabot (daily Maven updates),
and a basic PR template.

Build plugin changes:
- Lombok 1.18.10 -> 1.18.34 (JDK 16+ support)
- JaCoCo 0.8.4 -> 0.8.12 (JDK 17+ bytecode instrumentation)
- Add --add-opens for Guice 4.x cglib on JDK 16+
- Add SpotBugs and PIT mutation testing plugin configs

Secrets required: CLAUDE_CODE_OAUTH_TOKEN, CODECOV_TOKEN.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 12 package(s) with unknown licenses.
  • ⚠️ 1 packages with OpenSSF Scorecard issues.
See the Details below.

License Issues

.github/workflows/maven.yml

PackageVersionLicenseIssue Type
actions/cache/restore4.*.*NullUnknown License
actions/cache/save4.*.*NullUnknown License
actions/checkout4.*.*NullUnknown License
actions/dependency-review-action4.*.*NullUnknown License
actions/github-script7.*.*NullUnknown License
actions/setup-java4.*.*NullUnknown License
actions/upload-artifact4.*.*NullUnknown License
astubbs/duplicate-code-cross-check1.*.*NullUnknown License
astubbs/duplicate-code-detection-toolfeat/base-vs-pr-comparisonNullUnknown License
codecov/codecov-action5.*.*NullUnknown License
jwgmeligmeyling/spotbugs-github-action1.2.*NullUnknown License

pom.xml

PackageVersionLicenseIssue Type
org.pitest:pitest-maven1.17.0NullUnknown License

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
actions/actions/cache/restore 4.*.* 🟢 6.3
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 10SAST tool is run on all commits
actions/actions/cache/save 4.*.* 🟢 6.3
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 10SAST tool is run on all commits
actions/actions/checkout 4.*.* 🟢 5.7
Details
CheckScoreReason
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
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 10all changesets reviewed
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
Packaging⚠️ -1packaging workflow not detected
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Security-Policy🟢 9security policy file detected
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/dependency-review-action 4.*.* 🟢 7.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 1030 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 9security policy file detected
Binary-Artifacts🟢 10no binaries found in the repo
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
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
Branch-Protection🟢 6branch protection is not maximal on development and all release branches
SAST🟢 10SAST tool is run on all commits
actions/actions/github-script 7.*.* 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1021 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies⚠️ 1dependency not pinned by hash detected -- score normalized to 1
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection🟢 6branch protection is not maximal on development and all release branches
SAST🟢 10SAST tool is run on all commits
actions/actions/setup-java 4.*.* 🟢 5.6
Details
CheckScoreReason
Maintained🟢 57 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
actions/actions/upload-artifact 4.*.* 🟢 6
Details
CheckScoreReason
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 88 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 8
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
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
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 10SAST tool is run on all commits
actions/astubbs/duplicate-code-cross-check 1.*.* UnknownUnknown
actions/astubbs/duplicate-code-detection-tool feat/base-vs-pr-comparison UnknownUnknown
actions/codecov/codecov-action 5.*.* 🟢 7.2
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Maintained🟢 56 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Vulnerabilities🟢 100 existing vulnerabilities detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
License🟢 10license file detected
Security-Policy🟢 10security policy file detected
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 9SAST tool detected but not run on all commits
CI-Tests🟢 929 out of 30 merged PRs checked by a CI test -- score normalized to 9
Contributors🟢 10project has 13 contributing companies or organizations
actions/jwgmeligmeyling/spotbugs-github-action 1.2.* ⚠️ 2.9
Details
CheckScoreReason
Code-Review⚠️ 1Found 1/7 approved changesets -- score normalized to 1
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained⚠️ 00 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
maven/com.github.spotbugs:spotbugs-maven-plugin 4.8.6.0 🟢 6.1
Details
CheckScoreReason
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained🟢 1030 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
Code-Review⚠️ 0Found 0/1 approved changesets -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 10all dependencies are pinned
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Packaging🟢 10packaging workflow detected
SAST🟢 10SAST tool is run on all commits
maven/org.jacoco:jacoco-maven-plugin 0.8.12 🟢 5.7
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 1030 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
Security-Policy⚠️ 0security policy file not detected
License🟢 9license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ 0Project has not signed or included provenance with any releases.
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
maven/org.pitest:pitest-junit5-plugin 1.2.1 🟢 3.5
Details
CheckScoreReason
Code-Review🟢 3Found 7/18 approved changesets -- score normalized to 3
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
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
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Packaging🟢 10packaging workflow detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
maven/org.pitest:pitest-maven 1.17.0 🟢 4.9
Details
CheckScoreReason
Code-Review⚠️ 2Found 2/10 approved changesets -- score normalized to 2
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained🟢 1020 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 9binaries present in source code
Pinned-Dependencies🟢 10all dependencies are pinned
Security-Policy⚠️ 0security policy file not detected
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
maven/org.projectlombok:lombok 1.18.34 🟢 4.9
Details
CheckScoreReason
Maintained🟢 1024 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review⚠️ 1Found 3/27 approved changesets -- score normalized to 1
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 7binaries present in source code
License🟢 9license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST🟢 9SAST tool detected but not run on all commits

Scanned Files

  • .github/workflows/maven.yml
  • pom.xml

@github-actions

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 (Java-aware)

PR Base Change
Clones 4 4 ➖ 0
Duplicated lines 80 80 ➖ 0
Duplication 1.70% 1.70% ➖ 0
Rule Limit Status
Max duplication 5% ✅ Pass (1.70%)
Max increase vs base +0.1% ✅ Pass (+0.00%)

No new clones introduced by this PR.

✅ jscpd (language-agnostic)

PR Base Change
Clones 6 6 ➖ 0
Duplicated lines 60 60 ➖ 0
Duplication 1.30% 1.30% ➖ 0
Rule Limit Status
Max duplication 4% ✅ Pass (1.30%)
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

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:

✅ No new or increased file similarities introduced by this PR.

Full similarity report
streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotDaggerApp.java

📄 streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotDaggerApp.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotGuiceApp.java 61.04 ⚠️
streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/dagger/SnapshotDaggerModule.java

📄 streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/dagger/SnapshotDaggerModule.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/modules/SnapshotModule.java 58.53 ⚠️
streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/BaseDaggerTest.java

📄 streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/BaseDaggerTest.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/tests/GuiceInjectedTestBase.java 39.13
streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/DaggerSnapAppTestModule.java

📄 streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/DaggerSnapAppTestModule.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModule.java 70.73 ⚠️
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroDeserializer.java

📄 streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroDeserializer.java

File Similarity (%)
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroSerde.java 47.01
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/KSUtils.java 30.55
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroSerde.java

📄 streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroSerde.java

File Similarity (%)
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroDeserializer.java 47.01
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/KSUtils.java 38.46
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotGuiceApp.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotGuiceApp.java

File Similarity (%)
streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/SnapshotDaggerApp.java 61.04 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceIndividual.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceIndividual.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSharded.java 48.08
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSimple.java 48.08
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSharded.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSharded.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceIndividual.java 48.08
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSimple.java 46.34
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSimple.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSimple.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceIndividual.java 48.08
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/channels/MockChannelServiceSharded.java 46.34
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/modules/SnapshotModule.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/modules/SnapshotModule.java

File Similarity (%)
streams-main-dagger/src/main/java/io/confluent/ps/streams/referenceapp/finance/dagger/SnapshotDaggerModule.java 58.53 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedSimpleService.java 37.58
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsConfigService.java 34.35
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedShardedService.java 33.99
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotStoreProvider.java 33.78
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetAggregateSupplier.java 30.18
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetAggregateSupplier.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetAggregateSupplier.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedShardedService.java 44.7
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedSimpleService.java 43.4
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java 30.18
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsConfigService.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsConfigService.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java 34.35
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedShardedService.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedShardedService.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedSimpleService.java 74.15 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetAggregateSupplier.java 44.7
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java 33.99
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedSimpleService.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedSimpleService.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetsPrecomputedShardedService.java 74.15 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/SnapshotSetAggregateSupplier.java 43.4
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java 37.58
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/KSSnapshotStoreProvider.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/KSSnapshotStoreProvider.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotStoreProvider.java 69.4 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestStoresProvider.java 50.61 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotStoreProvider.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotStoreProvider.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/KSSnapshotStoreProvider.java 69.4 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestStoresProvider.java 53.67 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/services/LatestInstrumentWindowsService.java 33.78
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyLatestWindows.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyLatestWindows.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyPrecomputer.java 35.46
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyPrecomputer.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyPrecomputer.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotTopologyLatestWindows.java 35.46
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/AdvancingWallClockProvider.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/AdvancingWallClockProvider.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/WallClockProvider.java 59.51 ⚠️
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/datagen/WallClockStub.java 30.34
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/KSUtils.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/KSUtils.java

File Similarity (%)
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroSerde.java 38.46
streams-module/src/main/java/io/confluent/kafka/streams/serdes/avro/WrappingSpecificAvroDeserializer.java 30.55
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/WallClockProvider.java

📄 streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/WallClockProvider.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/AdvancingWallClockProvider.java 59.51 ⚠️
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/finance/integrationTests/example/IntegrationSanityCheckITCase.java

📄 streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/finance/integrationTests/example/IntegrationSanityCheckITCase.java

File Similarity (%)
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/LoadTest.java 32.3
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/LoadTest.java

📄 streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/LoadTest.java

File Similarity (%)
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/finance/integrationTests/example/IntegrationSanityCheckITCase.java 32.3
streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/datagen/WallClockStub.java

📄 streams-module/src/test-integration/java/io/confluent/ps/streams/referenceapp/integrationTests/datagen/WallClockStub.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/utils/AdvancingWallClockProvider.java 30.34
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/LatestValueAndOutputStreamTests.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/LatestValueAndOutputStreamTests.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/PublicInterfaceTests.java 36.76
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/PublicInterfaceTests.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/PublicInterfaceTests.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/LatestValueAndOutputStreamTests.java 36.76
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModule.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModule.java

File Similarity (%)
streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/DaggerSnapAppTestModule.java 70.73 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModuleTest.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModuleTest.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/tests/GuiceInjectedTestBase.java 35.93
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestStoresProvider.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestStoresProvider.java

File Similarity (%)
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/SnapshotStoreProvider.java 53.67 ⚠️
streams-module/src/main/java/io/confluent/ps/streams/referenceapp/finance/topologies/KSSnapshotStoreProvider.java 50.61 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroIDLTests.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroIDLTests.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroTests.java 77.3 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroTests.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroTests.java

File Similarity (%)
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/model/avro/AvroIDLTests.java 77.3 ⚠️
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/tests/GuiceInjectedTestBase.java

📄 streams-module/src/test/java/io/confluent/ps/streams/referenceapp/tests/GuiceInjectedTestBase.java

File Similarity (%)
streams-main-dagger/src/test/java/io/confluent/ps/streams/referenceapp/finance/dagger/BaseDaggerTest.java 39.13
streams-module/src/test/java/io/confluent/ps/streams/referenceapp/finance/TestModuleTest.java 35.93

@github-actions

Copy link
Copy Markdown

❌ Mutation Testing (PIT) Report

PIT did not produce a report. Most commonly this means a test failed in the baseline (PIT runs all tests unmodified first to establish green) and PIT aborted before mutating. See the "Run PIT mutation testing" step logs for the failing test, then either fix it or add it to -DexcludedTestClasses in the workflow.

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