AI Slop Code Risk Monitor

PathOfBuildingCommunity/PathOfBuilding

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

Offline build planner for Path of Exile.

0.3 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for PathOfBuildingCommunity/PathOfBuilding, a Lua project with 5,470 GitHub stars. SynthScan examined 816,731 lines of code across 474 source files, recording 254 pattern matches distributed across 5 syntactic categories. The legacy adjusted pattern signal is 0.3 (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.

0.3
Adjusted Signal
0.3
Raw Pattern Score
100%
Time Factor
2026-10-30
Last Push
5.5K
Stars
Lua
Language
816.7K
Lines of Code
474
Files
254
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 1.4/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.1/100 · LOW

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

Agent Over-Engineering Ratio 0.3/100 · LOW

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

PR Review Velocity Impact 1.6/100 · LOW

Which changes need focused human review? 254 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 1HIGH 0MEDIUM 0LOW 253

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 254 distinct pattern matches across 5 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.

Over-Commented Block202 hits · 181 pts
SeverityFileLineSnippetContext
LOWsrc/Export/Bases/body.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/body.txt21COMMENT
LOWsrc/Export/Bases/jewel.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/jewel.txt21#subType TimelessCOMMENT
LOWsrc/Export/Bases/Rares.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/Rares.txt21#setBestBase Gloves, Evasion, [ Prefix: LocalIncreasedEvasionRating2, Prefix: LocalIncreasedEvasionRatingPercent5, PrefiCOMMENT
LOWsrc/Export/Bases/Rares.txt41#setBestBase Body Armour, Armour/Energy Shield, Armour/Energy Shield Chest, [ Prefix: LocalBaseArmourAndEnergyShield5, PCOMMENT
LOWsrc/Export/Bases/Rares.txt61#setBestBase Shield, Armour, [ Prefix: LocalIncreasedBlockPercentage5, Prefix: LocalIncreasedPhysicalDamageReductionRatiCOMMENT
LOWsrc/Export/Bases/Rares.txt81#setBase Jade Amulet, [ Suffix: Dexterity5]COMMENT
LOWsrc/Export/Bases/Rares.txt101#setBase Ruby Ring, Resistance Ring, [ ]COMMENT
LOWsrc/Export/Bases/Rares.txt121-- BeltsCOMMENT
LOWsrc/Export/Bases/Rares.txt141#baseGroup Elemental Two Handed, [ Prefix: LocalAddedFireDamageTwoHand8_, Prefix: LocalAddedColdDamageTwoHand8, Prefix: COMMENT
LOWsrc/Export/Bases/Rares.txt161#setBase Pneumatic Dagger, Elemental %s, [ ]COMMENT
LOWsrc/Export/Bases/Rares.txt181#setBase Impact Force Propagator, Elemental %s, [ ]COMMENT
LOWsrc/Export/Bases/Rares.txt201#setBase Anarchic Spiritblade, Physical %s, [ ]COMMENT
LOWsrc/Export/Bases/flask.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/boots.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/boots.txt21#forceShow trueCOMMENT
LOWsrc/Export/Bases/shield.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/shield.txt21COMMENT
LOWsrc/Export/Bases/dagger.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/quiver.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/gloves.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/gloves.txt21COMMENT
LOWsrc/Export/Bases/belt.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/amulet.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/amulet.txt21#base Metadata/Items/Amulets/Talismans/Talisman3_6_1 Monkey Paw Talisman (Power)COMMENT
LOWsrc/Export/Bases/staff.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/ring.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/sword.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/sword.txt21#subTypeCOMMENT
LOWsrc/Export/Bases/mace.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/graft.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/helmet.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/helmet.txt21#baseMatch Metadata/Items/Armours/Helmets/HelmetStrInt%d+COMMENT
LOWsrc/Export/Bases/wand.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Bases/axe.txt1-- Item data (c) Grinding Gear GamesCOMMENT
LOWsrc/Export/Skills/act_dex.txt281#modsCOMMENT
LOWsrc/Export/Skills/act_dex.txt601#modsCOMMENT
LOWsrc/Export/Skills/act_dex.txt641 },COMMENT
LOWsrc/Export/Skills/act_dex.txt1041#modsCOMMENT
LOWsrc/Export/Skills/act_dex.txt1241#skill EnsnaringArrowCOMMENT
LOWsrc/Export/Skills/act_dex.txt1581COMMENT
LOWsrc/Export/Skills/act_dex.txt1981 area = false,COMMENT
LOWsrc/Export/Skills/act_dex.txt2221#modsCOMMENT
LOWsrc/Export/Skills/act_dex.txt2481#modsCOMMENT
LOWsrc/Export/Skills/act_dex.txt3001 },COMMENT
LOWsrc/Export/Skills/act_dex.txt3041#baseMod skill("radius", 18)COMMENT
LOWsrc/Export/Skills/act_dex.txt3081#modsCOMMENT
LOWsrc/Export/Skills/sup_int.txt581COMMENT
LOWsrc/Export/Skills/act_int.txt641COMMENT
LOWsrc/Export/Skills/act_int.txt661#skill ColdSnapAltXCOMMENT
LOWsrc/Export/Skills/act_int.txt681 },COMMENT
LOWsrc/Export/Skills/act_int.txt721 },COMMENT
LOWsrc/Export/Skills/act_int.txt1041#baseMod skill("radius", 22)COMMENT
LOWsrc/Export/Skills/act_int.txt1161 ["firestorm_initial_impact_area_of_effect_+%_final"] = {COMMENT
LOWsrc/Export/Skills/act_int.txt1181COMMENT
LOWsrc/Export/Skills/act_int.txt1681#baseMod skill("radiusSecondaryLabel", "Area of Chilled Ground:")COMMENT
LOWsrc/Export/Skills/act_int.txt3161#skill VaalLightningTrapCOMMENT
LOWsrc/Export/Skills/act_int.txt3461 },COMMENT
142 more matches not shown…
Hyper-Verbose Identifiers47 hits · 49 pts
SeverityFileLineSnippetContext
LOWspec/System/TestSkills_spec.lua417 local function getAverageDamageMultiplier()CODE
LOWspec/System/TestDefence_spec.lua15 local function poolsRemainingAfterTypeMaxHit(type, enemyDamageMulti)CODE
LOWspec/System/TestRadiusJewelStatDiff_spec.lua90local function findAllocatedNodesInRadius(spec, socketNode, radiusIndex)CODE
LOWspec/System/TestRadiusJewelStatDiff_spec.lua262local function tooltipContainsNegativeStat(tooltip, label)CODE
LOWspec/System/TestRadiusJewelStatDiff_spec.lua281local function findLeapOverlapCandidates(spec, radiusIndex)CODE
LOWspec/System/TestImport_spec.lua149 function importAndReimportWithOldJewel(shouldDelete)CODE
LOW⚡spec/System/TestImportReimport_spec.lua58 local function reimportSocketedItemsWithOptions(itemTypeLine, inventoryId, socketedItems, clearItems)CODE
LOW⚡spec/System/TestImportReimport_spec.lua65 local function reimportSingleSocketedGemWithOptions(itemTypeLine, inventoryId, gemName, clearItems)CODE
LOW⚡spec/System/TestImportReimport_spec.lua71 local function reimportSingleSocketedGem(itemTypeLine, inventoryId, gemName)CODE
LOW⚡spec/System/TestImportReimport_spec.lua75 local function assertReimportPreservesSkillSubstate(slotName, itemTypeLine, inventoryId, gemName, fieldName, fieldValueCODE
LOWspec/System/TestMinionAttackTime_spec.lua20 local function equipReplicaMaatasTeaching()CODE
LOWspec/System/TestTriggers_spec.lua2 local function equipDreadCaptainsCutlass()CODE
LOWspec/System/TestItemCorruption_spec.lua4 local function assertImplicitSelectionsCleared(controls)CODE
LOWsrc/_SimpleGraphic.def.lua191function SetDPIScaleOverridePercent(percent) endCODE
LOWsrc/_SimpleGraphic.def.lua194function GetDPIScaleOverridePercent()CODE
LOWsrc/Classes/ItemsTab.lua2858 local function buildEnchantmentSourceList()CODE
LOWsrc/Classes/ItemsTab.lua4160local function cloneSpecForJewelComparison(spec)CODE
LOWsrc/Classes/ItemsTab.lua4216local function buildSpecForJewelComparison(itemsTab, compareSlot, replacementItem)CODE
LOWsrc/Classes/TradeQuery.lua259local function initStatSortSelectionList(list)CODE
LOWsrc/Classes/TradeQuery.lua1225 local function addMegalomaniacCompareToTooltipIfApplicable(tooltip, result_index)CODE
LOWsrc/Classes/CompareTab.lua4639local function calcRowMatchesBetweenBuilds(self, colData, primaryActor, compareActor, compareEntry)CODE
LOWsrc/Classes/ImportTab.lua888 function FindMatchingStandardLeague(league)CODE
LOWsrc/Classes/ImportTab.lua1257local function getSocketGroupReimportKey(socketGroup)CODE
LOWsrc/Classes/ImportTab.lua1271local function snapshotSocketGroupReimportState(socketGroup, isMainGroup)CODE
LOWsrc/Classes/ImportTab.lua1324local function applySocketGroupReimportState(socketGroup, state)CODE
LOWsrc/Classes/CalcsTab.lua532 local function masteryEffectCanBeAssignedToNode(node, masteryEffect)CODE
LOWsrc/Classes/TradeQueryGenerator.lua60local function canModSpawnForItemCategory(mod, category)CODE
LOWsrc/Classes/TradeQueryGenerator.lua456 local function getTradeCategoryNamesForType(mask, cat)CODE
LOWsrc/Classes/SkillListControl.lua162 local function updateActiveSocketGroupIndex()CODE
LOWsrc/Classes/PassiveTreeView.lua464 local function allocateClickedAscendancy()CODE
LOWsrc/Classes/TreeTab.lua335 local function buildConvertAllButtonLabel()CODE
LOWsrc/Classes/TreeTab.lua1537 local function buildNodeOptionCheckboxes(nodes)CODE
LOWsrc/Classes/PassiveSpec.lua2070 local function addToAllocatedSubgraphNodes(node)CODE
LOWsrc/Modules/ConfigModBrowser.lua113local function sortAlphabeticallyIgnoringValues(a, b)CODE
LOWsrc/Modules/CalcPerform.lua551function doActorLifeManaReservation(actor, addAura)CODE
LOWsrc/Modules/CalcTriggers.lua65local function packageSkillDataForSimulation(skill, env)CODE
LOWsrc/Modules/CalcTriggers.lua105function calcMultiSpellRotationImpact(env, skillRotation, sourceRate, triggerCD, chance, actor)CODE
LOWsrc/Modules/Main.lua1279 local function controlIsInsideScrollClip(popupDialog, control)CODE
LOWsrc/Modules/CalcOffence.lua185local function calcMoltenStrikeTertiaryRadius(baseRadius, deadzoneRadius, areaMod, speedMod)CODE
LOWsrc/Modules/CalcOffence.lua235local function setMoltenStrikeTertiaryRadiusBreakdown(breakdown, deadzoneRadius, baseRadius, label, incArea, moreArea, iCODE
LOWsrc/Modules/ItemTools.lua205 local function checkSubstitutionCombinations(i, numSubstitutions, indices)CODE
LOWsrc/Modules/DataAbyssJewelLookUpTableHelper.lua51local function resolveAbyssJewelComponent(component, legion)CODE
LOWsrc/Modules/DataAbyssJewelLookUpTableHelper.lua59local function getAbyssJewelComponentRoll(component, node, statIndex)CODE
LOWsrc/Modules/CalcDefence.lua154 local function damageMitigationMultiplierForType(damage, type)CODE
LOWsrc/Modules/CalcDefence.lua179local function calcLifeHitPoolWithLossPrevention(life, maxLife, lifeLossPrevented, lifeLossBelowHalfPrevented)CODE
LOWsrc/Data/Global.lua179function ClearMatchKeywordFlagsCache()CODE
LOWsrc/Data/Uniques/Special/Generated.lua548function buildTreeDependentUniques(tree)CODE
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALsrc/Classes/ImportTab.lua1861 self.build.skillsTab.controls.imbuedSupport.gemChangeFunc(data.gems[data.gemForBaseName[socketGroup.imbuedSupport:lCODE
Unused Imports3 hits · 3 pts
SeverityFileLineSnippetContext
LOWupdate_manifest.py10CODE
LOWupdate_manifest.py10CODE
LOWfix_ascendancy_positions.py2CODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOW.github/tweak_changelogs.sh8# Check if there is more than one non-empty line (the full changelog line) before we continueCOMMENT