Scan timing: clone 21.94s · analysis 31.47s · 153.4 MB · GitHub API rate-limit (preflight)
https://github.com/facebook/fbthrift
· scanned 2026-06-06 00:13 UTC (4 days, 3 hours ago)
· 10 languages
507 raw signals (155 security + 352 graph) 11/13 scanners ran 36th percentile · Java · huge (>500K LoC) System graph score 71 (higher by 6)
Last scanned 4 days, 3 hours ago · v2 · 166 actionable findings from 2 signal sources. 140 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
40.0 | 0.15 | 6.00 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
82.0 | 0.20 | 16.40 |
documentation_score |
95.0 | 0.15 | 14.25 |
practices_score |
65.0 | 0.15 | 9.75 |
code_quality |
51.0 | 0.10 | 5.10 |
| Overall | 1.00 | 76.5 |
All 9825 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
write_file |
software | healthy | thrift/compiler/test/ast_generator_test.py:38 |
setUp |
software | healthy | thrift/compiler/test/ast_generator_test.py:47 |
run_thrift |
software | healthy | thrift/compiler/test/ast_generator_test.py:55 |
test_struct |
software | healthy | thrift/compiler/test/ast_generator_test.py:86 |
test_const_types |
software | healthy | thrift/compiler/test/ast_generator_test.py:108 |
test_service |
software | healthy | thrift/compiler/test/ast_generator_test.py:141 |
test_docs |
software | healthy | thrift/compiler/test/ast_generator_test.py:222 |
test_program |
software | healthy | thrift/compiler/test/ast_generator_test.py:268 |
test_annotation |
software | healthy | thrift/compiler/test/ast_generator_test.py:297 |
test_source_range_map |
software | healthy | thrift/compiler/test/ast_generator_test.py:344 |
test_hash_mode |
software | healthy | thrift/compiler/test/ast_generator_test.py:440 |
test_sharding |
software | healthy | thrift/compiler/test/ast_generator_test.py:472 |
setUp |
software | healthy | thrift/compiler/test/fixture_test.py:45 |
runTest |
software | healthy | thrift/compiler/test/fixture_test.py:50 |
_add_fixture |
software | healthy | thrift/compiler/test/fixture_test.py:87 |
test_method |
software | healthy | thrift/compiler/test/fixture_test.py:105 |
read_file |
software | healthy | thrift/compiler/test/json_compiler_test.py:32 |
write_file |
software | healthy | thrift/compiler/test/json_compiler_test.py:37 |
check_run_thrift |
software | healthy | thrift/compiler/test/json_compiler_test.py:42 |
gen |
software | healthy | thrift/compiler/test/json_compiler_test.py:55 |
setUp |
software | healthy | thrift/compiler/test/json_compiler_test.py:65 |
test_empty |
software | healthy | thrift/compiler/test/json_compiler_test.py:73 |
test_one_struct_empty |
software | healthy | thrift/compiler/test/json_compiler_test.py:89 |
test_one_struct_one_field_dep_struct |
software | healthy | thrift/compiler/test/json_compiler_test.py:125 |
test_one_struct_one_field_dep_coll_struct |
software | healthy | thrift/compiler/test/json_compiler_test.py:196 |
test_one_struct_one_field_dep_struct_bug_out_of_order |
software | healthy | thrift/compiler/test/json_compiler_test.py:276 |
test_struct_field_annotate |
software | healthy | thrift/compiler/test/json_compiler_test.py:349 |
_ascend_find_exe |
software | healthy | thrift/compiler/test/fixture_utils.py:41 |
read_lines |
software | healthy | thrift/compiler/test/fixture_utils.py:61 |
_add_option_to_generator_spec |
software | healthy | thrift/compiler/test/fixture_utils.py:66 |
_should_build_included_files_recursively |
software | healthy | thrift/compiler/test/fixture_utils.py:90 |
parse_fixture_cmds |
software | healthy | thrift/compiler/test/fixture_utils.py:109 |
_parse_fixture_cmd |
software | healthy | thrift/compiler/test/fixture_utils.py:155 |
_gen_find_recursive_files |
software | healthy | thrift/compiler/test/fixture_utils.py:263 |
get_resource_as_path |
software | healthy | thrift/compiler/test/fixture_utils.py:272 |
get_thrift_binary_path |
software | healthy | thrift/compiler/test/fixture_utils.py:287 |
get_thrift2ast_binary_path |
software | healthy | thrift/compiler/test/fixture_utils.py:305 |
get_all_fixture_names |
software | healthy | thrift/compiler/test/fixture_utils.py:318 |
validate_that_root_path_is_a_dir |
software | healthy | thrift/compiler/test/fixture_utils.py:343 |
assert_identical_output |
software | healthy | thrift/compiler/test/fixture_utils.py:359 |
apply_postprocessing |
software | healthy | thrift/compiler/test/fixture_utils.py:417 |
setUp |
software | healthy | thrift/compiler/test/build_fixtures_test.py:27 |
test_build_fixtures_help |
software | healthy | thrift/compiler/test/build_fixtures_test.py:30 |
test_build_fixtures_incorrect_repo_root_directory |
software | healthy | thrift/compiler/test/build_fixtures_test.py:45 |
test_build_fixtures_incorrect_fixtures_directory |
software | healthy | thrift/compiler/test/build_fixtures_test.py:66 |
_build_parser |
software | healthy | thrift/compiler/test/build_fixtures.py:39 |
_run_subprocess |
software | healthy | thrift/compiler/test/build_fixtures.py:99 |
_add_processes_for_fixture |
software | healthy | thrift/compiler/test/build_fixtures.py:134 |
_get_fixture_names |
software | healthy | thrift/compiler/test/build_fixtures.py:190 |
main |
software | healthy | thrift/compiler/test/build_fixtures.py:197 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
devcontainer.json |
software | healthy | .devcontainer/python/devcontainer.json |
devcontainer.json |
software | healthy | .devcontainer/cpp/devcontainer.json |
README.md |
software | healthy | thrift/README.md |
main.cc |
software | healthy | thrift/compiler/main.cc |
compiler.h |
software | healthy | thrift/compiler/compiler.h |
README.md |
software | healthy | thrift/compiler/README.md |
compiler.cc |
software | healthy | thrift/compiler/compiler.cc |
diagnostic.h |
software | healthy | thrift/compiler/diagnostic.h |
diagnostic.cc |
software | healthy | thrift/compiler/diagnostic.cc |
source_location.cc |
software | healthy | thrift/compiler/source_location.cc |
source_location.h |
software | healthy | thrift/compiler/source_location.h |
sema_context.h |
software | healthy | thrift/compiler/sema/sema_context.h |
sema_context.cc |
software | healthy | thrift/compiler/sema/sema_context.cc |
explicit_include_validator.h |
software | healthy | thrift/compiler/sema/explicit_include_validator.h |
resolution_mismatch.h |
software | healthy | thrift/compiler/sema/resolution_mismatch.h |
standard_validator.cc |
software | healthy | thrift/compiler/sema/standard_validator.cc |
reserved_identifier.h |
software | healthy | thrift/compiler/sema/reserved_identifier.h |
ast_uri_utils.cc |
software | healthy | thrift/compiler/sema/ast_uri_utils.cc |
standard_validator.h |
software | healthy | thrift/compiler/sema/standard_validator.h |
schematizer.h |
software | healthy | thrift/compiler/sema/schematizer.h |
check_initializer.cc |
software | healthy | thrift/compiler/sema/check_initializer.cc |
schematizer.cc |
software | healthy | thrift/compiler/sema/schematizer.cc |
resolution_mismatch.cc |
software | healthy | thrift/compiler/sema/resolution_mismatch.cc |
ast_uri_utils.h |
software | healthy | thrift/compiler/sema/ast_uri_utils.h |
scope_validator.cc |
software | healthy | thrift/compiler/sema/scope_validator.cc |
ast_validator.h |
software | healthy | thrift/compiler/sema/ast_validator.h |
sema.h |
software | healthy | thrift/compiler/sema/sema.h |
check_map_keys.cc |
software | healthy | thrift/compiler/sema/check_map_keys.cc |
explicit_include_validator.cc |
software | healthy | thrift/compiler/sema/explicit_include_validator.cc |
sema.cc |
software | healthy | thrift/compiler/sema/sema.cc |
ast_uri_utils_test.cc |
software | healthy | thrift/compiler/sema/test/ast_uri_utils_test.cc |
t_container.h |
software | healthy | thrift/compiler/ast/t_container.h |
t_function.h |
software | healthy | thrift/compiler/ast/t_function.h |
t_enum_value.h |
software | healthy | thrift/compiler/ast/t_enum_value.h |
node_list.h |
software | healthy | thrift/compiler/ast/node_list.h |
scope_identifier.cc |
software | healthy | thrift/compiler/ast/scope_identifier.cc |
t_type.cc |
software | healthy | thrift/compiler/ast/t_type.cc |
t_named.cc |
software | healthy | thrift/compiler/ast/t_named.cc |
t_union.cc |
software | healthy | thrift/compiler/ast/t_union.cc |
t_structured.cc |
software | healthy | thrift/compiler/ast/t_structured.cc |
t_map.cc |
software | healthy | thrift/compiler/ast/t_map.cc |
t_program.h |
software | healthy | thrift/compiler/ast/t_program.h |
t_field.cc |
software | healthy | thrift/compiler/ast/t_field.cc |
t_const_value.h |
software | healthy | thrift/compiler/ast/t_const_value.h |
t_global_scope.h |
software | healthy | thrift/compiler/ast/t_global_scope.h |
t_list.h |
software | healthy | thrift/compiler/ast/t_list.h |
t_interface.cc |
software | healthy | thrift/compiler/ast/t_interface.cc |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
.devcontainer |
software | healthy | .devcontainer |
python |
software | healthy | .devcontainer/python |
cpp |
software | healthy | .devcontainer/cpp |
thrift |
software | healthy | thrift |
compiler |
software | healthy | thrift/compiler |
sema |
software | healthy | thrift/compiler/sema |
test |
software | healthy | thrift/compiler/sema/test |
ast |
software | healthy | thrift/compiler/ast |
test |
software | healthy | thrift/compiler/ast/test |
detail |
software | healthy | thrift/compiler/detail |
generate |
software | healthy | thrift/compiler/generate |
rust |
software | healthy | thrift/compiler/generate/rust |
templates |
software | healthy | thrift/compiler/generate/templates |
pyi |
software | healthy | thrift/compiler/generate/templates/pyi |
csharp |
software | healthy | thrift/compiler/generate/csharp |
test |
software | healthy | thrift/compiler/generate/csharp/test |
python |
software | healthy | thrift/compiler/generate/python |
cpp |
software | healthy | thrift/compiler/generate/cpp |
test |
software | healthy | thrift/compiler/generate/cpp/test |
java |
software | healthy | thrift/compiler/generate/java |
go |
software | healthy | thrift/compiler/generate/go |
test |
software | healthy | thrift/compiler/test |
codemod |
software | healthy | thrift/compiler/codemod |
test |
software | healthy | thrift/compiler/codemod/test |
parse |
software | healthy | thrift/compiler/parse |
whisker |
software | healthy | thrift/compiler/whisker |
detail |
software | healthy | thrift/compiler/whisker/detail |
test |
software | healthy | thrift/compiler/whisker/test |
conformance |
software | healthy | thrift/compiler/whisker/test/conformance |
tools |
software | healthy | thrift/compiler/whisker/tools |
metrics |
software | healthy | thrift/compiler/metrics |
common |
software | healthy | thrift/common |
detail |
software | healthy | thrift/common/detail |
test |
software | healthy | thrift/common/test |
test |
software | healthy | thrift/test |
integration |
software | healthy | thrift/test/integration |
cpp2 |
software | healthy | thrift/test/integration/cpp2 |
lazy_deserialization |
software | healthy | thrift/test/lazy_deserialization |
benchmarks |
software | healthy | thrift/test/benchmarks |
reflection |
software | healthy | thrift/test/reflection |
testset |
software | healthy | thrift/test/testset |
golden |
software | healthy | thrift/test/testset/golden |
rust |
software | healthy | thrift/test/rust |
thrift-python |
software | healthy | thrift/test/thrift-python |
fuzzer |
software | healthy | thrift/test/fuzzer |
default_values |
software | healthy | thrift/test/default_values |
py |
software | healthy | thrift/test/py |
explicit_module |
software | healthy | thrift/test/py/explicit_module |
py-asyncio |
software | healthy | thrift/test/py-asyncio |
terse_write |
software | healthy | thrift/test/terse_write |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
AstGeneratorTest |
software | healthy | thrift/compiler/test/ast_generator_test.py:46 |
FixtureTest |
software | healthy | thrift/compiler/test/fixture_test.py:36 |
JsonCompilerTest |
software | healthy | thrift/compiler/test/json_compiler_test.py:64 |
FixtureCmd |
software | healthy | thrift/compiler/test/fixture_utils.py:35 |
TestBuildFixtures |
software | healthy | thrift/compiler/test/build_fixtures_test.py:26 |
RemoveDuplicateNamespacesTest |
software | healthy | thrift/compiler/codemod/remove_duplicate_namespaces_test.py… |
AnnotateHackLegacyJsonSerializationTest |
software | healthy | thrift/compiler/codemod/annotate_hack_legacy_json_serializa… |
RelativeIncludeTest |
software | healthy | thrift/compiler/codemod/relative_include_test.py:27 |
AddOperationalAnnotationsTest |
software | healthy | thrift/compiler/codemod/add_operational_annotations_test.py… |
AnnotateAllowLegacyMissingUrisTest |
software | healthy | thrift/compiler/codemod/annotate_allow_legacy_missing_uris_… |
AnnotateDeprecatedTerseWritesFieldsTest |
software | healthy | thrift/compiler/codemod/annotate_deprecated_terse_writes_fi… |
AnnotateCustomDefaultOptionalFieldsTest |
software | healthy | thrift/compiler/codemod/annotate_custom_default_optional_fi… |
HoistAnnotatedTypesTest |
software | healthy | thrift/compiler/codemod/specify_implicit_field_id_test.py:27 |
SpecifyImplicitFuncParamIdTest |
software | healthy | thrift/compiler/codemod/specify_implicit_func_param_id_test… |
ThriftPackageTest |
software | healthy | thrift/compiler/codemod/add_package_test.py:27 |
RemovePhpNamespaceIfHackPresentTest |
software | healthy | thrift/compiler/codemod/remove_php_namespace_if_hack_presen… |
TestAddNamespacePy3 |
software | healthy | thrift/compiler/codemod/add_namespace_py3_test.py:27 |
AnnotateAllowUnsafeNonSealedKeyTypeTest |
software | healthy | thrift/compiler/codemod/annotate_allow_unsafe_non_sealed_ke… |
MigratePhpNamespaceToHackNamePrefixTest |
software | healthy | thrift/compiler/codemod/migrate_php_namespace_to_hack_name_… |
AnnotateNonOptionalCppRefFieldsTest |
software | healthy | thrift/compiler/codemod/annotate_non_optional_cpp_ref_field… |
AnnotateRequiredFieldsTest |
software | healthy | thrift/compiler/codemod/annotate_required_fields_test.py:27 |
UnitTest |
software | healthy | thrift/test/lazy_deserialization/simple_test.py:49 |
GoldenTest |
software | healthy | thrift/test/testset/generator_test.py:43 |
Target |
software | healthy | thrift/test/testset/generator.py:25 |
ThriftPython_ImmutableUnion_Test |
software | healthy | thrift/test/thrift-python/union_test.py:62 |
ThriftPython_MutableUnion_Test |
software | healthy | thrift/test/thrift-python/union_test.py:670 |
ThriftPython_ImmutableStruct_Test |
software | healthy | thrift/test/thrift-python/struct_test.py:119 |
ThriftPython_MutableStruct_Test |
software | healthy | thrift/test/thrift-python/struct_test.py:602 |
MyMapping |
software | healthy | thrift/test/thrift-python/struct_test.py:1215 |
ThriftPython_EnumClass_Test |
software | healthy | thrift/test/thrift-python/enum_test.py:27 |
ThriftPython_EnumMembers_Test |
software | healthy | thrift/test/thrift-python/enum_test.py:201 |
ThriftPython_TypesEnum_Test |
software | healthy | thrift/test/thrift-python/enum_test.py:263 |
ThriftPythonAbstractTypesTest |
software | healthy | thrift/test/thrift-python/abstract_types_test.py:92 |
incorrect_type |
software | healthy | thrift/test/thrift-python/abstract_types_test.py:1384 |
TestEvolution |
software | healthy | thrift/test/thrift-python/schema_evolution_test.py:37 |
TestSchemaCompatibility |
software | healthy | thrift/test/thrift-python/schema_evolution_test.py:103 |
TestServiceWrapper |
software | healthy | thrift/test/fuzzer/TestFuzzer.py:25 |
TestRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:28 |
TestBoolRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:36 |
TestEnumRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:70 |
TestIntRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:110 |
TestByteRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:279 |
TestI16Randomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:284 |
TestI32Randomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:289 |
TestI64Randomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:294 |
TestFloatRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:299 |
TestSinglePrecisionRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:383 |
TestDoublePrecisionRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:388 |
TestStringRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:393 |
TestListRandomizer |
software | healthy | thrift/test/fuzzer/RandomizerTest.py:435 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
gha::getdeps_windows |
cicd | healthy | .github/workflows/getdeps_windows.yml |
gha::getdeps_linux |
cicd | healthy | .github/workflows/getdeps_linux.yml |
gha::getdeps_python_linux_container |
cicd | healthy | .github/workflows/getdeps_python_linux_container.yml |
gha::getdeps_python_linux |
cicd | healthy | .github/workflows/getdeps_python_linux.yml |
gha::getdeps_mac |
cicd | healthy | .github/workflows/getdeps_mac.yml |
gha::devcontainer |
cicd | healthy | .github/workflows/devcontainer.yml |
circleci |
cicd | healthy | thrift/lib/go/thrift/.circleci/config.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
build |
cicd | healthy | .github/workflows/getdeps_windows.yml |
build |
cicd | healthy | .github/workflows/getdeps_linux.yml |
build |
cicd | healthy | .github/workflows/getdeps_python_linux_container.yml |
build |
cicd | healthy | .github/workflows/getdeps_python_linux.yml |
build |
cicd | healthy | .github/workflows/getdeps_mac.yml |
build |
cicd | healthy | .github/workflows/devcontainer.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | thrift/test/py/TestServer.py |
2.6.38.4 |
network | healthy | thrift/test/JsonToThriftTest/config.json |
198.51.100.29 |
network | healthy | thrift/lib/py/util/tests/test_async_common.py |
| Label | Layer | Status | Path |
|---|---|---|---|
port:1421 |
network | healthy | thrift/lib/py/util/asyncio.py |
port:9090 |
network | healthy | thrift/lib/py/transport/TSSLSocket.py |
port:9091 |
network | healthy | thrift/lib/py/server/TAsyncioServer.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-pt2wdqgu |
software | healthy | /tmp/repobility-clone-pt2wdqgu |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::thrift/lib/javadeprecated/src/test/java/c… |
security | healthy | thrift/lib/javadeprecated/src/test/java/com/facebook/thrift… |
| Label | Layer | Status | Path |
|---|---|---|---|
GITHUB_TOKEN |
cicd | healthy | — |
This page is publicly accessible at:
https://repobility.com/scan/71d9ca5e-e7aa-41be-958a-2ca17c9b2ccd/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/71d9ca5e-e7aa-41be-958a-2ca17c9b2ccd/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.