2.0.2: fix dead-starter-process check (#30, #31) and verify BW5 measures (#24) - #32
Open
alexandrev-tibco wants to merge 6 commits into
Open
2.0.2: fix dead-starter-process check (#30, #31) and verify BW5 measures (#24)#32alexandrev-tibco wants to merge 6 commits into
alexandrev-tibco wants to merge 6 commits into
Conversation
added 3 commits
July 30, 2026 13:04
The "Dead Process Check For Starter Process" rule flagged every process whose name was absent from an application archive, regardless of its type. - #30: skip subprocesses. Only starter (auto-starting) processes are relevant; subprocesses are handled by DeadProcessCheckForSubProcess. - #31: also treat processes exported by a design-time library (projlib) as used by inspecting .libbuilder descriptors in addition to .archive files. Adds tests covering a subprocess (not flagged), a genuine orphan starter (flagged) and a starter declared in a .libbuilder (not flagged).
Assert that the BW5 metric sensor publishes its measures (processes, groups, activities, transitions) so a regression of the "Measure value should be of type Integer" error is caught end-to-end.
This was referenced Jul 30, 2026
added 2 commits
July 30, 2026 16:30
AbstractProcessCatchCheck assumed XmlHelper.firstChildElement threw NoSuchElementException when an element was absent, but it returns null. A Catch activity whose <config> has no <catchAll> (or <catchFault>) element therefore aborted the entire analysis with an NPE in checkCatch/findFaultCatch. Guard against a null configuration and null config elements, treating a missing catchAll as "not found" instead of crashing. Adds a regression test.
Makes the SAMPLE_SRC path overridable so the dockerised integration test can be pointed at an arbitrary BW project (e.g. to reproduce a reported issue locally), defaulting to the bundled BW5 sample.
Add an `onlyStarterProcesses` rule property to the catch checks (ProcessCatchAll / CustomCatch). When enabled, the rule is evaluated only on starter (receiver) processes and subprocesses are skipped; the default (false) preserves the previous behaviour of evaluating every process.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Starts the 2.0.2 development cycle and fixes the first batch of reported issues.
Changes
2.0.2(CI appends-SNAPSHOTon non-main branches).DeadProcessCheckForSubProcess) and only evaluates starter (auto-starting) processes..libbuilderdescriptor; the check now inspects.libbuilderfiles in addition to.archive, so such processes are no longer flagged as dead.processes/groups/activities/transitionsare published without the "Measure value should be of type Integer" error).Verification
mvn verifygreen: 119 tests (3 new), 0 SpotBugs / 0 PMD / 0 Checkstyle. Dockerized integration test passes: 12 issues + BW5 measures (processes: 2, activities: 10, transitions: 12).Refs #24, #30, #31.