Chef Infra, a powerful automation platform that transforms infrastructure into code automating how infrastructure is configured, deployed and managed across any environment, at any scale
This report presents the forensic synthetic code analysis of chef/chef, a Ruby project with 8,217 GitHub stars. SynthScan v2.0 examined 295,614 lines of code across 1983 source files, recording 2566 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 10.4 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 2566 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | post-bundle-install.rb | 21 | next if %w{chef chef-universal-mingw-ucrt proxifier}.include?(gem_name) | COMMENT |
| LOW | post-bundle-install.rb | 41 | # This will leave us with _two_ versions installed at the same version, | COMMENT |
| LOW | tasks/dependencies.rb | 1 | # | COMMENT |
| LOW | tasks/target_mode.rb | 1 | # | COMMENT |
| LOW | tasks/rspec.rb | 1 | # | COMMENT |
| LOW | tasks/spellcheck.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/spec_helper.rb | 1 | require "chef-utils" | COMMENT |
| LOW | chef-config/spec/spec_helper.rb | 41 | # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/ | COMMENT |
| LOW | chef-config/spec/spec_helper.rb | 61 | # particularly slow. | COMMENT |
| LOW | chef-config/spec/unit/credentials_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/unit/config_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/unit/config_spec.rb | 201 | # else | COMMENT |
| LOW | chef-config/spec/unit/fuzzy_hostname_matcher_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/unit/path_helper_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/unit/fips_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/spec/unit/workstation_config_loader_spec.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/windows.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 141 | # determined by the underlying node['platform'] value. | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 161 | end | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 221 | # If the home directory doesn't exist or an error is otherwise encountered, nil is returned. | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 241 | end | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 261 | # while USERPROFILE points to the location where the user application settings and profile are stored. HOME | COMMENT |
| LOW | chef-config/lib/chef-config/exceptions.rb | 1 | # | COMMENT |
| LOW | …ef-config/lib/chef-config/workstation_config_loader.rb | 1 | # | COMMENT |
| LOW | …ef-config/lib/chef-config/workstation_config_loader.rb | 241 | # | COMMENT |
| LOW | chef-config/lib/chef-config/logger.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 121 | # | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 441 | # * :debug | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 501 | # the --legacy-mode flag) or `chef-client -z` methods of starting a client run. | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 541 | # what you want when using Chef Zero to serve a single Chef Repo. Setting | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 581 | "https://localhost:443" | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 621 | # most of our testing scenarios) | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 641 | COMMENT | |
| LOW | chef-config/lib/chef-config/config.rb | 661 | COMMENT | |
| LOW | chef-config/lib/chef-config/config.rb | 761 | COMMENT | |
| LOW | chef-config/lib/chef-config/config.rb | 801 | COMMENT | |
| LOW | chef-config/lib/chef-config/config.rb | 841 | # security. For example, the version 2 format is identical to version 1 | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 861 | "#{ChefUtils::Dist::Infra::SHORT}-validator" | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 901 | default(:syntax_check_cache_path) { cache_options[:path] }.writes_value { |path| expand_relative_paths(path) } | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1001 | # | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1021 | # Number of worker threads for syncing cookbooks in parallel. Increasing | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1041 | # | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1081 | # Set `watchdog_timeout` to the number of seconds to wait for a chef-client run | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1121 | # can be used to run Data Collector only when running as Chef Solo but | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1161 | export_no_proxy(no_proxy) if key?(:no_proxy) && no_proxy | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1221 | end | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1281 | # japanese windows encodings). If we do not do this, then knife upload will fail when a cookbook's | COMMENT |
| LOW | chef-config/lib/chef-config/version.rb | 1 | # Copyright:: Copyright (c) 2009-2026 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Re | COMMENT |
| LOW | chef-config/lib/chef-config/fips.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/mixin/dot_d.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/mixin/dot_d.rb | 21 | module DotD | COMMENT |
| LOW | …config/lib/chef-config/mixin/fuzzy_hostname_matcher.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/mixin/credentials.rb | 1 | # | COMMENT |
| LOW | chef-config/lib/chef-config/mixin/credentials.rb | 21 | COMMENT | |
| LOW | chef-config/lib/chef-config/mixin/train_transport.rb | 1 | # Author:: Bryan McLellan <btm@loftninjas.org> | COMMENT |
| LOW | spec/spec_helper.rb | 1 | # | COMMENT |
| LOW | spec/spec_helper.rb | 321 | COMMENT | |
| 1940 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | spec/unit/target_io/support_spec.rb | 43 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/support_spec.rb | 58 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/support_spec.rb | 76 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/support_spec.rb | 83 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/support_spec.rb | 92 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/support_spec.rb | 142 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/support_spec.rb | 163 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/dir_spec.rb | 38 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/dir_spec.rb | 47 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/train/dir_spec.rb | 61 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/train/dir_spec.rb | 69 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/train/dir_spec.rb | 77 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/train/dir_spec.rb | 85 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | spec/unit/target_io/train/dir_spec.rb | 92 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/dir_spec.rb | 118 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 37 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 55 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 80 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 98 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 111 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 124 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 137 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 145 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 158 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 166 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 179 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 187 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 205 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/fileutils_spec.rb | 226 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 56 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 63 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 78 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 91 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 102 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 115 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 132 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 147 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 162 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 171 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 196 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 214 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 224 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 245 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/unit/target_io/train/file_spec.rb | 269 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 49 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 51 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 76 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 78 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 96 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 98 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 116 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/transport_spec.rb | 120 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 61 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 63 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 135 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 137 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 180 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 182 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 225 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | spec/integration/target_mode/target_mode_run_spec.rb | 229 | # ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | spec/tiny_server.rb | 54 | # Create the server (but don't start yet) | COMMENT |
| MEDIUM | spec/unit/resource_reporter_spec.rb | 812 | # Create a large binary file (1 MB) with problematic encoding | COMMENT |
| MEDIUM | spec/unit/resource_reporter_spec.rb | 847 | # Create a large problematic state that will trigger the size check AND JSON encoding error | COMMENT |
| MEDIUM | spec/unit/shell/model_wrapper_spec.rb | 73 | # Creating a Chef::Search::Query object tries to read the private key... | COMMENT |
| MEDIUM | spec/functional/win32/registry_spec.rb | 26 | # Create a registry item | COMMENT |
| MEDIUM | spec/functional/win32/registry_spec.rb | 42 | # Create the node with ohai data | COMMENT |
| MEDIUM | spec/functional/win32/registry_spec.rb | 48 | # Create a registry object that has access ot the node previously created | COMMENT |
| MEDIUM | kitchen-tests/kitchen.exec.windows.yml | 36 | # Create a wrapper at <Drive>:\bin\chef-client.bat to satisfy exec script invocation | COMMENT |
| MEDIUM | kitchen-tests/kitchen.dokken.yml | 63 | # Create a symlink from chef/chef-infra-client package to custom built gha/chef-infra-client | COMMENT |
| MEDIUM | .github/workflows/kitchen.yml | 333 | # Create a token file that can be mounted into containers | COMMENT |
| MEDIUM | .github/workflows/windows-fips.yml | 102 | # Create the key if it doesn't exist | COMMENT |
| MEDIUM | lib/chef/local_mode.rb | 25 | # Create a chef local server (if the configuration requires one) for the | COMMENT |
| MEDIUM | lib/chef/node.rb | 69 | # Create a new Chef::Node object. | COMMENT |
| MEDIUM | lib/chef/node.rb | 693 | # Create the node via the REST API | COMMENT |
| MEDIUM⚡ | lib/chef/cookbook_loader.rb | 29 | # This class is used by knife, cheffs and legacy chef-solo modes. It is not used by the server mode | COMMENT |
| MEDIUM⚡ | lib/chef/cookbook_loader.rb | 32 | # This class implements orchestration around producing a single cookbook_version for a cookbook or | COMMENT |
| MEDIUM | lib/chef/api_client.rb | 39 | # Create a new Chef::ApiClient object. | COMMENT |
| MEDIUM | lib/chef/api_client.rb | 208 | # Create the client via the REST API | COMMENT |
| MEDIUM | lib/chef/http.rb | 88 | # Create a HTTP client object. The supplied +url+ is used as the base for | COMMENT |
| MEDIUM | lib/chef/encrypted_data_bag_item.rb | 66 | # Create a new encrypted data bag item for reading (decryption) | COMMENT |
| MEDIUM | lib/chef/api_client_v1.rb | 49 | # Create a new Chef::ApiClientV1 object. | COMMENT |
| MEDIUM | lib/chef/api_client_v1.rb | 284 | # Create the client via the REST API | COMMENT |
| MEDIUM | lib/chef/cookbook_manifest.rb | 42 | # Create a new CookbookManifest object for the given `cookbook_version`. | COMMENT |
| MEDIUM | lib/chef/run_context.rb | 678 | # Create a child RunContext. | COMMENT |
| MEDIUM | lib/chef/run_lock.rb | 43 | # Create a new instance of RunLock | COMMENT |
| MEDIUM | lib/chef/data_bag_item.rb | 61 | # Create a new Chef::DataBagItem | COMMENT |
| MEDIUM | lib/chef/resource.rb | 105 | # Create a new Resource. | COMMENT |
| MEDIUM | lib/chef/resource.rb | 821 | # This method is unnecessary when declaring properties with `property`; | COMMENT |
| MEDIUM | lib/chef/resource.rb | 1048 | # Define an action on this resource. | COMMENT |
| MEDIUM | lib/chef/resource.rb | 1104 | # Define a method to load up this resource's properties with the current | COMMENT |
| MEDIUM | lib/chef/data_bag.rb | 47 | # Create a new Chef::DataBag | COMMENT |
| MEDIUM | lib/chef/role.rb | 36 | # Create a new Chef::Role object. | COMMENT |
| MEDIUM | lib/chef/role.rb | 234 | # Create the role via the REST API | COMMENT |
| MEDIUM | lib/chef/file_cache.rb | 209 | # Create a full path to a given file in the cache. By default, | COMMENT |
| MEDIUM | lib/chef/client.rb | 752 | # Create a new public/private keypair in secure storage | COMMENT |
| MEDIUM | lib/chef/resource_collection.rb | 52 | # This method is meant to be the 1 insert method necessary in the future. It should support all known use cases | COMMENT |
| MEDIUM | lib/chef/handler.rb | 34 | # # Create the email message | COMMENT |
| MEDIUM | lib/chef/property.rb | 42 | # Create a reusable property type that can be used in multiple properties | COMMENT |
| MEDIUM | lib/chef/property.rb | 77 | # Create a new property. | COMMENT |
| MEDIUM | lib/chef/provider.rb | 296 | # Create a child run_context, compile the block, and converge it. | COMMENT |
| MEDIUM | lib/chef/provider.rb | 421 | # Create the resource DSL module that forwards resource methods to new_resource | COMMENT |
| MEDIUM | lib/chef/runner.rb | 28 | # This class is responsible for executing the steps in a Chef run. | COMMENT |
| MEDIUM | lib/chef/resource_resolver.rb | 58 | # Create a resolver. | COMMENT |
| MEDIUM | lib/chef/util/threaded_job_queue.rb | 20 | # Create a queue: | COMMENT |
| MEDIUM | lib/chef/mixin/securable.rb | 65 | # This module is meant to be used to extend a class (instead of | COMMENT |
| MEDIUM | lib/chef/mixin/why_run.rb | 266 | # Define a new Assertion. | COMMENT |
| MEDIUM | lib/chef/mixin/properties.rb | 31 | # Create a property on this resource class. | COMMENT |
| MEDIUM | lib/chef/mixin/properties.rb | 141 | # Create a reusable property type that can be used in multiple properties | COMMENT |
| MEDIUM | lib/chef/mixin/properties.rb | 159 | # Create a lazy value for assignment to a default value. | COMMENT |
| MEDIUM | lib/chef/mixin/properties.rb | 181 | # This method is unnecessary when declaring properties with `property`; | COMMENT |
| MEDIUM | lib/chef/mixin/properties.rb | 229 | # This method is unnecessary when declaring properties with `property`; | COMMENT |
| MEDIUM | lib/chef/provider/windows_script.rb | 89 | # Create an ACE that allows the alternate user read access to the script | COMMENT |
| MEDIUM | lib/chef/provider/powershell_script.rb | 241 | # Initialize a variable we use to capture $? inside a block | COMMENT |
| MEDIUM | lib/chef/provider/group/groupadd.rb | 45 | # Create the group | COMMENT |
| MEDIUM | lib/chef/provider/group/pw.rb | 39 | # Create the group | COMMENT |
| MEDIUM | lib/chef/provider/group/groupmod.rb | 33 | # Create the group | COMMENT |
| MEDIUM | lib/chef/provider/user/dscl.rb | 177 | # Create a user using dscl | COMMENT |
| MEDIUM | lib/chef/provider/package/deb.rb | 53 | # This method is used for getting preseed file | COMMENT |
| MEDIUM | lib/chef/provider/package/yum/python_helper.rb | 168 | # This function handles turning the second form into the first form. | COMMENT |
| MEDIUM | lib/chef/cookbook/file_vendor.rb | 22 | # This class handles fetching of cookbook files based on specificity. | COMMENT |
| 33 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dangerfile.js | 106 | async function stickyWorkflowChangeReminder() { | CODE |
| LOW | dangerfile.js | 194 | async function checkWorkflowSecretsOnPullRequest() { | CODE |
| LOW | tasks/dependencies.rb | 30 | def bundle_update_locked_multiplatform_task(task_name, dir) | CODE |
| LOW | tasks/docs.rb | 61 | def friendly_full_property_list(name, properties) | CODE |
| LOW | tasks/docs.rb | 250 | def build_resource_description(name, text) | CODE |
| LOW | spec/unit/lwrp_spec.rb | 44 | def get_dynamic_lwrp_provider(name) | CODE |
| LOW | spec/unit/provider/launchd_spec.rb | 104 | def run_resource_setup_for_action(action) | CODE |
| LOW | spec/unit/provider/service/macosx_spec.rb | 102 | def run_resource_setup_for_action(action) | CODE |
| LOW | spec/unit/cookbook/metadata_spec.rb | 308 | def expect_chef_version_works(*args) | CODE |
| LOW | spec/unit/cookbook/metadata_spec.rb | 360 | def expect_ohai_version_works(*args) | CODE |
| LOW | spec/unit/resource/file/verification_spec.rb | 81 | def platform_specific_verify_command(variable_name) | CODE |
| LOW | spec/integration/client/client_spec.rb | 38 | def install_certificate_in_store(client_name, store_location) | CODE |
| LOW | spec/integration/client/exit_code_spec.rb | 39 | def run_chef_client_and_expect_exit_code(exit_code) | CODE |
| LOW | spec/support/ruby_installer.rb | 18 | def verify_dependencies_for_dll(dll_dir, dll_name) | CODE |
| LOW | …ort/shared/unit/resource/static_provider_resolution.rb | 26 | def static_provider_resolution(opts = {}) | CODE |
| LOW | spec/support/shared/functional/windows_script.rb | 240 | def get_windows_script_output(suffix = "") | CODE |
| LOW | spec/data/lwrp/providers/buck_passer_2.rb | 1 | def without_deprecation_warnings(&block) | CODE |
| LOW | …roviders/embedded_resource_accesses_providers_scope.rb | 6 | def without_deprecation_warnings(&block) | CODE |
| LOW | spec/data/lwrp/providers/buck_passer.rb | 3 | def without_deprecation_warnings(&block) | CODE |
| LOW | …onal/file_content_management/deploy_strategies_spec.rb | 116 | def unix_invariant_properties(stat_struct) | CODE |
| LOW | spec/functional/resource/dpkg_package_spec.rb | 48 | def should_be_purged_or_removed(package, action = nil) | CODE |
| LOW⚡ | spec/functional/resource/ifconfig_spec.rb | 100 | def interface_should_not_exists(interface) | CODE |
| LOW⚡ | spec/functional/resource/ifconfig_spec.rb | 104 | def interface_persistence_should_exists(interface) | CODE |
| LOW⚡ | spec/functional/resource/ifconfig_spec.rb | 112 | def interface_persistence_should_not_exists(interface) | CODE |
| LOW | spec/functional/resource/yum_package_spec.rb | 42 | def expect_matching_installed_version(version) | CODE |
| LOW | spec/functional/resource/dsc_script_spec.rb | 45 | def create_config_script_from_code(code, configuration_name, data = false) | CODE |
| LOW⚡ | spec/functional/resource/cron_spec.rb | 118 | def create_and_validate_with_property(resource, attribute, value) | CODE |
| LOW⚡ | spec/functional/resource/cron_spec.rb | 128 | def cron_attribute_should_exists(cron_name, attribute, value) | CODE |
| LOW | spec/functional/resource/dnf_package_spec.rb | 48 | def expect_matching_installed_version(version) | CODE |
| LOW | spec/functional/resource/bff_spec.rb | 32 | def bff_pkg_should_be_installed(resource) | CODE |
| LOW | spec/functional/resource/bff_spec.rb | 37 | def bff_pkg_should_be_removed(resource) | CODE |
| LOW | spec/functional/resource/rpm_spec.rb | 34 | def rpm_pkg_should_be_installed(resource) | CODE |
| LOW | spec/functional/resource/rpm_spec.rb | 46 | def rpm_pkg_should_not_be_installed(resource) | CODE |
| LOW | spec/functional/resource/insserv_spec.rb | 39 | def service_should_be_started(file_name) | CODE |
| LOW | spec/functional/resource/insserv_spec.rb | 44 | def service_should_be_stopped(file_name) | CODE |
| LOW | spec/functional/resource/aixinit_service_spec.rb | 28 | def service_should_be_started(file_name) | CODE |
| LOW | spec/functional/resource/aixinit_service_spec.rb | 33 | def service_should_be_stopped(file_name) | CODE |
| LOW | spec/functional/resource/user/windows_spec.rb | 60 | def set_windows_minimum_password_length(minimum_password_length = 0) | CODE |
| LOW | docs/dev/design_documents/action_collection.md | 36 | def action_collection_registration(action_collection) | CODE |
| LOW | lib/chef/run_list.rb | 159 | def expansion_for_data_source(environment, data_source, opts = {}) | CODE |
| LOW | lib/chef/resource_reporter.rb | 85 | def handle_error_starting_run(e, url) | CODE |
| LOW | lib/chef/resource_reporter.rb | 140 | def action_collection_registration(action_collection) | CODE |
| LOW | lib/chef/resource_reporter.rb | 225 | def cookbook_resolution_failed(expanded_run_list, exception) | CODE |
| LOW | lib/chef/node.rb | 503 | def apply_expansion_attributes(expansion) | CODE |
| LOW | lib/chef/node.rb | 766 | def allowlist_or_whitelist_config(level) | CODE |
| LOW | lib/chef/node.rb | 779 | def blocklist_or_blacklist_config(level) | CODE |
| LOW | lib/chef/node_map.rb | 323 | def compare_matcher_properties(a, b) | CODE |
| LOW | lib/chef/http.rb | 175 | def streaming_request_with_progress(path, headers = {}, tempfile = nil, &progress_block) | CODE |
| LOW | lib/chef/http.rb | 347 | def apply_response_middleware(response, rest_request, return_value) | CODE |
| LOW | lib/chef/http.rb | 355 | def apply_stream_complete_middleware(response, rest_request, return_value) | CODE |
| LOW | lib/chef/environment.rb | 147 | def update_attributes_from_params(params) | CODE |
| LOW | lib/chef/environment.rb | 186 | def update_cookbook_constraint_from_param(index, cookbook_constraint_spec) | CODE |
| LOW | lib/chef/environment.rb | 201 | def add_cookbook_constraint_error(index, cookbook_constraint_spec) | CODE |
| LOW | lib/chef/cookbook_version.rb | 294 | def preferred_manifest_record(node, segment, filename) | CODE |
| LOW | lib/chef/cookbook_version.rb | 334 | def preferred_filename_on_disk_location(node, segment, filename, current_filepath = nil) | CODE |
| LOW | lib/chef/cookbook_version.rb | 343 | def relative_filenames_in_preferred_directory(node, segment, dirname) | CODE |
| LOW | lib/chef/cookbook_version.rb | 383 | def preferred_manifest_records_for_directory(node, segment, dirname) | CODE |
| LOW | lib/chef/cookbook_version.rb | 598 | def find_preferred_manifest_record(node, segment, filename) | CODE |
| LOW | lib/chef/cookbook_manifest.rb | 270 | def parse_file_from_root_paths(file) | CODE |
| LOW | lib/chef/cookbook_manifest.rb | 301 | def extract_checksums_from_manifest(manifest) | CODE |
| 202 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | chef-config/lib/chef-config/config.rb | 681 | # Set these to enable SSL authentication / mutual-authentication | COMMENT |
| LOW | chef-config/lib/chef-config/config.rb | 1212 | # Check if the proxy string contains a scheme. If not, add the url's scheme to the | COMMENT |
| LOW | spec/support/chef_helpers.rb | 71 | # Check if a cmd exists on the PATH | COMMENT |
| LOW | spec/support/platform_helpers.rb | 307 | # Check if the chef-powershell gem is properly installed | COMMENT |
| LOW | spec/support/platform_helpers.rb | 313 | # Check if gem is installed without forcing a require | COMMENT |
| LOW | spec/support/platform_helpers.rb | 326 | # Check if PowerShell execution via chef-powershell is available | COMMENT |
| LOW | spec/support/platform_helpers.rb | 340 | # Check if the required runtime dependencies are available | COMMENT |
| LOW | spec/support/platform_helpers.rb | 347 | # Check if we can load the PowerShell DLL which requires vcruntime140.dll | COMMENT |
| LOW⚡ | spec/functional/resource/cron_spec.rb | 123 | # Verify if the cron is created successfully | COMMENT |
| LOW | kitchen-tests/test/integration/end-to-end/_apt.rb | 1 | # Check if an apt_repository using the same key url as a previous apt_repository, actually has a working key. | COMMENT |
| LOW | …s/cookbooks/end_to_end/recipes/_habitat_win_service.rb | 8 | # Check if the Windows service is actually running instead of checking loaded services | COMMENT |
| LOW | .github/workflows/selfhosted-linux-fips.yml | 88 | # Check if FIPS mode is enabled on the system | COMMENT |
| LOW | lib/chef/node_map.rb | 76 | # Check if the key is already present and locked, unless the override is allowed. | COMMENT |
| LOW | lib/chef/node_map.rb | 176 | # Check if this map has been locked. | COMMENT |
| LOW | lib/chef/cookbook_manifest.rb | 275 | # Check if path is actually under root_path | COMMENT |
| LOW | lib/chef/cookbook_manifest.rb | 286 | # Check if pathname looks like files/foo or templates/foo (unscoped) | COMMENT |
| LOW | lib/chef/action_collection.rb | 223 | # Verify if the resource has sensitive data and create a new blank resource with only | COMMENT |
| LOW | lib/chef/data_bag.rb | 130 | # Check if we have multiple items with similar names (ids) and raise if their content differs | COMMENT |
| LOW⚡ | lib/chef/deprecated.rb | 60 | # Check if this deprecation has been silenced. | COMMENT |
| LOW⚡ | lib/chef/deprecated.rb | 64 | # Check if all warnings have been silenced. | COMMENT |
| LOW⚡ | lib/chef/deprecated.rb | 66 | # Check if this warning has been silenced by the config. | COMMENT |
| LOW | lib/chef/client.rb | 917 | # Check if the user has Administrator privileges on windows. | COMMENT |
| LOW | lib/chef/config_fetcher.rb | 57 | # Check if the config file exists | COMMENT |
| LOW | lib/chef/mixin/create_path.rb | 39 | # Check if path starts with a separator or drive letter (Windows) | COMMENT |
| LOW | lib/chef/mixin/openssl_helper.rb | 43 | # Check if the dhparam.pem file exists | COMMENT |
| LOW | lib/chef/provider/powershell_script.rb | 39 | # Set InputFormat to None as PowerShell will hang if STDIN is redirected | COMMENT |
| LOW | lib/chef/provider/package/chocolatey.rb | 545 | # Check if the error is related to file locking by chocolatey processes | COMMENT |
| LOW | lib/chef/resource/sysctl.rb | 216 | # Check if chef has already configured a value for the given key and | COMMENT |
| LOW | lib/chef/resource/homebrew_tap.rb | 88 | # Check if the passed tap is already tapped | COMMENT |
| LOW⚡ | lib/chef/win32/security/sid.rb | 264 | # Check if the user belongs to service accounts category | COMMENT |
| LOW⚡ | lib/chef/win32/security/sid.rb | 272 | # Check if the user is in builtin system group | COMMENT |
| LOW⚡ | lib/chef/win32/security/sid.rb | 280 | # Check if the user belongs to system users category | COMMENT |
| LOW | lib/chef/win32/security/sid.rb | 327 | # Check if the account is the Administrator account | COMMENT |
| LOW | lib/chef/dsl/platform_introspection.rb | 57 | # Check if we match a version constraint via Chef::VersionConstraint::Platform and Chef::Version::Platform | COMMENT |
| LOW⚡ | chef-utils/lib/chef-utils/dsl/virtualization.rb | 252 | # Check if the +vagrant+ key exists on the +node+ object. This key is no | COMMENT |
| LOW⚡ | chef-utils/lib/chef-utils/dsl/virtualization.rb | 262 | # Check if "vagrantup.com" is included in the node's domain. | COMMENT |
| LOW⚡ | chef-utils/lib/chef-utils/dsl/virtualization.rb | 271 | # Check if the system contains a +vagrant+ user. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tasks/docs.rb | 253 | # if we're on a package resource, depending on the OS we want to inject a warning / note that you can just use 'pa | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 164 | # just use Regexp.escape. For the latter, use escape_glob_dir below. | COMMENT |
| LOW | chef-config/lib/chef-config/path_helper.rb | 290 | # If a block is provided, invoke it - otherwise just return what we've got. | COMMENT |
| MEDIUM | chef-config/lib/chef-config/config.rb | 803 | # This flag is used in conjunction with 'migrate_key_to_keystore'. If 2 users, Bob and Terri, are using | COMMENT |
| MEDIUM | spec/integration/ohai/ohai_spec.rb | 33 | # own testing harness, but that is not our concern, we are testing behavior | COMMENT |
| MEDIUM | .expeditor/scripts/verify-plan.sh | 10 | # Buildkite environment, or a vault, allowing for seamless updates without requiring a pull request for changes. | COMMENT |
| MEDIUM | .expeditor/scripts/habitat-test.sh | 14 | # Buildkite environment, or a vault, allowing for seamless updates without requiring a pull request for changes. | COMMENT |
| LOW | lib/chef/node.rb | 150 | # @return [String] the current policy_name, or the one you just set | COMMENT |
| LOW | lib/chef/node.rb | 173 | # @return [String] the current policy_group, or the one you just set | COMMENT |
| MEDIUM | lib/chef/group.rb | 61 | # exclude 'pivotal' but don't mutate the group since we're caching it | COMMENT |
| LOW | lib/chef/provider_resolver.rb | 120 | # if resource.provider is set, just return one of those objects | COMMENT |
| LOW | lib/chef/provider/mount.rb | 111 | # should actually check if the filesystem is mounted (not just return current_resource) and return true/false | COMMENT |
| LOW | lib/chef/provider/user/mac.rb | 198 | # a departure from previous behavior. We could just set the | COMMENT |
| MEDIUM | lib/chef/provider/package/homebrew.rb | 95 | # information, but that is not any more robust than using the | COMMENT |
| LOW | lib/chef/provider/package/yum/rpm_utils.rb | 25 | # e.g. this should just use Chef::Provider::Package::Yum::PythonHelper.instance.compare_versions(x,y) | COMMENT |
| LOW | lib/chef/run_list/versioned_recipe_list.rb | 87 | # "foo::bar" just return "foo::bar". This makes it easier for people to search on | COMMENT |
| LOW | lib/chef/event_dispatch/dispatcher.rb | 20 | # threads to handle events from other threads, we just use thread local | COMMENT |
| LOW | lib/chef/resource/inspec_input.rb | 99 | # just return the source. | COMMENT |
| MEDIUM | lib/chef/resource/windows_update_settings.rb | 66 | # options: 0 - do not elevate a user to force an install - false | COMMENT |
| MEDIUM | lib/chef/resource/windows_update_settings.rb | 67 | # 1 - do elevate the logged on user to install an update - true | COMMENT |
| LOW | lib/chef/resource/windows_update_settings.rb | 79 | # this needs to be the same as wsus_server_url so we just set that value in both places now | COMMENT |
| LOW | lib/chef/resource/inspec_waiver.rb | 147 | # just return the source. | COMMENT |
| LOW | lib/chef/resource/sudo.rb | 273 | # Ensure that the inputs are valid (we cannot just use the resource for this) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 26 | ### Step 1: Prepare the Windows Environment | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 35 | ### Step 2: Download and Extract the Runner | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 52 | ### Step 3: Configure the Runner | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 71 | ### Step 4: Install and Start the Service | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 84 | ### Step 5: Verify the Runner | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 92 | ### Step 1: Prepare Azure Environment | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 107 | ### Step 2: Create Azure VM | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 122 | ### Step 3: Open Required Ports and Configure Security | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 133 | ### Step 4: Connect to VM and Install Dependencies | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 158 | ### Step 5: Download and Extract the Runner | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 176 | ### Step 6: Configure the Runner | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 198 | ### Step 7: Install and Start the Service | COMMENT |
| LOW | docs/dev/how_to/github-runner-setup-guide.md | 215 | ### Step 8: Verify the Runner | COMMENT |
| LOW | lib/chef/chef_class.rb | 18 | # NOTE: This class is not intended for internal use by the chef-client code. Classes in | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | chef-config/lib/chef-config/config.rb | 658 | # compatibility mode. Compatibility mode remains available so you can use | COMMENT |
| LOW | spec/functional/run_lock_spec.rb | 37 | # make sure to start with a clean slate. | COMMENT |
| LOW | lib/chef/mixin/params_validate.rb | 178 | # Ruby will print :something as something, which confuses users so make sure to print them as symbols | COMMENT |
| LOW | lib/chef/cookbook/cookbook_collection.rb | 39 | "If you're loading #{key} from another cookbook, make sure you configure the dependency in your metadata" | CODE |
| LOW | lib/chef/compliance/runner.rb | 260 | failed_report("Cannot fetch all profiles: #{profiles}. Please make sure you're authenticated and the server is r | CODE |
| MEDIUM | lib/chef/compliance/runner.rb | 370 | # Note that the docs don't say you can use an array, but our implementation | COMMENT |
| MEDIUM | lib/chef/http/decompressor.rb | 95 | # object you can use to unzip/inflate a streaming response. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | lib/chef/run_context/cookbook_compiler.rb | 442 | cookbook.metadata.dependencies.keys.sort.map(&:to_sym).each(&block) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ec/unit/file_content_management/deploy/mv_unix_spec.rb | 81 | # root somehow. In this example, gid==20 is something like "staff" which | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | lib/chef/cookbook_loader.rb | 32 | # This class implements orchestration around producing a single cookbook_version for a cookbook or | COMMENT |
| MEDIUM | chef-utils/lib/chef-utils/internal.rb | 47 | # for dependency injection rather than overriding the method in this case. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | spec/unit/provider/cron_spec.rb | 445 | @current_resource.mailto "foo@bar.com" | CODE |
| LOW | spec/unit/compliance/reporter/automate_spec.rb | 86 | let(:token) { "fake_token" } | CODE |
| LOW | spec/unit/compliance/fetcher/automate_spec.rb | 13 | let(:token) { "fake_token" } | CODE |
| LOW | kitchen-tests/cookbooks/end_to_end/recipes/_cron.rb | 20 | mailto "admin@example.com" | CODE |
| LOW | lib/chef/resource/cron/cron_d.rb | 65 | mailto 'admin@example.com' | CODE |
| LOW | lib/chef/resource/cron/cron.rb | 68 | mailto 'admin@example.com' | CODE |
| LOW | lib/chef/dsl/powershell.rb | 24 | def ps_credential(username = "placeholder", password) # rubocop:disable Style/OptionalArguments | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/chef/provider/package/dnf/dnf_helper.py | 50 | CODE | |
| LOW | lib/chef/provider/package/dnf/dnf_helper.py | 88 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/rest_resource_integration_test.rb | 5 | # Usage: | COMMENT |