A flexible distributed key-value database that is optimized for caching and other realtime workloads.
This report summarizes scanner evidence for valkey-io/valkey, a C project with 27,568 GitHub stars. SynthScan examined 474,409 lines of code across 1623 source files, recording 518 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 1.2 (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.
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.
Can maintainers explain intent, assumptions, and trade-offs? 495 finding(s).
Are imports declared and package/API names verified? 9 finding(s).
Are wrappers, guards, and repeated structures necessary? 46 finding(s).
Which changes need focused human review? 518 finding(s).
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.
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.
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.
The scanner identified 518 distinct pattern matches across 14 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/rdma/rdma-test.c | 21 | #include <errno.h> | COMMENT |
| LOW | tests/modules/blockedclient.c | 1 | /* define macros for having usleep */ | COMMENT |
| LOW | utils/gen-test-certs.sh | 1 | #!/bin/bash | COMMENT |
| LOW | utils/install_server.sh | 1 | #!/bin/sh | COMMENT |
| LOW | utils/install_server.sh | 21 | # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | COMMENT |
| LOW | utils/install_server.sh | 41 | # | COMMENT |
| LOW | utils/install_server.sh | 201 | "#!/bin/sh\n | COMMENT |
| LOW | utils/install_server.sh | 221 | # Should-Stop: \$syslog \$named\n | COMMENT |
| LOW | utils/install_server.sh | 241 | cat > ${TMP_FILE} <<EOT | COMMENT |
| LOW | utils/hyperloglog/hll-gnuplot-graph.rb | 1 | # hll-err.rb - Copyright (C) 2014 Redis Ltd. | COMMENT |
| LOW | deps/fast_float/ffc.h | 1 | // fast_float by Daniel Lemire (Original) | COMMENT |
| LOW | deps/fast_float/ffc.h | 21 | // Licensed under the Apache License, Version 2.0, or the | COMMENT |
| LOW | deps/fast_float/ffc.h | 41 | // The above copyright notice and this permission notice | COMMENT |
| LOW | deps/fast_float/ffc.h | 61 | // | COMMENT |
| LOW | deps/fast_float/ffc.h | 81 | // the above license grant, this restriction and the following disclaimer, | COMMENT |
| LOW | deps/fast_float/ffc.h | 261 | COMMENT | |
| LOW | deps/fast_float/ffc.h | 381 | defined(__MINGW64__) || defined(__s390x__) || \ | COMMENT |
| LOW | deps/fast_float/ffc.h | 401 | #define FFC_64BIT 1 | COMMENT |
| LOW | deps/fast_float/ffc.h | 421 | #define FFC_IS_BIG_ENDIAN 0 | COMMENT |
| LOW | deps/fast_float/ffc.h | 441 | # | COMMENT |
| LOW | deps/fast_float/ffc.h | 461 | #if defined(__aarch64__) || defined(_M_ARM64) | COMMENT |
| LOW | deps/fast_float/ffc.h | 481 | #define FFC_SIMD_DISABLE_WARNINGS \ | COMMENT |
| LOW | deps/fast_float/ffc.h | 581 | #define FFC_DOUBLE_INFINITE_POWER 0x7FF | COMMENT |
| LOW | deps/fast_float/ffc.h | 601 | #define FFC_FLOAT_MAX_EXPONENT_FAST_PATH 10 | COMMENT |
| LOW | deps/fast_float/ffc.h | 781 | return false; | COMMENT |
| LOW | deps/fast_float/ffc.h | 801 | // | COMMENT |
| LOW | deps/fast_float/ffc.h | 821 | #elif defined(__clang__) | COMMENT |
| LOW | deps/fast_float/ffc.h | 1561 | #endif // FFC_PARSE_H | COMMENT |
| LOW | deps/fast_float/ffc.h | 1601 | // number of bits in a bigint. this needs to be at least the number | COMMENT |
| LOW | deps/fast_float/ffc.h | 2701 | // parse the significant digits as a big integer to unambiguously round | COMMENT |
| LOW | deps/fast_float/ffc.h | 2741 | // The required precision is mantissa_explicit_bits + 3 because | COMMENT |
| LOW | deps/fast_float/ffc.h | 2861 | // whereas 0x40000000000000 x 2^-1023-53 is normal. Now, we need to round | COMMENT |
| LOW | deps/fast_float/ffc.h | 2941 | // we want round-to-nearest in all cases, irrespective of the rounding mode | COMMENT |
| LOW | deps/fast_float/ffc.h | 3201 | #undef FFC_DOUBLE_MINIMUM_EXPONENT | COMMENT |
| LOW | deps/fast_float/ffc.h | 3221 | #undef FFC_FLOAT_EXPONENT_MASK | COMMENT |
| LOW | deps/libvalkey/include/valkey/valkey.h | 41 | #include <sys/time.h> /* for struct timeval */ | COMMENT |
| LOW | deps/libvalkey/include/valkey/visibility.h | 41 | #else | COMMENT |
| LOW | deps/libvalkey/include/valkey/sockcompat.h | 41 | #include <sys/select.h> | COMMENT |
| LOW | deps/libvalkey/include/valkey/sockcompat.h | 81 | int win32_valkeyKeepAlive(SOCKET sockfd, int interval_ms); | COMMENT |
| LOW | deps/libvalkey/include/valkey/read.h | 41 | /* When an error occurs, the err flag in a context is set to hold the type of | COMMENT |
| LOW | deps/libvalkey/tests/client_test.c | 1 | #include "fmacros.h" | COMMENT |
| LOW | deps/libvalkey/tests/client_test.c | 21 | COMMENT | |
| LOW | deps/libvalkey/tests/ct_connection.c | 1 | #include "adapters/libevent.h" | COMMENT |
| LOW | …y/tests/scripts/connect-during-cluster-startup-test.sh | 1 | #!/bin/sh | COMMENT |
| LOW | deps/libvalkey/tests/scripts/moved-redirect-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …ect-during-cluster-startup-using-cluster-nodes-test.sh | 1 | #!/bin/sh | COMMENT |
| LOW | …ripts/client-disconnect-without-slotmap-update-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …libvalkey/tests/scripts/redirect-with-hostname-test.sh | 1 | #!/bin/sh | COMMENT |
| LOW | …ests/scripts/connect-error-using-cluster-nodes-test.sh | 1 | #!/bin/sh | COMMENT |
| LOW | …/libvalkey/tests/scripts/command-from-callback-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …ey/tests/scripts/ask-redirect-connection-error-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | deps/libvalkey/tests/scripts/timeout-handling-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …s/scripts/dbsize-to-all-nodes-during-scaledown-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | deps/libvalkey/tests/scripts/cluster-scale-down-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …pts/dbsize-to-all-nodes-during-scaledown-test-async.sh | 1 | #!/bin/bash | COMMENT |
| LOW | deps/libvalkey/scripts/gencommands.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | deps/libvalkey/scripts/gencommands.py | 21 | # | COMMENT |
| LOW | deps/libvalkey/scripts/gencommands.py | 41 | for arg in arguments: | COMMENT |
| LOW | deps/libvalkey/src/async.c | 41 | #include <strings.h> | COMMENT |
| LOW | deps/libvalkey/src/rdma.c | 41 | #include <arpa/inet.h> | COMMENT |
| 370 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | utils/generate-commands-json.py | 10 | def convert_flags_to_boolean_dict(flags): | CODE |
| LOW | utils/generate-commands-json.py | 35 | def convert_entry_to_objects_array(cmd, docs): | CODE |
| LOW | utils/generate-command-code.py | 53 | def check_command_args_key_specs(args, command_key_specs_index_set, command_arg_key_specs_index_set): | CODE |
| LOW | deps/libvalkey/scripts/gencommands.py | 145 | def collect_command_from_cmddef_h(f, commands): | CODE |
| LOW | deps/libvalkey/scripts/gencommands.py | 163 | def collect_commands_from_files(filenames): | CODE |
| LOW | deps/jemalloc/scripts/gen_travis.py | 210 | def generate_unusual_combinations(unusuals, max_unusual_opts): | STRING |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 129 | def test_passing_task_succeeds(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 139 | def test_failing_task_fails_even_with_retries(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 144 | def test_executing_passing_and_failing_fails(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 155 | def test_task_succeeds_with_one_retry(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 162 | def test_task_fails_with_one_retry(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 169 | def test_runner_succeeds_when_all_tasks_eventually_succeeds(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 254 | def test_running_parallel_test_cases_without_repeats(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 262 | def test_running_parallel_test_cases_with_repeats(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 270 | def test_running_parallel_tests(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 280 | def test_race_in_test_times_load_save(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 576 | def test_does_not_run_disabled_tests_by_default(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 584 | def test_runs_disabled_tests_when_asked(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 593 | def test_runs_failed_tests_by_default(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 600 | def test_runs_only_failed_tests_when_asked(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 608 | def test_does_not_apply_gtest_filter_by_default(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 615 | def test_applies_gtest_filter(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 620 | def test_applies_gtest_color_by_default(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 630 | def test_repeats_tasks_once_by_default(self): | CODE |
| LOW⚡ | deps/gtest-parallel/gtest_parallel_tests.py | 634 | def test_repeats_tasks_multiple_times(self): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel_tests.py | 187 | def test_get_save_file_path_unix(self): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel_tests.py | 376 | def test_logs_to_temporary_files_without_output_dir(self): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel_tests.py | 415 | def test_run_interrupted_task_with_transient_log(self): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel_tests.py | 645 | def test_gtest_list_tests_fails(self): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel.py | 279 | def __get_next_execution_number(self, test_id): | CODE |
| LOW | src/server.c | 1218 | * the function clientsCronTrackExpensiveClients(). */ | COMMENT |
| LOW | src/unit/wrapper_util.py | 54 | def find_wrapper_functions_in_header(header_file_name): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/rdma/rdma_env.py | 26 | cmd = "modprobe rdma_cm && modprobe udp_tunnel && modprobe ip6_udp_tunnel && modprobe ib_uverbs" | CODE |
| HIGH | deps/jemalloc/scripts/gen_run_tests.py | 111 | \$@ >> run_test.log 2>&1 || abort | CODE |
| HIGH | deps/jemalloc/scripts/gen_run_tests.py | 119 | %(config_line)s >> run_test.log 2>&1 || abort | CODE |
| HIGH | deps/jemalloc/scripts/gen_travis.py | 44 | scripts/gen_travis.py > travis_script && diff .travis.yml travis_script | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | deps/jemalloc/scripts/gen_run_tests.py | 34 | except: | CODE |
| HIGH | deps/gtest-parallel/gtest_parallel.py | 620 | except IOError: | CODE |
| HIGH | deps/gtest-parallel/gtest_parallel.py | 76 | except OSError: | CODE |
| HIGH | deps/gtest-parallel/gtest_parallel.py | 391 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | utils/req-res-log-validator.py | 211 | except Exception as err: | CODE |
| LOW | utils/req-res-log-validator.py | 257 | except Exception as e: | CODE |
| MEDIUM | utils/generate-command-code.py | 659 | print("Error processing %s: %s" % (filename, err)) | CODE |
| MEDIUM | utils/generate-command-code.py | 688 | print("Error: There are errors in the commands check, please check the above logs.") | CODE |
| MEDIUM | deps/libvalkey/scripts/gencommands.py | 160 | print("Error processing line: %s" % (line)) | CODE |
| MEDIUM | deps/libvalkey/scripts/gencommands.py | 191 | print("Error processing %s: %s" % (filename, err)) | CODE |
| LOW | deps/gtest-parallel/gtest_parallel.py | 628 | except Exception: | CODE |
| MEDIUM | deps/gtest-parallel/gtest_parallel.py | 624 | def __read_test_times_file(fd): | CODE |
| MEDIUM | src/unit/generate-redefine-syms.py | 39 | print(f"Error: File '{args.object_file}' does not exist.", file=sys.stderr) | CODE |
| MEDIUM | src/unit/generate-redefine-syms.py | 48 | print(f"Error running {args.nm} on '{args.object_file}': {e}", file=sys.stderr) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/rdma/run.py | 60 | CODE | |
| LOW | utils/req-res-log-validator.py | 186 | CODE | |
| LOW | utils/req-res-log-validator.py | 116 | CODE | |
| LOW | utils/generate-command-code.py | 337 | CODE | |
| LOW | utils/generate-command-code.py | 358 | CODE | |
| LOW | utils/generate-command-code.py | 359 | CODE | |
| LOW | deps/libvalkey/scripts/gencommands.py | 58 | CODE | |
| LOW | deps/libvalkey/scripts/gencommands.py | 163 | CODE | |
| LOW | deps/gtest-parallel/gtest_parallel.py | 636 | CODE | |
| LOW | deps/gtest-parallel/gtest_parallel.py | 701 | CODE | |
| LOW | deps/gtest-parallel/gtest_parallel.py | 380 | CODE | |
| LOW | deps/gtest-parallel/gtest_parallel.py | 710 | CODE | |
| LOW | src/unit/wrapper_util.py | 19 | CODE | |
| LOW | src/unit/wrapper_util.py | 54 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | utils/gen-test-certs.sh | 132 | # Create a CA bundle and hashed CA directory used by TLS tests. | COMMENT |
| MEDIUM | .github/workflows/provenance-refresh.yml | 38 | # Create the DB branch on first run, otherwise reuse it. | COMMENT |
| MEDIUM | deps/libvalkey/scripts/gencommands.py | 4 | # This file is released under the BSD license, see the COPYING file | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/t_stream.c | 3388 | /* We need to check if the minimum idle time requested | COMMENT |
| LOW | src/networking.c | 6820 | /* We need to check if the soft limit is reached continuously for the | COMMENT |
| LOW | src/server.c | 3419 | /* The purpose of this function is to try to "glue" consecutive range | COMMENT |
| LOW | src/acl.c | 3301 | /* If there are some subscribers, we need to check if we need to drop some clients. */ | COMMENT |
| LOW | src/modules/hellotype.c | 185 | * called when the key we blocked for is ready: we need to check if we | COMMENT |
| LOW | src/modules/lua/script_lua.c | 379 | /* We need to check if it is an array, an error, or a status reply. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | utils/generate-command-code.py | 94 | # Check if we have key_specs not used | COMMENT |
| LOW | utils/lru/test-lru.rb | 115 | # Check if evicted keys respect LRU | COMMENT |
| LOW | src/module.c | 3799 | * #### Return value | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | utils/redis-copy.rb | 7 | # for the more-robust redis-copy gem. | COMMENT |
| LOW | deps/gtest-parallel/gtest_parallel.py | 52 | # Before a SIGINT is seen, wait(p) will simply call p.wait() and | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deps/jemalloc/src/prof_recent.c | 85 | * "placeholder"; the real recording of the allocation requires a lock | COMMENT |
| LOW | src/rdb.c | 1956 | return createStringObject("module-dummy-value", 18); | CODE |
| LOW | src/unit/test_crc64.cpp | 31 | unsigned char li[] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed " | CODE |
| LOW | src/unit/test_crc64.cpp | 31 | unsigned char li[] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed " | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | utils/redis-sha1.rb | 8 | # If you hack this code make sure to sort keys and set elements as this are | COMMENT |
| LOW | src/commands.h | 63 | /* Command flags. Please don't forget to add command flag documentation in struct | COMMENT |
| LOW | src/lolwut9.c | 81 | output_array = sdscatprintf(output_array, "Don't forget to have fun! %s ver. ", server.extended_redis_compat ? "Redi | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deps/gtest-parallel/gtest_parallel_mocks.py | 99 | def run_task(self, task, timeout_per_test): | CODE |
| LOW | deps/gtest-parallel/gtest_parallel.py | 307 | def run_task(self, task, timeout_per_test): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deps/jemalloc/scripts/gen_travis.py | 4 | CODE |