AI Slop Code RIsk Monitor

Farama-Foundation/HighwayEnv

A collection of environments for autonomous driving and tactical decision-making tasks

17.4 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for Farama-Foundation/HighwayEnv, a Python project with 3,323 GitHub stars. SynthScan examined 24,591 lines of code across 144 source files, recording 281 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 17.4 (Elevated 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.

17.4
Adjusted Signal
17.4
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
3.3K
Stars
Python
Language
24.6K
Lines of Code
144
Files
281
Pattern Hits
2026-10-12
Scan Date
0.14
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 29.7/100 · MEDIUM

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

Hallucinated Dependency & Supply Chain Risk 14.1/100 · LOW

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

Agent Over-Engineering Ratio 45.3/100 · MEDIUM

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

PR Review Velocity Impact 58.0/100 · HIGH

Which changes need focused human review? 281 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 0HIGH 20MEDIUM 23LOW 238

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 281 distinct pattern matches across 13 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 · 112 pts
SeverityFileLineSnippetContext
LOWtests/test_utils.py19def test_rotated_rectangles_intersect():CODE
LOWtests/test_utils.py38def test_confidence_ellipsoid(linear_regression_data):CODE
LOW⚡tests/test_utils.py58def test_is_valid_observation(linear_regression_data):CODE
LOW⚡tests/test_utils.py67def test_is_consistent_dataset_single_point():CODE
LOW⚡tests/test_utils.py72def test_is_consistent_dataset_multiple_points(linear_regression_data):CODE
LOW⚡tests/test_utils.py82def test_near_split_size_bins():CODE
LOW⚡tests/test_utils.py87def test_distance_to_circle_hit():CODE
LOW⚡tests/test_utils.py94def test_distance_to_circle_inside():CODE
LOW⚡tests/test_utils.py100def test_distance_to_circle_miss():CODE
LOW⚡tests/test_utils.py106def test_distance_to_rect_intersection():CODE
LOWtests/test_utils.py117def test_distance_to_rect_no_intersection():CODE
LOWtests/test_utils.py133def test_update_config_allows_complete_nested_override():CODE
LOWtests/test_utils.py156def test_update_config_check_missing_keys_message():CODE
LOWtests/test_utils.py181def test_update_config_check_nested_path_message():CODE
LOW⚡tests/test_utils.py201def test_update_config_check_non_mapping_message():CODE
LOW⚡tests/test_utils.py210def test_update_config_propagates_check_error():CODE
LOW⚡tests/test_utils.py216def test_update_config_check_multiagent_nested_configs():CODE
LOWtests/test_utils.py270def test_update_config_check_multiagent_nested_features_range_message():CODE
LOWtests/vehicle/test_behavior.py12def test_stop_before_obstacle(vehicle_type):CODE
LOWtests/road/test_road.py43def test_network_to_from_config(net):CODE
LOW⚡tests/road/test_neighbour_vehicles.py31def _enable_connected_lane_search(road: Road) -> None:CODE
LOW⚡tests/road/test_neighbour_vehicles.py162 def test_front_and_rear_on_same_segment(self, straight_connected_road):CODE
LOW⚡tests/road/test_neighbour_vehicles.py198 def test_connected_segments_ignored_by_default(self, straight_connected_road):CODE
LOW⚡tests/road/test_neighbour_vehicles.py216 def test_front_on_next_segment(self, straight_connected_road):CODE
LOWtests/road/test_neighbour_vehicles.py228 def test_rear_on_previous_segment(self, straight_connected_road):CODE
LOWtests/road/test_neighbour_vehicles.py240 def test_front_on_curve_segment(self, straight_curve_road):CODE
LOWtests/road/test_neighbour_vehicles.py252 def test_closer_same_segment_preferred_over_next_segment(CODE
LOWtests/road/test_neighbour_vehicles.py270 def test_both_connected_front_and_rear(self, three_segment_road):CODE
LOWtests/road/test_neighbour_vehicles.py282 def test_multi_lane_same_lane_id(self, multi_lane_road):CODE
LOWtests/road/test_neighbour_vehicles.py348 def test_vehicle_far_on_next_segment_detected(self, straight_connected_road):CODE
LOWtests/road/test_neighbour_vehicles.py358 def test_lane_index_none_returns_none(self, straight_connected_road):CODE
LOWtests/road/test_spline.py59 def test_single_element_array(self, simple_data):CODE
LOW⚡tests/road/test_spline.py89 def test_epsilon_outside_left(self, simple_data):CODE
LOW⚡tests/road/test_spline.py96 def test_epsilon_inside_right(self, simple_data):CODE
LOW⚡tests/road/test_spline.py103 def test_epsilon_outside_right(self, simple_data):CODE
LOW⚡tests/road/test_spline.py114 def test_large_extrapolation_left(self, simple_data):CODE
LOW⚡tests/road/test_spline.py121 def test_large_extrapolation_right(self, simple_data):CODE
LOW⚡tests/road/test_spline.py128 def test_two_point_interpolation(self, two_point_data):CODE
LOW⚡tests/road/test_spline.py135 def test_two_point_extrapolation(self, two_point_data):CODE
LOWtests/road/test_spline.py159 def test_mixed_extrapolation_array(self, simple_data):CODE
LOWtests/road/test_spline.py184 def test_roundtrip_cartesian_frenet(self, spline):CODE
LOWtests/road/test_partitioned_road.py14def test_partitioned_road_network():CODE
LOWtests/road/test_partitioned_road.py64def create_partitioned_network(lanes) -> PartitionedRoadNetwork:CODE
LOW⚡tests/graphics/test_gym_render_mode.py22 def test_none_derives_offscreen(self):CODE
LOW⚡tests/graphics/test_gym_render_mode.py28 def test_rgb_array_derives_offscreen(self):CODE
LOW⚡tests/graphics/test_gym_render_mode.py35 def test_human_derives_onscreen(self):CODE
LOW⚡tests/graphics/test_gym_render_mode.py41 def test_explicit_override_respected(self):CODE
LOWtests/graphics/test_gym_render_mode.py57 def test_rgb_array_returns_ndarray(self):CODE
LOWtests/graphics/test_gym_render_mode.py78 def test_rgb_array_with_window_still_returns_ndarray(self):CODE
LOWtests/graphics/test_gym_render_mode.py88 def test_human_with_offscreen_returns_none(self):CODE
LOWtests/graphics/test_gym_render_mode.py99 def test_offscreen_env_var_emits_warning(self):CODE
LOWtests/graphics/test_render.py53def test_render_lidar_observation(cells):CODE
LOWtests/envs/test_gym.py124def test_connected_lane_neighbour_versions(old_env_spec, new_env_spec):CODE
LOWtests/envs/test_gym.py155def test_env_vectorization__info_dtype_is_float(env_spec):CODE
LOWtests/envs/test_finite_mdp.py13def test_clip_position_clips_to_grid_bounds():CODE
LOWtests/envs/test_finite_mdp.py20def test_transition_model_via_fromfunction():CODE
LOWtests/envs/test_finite_mdp.py34def test_compute_ttc_grid_on_highway_env():CODE
LOWtests/envs/test_finite_mdp.py49def test_compute_ttc_grid_predicts_collision():CODE
LOWtests/envs/test_observations.py55def test_kinematics_vehicles_count_one():CODE
LOW⚡scripts/sb3_highway_ppo_transformer.py303def display_vehicles_attention(CODE
38 more matches not shown…
Unused Imports78 hits · 75 pts
SeverityFileLineSnippetContext
LOWdocs/conf.py21CODE
LOWdocs/scripts/move_404.py1CODE
LOWscripts/sb3_highway_dqn_cnn.py5CODE
LOWscripts/sb3_highway_ppo.py6CODE
LOWscripts/sb3_highway_dqn.py5CODE
LOWscripts/sb3_highway_ppo_transformer.py17CODE
LOWscripts/sb3_racetrack_oval_ppo.py9CODE
LOWscripts/sb3_racetracks_ppo.py7CODE
LOWhighway_env/interval.py1CODE
LOWhighway_env/utils.py1CODE
LOWhighway_env/vehicle/graphics.py1CODE
LOWhighway_env/vehicle/kinematics.py1CODE
LOWhighway_env/vehicle/behavior.py1CODE
LOWhighway_env/vehicle/objects.py1CODE
LOWhighway_env/vehicle/dynamics.py1CODE
LOWhighway_env/vehicle/uncertainty/estimation.py1CODE
LOWhighway_env/vehicle/uncertainty/prediction.py1CODE
LOWhighway_env/road/graphics.py1CODE
LOWhighway_env/road/spline.py1CODE
LOWhighway_env/road/regulation.py1CODE
LOWhighway_env/road/road.py1CODE
LOWhighway_env/road/lane.py1CODE
LOWhighway_env/road/generation/engine/__init__.py1CODE
LOWhighway_env/road/generation/engine/__init__.py2CODE
LOWhighway_env/road/generation/engine/__init__.py2CODE
LOWhighway_env/road/generation/engine/__init__.py2CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py7CODE
LOWhighway_env/road/generation/engine/__init__.py18CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py19CODE
LOWhighway_env/road/generation/engine/__init__.py27CODE
LOWhighway_env/road/generation/engine/__init__.py27CODE
LOWhighway_env/road/generation/engine/__init__.py27CODE
LOWhighway_env/road/generation/engine/__init__.py27CODE
LOWhighway_env/road/generation/engine/__init__.py27CODE
LOWhighway_env/envs/u_turn_env.py1CODE
LOWhighway_env/envs/racetrack_env.py1CODE
LOWhighway_env/envs/merge_env.py1CODE
LOWhighway_env/envs/lane_keeping_env.py1CODE
LOWhighway_env/envs/intersection_env.py1CODE
LOWhighway_env/envs/__init__.py1CODE
LOWhighway_env/envs/__init__.py2CODE
LOWhighway_env/envs/__init__.py2CODE
LOWhighway_env/envs/__init__.py3CODE
LOWhighway_env/envs/__init__.py3CODE
LOWhighway_env/envs/__init__.py3CODE
LOWhighway_env/envs/__init__.py8CODE
LOWhighway_env/envs/__init__.py9CODE
18 more matches not shown…
Decorative Section Separators18 hits · 66 pts
SeverityFileLineSnippetContext
MEDIUM⚡tests/road/test_neighbour_vehicles.py35# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/road/test_neighbour_vehicles.py37# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/road/test_neighbour_vehicles.py154# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/road/test_neighbour_vehicles.py156# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/road/test_neighbour_vehicles.py208# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/road/test_neighbour_vehicles.py210# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/road/test_neighbour_vehicles.py298# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/road/test_neighbour_vehicles.py300# ---------------------------------------------------------------------------COMMENT
MEDIUMscripts/sb3_highway_ppo.py9# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo.py11# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py21# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py23# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py270# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py272# ==================================COMMENT
MEDIUM⚡scripts/sb3_highway_ppo_transformer.py298# ==================================COMMENT
MEDIUM⚡scripts/sb3_highway_ppo_transformer.py300# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py368# ==================================COMMENT
MEDIUMscripts/sb3_highway_ppo_transformer.py370# ==================================COMMENT
Cross-File Repetition12 hits · 60 pts
SeverityFileLineSnippetContext
HIGHhighway_env/vehicle/kinematics.py0create a new vehicle from an existing one. the vehicle dynamics and target dynamics are copied, other properties are defSTRING
HIGHhighway_env/vehicle/controller.py0create a new vehicle from an existing one. the vehicle dynamics and target dynamics are copied, other properties are defSTRING
HIGHhighway_env/vehicle/behavior.py0create a new vehicle from an existing one. the vehicle dynamics and target dynamics are copied, other properties are defSTRING
HIGHhighway_env/envs/racetrack_env.py0populate a road with several vehicles on the highway and on the merging lane, as well as an ego-vehicle. :return: the egSTRING
HIGHhighway_env/envs/merge_env.py0populate a road with several vehicles on the highway and on the merging lane, as well as an ego-vehicle. :return: the egSTRING
HIGHhighway_env/envs/roundabout_env.py0populate a road with several vehicles on the highway and on the merging lane, as well as an ego-vehicle. :return: the egSTRING
HIGHhighway_env/envs/intersection_env.py0the episode is truncated if the time limit is reached.STRING
HIGHhighway_env/envs/highway_env.py0the episode is truncated if the time limit is reached.STRING
HIGHhighway_env/envs/exit_env.py0the episode is truncated if the time limit is reached.STRING
HIGHhighway_env/envs/highway_env.py0create some new random vehicles of a given type, and add them on the road.STRING
HIGHhighway_env/envs/parking_env.py0create some new random vehicles of a given type, and add them on the road.STRING
HIGHhighway_env/envs/exit_env.py0create some new random vehicles of a given type, and add them on the road.STRING
Deep Nesting42 hits · 42 pts
SeverityFileLineSnippetContext
LOWscripts/generation_visualizer.py164CODE
LOWscripts/validate/compare_neighbour_detection.py161CODE
LOWscripts/validate/compare_neighbour_detection.py427CODE
LOWscripts/validate/compare_neighbour_detection.py499CODE
LOWhighway_env/interval.py271CODE
LOWhighway_env/utils.py440CODE
LOWhighway_env/vehicle/graphics.py234CODE
LOWhighway_env/vehicle/controller.py89CODE
LOWhighway_env/vehicle/behavior.py219CODE
LOWhighway_env/vehicle/objects.py95CODE
LOWhighway_env/vehicle/uncertainty/estimation.py79CODE
LOWhighway_env/vehicle/uncertainty/prediction.py365CODE
LOWhighway_env/road/graphics.py127CODE
LOWhighway_env/road/graphics.py313CODE
LOWhighway_env/road/regulation.py42CODE
LOWhighway_env/road/road.py169CODE
LOWhighway_env/road/road.py493CODE
LOWhighway_env/road/generation/engine/optimize.py13CODE
LOWhighway_env/road/generation/engine/optimize.py244CODE
LOWhighway_env/road/generation/engine/optimize.py287CODE
LOWhighway_env/road/generation/engine/boundaries.py6CODE
LOWhighway_env/road/generation/engine/agents.py10CODE
LOWhighway_env/road/generation/engine/agents.py213CODE
LOWhighway_env/road/generation/engine/rectify.py69CODE
LOWhighway_env/road/generation/engine/rectify.py173CODE
LOWhighway_env/road/generation/engine/rectify.py253CODE
LOWhighway_env/road/generation/engine/validation.py86CODE
LOWhighway_env/road/generation/engine/validation.py336CODE
LOWhighway_env/road/generation/engine/validation.py465CODE
LOWhighway_env/road/generation/engine/validation.py247CODE
LOWhighway_env/envs/random_road_env.py133CODE
LOWhighway_env/envs/random_road_env.py264CODE
LOWhighway_env/envs/racetrack_env.py374CODE
LOWhighway_env/envs/racetrack_env.py1340CODE
LOWhighway_env/envs/roundabout_env.py421CODE
LOWhighway_env/envs/roundabout_env.py664CODE
LOWhighway_env/envs/common/graphics.py275CODE
LOWhighway_env/envs/common/observation.py363CODE
LOWhighway_env/envs/common/observation.py464CODE
LOWhighway_env/envs/common/observation.py496CODE
LOWhighway_env/envs/common/observation.py921CODE
LOWhighway_env/envs/common/finite_mdp.py104CODE
Empty Error Handlers8 hits · 40 pts
SeverityFileLineSnippetContext
HIGHhighway_env/interval.py251except LinAlgError:CODE
HIGHhighway_env/__init__.py15except Exception: # nosecCODE
HIGHhighway_env/road/generation/engine/gen_utils.py259except ImportError:CODE
HIGHhighway_env/envs/u_turn_env.py199except AttributeError:CODE
HIGHhighway_env/envs/intersection_env.py312except AttributeError:CODE
HIGHhighway_env/envs/roundabout_env.py346except AttributeError:CODE
HIGHhighway_env/envs/roundabout_env.py682except AttributeError:CODE
HIGHhighway_env/envs/common/abstract.py217except NotImplementedError:CODE
Modern Structural Boilerplate11 hits · 11 pts
SeverityFileLineSnippetContext
LOWhighway_env/interval.py237 def update_coordinates_frame(self, a0: np.ndarray) -> None:CODE
LOWhighway_env/interval.py264 def set_control(self, control: np.ndarray, state: np.ndarray = None) -> None:CODE
LOWhighway_env/utils.py440def update_config_check(config: dict[str, Any], delta: Mapping[str, Any]) -> None:CODE
LOWhighway_env/vehicle/controller.py221 def set_route_at_intersection(self, _to: int) -> None:CODE
LOWhighway_env/vehicle/uncertainty/estimation.py79 def update_possible_routes(self) -> None:CODE
LOWhighway_env/road/road.py15logger = logging.getLogger(__name__)CODE
LOWhighway_env/road/generation/engine/__init__.py36__all__ = [CODE
LOWhighway_env/envs/__init__.py22__all__ = [CODE
LOWhighway_env/envs/common/graphics.py73 def set_agent_display(self, agent_display: Callable) -> None:CODE
LOWhighway_env/envs/common/graphics.py99 def set_agent_action_sequence(self, actions: list[Action]) -> None:CODE
LOWhighway_env/envs/common/observation.py1103 def update_next_node(self) -> None:CODE
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMscripts/sb3_highway_dqn.py11 # Create the environmentCOMMENT
MEDIUMscripts/sb3_highway_dqn.py15 # Create the modelCOMMENT
Modern AI Meta-Vocabulary2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMscripts/sb3_highway_ppo_transformer.py347 if hasattr(obs_type, "agents_observation_types"): # Handle multi-agent observationCODE
MEDIUMhighway_env/utils.py457 # Handle multi-agent environments where keys are not defined in outer dictCOMMENT
AI Structural Patterns5 hits · 5 pts
SeverityFileLineSnippetContext
LOWhighway_env/vehicle/behavior.py374CODE
LOWhighway_env/vehicle/uncertainty/estimation.py41CODE
LOWhighway_env/vehicle/uncertainty/prediction.py42CODE
LOWhighway_env/envs/common/observation.py168CODE
LOWhighway_env/envs/common/observation.py295CODE
Excessive Try-Catch Wrapping3 hits · 3 pts
SeverityFileLineSnippetContext
LOWtests/envs/test_multiprocessing.py30 except Exception as exc:CODE
LOWhighway_env/__init__.py15except Exception: # nosecCODE
LOWhighway_env/envs/random_road_env.py239 except Exception as e:CODE
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMhighway_env/road/generation/engine/validation.py381 # remains robust in repairing the missing edges.COMMENT
Over-Commented Block1 hit · 1 pts
SeverityFileLineSnippetContext
LOWdocs/conf.py1# Configuration file for the Sphinx documentation builder.COMMENT