AI Slop Code Risk Monitor

rundeck/rundeck

SlopCodeMonitor badge for rundeck/rundeck Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Enable Self-Service Operations: Give specific users access to your existing tools, services, and scripts

1.1 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for rundeck/rundeck, a Groovy project with 6,351 GitHub stars. SynthScan examined 397,557 lines of code across 2760 source files, recording 315 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 1.1 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

1.1
Adjusted Signal
1.1
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
6.4K
Stars
Groovy
Language
397.6K
Lines of Code
2.8K
Files
315
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 3.6/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 256 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.9/100 · LOW

Are imports declared and package/API names verified? 33 finding(s).

Agent Over-Engineering Ratio 2.1/100 · LOW

Are wrappers, guards, and repeated structures necessary? 124 finding(s).

PR Review Velocity Impact 5.4/100 · LOW

Which changes need focused human review? 315 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 4HIGH 0MEDIUM 47LOW 264

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 315 distinct pattern matches across 12 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers98 hits · 92 pts
SeverityFileLineSnippetContext
LOW…ges/ui-trellis/src/app/utilities/DateTimeFormatters.ts87export function formatDurationFromNowHumanize(time: MomentInput) {CODE
LOW…ges/ui-trellis/src/app/utilities/DateTimeFormatters.ts123export function formatDurationFromNowMomentHumanize(time: MomentInput) {CODE
LOW…components/job/schedule/services/scheduleDefinition.ts198export function fromSimpleToCronExpression(CODE
LOW…/app/components/job/resources/services/nodeServices.ts8export async function getConfigMetaForExecutionMode(CODE
LOW…src/app/components/job/workflow/types/workflowFuncs.ts18export function mergePreservedLogFiltersIntoSaveData(CODE
LOW…/packages/ui-trellis/src/library/services/jobBrowse.ts126export async function bulkScheduleEnableDisable(CODE
LOW…/packages/ui-trellis/src/library/services/jobBrowse.ts141export async function bulkExecutionEnableDisable(CODE
LOW…/grails-app/assets/javascripts/workflowStepEditorKO.js188function WorkflowGlobalLogFilterEditor(data) {CODE
LOW…/grails-app/assets/javascripts/workflowStepEditorKO.js259function WorkflowStepLogFilterEditor(data) {CODE
LOW…kapp/grails-app/assets/javascripts/jquery.waypoints.js173 function requestAnimationFrameShim(callback) {CODE
LOW…ils-app/assets/javascripts/details-element-polyfill.js148 function setAccessibilityAttributes(root) {CODE
LOW…ils-app/assets/javascripts/details-element-polyfill.js190 function findClosestElementWithTagName(element, tagName) {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout.debug.js3134 function getBindingsAndMakeAccessors(node, context) {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout.debug.js3138 function validateThatBindingIsAllowedForVirtualElements(bindingName) {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout.debug.js3144 function applyBindingsToDescendantsInternal (bindingContext, elementOrVirtualElement, bindingContextsMayDifferFromDoCODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js132 function isClickOnCheckableElement(element, eventType) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js161 function toggleObjectClassPropertyString(obj, prop, classNames, shouldHaveClass) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js755 function getDisposeCallbacksCollection(node, createIfNotFound) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js763 function destroyCallbacksCollection(node) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js788 function cleanImmediateCommentTypeChildren(nodeWithChildren) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js1226function valuesArePrimitiveAndEqual(a, b) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js1970function computedDisposeDependencyCallback(id, entryToDispose) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js1978function computedBeginDependencyDetectionCallback(subscribable, id) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js2377 function visitPropertiesOrArrayEntries(rootObject, visitorCallback) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js2940 function createBindingsStringEvaluatorViaCache(bindingsString, cache, options) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js2946 function createBindingsStringEvaluator(bindingsString, options) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3114 function makeAccessorsFromFunction(callback) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3170 function applyBindingsToNodeAndDescendantsInternal (bindingContext, nodeVerified, bindingContextMayDifferFromDomPareCODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3233 function applyBindingsToNodeInternal(node, sourceBindings, bindingContext, bindingContextMayDifferFromDomParentElemeCODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3511 function getFirstResultFromLoaders(methodName, argsExceptCallback, callback, candidateLoaders) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3724 function cloneNodesFromTemplateSourceElement(elemInstance) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js3831 function getComponentParamsFromCustomElement(elem, bindingContext) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5008 function validateDataBindValuesForRewriting(keyValueArray) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5026 function constructMemoizedTagReplacement(dataBindAttributeValue, tagToRetain, nodeName, templateEngine) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5200 function invokeForEachNodeInContinuousRange(firstNode, lastNode, action) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5208 function activateBindingsOnContinuousNodeArray(continuousNodeArray, bindingContext) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5265 function getFirstNodeFromPossibleArray(nodeOrNodeArray) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5404 function disposeOldComputedAndStoreNewOne(element, newComputed) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5532 function compareSmallArrayToBigArray(smlArray, bigArray, statusNotInSml, statusNotInBig, options) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5609 function mapNodeAndRefreshWhenChanged(containerNode, mapping, valueToMap, callbackAfterAddingNodes, index) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js5821 function ensureHasReferencedJQueryTemplates() {CODE
LOW…ails-app/assets/javascripts/filterStepPluginsKOTest.js35 function createPluginDescritptions(){CODE
LOW…kapp/grails-app/assets/javascripts/executionStateKO.js1315 (function bindHideIncompleteEventBus() {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3521 function getBindingsAndMakeAccessors(node, context) {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3525 function validateThatBindingIsAllowedForVirtualElements(bindingName) {CODE
LOW⚡…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3531 function applyBindingsToDescendantsInternal(bindingContext, elementOrVirtualElement) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js123 function isClickOnCheckableElement(element, eventType) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js154 function toggleObjectClassPropertyString(obj, prop, classNames, shouldHaveClass) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js787 function getDisposeCallbacksCollection(node, createIfNotFound) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js795 function destroyCallbacksCollection(node) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js1275 function valuesArePrimitiveAndEqual(a, b) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js2100 function computedDisposeDependencyCallback(id, entryToDispose) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js2108 function computedBeginDependencyDetectionCallback(subscribable, id) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js2578 function visitPropertiesOrArrayEntries(rootObject, visitorCallback) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3209 function createBindingsStringEvaluatorViaCache(bindingsString, cache, options) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3215 function createBindingsStringEvaluator(bindingsString, options) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3501 function makeAccessorsFromFunction(callback) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3561 function applyBindingsToNodeAndDescendantsInternal(bindingContext, nodeVerified) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3613 function applyBindingsToNodeInternal(node, sourceBindings, bindingContext) {CODE
LOW…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js3921 function getFirstResultFromLoaders(methodName, argsExceptCallback, callback, candidateLoaders) {CODE
38 more matches not shown…
Over-Commented Block97 hits · 90 pts
SeverityFileLineSnippetContext
LOWbuild.yaml1# Bundled external plugin versions have moved to gradle.properties.COMMENT
LOW…/authorization/providers/TestYamlPolicyCollection.java81// public void testGroupEqualsSingle() throws Exception {COMMENT
LOW…/authorization/providers/TestYamlPolicyCollection.java101// Subject subject = makeSubject("user1", "dev_test");COMMENT
LOW…/authorization/providers/TestYamlPolicyCollection.java121// Collection<RuleSetConstructor> ruleSetConstructors = policies.matchedContexts(subject, environment);COMMENT
LOW…pp/grails-spa/packages/ui-trellis/jest.global-mocks.js21config.global.mocks = {COMMENT
LOW…pp/grails-spa/packages/ui-trellis/jest.global-mocks.js41// };COMMENT
LOW…src/app/components/activity/tests/activityList.spec.ts421 // undefined -- the meaningful assertion is that the watcher ran toCOMMENT
LOW…src/app/components/community-news-notification/main.js41]);COMMENT
LOW…src/app/components/community-news-notification/main.js61COMMENT
LOW…lis/src/app/pages/repository/components/PluginCard.vue141 ) {COMMENT
LOW…llis/src/library/components/navbar/NavBarContainer.vue221 // i {COMMENT
LOW…/library/components/execution-log/execution.stories.ts61COMMENT
LOW…/library/components/execution-log/execution.stories.ts81// completed: false,COMMENT
LOW…/src/library/components/job/workflow-designer/Graph.ts161 // node.addPrevious(prevNode!)COMMENT
LOW…src/library/components/containers/tabs/tabs.stories.ts21// <Tabs class="card" v-bind="args" style="padding: 20px;">COMMENT
LOW…src/library/components/containers/tabs/tabs.stories.ts41// }COMMENT
LOW…src/library/components/containers/tabs/tabs.stories.ts61// setupStory(this)COMMENT
LOW…brary/theme/scss/runstrap/_sidebar-and-main-panel.scss21 // position: relative;COMMENT
LOW…brary/theme/scss/runstrap/_sidebar-and-main-panel.scss121COMMENT
LOW…brary/theme/scss/runstrap/_sidebar-and-main-panel.scss141 // }COMMENT
LOW…rellis/src/library/theme/scss/runstrap/_variables.scss861//** Default progress bar colorCOMMENT
LOW…is/src/library/theme/scss/runstrap/_button-groups.scss221 > .btn-group .dropdown-menu {COMMENT
LOW…-trellis/src/library/theme/scss/runstrap/_layouts.scss1// *************************************COMMENT
LOW…library/theme/scss/runstrap/_responsive-utilities.scss1//COMMENT
LOW…ellis/src/library/theme/scss/runstrap/_responsive.scss141 // .nav .nav{COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_inputs.scss1// *************************************COMMENT
LOW…rellis/src/library/theme/scss/runstrap/_utilities.scss1// *************************************COMMENT
LOW…ui-trellis/src/library/theme/scss/runstrap/_forms.scss41//COMMENT
LOW…ui-trellis/src/library/theme/scss/runstrap/_forms.scss101// Adjust output elementCOMMENT
LOW…ui-trellis/src/library/theme/scss/runstrap/_forms.scss461//COMMENT
LOW…llis/src/library/theme/scss/runstrap/_breadcrumbs.scss1// *************************************COMMENT
LOW…/ui-trellis/src/library/theme/scss/runstrap/_grid.scss1// *************************************COMMENT
LOW…trellis/src/library/theme/scss/runstrap/_dropdown.scss161// Menu positioningCOMMENT
LOW…trellis/src/library/theme/scss/runstrap/_dropdown.scss301COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss1// /* ============================================================COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss21// -o-user-select: none;COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss41// top: 0;COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss61// .has-switch input[type=checkbox] {COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss81// }COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss101// .has-switch label {COMMENT
LOW…i-trellis/src/library/theme/scss/runstrap/_switch.scss121// }COMMENT
LOW…rellis/src/library/theme/scss/runstrap/_normalize.scss241// ==========================================================================COMMENT
LOW…ry/theme/scss/runstrap/mixins/_background-variant.scss1// Contextual backgroundsCOMMENT
LOW…lis/src/library/theme/scss/runstrap/mixins/_forms.scss41 background-color: $background-color;COMMENT
LOW…s/src/library/theme/scss/runstrap/mixins/_buttons.scss121 }COMMENT
LOW…s/src/library/theme/scss/runstrap/mixins/_buttons.scss141 // }COMMENT
LOW…brary/theme/scss/runstrap/mixins/_vendor-prefixes.scss1// Vendor PrefixesCOMMENT
LOW…/src/library/theme/scss/runstrap/mixins/_clearfix.scss1// ClearfixCOMMENT
LOW…rellis/src/library/theme/scss/custom/process-flow.scss141 }COMMENT
LOW…rellis/src/library/theme/scss/custom/process-flow.scss161// }COMMENT
LOW…rellis/src/library/theme/scss/custom/process-flow.scss181// &.inactive {COMMENT
LOW…rellis/src/library/theme/scss/custom/process-flow.scss201// span {COMMENT
LOW…/ui-trellis/src/library/theme/scss/custom/buttons.scss1// .btn.arrow-button{COMMENT
LOW…rellis/src/library/theme/scss/custom/rundeck-icon.scss21 // &.app-logoCOMMENT
LOW…ages/ui-trellis/src/library/theme/scss/pages/jobs.scss121 /** option controls and view layout **/COMMENT
LOW…pa/packages/ui-trellis/src/library/modules/requests.ts1// export const request = (url, params) => {COMMENT
LOWrundeckapp/grails-app/assets/less/_old-variables.less1// Flatly 3.0.3COMMENT
LOW…deckapp/grails-app/assets/javascripts/bootstrap-all.js1// Do not edit this file. It will be overwritten by the bootstrap-framework plugin.COMMENT
LOW…pp/grails-app/assets/javascripts/jobEditPage_bundle.js21//= require knockout-onenterCOMMENT
LOW…eckapp/grails-app/assets/javascripts/knockout.debug.js321 fixUpContinuousNodeArray: function(continuousNodeArray, parentNode) {COMMENT
37 more matches not shown…
Decorative Section Separators26 hits · 78 pts
SeverityFileLineSnippetContext
MEDIUM…ests/ldapsync/should-show-ldap-profile-attribs-test.sh4# -----------------COMMENT
MEDIUM…ests/ldapsync/should-show-ldap-profile-attribs-test.sh7# ------------COMMENT
MEDIUM…ts/rundeck/should-copy-multiple-files-remotely-test.sh9# -----------------COMMENT
MEDIUM…ts/rundeck/should-copy-multiple-files-remotely-test.sh12# ------------COMMENT
MEDIUM…ers/rundeck/tests/rundeck/project-should-exist-test.sh9# -----------------COMMENT
MEDIUM…ers/rundeck/tests/rundeck/project-should-exist-test.sh12# ------------COMMENT
MEDIUM…eck/tests/rundeck/should-dispatch-remote-adhoc-test.sh9# -----------------COMMENT
MEDIUM…eck/tests/rundeck/should-dispatch-remote-adhoc-test.sh12# ------------COMMENT
MEDIUM…eck/should-dispatch-script-remotely-storagekey-test.sh9# -----------------COMMENT
MEDIUM…eck/should-dispatch-script-remotely-storagekey-test.sh12# ------------COMMENT
MEDIUM…/tests/rundeck/should-dispatch-script-remotely-test.sh9# -----------------COMMENT
MEDIUM…/tests/rundeck/should-dispatch-script-remotely-test.sh12# ------------COMMENT
MEDIUM…undeck/should-dispatch-remote-adhoc-storagekey-test.sh9# -----------------COMMENT
MEDIUM…undeck/should-dispatch-remote-adhoc-storagekey-test.sh12# ------------COMMENT
MEDIUM…/dockers/rundeck/tests/pamtests/should-use-pam-test.sh4# -----------------COMMENT
MEDIUM…/dockers/rundeck/tests/pamtests/should-use-pam-test.sh7# ------------COMMENT
MEDIUM…er/dockers/rundeck/tests/ssltests/basic-client-test.sh8# -----------------COMMENT
MEDIUM…er/dockers/rundeck/tests/ssltests/basic-client-test.sh11# ------------COMMENT
MEDIUM…/rundeck/tests/ldaptests/should-use-ldap-creds-test.sh4# -----------------COMMENT
MEDIUM…/rundeck/tests/ldaptests/should-use-ldap-creds-test.sh7# ------------COMMENT
MEDIUMtest/docker/dockers/rundeck/scripts/start_rundeck.sh48# ----------------------------------------------------------------COMMENT
MEDIUMtest/docker/dockers/rundeck/scripts/start_rundeck.sh50# ----------------------------------------------------------------COMMENT
MEDIUMtest/docker/dockers/rundeck/scripts/start_rundeck.sh61# ----------------------------------------------------------------COMMENT
MEDIUMtest/docker/dockers/rundeck/scripts/start_rundeck.sh63# ----------------------------------------------------------------COMMENT
MEDIUM…ansible/tests/ansible/should-load-ansible-jobs-test.sh8# -----------------COMMENT
MEDIUM…ansible/tests/ansible/should-load-ansible-jobs-test.sh11# ------------COMMENT
Structural Annotation Overuse32 hits · 50 pts
SeverityFileLineSnippetContext
LOW.claude/docs/api-guidelines.md134### Step 1: build.gradle DependenciesCOMMENT
LOW.claude/docs/api-guidelines.md165### Step 2: Controller AnnotationCOMMENT
LOW.claude/docs/api-guidelines.md187### Step 3: Method AnnotationsCOMMENT
LOW.claude/docs/api-guidelines.md219### Step 4: Request Body (POST/PUT)COMMENT
LOW.claude/docs/api-guidelines.md252### Step 5: Query and Path ParametersCOMMENT
LOW.claude/docs/development-guidelines.md112#### Step 1: Define Config TypeCOMMENT
LOW.claude/docs/development-guidelines.md118#### Step 2: Implement SystemConfigurableCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md51### Step 1: Identify Dependency LocationsCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md66### Step 2: Search for Vulnerable DependencyCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md79### Step 3: Check Transitive DependenciesCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md92### Step 4: Frontend DependenciesCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md271### Step 1: Verify Dependency UpdatedCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md284### Step 2: Run Test SuiteCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md298### Step 3: Functional TestingCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md308### Step 4: Build and Smoke TestCOMMENT
LOW.claude/skills/cve-remediation/SKILL.md324### Step 5: Security VerificationCOMMENT
LOW.claude/skills/create-plugin/SKILL.md54#### Step 1: Create build.gradleCOMMENT
LOW.claude/skills/create-plugin/SKILL.md115#### Step 2: Create Plugin ClassCOMMENT
LOW.claude/skills/create-code/SKILL.md179### Step 1: Define Config TypeCOMMENT
LOW.claude/skills/create-code/SKILL.md185### Step 2: Implement SystemConfigurableCOMMENT
LOW.claude/skills/backport-pr/SKILL.md68### Step 1: Validate EnvironmentCOMMENT
LOW.claude/skills/backport-pr/SKILL.md86### Step 2: Fetch PR MetadataCOMMENT
LOW.claude/skills/backport-pr/SKILL.md120### Step 3: Determine Commits to Cherry-Pick (Auto-Detect Merge Strategy)COMMENT
LOW.claude/skills/backport-pr/SKILL.md161### Step 4: Prompt for Target BranchCOMMENT
LOW.claude/skills/backport-pr/SKILL.md184### Step 5: Create Backport BranchCOMMENT
LOW.claude/skills/backport-pr/SKILL.md213### Step 6: Cherry-Pick Commit(s)COMMENT
LOW.claude/skills/backport-pr/SKILL.md280### Step 7: Push Backport BranchCOMMENT
LOW.claude/skills/backport-pr/SKILL.md292### Step 8: Open Backport PRCOMMENT
LOW.claude/skills/backport-pr/SKILL.md352### Step 9: Final SummaryCOMMENT
LOW⚡.circleci/config.yml894 # Step 1: Unit tests run in parallel with Build (no gates for fast feedback)COMMENT
LOW⚡.circleci/config.yml902 # Step 2: Integration and functional tests require Build + unit testsCOMMENT
LOW.circleci/config.yml951 # Step 3: Selenium — only after all Step 1 (unit) and Step 2 (integration/functional) tests passCOMMENT
Hallucination Indicators4 hits · 40 pts
SeverityFileLineSnippetContext
CRITICAL…ckages/ui-trellis/src/app/utilities/tests/i18n.spec.ts81 const en_US_calls = i18n.global.mergeLocaleMessage.mock.calls.filter(CODE
CRITICALrundeckapp/grails-app/assets/javascripts/application.js897 opts.template = jQuery.fn.popover.Constructor.DEFAULTS.template.replace(CODE
CRITICAL…bs/rundeck/jetty/jaas/JettyCachingLdapLoginModule.java362 return prefix+(isBase64(chkString) ? org.apache.commons.codec.binary.Hex.encodeHexString(org.apache.commons.codeCODE
CRITICAL…ndeck/core/execution/ExecutionListenerBuildLogger.java83 message.append(org.apache.tools.ant.util.StringUtils.getStackTrace(error));CODE
AI Slop Vocabulary16 hits · 36 pts
SeverityFileLineSnippetContext
MEDIUM…pp/grails-spa/packages/ui-trellis/jest.global-mocks.js44// // can leverage the mockRundeckBrowser for other mocksCOMMENT
MEDIUM…eckapp/grails-app/assets/javascripts/knockout.debug.js26 // (0, eval)('this') is a robust way of getting a reference to the global objectCOMMENT
MEDIUM…eckapp/grails-app/assets/javascripts/knockout_3_5_1.js10 // (0, eval)('this') is a robust way of getting a reference to the global objectCOMMENT
MEDIUM…deckapp/grails-app/assets/javascripts/util/markdeep.js833 // explicitly compute the value anyway and the parser is robust to extra characteCOMMENT
MEDIUM…deckapp/grails-app/assets/javascripts/ace/mode-html.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…deckapp/grails-app/assets/javascripts/ace/mode-html.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…ndeckapp/grails-app/assets/javascripts/ace/mode-php.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…ndeckapp/grails-app/assets/javascripts/ace/mode-php.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…app/grails-app/assets/javascripts/ace/mode-markdown.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…app/grails-app/assets/javascripts/ace/mode-markdown.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…ndeckapp/src/main/resources/public/js/ace/mode-html.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…ndeckapp/src/main/resources/public/js/ace/mode-html.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUMrundeckapp/src/main/resources/public/js/ace/mode-php.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUMrundeckapp/src/main/resources/public/js/ace/mode-php.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…kapp/src/main/resources/public/js/ace/mode-markdown.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
MEDIUM…kapp/src/main/resources/public/js/ace/mode-markdown.js1ace.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rCODE
Fake / Example Data29 hits · 33 pts
SeverityFileLineSnippetContext
LOW…s/ui-trellis/src/app/components/home/HomeSearchBar.vue8 :placeholder="placeholder"CODE
LOW…is/src/app/components/home/tests/HomeSearchBar.spec.ts25 expect(inputElement.attributes("placeholder")).toBe("Custom Placeholder");CODE
LOW…components/job/workflow/tests/JobRefFormFields.spec.ts112 props: ["modelValue", "suggestions", "readOnly", "placeholder"],CODE
LOW…app/components/job/workflow/tests/EditStepCard.spec.ts150 props: ["modelValue", "placeholder"],CODE
LOW…lis/src/app/pages/repository/deprecated/flex-html.html29 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis pharetraCODE
LOW…lis/src/app/pages/repository/deprecated/flex-html.html29 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis pharetraCODE
LOW…/components/primeVue/PtAutoComplete/PtAutoComplete.vue17 :placeholder="placeholder"CODE
LOW…/src/library/components/primeVue/PtSelect/PtSelect.vue17 :placeholder="placeholder"CODE
LOW…primeVue/PtEntityAutoComplete/PtEntityAutoComplete.vue18 :placeholder="placeholder"CODE
LOW…is/src/library/components/primeVue/PtInput/PtInput.vue27 :placeholder="placeholder"CODE
LOW…is/src/library/components/primeVue/PtInput/PtInput.vue50 :placeholder="placeholder"CODE
LOW…is/src/library/components/primeVue/PtInput/PtInput.vue73 :placeholder="placeholder"CODE
LOW…rary/components/primeVue/PtInput/tests/PtInput.spec.ts162 .attributes("placeholder"),CODE
LOW…rary/components/primeVue/PtInput/tests/PtInput.spec.ts250 expect(textarea.attributes("placeholder")).toBe("Add a note");CODE
LOW…src/library/components/plugins/PluginAccordionList.vue8 <div v-for="n in 4" :key="'common-' + n" class="placeholder">CODE
LOW…src/library/components/plugins/PluginAccordionList.vue17 <div v-for="n in 3" :key="'other-' + n" class="placeholder">CODE
LOW…kages/ui-trellis/src/library/stories/theme.stories.tsx616 Lorem ipsum dolor sit amet, consectetur adipiscing elit. EtiamCODE
LOW…kages/ui-trellis/src/library/stories/theme.stories.tsx616 Lorem ipsum dolor sit amet, consectetur adipiscing elit. EtiamCODE
LOW…/ui-trellis/src/library/theme/scss/custom/flexbox.scss156// eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voCOMMENT
LOW…/ui-trellis/src/library/theme/scss/custom/flexbox.scss156// eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voCOMMENT
LOW…app/assets/javascripts/bootstrap-datetimepicker.min.js2348 else if (options.defaultDate && input.attr('placeholder') === undefined) {CODE
LOW…kapp/grails-app/assets/javascripts/executionOptions.js80 inpu2.setAttribute("placeholder", "Enter value");CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js981 if (input.val() == input.attr('placeholder')) {CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js983 input.removeClass('placeholder');CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js987 if (input.val() == '' || input.val() == input.attr('placeholder')) {CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js988 input.addClass('placeholder');CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js989 input.val(input.attr('placeholder'));CODE
LOW⚡rundeckapp/grails-app/assets/javascripts/application.js995 if (input.val() == input.attr('placeholder')) {CODE
LOW…ndeck/jetty/jaas/JettyCachingLdapLoginModuleTest2.java397 when(userAttributes.get(module._userEmailAttribute)).thenReturn(new BasicAttribute(module._userEmailAttribute,"uCODE
Self-Referential Comments4 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMpackaging/lib/rpm/scripts/preinst.sh19# Create the home parent directory in case it does not exist(it was relocated)COMMENT
MEDIUM…rellis/src/library/theme/scss/runstrap/_variables.scss248//## Define the breakpoints at which your layout will change, adapting to different screen sizes.COMMENT
MEDIUM…rellis/src/library/theme/scss/runstrap/_variables.scss547//## Define the maximum width of `.container` for different screen sizes.COMMENT
MEDIUMscripts/release/setversion.sh134# Create a release branch for patch releasesCOMMENT
Verbosity Indicators4 hits · 8 pts
SeverityFileLineSnippetContext
LOW…i-trellis/src/app/components/adhoc/ExecutionOutput.vue516 // so we need to check if we've already processed completionCOMMENT
LOW⚡.circleci/config.yml894 # Step 1: Unit tests run in parallel with Build (no gates for fast feedback)COMMENT
LOW⚡.circleci/config.yml902 # Step 2: Integration and functional tests require Build + unit testsCOMMENT
LOW.circleci/config.yml951 # Step 3: Selenium — only after all Step 1 (unit) and Step 2 (integration/functional) tests passCOMMENT
Redundant / Tautological Comments3 hits · 4 pts
SeverityFileLineSnippetContext
LOWscripts/circleci/helper-functions.sh173 # Check if there are any high or critical vulnerabilities and return a non-zero exit code if foundCOMMENT
LOWscripts/release/setversion.sh181 # Check if branch already exists locally or remotelyCOMMENT
LOW.circleci/config.yml469 # Check if scan failed (error field present)COMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.circleci/config.yml1041 # Build Rundeck Docker images with JRE 17; run downstream tests with JDK 25 on the host (Gradle / CI orchestration).COMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/release/release-rc.sh19# Usage:COMMENT