gitgalaxy 2.3.43__tar.gz → 2.4.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. gitgalaxy-2.4.5/.github/workflows/dead-key-audit.yml +29 -0
  2. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/deploy-docs.yml +1 -1
  3. gitgalaxy-2.4.5/.github/workflows/gitgalaxy.yml +124 -0
  4. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/muninn.yml +1 -1
  5. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/smoke-test.yml +1 -1
  6. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.gitignore +3 -0
  7. gitgalaxy-2.4.5/PKG-INFO +265 -0
  8. gitgalaxy-2.4.5/README.md +241 -0
  9. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/action.yml +2 -2
  10. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/README.md +17 -0
  11. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/cobol_refractor_controller.py +10 -5
  12. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/aperture.py +138 -93
  13. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/detector.py +117 -145
  14. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/guidestar_lens.py +16 -9
  15. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/network_risk_sensor.py +102 -44
  16. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/prism.py +52 -19
  17. gitgalaxy-2.4.5/gitgalaxy/core/spatial_correlation.py +287 -0
  18. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/state_rehydrator.py +4 -4
  19. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/galaxyscope.py +353 -85
  20. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/chronometer.py +23 -7
  21. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/signal_processor.py +43 -69
  22. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/statistical_auditor.py +1 -1
  23. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/tensor_scanner.py +2 -2
  24. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/audit_recorder.py +8 -5
  25. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/gpu_recorder.py +17 -5
  26. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/llm_recorder.py +28 -25
  27. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/record_keeper.py +34 -8
  28. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/sarif_recorder.py +7 -3
  29. gitgalaxy-2.4.5/gitgalaxy/recorders/sbom_recorder.py +359 -0
  30. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/requirements.txt +1 -1
  31. gitgalaxy-2.4.5/gitgalaxy/security/dependency_audit_cache.py +138 -0
  32. gitgalaxy-2.4.5/gitgalaxy/security/manifest_parser.py +390 -0
  33. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/security/security_auditor.py +8 -1
  34. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/security/security_lens.py +13 -78
  35. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/analysis_lens.py +11 -7
  36. gitgalaxy-2.4.5/gitgalaxy/standards/config_resolver.py +315 -0
  37. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/gitgalaxy_config.py +25 -0
  38. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/language_lens.py +15 -9
  39. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/language_standards.py +56 -12
  40. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/ai_guardrails/ai_appsec_sensor.py +35 -12
  41. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/ai_guardrails/dev_agent_firewall.py +35 -13
  42. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_dag_architect.py +2 -1
  43. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_jcl_auditor.py +2 -1
  44. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_jcl_forge.py +2 -1
  45. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_microservice_slicer.py +2 -1
  46. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_schema_forge.py +2 -1
  47. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_agent_forge.py +3 -1
  48. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/network_auditing/full_api_network_map.py +2 -2
  49. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/supply_chain_security/binary_anomaly_detector.py +51 -30
  50. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/supply_chain_security/supply_chain_firewall.py +97 -59
  51. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/supply_chain_security/vault_sentinel.py +22 -19
  52. gitgalaxy-2.4.5/gitgalaxy.egg-info/PKG-INFO +265 -0
  53. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/SOURCES.txt +12 -2
  54. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/scm_file_list.json +528 -517
  55. gitgalaxy-2.4.5/gitgalaxy.egg-info/scm_version.json +8 -0
  56. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/github-action-readme.md +26 -56
  57. gitgalaxy-2.4.5/json +102785 -0
  58. gitgalaxy-2.4.5/templates/azure/azure-pipelines.yml +101 -0
  59. gitgalaxy-2.4.5/templates/bitbucket/bitbucket-pipelines.yml +61 -0
  60. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/templates/bitbucket/bitbucket_insights.py +3 -2
  61. gitgalaxy-2.4.5/templates/github/gitgalaxy-pipeline.yml +69 -0
  62. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/templates/gitlab/scan.yml +18 -9
  63. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_refractor_controller.py +22 -0
  64. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_aperture.py +97 -4
  65. gitgalaxy-2.4.5/tests/core_engine/test_config_resolver.py +294 -0
  66. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_detector.py +265 -21
  67. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_galaxyscope.py +686 -1
  68. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_guidestar_lens.py +54 -13
  69. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_language_lens.py +95 -1
  70. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_manifest_parser.py +92 -1
  71. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_prism.py +112 -15
  72. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_signal_processor.py +125 -26
  73. gitgalaxy-2.4.5/tests/core_engine/test_spatial_correlation.py +258 -0
  74. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_state_rehydrator.py +1 -1
  75. gitgalaxy-2.4.5/tests/dead_key_audit.py +375 -0
  76. gitgalaxy-2.4.5/tests/dead_key_audit_baseline.json +1 -0
  77. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/golden_master_audit.json +2 -2
  78. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/golden_master_zero_dep_audit.json +2 -2
  79. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_ai_appsec_sensor.py +58 -17
  80. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_binary_anomaly_detector.py +92 -39
  81. gitgalaxy-2.4.5/tests/security_auditing/test_dependency_audit_cache.py +305 -0
  82. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_dev_agent_firewall.py +124 -11
  83. gitgalaxy-2.4.5/tests/security_auditing/test_network_risk_sensor.py +376 -0
  84. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_security_auditor.py +44 -0
  85. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_security_lens.py +9 -86
  86. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_supply_chain_firewall.py +285 -83
  87. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_vault_sentinel.py +90 -28
  88. gitgalaxy-2.4.5/tests/test_dead_key_audit.py +167 -0
  89. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_audit_recorder.py +11 -2
  90. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_llm_recorder.py +25 -0
  91. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_record_keeper.py +17 -2
  92. gitgalaxy-2.4.5/tests/tools_recorders/test_sarif_recorder.py +43 -0
  93. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_sbom_generator.py +56 -1
  94. gitgalaxy-2.3.43/.github/workflows/gitgalaxy-artifacts.yml +0 -72
  95. gitgalaxy-2.3.43/.github/workflows/gitgalaxy-audit.yml +0 -50
  96. gitgalaxy-2.3.43/.github/workflows/gitgalaxy.yml +0 -53
  97. gitgalaxy-2.3.43/PKG-INFO +0 -225
  98. gitgalaxy-2.3.43/README.md +0 -201
  99. gitgalaxy-2.3.43/gitgalaxy/recorders/sbom_recorder.py +0 -342
  100. gitgalaxy-2.3.43/gitgalaxy/security/manifest_parser.py +0 -176
  101. gitgalaxy-2.3.43/gitgalaxy.egg-info/PKG-INFO +0 -225
  102. gitgalaxy-2.3.43/gitgalaxy.egg-info/scm_version.json +0 -8
  103. gitgalaxy-2.3.43/templates/azure/azure-pipelines.yml +0 -60
  104. gitgalaxy-2.3.43/templates/bitbucket/bitbucket-pipelines.yml +0 -48
  105. gitgalaxy-2.3.43/templates/github/gitgalaxy-pipeline.yml +0 -37
  106. gitgalaxy-2.3.43/tests/security_auditing/test_network_risk_sensor.py +0 -188
  107. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.flake8 +0 -0
  108. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.galaxyscope.yaml +0 -0
  109. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/CODEOWNERS +0 -0
  110. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/ISSUE_TEMPLATE/parsing_discrepancy.yml +0 -0
  111. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/dependabot.yml +0 -0
  112. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/pull_request_template.md +0 -0
  113. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/codeql.yml +0 -0
  114. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/golden-crucible.yml +0 -0
  115. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.github/workflows/publish.yml +0 -0
  116. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/.gitlab-ci.yml +0 -0
  117. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/CONTRIBUTING.md +0 -0
  118. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/LICENSE +0 -0
  119. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/MANIFEST.in +0 -0
  120. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/SECURITY.md +0 -0
  121. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/azure-pipelines.yml +0 -0
  122. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/bitbucket-pipelines.yml +0 -0
  123. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/__init__.py +0 -0
  124. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/cobol_to_java_controller.py +0 -0
  125. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/README.md +0 -0
  126. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/__init__.py +0 -0
  127. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/core/spatial_mapper.py +0 -0
  128. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/licensing.py +0 -0
  129. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/README.md +0 -0
  130. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/metrics/__init__.py +0 -0
  131. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/README.md +0 -0
  132. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/recorders/__init__.py +0 -0
  133. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/security/README.md +0 -0
  134. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/security/__init__.py +0 -0
  135. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/README.md +0 -0
  136. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/__init__.py +0 -0
  137. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/standards/how_to_add_a_language.md +0 -0
  138. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/README.md +0 -0
  139. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/__init__.py +0 -0
  140. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/ai_guardrails/README.md +0 -0
  141. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/README.md +0 -0
  142. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_agent_task_forge.py +0 -0
  143. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_compiler_forge.py +0 -0
  144. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_etl_unpacker.py +0 -0
  145. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_graveyard_finder.py +0 -0
  146. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_lexical_patcher.py +0 -0
  147. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_cobol/cobol_system_limits_reporter.py +0 -0
  148. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/README.md +0 -0
  149. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/batch_test_harness.py +0 -0
  150. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_api_contract_forge.py +0 -0
  151. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_build_forge.py +0 -0
  152. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_decoder_forge.py +0 -0
  153. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_service_forge.py +0 -0
  154. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_spring_forge.py +0 -0
  155. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/cobol_to_java/cobol_to_java_test_forge.py +0 -0
  156. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/network_auditing/README.md +0 -0
  157. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/supply_chain_security/README.md +0 -0
  158. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/terabyte_log_scanning/README.md +0 -0
  159. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/terabyte_log_scanning/pii_leak_hunter.py +0 -0
  160. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy/tools/terabyte_log_scanning/terabyte_log_scanner.py +0 -0
  161. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/dependency_links.txt +0 -0
  162. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/entry_points.txt +0 -0
  163. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/requires.txt +0 -0
  164. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/gitgalaxy.egg-info/top_level.txt +0 -0
  165. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/mkdocs.yml +0 -0
  166. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/muninn.yml +0 -0
  167. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/pyproject.toml +0 -0
  168. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/setup.cfg +0 -0
  169. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/templates/scan.yml +0 -0
  170. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/README.md +0 -0
  171. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/readme.md +0 -0
  172. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_agent_task_forge.py +0 -0
  173. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_compiler_forge.py +0 -0
  174. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_dag_architect.py +0 -0
  175. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_etl_unpacker.py +0 -0
  176. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_graveyard_finder.py +0 -0
  177. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_jcl_auditor.py +0 -0
  178. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_jcl_forge.py +0 -0
  179. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_lexical_patcher.py +0 -0
  180. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_microservice_slicer.py +0 -0
  181. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_schema_forge.py +0 -0
  182. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/cobol_mainframe/test_cobol_system_limits_reporter.py +0 -0
  183. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/readme.md +0 -0
  184. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_chronometer.py +0 -0
  185. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_chronometer_timeout.py +0 -0
  186. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_delta_scanner.py +0 -0
  187. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_language_standards_strict.py +0 -0
  188. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_licensing.py +0 -0
  189. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/core_engine/test_zero_dependency.py +0 -0
  190. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/extraction/readme.md +0 -0
  191. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/extraction/test_args_extraction_strict.py +0 -0
  192. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/extraction/test_class_extraction_strict.py +0 -0
  193. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/extraction/test_dependency_extraction_strict.py +0 -0
  194. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/extraction/test_function_extraction_strict.py +0 -0
  195. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/golden_diff.py +0 -0
  196. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/readme.md +0 -0
  197. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_api_network_map.py +0 -0
  198. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_pii_leak_hunter.py +0 -0
  199. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_redos_poison.py +0 -0
  200. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_statistical_auditor.py +0 -0
  201. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_tensor_auditor.py +0 -0
  202. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/security_auditing/test_terabyte_log_scanner.py +0 -0
  203. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/readme.md +0 -0
  204. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_agent_forge.py +0 -0
  205. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_batch_test_harness.py +0 -0
  206. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_decoder_forge.py +0 -0
  207. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_golden_forge.py +0 -0
  208. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_gpu_recorder.py +0 -0
  209. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/tests/tools_recorders/test_service_forge.py +0 -0
  210. {gitgalaxy-2.3.43 → gitgalaxy-2.4.5}/zizmor.yml +0 -0
@@ -0,0 +1,29 @@
1
+ name: Dead Key Audit
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - main
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ dead-key-audit:
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - name: Check out repository code
17
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
18
+ with:
19
+ persist-credentials: false
20
+
21
+ - name: Set up Python
22
+ uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1
23
+ with:
24
+ python-version: "3.12"
25
+
26
+ # No pip install: dead_key_audit.py is stdlib-only (ast/json/argparse)
27
+ # by design, so this check stays fast and dependency-free.
28
+ - name: Run baseline-gated regression check (#325)
29
+ run: python tests/dead_key_audit.py --ci
@@ -27,7 +27,7 @@ jobs:
27
27
  git config user.email 41898282+github-actions[bot]@users.noreply.github.com
28
28
 
29
29
  - name: Set up Python
30
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
30
+ uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 #
31
31
  with:
32
32
  python-version: "3.x"
33
33
 
@@ -0,0 +1,124 @@
1
+ name: GitGalaxy Zero-Trust Pipeline
2
+
3
+ on:
4
+ pull_request:
5
+ branches: [main]
6
+ push:
7
+ branches: [main]
8
+
9
+ permissions:
10
+ contents: read
11
+
12
+ jobs:
13
+ # ============================================================
14
+ # PRE-GATE — runs on every PR, blocks the merge on failure.
15
+ # Fast; no heavy ML/graph dependencies installed.
16
+ # ============================================================
17
+ vault-sentinel:
18
+ if: github.event_name == 'pull_request'
19
+ name: Vault Sentinel
20
+ runs-on: ubuntu-latest
21
+ steps:
22
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
23
+ with:
24
+ persist-credentials: false
25
+ - uses: ./
26
+ with:
27
+ tool: vault-sentinel
28
+ target: .
29
+ version: local
30
+
31
+ xray-inspector:
32
+ if: github.event_name == 'pull_request'
33
+ name: X-Ray Inspector
34
+ runs-on: ubuntu-latest
35
+ steps:
36
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
37
+ with:
38
+ persist-credentials: false
39
+ - uses: ./
40
+ with:
41
+ tool: xray-inspector
42
+ target: .
43
+ version: local
44
+
45
+ supply-chain-firewall:
46
+ if: github.event_name == 'pull_request'
47
+ name: Supply Chain Firewall
48
+ runs-on: ubuntu-latest
49
+ steps:
50
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
51
+ with:
52
+ persist-credentials: false
53
+ - uses: ./
54
+ with:
55
+ tool: supply-chain-firewall
56
+ target: .
57
+ version: local
58
+
59
+ # ============================================================
60
+ # POST-GATE — runs only once code is on main (merge or direct
61
+ # push). One galaxyscope pass produces all 6 outputs; we route
62
+ # 3 of them and let the rest live only in the ephemeral runner.
63
+ # --fail-on-malware stays on here too, as a safety net in case
64
+ # branch protection is ever bypassed.
65
+ # ============================================================
66
+ full-report:
67
+ if: github.event_name == 'push'
68
+ name: Full Report (SARIF, SBOM, LLM Brief)
69
+ runs-on: ubuntu-latest
70
+ permissions:
71
+ contents: write
72
+ pull-requests: write # NEW — required for create-pull-request to open the PR
73
+ security-events: write
74
+ steps:
75
+ - name: Checkout Repository # unchanged
76
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
77
+ with:
78
+ fetch-depth: 0
79
+ persist-credentials: true
80
+
81
+ - name: Setup Python # unchanged
82
+ uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
83
+ with:
84
+ python-version: "3.12"
85
+ cache: "pip"
86
+
87
+ - name: Install GitGalaxy & Full Precision Engines # unchanged
88
+ run: |
89
+ python -m pip install --upgrade pip
90
+ pip install gitgalaxy networkx tiktoken xgboost pandas numpy
91
+
92
+ - name: Run GalaxyScope (single pass — all 6 outputs) # unchanged
93
+ env:
94
+ GITGALAXY_LICENSE_KEY: "COMMUNITY_FREE_TIER"
95
+ run: |
96
+ galaxyscope . --config .galaxyscope.yaml --fail-on-malware --output gitgalaxy-results.json
97
+
98
+ - name: Upload SARIF to GitHub Security Tab # unchanged
99
+ uses: github/codeql-action/upload-sarif@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4
100
+ with:
101
+ sarif_file: gitgalaxy-results_sarif.json
102
+
103
+ - name: Upload SBOM as Build Artifact # unchanged
104
+ uses: actions/upload-artifact@v7
105
+ with:
106
+ name: gitgalaxy-sbom
107
+ path: gitgalaxy-results_sbom.json
108
+
109
+ # --- everything below here REPLACES the old "Commit LLM Brief to Docs" step ---
110
+ - name: Prepare LLM Brief
111
+ run: |
112
+ mkdir -p docs
113
+ mv *_galaxy_llm.md docs/gitgalaxy_architecture_brief.md
114
+
115
+ - name: Open PR with Updated LLM Brief
116
+ uses: squid-protocol/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # forked from peter-evans/create-pull-request v8.0.0
117
+ with:
118
+ token: ${{ secrets.AUTOMATION_PAT }}
119
+ commit-message: "docs: auto-update LLM architectural brief"
120
+ title: "docs: auto-update LLM architectural brief"
121
+ body: "Automated update from the latest GalaxyScope scan on `main`."
122
+ branch: auto/llm-architecture-brief
123
+ delete-branch: true
124
+ add-paths: docs/gitgalaxy_architecture_brief.md
@@ -23,7 +23,7 @@ jobs:
23
23
 
24
24
  - name: Run Muninn
25
25
  # zizmor: ignore[github_action_from_unverified_creator_used]
26
- uses: skaldlab/muninn@c3b5b13e4599d1c3f68280d24d64e403a306f542 # v0.3.4
26
+ uses: skaldlab/muninn@daf98872b5748d015ed5bd828296175f6bc0115d # v0.3.6
27
27
  with:
28
28
  token: ${{ secrets.GITHUB_TOKEN }}
29
29
  fail-on: info
@@ -26,7 +26,7 @@ jobs:
26
26
  persist-credentials: false
27
27
 
28
28
  - name: Set up Python ${{ matrix.python-version }}
29
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
29
+ uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 #
30
30
  with:
31
31
  python-version: ${{ matrix.python-version }}
32
32
 
@@ -102,3 +102,6 @@ tests/telemetry_out/
102
102
 
103
103
  # Force tracking of the Golden Master despite global *.json ignore
104
104
  !tests/golden_master_audit.json*.vsix
105
+
106
+ # Force tracking of the Dead Key Auditor baseline (#325) despite global *.json ignore
107
+ !tests/dead_key_audit_baseline.json
@@ -0,0 +1,265 @@
1
+ Metadata-Version: 2.4
2
+ Name: gitgalaxy
3
+ Version: 2.4.5
4
+ Summary: An AST-free, LLM-free zero-trust static analysis engine for mapping architectural risk, securing CI/CD pipelines, and modernizing legacy monoliths.
5
+ Author: Joe Esquibel
6
+ Project-URL: Homepage, https://gitgalaxy.io
7
+ Project-URL: Documentation, https://squid-protocol.github.io/gitgalaxy/
8
+ Project-URL: Source, https://github.com/squid-protocol/gitgalaxy
9
+ Project-URL: Tracker, https://github.com/squid-protocol/gitgalaxy/issues
10
+ Keywords: static-analysis,security,devsecops,visualization,ast,zero-trust,sbom,legacy-migration
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Environment :: Console
14
+ Classifier: Topic :: Security
15
+ Classifier: Topic :: Software Development :: Quality Assurance
16
+ Classifier: Topic :: Scientific/Engineering :: Visualization
17
+ Classifier: Intended Audience :: Developers
18
+ Classifier: Intended Audience :: Information Technology
19
+ Requires-Python: >=3.9
20
+ Description-Content-Type: text/markdown
21
+ License-File: LICENSE
22
+ Requires-Dist: PyYAML>=6.0
23
+ Dynamic: license-file
24
+
25
+ <div align="center">
26
+
27
+ # GitGalaxy
28
+
29
+ [Docs](https://squid-protocol.github.io/gitgalaxy/) · [Visualizer](https://gitgalaxy.io/)
30
+
31
+ [![PyPI version](https://badge.fury.io/py/gitgalaxy.svg)](https://badge.fury.io/py/gitgalaxy)
32
+ [![Python 3.09+](https://img.shields.io/badge/python-3.09+-blue.svg)](https://www.python.org/downloads/)
33
+ [![License: PolyForm Noncommercial](https://img.shields.io/badge/License-PolyForm%20Noncommercial-blue.svg)](https://polyformproject.org/licenses/noncommercial/1.0.0/)
34
+ [![Velocity](https://img.shields.io/badge/Velocity-50k+_LOC%2Fs-00C957.svg)](#)
35
+ [![Analysis](https://img.shields.io/badge/Analysis-Static_Analysis-00BFFF.svg)](#)
36
+ [![Architecture](https://img.shields.io/badge/Architecture-Zero__Trust-teal.svg)](#)
37
+
38
+ [![Zero Dependencies](https://img.shields.io/badge/Dependencies-0-brightgreen.svg)](https://pypi.org/project/gitgalaxy/)
39
+ [![Airgap Ready](https://img.shields.io/badge/Security-Airgap_Ready-teal.svg)](#)
40
+
41
+ </div>
42
+
43
+ <div align="center">
44
+
45
+ **1 scan** · **97 structural signals** · **50+ languages** · **0 need for compilation**<br>
46
+ **19 risk exposure scores** · **6 final reports** · **0 dependencies** · `pip install gitgalaxy`
47
+
48
+ </div>
49
+
50
+ <div align="center">
51
+
52
+ Gitgalaxy can assess full repos, comprised of mixes of 50+ different languages and map out the architecture, provide risk exposures and actionable fixes to lower those exposures. The graph below is a workflow from one gitgalaxy scan from on our golden test repo, which contains sample code files from the Apollo-11 1969 flight software through the modern tech stacks. [Benchmark](https://github.com/squid-protocol/language-crucible)
53
+ <img src="docs/wiki/assets/sankey_v4.3.1.png" alt="GitGalaxy Architecture Pipeline" width="100%">
54
+
55
+ </div>
56
+
57
+ <div>
58
+
59
+ ### **Whole-Repository Intelligence with a Unique Security Layer **
60
+
61
+ Gitgalaxy is a tool to determistically audit code, fast enough for the CI pipeline. Most code intelligence engines use an AST, like tree-sitter, which is offers an overly granular view of a repos (like asking to understand a house and getting a list of every brick and glass pane) and it limits the languages and files that can be scanned. Modern repos are poly-lingual. Many repos have old code without a good AST. To bypass this, Gitgalaxy uses a custom regex/lexical structural-analysis engine with a statistics layer on top — it builds a feature vector per file (from ~97 regex "signal" categories - that mark the boundaries of functions, control flow, I/O, state mutation, and dozens of other structural and security-relevant behaviors) and per repo (dependency graph via import resolution + PageRank/centrality), then transforms those raw counts into normalized 0–100 risk scores via sigmoid functions, and exports the result to six formats.
62
+
63
+ Gitgalaxy trades AST-level precision for orders-of-magnitude speed and universal language coverage, in the same spirit that [BLAST traded Smith-Waterman's](https://squid-protocol.github.io/gitgalaxy/03-01-claim-1-search-strategies/) exhaustive alignment for heuristic speed in genomics. Output includes SARIF, CycloneDX SBOM, a queryable SQLite knowledge graph, an LLM-optimized architecture brief, and 3D visualization data from a single scan pass that takes seconds.
64
+
65
+ The result is a deterministic knowledge graph of the repository, built without ever requiring the code to compile. It calculates the ratio of test code to core logic, maps each file's downstream "blast radius" through the dependency graph, and surfaces project-structure signal that line-by-line linters miss entirely. Per-file signal extraction runs in time linear to codebase size; repository-level graph metrics (centrality, community detection) use standard network-analysis algorithms with explicit sampling bounds on very large graphs.
66
+
67
+ Our unique engine allows for the unique ways to scan for several CWEs families without the need for CVE lists, which is a unique edge for our code intelligence engine.
68
+
69
+ </div>
70
+
71
+ <div>
72
+
73
+ ### Scanning Apollo-11 with the blAST Engine
74
+
75
+ ![GitGalaxy CLI Scan](https://raw.githubusercontent.com/squid-protocol/gitgalaxy/main/docs/wiki/assets/apollo11_scan.gif)
76
+
77
+ </div>
78
+
79
+ <div>
80
+
81
+ ## What GitGalaxy Finds — and What It Doesn't Claim
82
+
83
+ GitGalaxy produces two different kinds of output, and they should be read differently.
84
+
85
+ **Risk Exposure scores** are a 0–100, density-normalized signal across 19 categories
86
+ (secrets, injection surface, memory corruption, and more), rolled up from function to
87
+ file to folder to repository. A high score means *this deserves attention first* — it
88
+ is a prioritization signal, not a verdict. Two files can carry the same score for
89
+ completely different reasons: a real problem, or a legitimate pattern that looks
90
+ identical on the surface. Encrypted malware and a well-tested cryptography routine
91
+ both produce high entropy. GitGalaxy can't tell you which one it found — only that
92
+ something worth a second look is there.
93
+
94
+ **Findings** are individual, line-level flags: a specific Structural Signature that
95
+ crossed a risk threshold. These are evidence to review, not confirmed vulnerabilities.
96
+ GitGalaxy never executes code, traces runtime dataflow, or verifies exploitability —
97
+ it tells you a pattern exists in the text, at this exact line, and hands you the
98
+ context to judge it yourself.
99
+
100
+ **This is intentional, not a limitation we're hiding.** GitGalaxy is built to err
101
+ toward recall over precision: flag more, and let a human or a deeper tool narrow the
102
+ list, rather than risk staying silent on something real. False positives are the
103
+ expected cost of that trade-off, the same way they are for every static analyzer that
104
+ doesn't execute the code it reads.
105
+
106
+ That also means GitGalaxy is strongest against a specific class of problem —
107
+ **negligence, not adversarial evasion.** A hardcoded key someone forgot to remove, an
108
+ insecure registry, an obviously dangerous `eval()` call — nobody on the other end of
109
+ those is trying to hide from a scanner. A specifically motivated attacker who knows
110
+ how static, signature-based detection works can evade individual signals like entropy
111
+ thresholds without much effort. Treat GitGalaxy as the fast first pass across a
112
+ codebase too large to read by hand — not the last word on whether something is safe.
113
+
114
+ </div>
115
+
116
+ ### Weakness Classes, Not Just Known CVEs
117
+
118
+ Most dependency scanners work from a lookup table: they know a vulnerability exists
119
+ because someone found it, filed it, and it now has a CVE number in a feed. That's
120
+ useful, but it's necessarily reactive — a scanner built this way is blind to anything
121
+ that hasn't been discovered and disclosed yet, including straightforward variants of
122
+ known-bad patterns that just look slightly different from the filed instance.
123
+
124
+ GitGalaxy takes a different approach: instead of matching known instances, it matches
125
+ weakness *classes*. Its findings are tagged by CWE (Common Weakness Enumeration) —
126
+ hardcoded credentials, dynamic code execution, unsafe deserialization — not by CVE ID.
127
+ A structural signature for "dynamic execution of tainted input" catches that pattern
128
+ wherever it appears, with whatever variable names, in whatever specific arrangement —
129
+ not just the one instance someone already filed a report about.
130
+
131
+ The same philosophy extends to the SBOM layer. Rather than asking "does this package
132
+ version appear in a vulnerability database," GitGalaxy's zero-trust physical audit
133
+ asks "does this package's actual content on disk structurally match what a legitimate
134
+ version should look like" — entropy, structural fingerprint, behavioral anomaly flags.
135
+ That's how a tampered dependency gets caught on day one, before anyone has discovered
136
+ or disclosed anything, because there's no CVE to wait for.
137
+
138
+ This is a complement to CVE-feed tools (Snyk, Dependabot, OSV-Scanner), not a
139
+ replacement for them — those tools are the right answer for "is this exact known bug
140
+ present." GitGalaxy is the right answer for the wider net: weakness classes and
141
+ physical anomalies that don't require anyone to have found and filed the specific
142
+ instance first.
143
+
144
+ ### Real-World Adoption
145
+
146
+ <div align="center">
147
+
148
+ Tracking the total, deduplicated volume of fetches across PyPI, GitHub, and GitLab against our baseline control repositories.
149
+
150
+ <img src="https://raw.githubusercontent.com/squid-protocol/squid-telemetry/main/cumulative_downloads.png" alt="GitGalaxy Cumulative Downloads" width="500">
151
+
152
+ Measured without mirrors. The GitHub/PyPI breakdown lines begin partway through the window because per-source tracking was added after total-fetch tracking; the total line before that point is aggregate across all sources.
153
+ </div>
154
+
155
+ <div>
156
+
157
+ ## Benchmarks
158
+ * **[50+ Language Test Repo](https://github.com/squid-protocol/language-crucible)** and [artifacts](https://github.com/squid-protocol/language-crucible/tree/main/raw_output)
159
+ * **[Speed Results from 104 Repos](https://squid-protocol.github.io/gitgalaxy/03-01-claim-1-search-strategies/)**
160
+ * **[Cross-Language Comparisons of over 1000 repos](https://squid-protocol.github.io/gitgalaxy/03-04-claim-4-comparing-languages/):** Deterministic 1:1 benchmarking of distinct syntax architectures.
161
+ * **[Universal File Archetypes by k-means clustering](https://squid-protocol.github.io/gitgalaxy/03-05-claim-5-file-archetypes/):** ML isolation of files into K-means clusters.
162
+ * **[Mainframe Proven: 100% CI/CD Translation Success Rate](https://github.com/squid-protocol/gitgalaxy/tree/main/examples/ibm_cics_translation):** 27 out of 27 successful architectural translation of 27 distinct legacy COBOL repositories (including IBM CICS benchmark apps) into compiling Java Spring Boot environments.
163
+
164
+ </div>
165
+
166
+ <div>
167
+
168
+ ## Data Privacy & On-Premise Deployment
169
+ * 100% air-gapped execution
170
+ * On-premise deployment
171
+ * Zero-trust processing model
172
+ </div>
173
+
174
+ <div>
175
+
176
+ ## Installation & Usage
177
+ * Python-based: `pip install gitgalaxy`
178
+ * CLI execution
179
+ * **[How to add a new programming language in 1 prompt](https://github.com/squid-protocol/gitgalaxy/blob/main/gitgalaxy/standards/how_to_add_a_language.md)**
180
+ * Outputs forensic JSONs (optimized for AI-agent summary reports) and a native SQLite3 database for robust querying and storage.
181
+
182
+ ### CI/CD Integration
183
+
184
+ Drop the template for your platform straight into your pipeline — each one runs a GitGalaxy scan and can fail the build on risk-threshold or malware-signature breaches.
185
+
186
+ | Platform | Template |
187
+ |---|---|
188
+ | **GitHub Actions** | [`gitgalaxy-pipeline.yml`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/github/gitgalaxy-pipeline.yml) — see the [full integration guide](https://github.com/squid-protocol/gitgalaxy/blob/main/github-action-readme.md) |
189
+ | **GitLab CI** | [`scan.yml`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/gitlab/scan.yml) |
190
+ | **Bitbucket Pipelines** | [`bitbucket-pipelines.yml`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/bitbucket/bitbucket-pipelines.yml) + [`bitbucket_insights.py`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/bitbucket/bitbucket_insights.py) (posts findings as Bitbucket Code Insights annotations) |
191
+ | **Azure Pipelines** | [`azure-pipelines.yml`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/azure/azure-pipelines.yml) |
192
+ | **Anything else** (Jenkins, CircleCI, etc.) | [`scan.yml`](https://github.com/squid-protocol/gitgalaxy/blob/main/templates/scan.yml) — generic, shell-invocable template |
193
+
194
+ </div>
195
+
196
+
197
+
198
+ ## Enterprise Codebase Tools & Use Cases
199
+
200
+ GitGalaxy operates on a Decoupled Architecture. While the core engine provides the overarching structural mechanics and topological mapping, our specialized Decoupled Execution Controllers leverage that deterministic graph to execute enterprise-grade operations.
201
+
202
+ ### [Automated Legacy Migration: COBOL to Java Spring Boot](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/cobol_to_java/)
203
+ A deterministic, high-fidelity translation pipeline. It converts legacy COBOL into fully compiling, modern Spring Boot architectures, mapping memory exactly and scaffolding JPA entities, REST controllers, and Maven builds before utilizing AI to translate isolated business logic.
204
+ * **Proven Metric:** Achieved a perfect 27/27 Maven compile success rate across a batch test of distinct legacy repos.
205
+ * **Verify for Yourself:** [Inspect the raw outputs of the IBM CICS Application Translation here.](https://github.com/squid-protocol/gitgalaxy/tree/main/examples/ibm_cics_translation/)
206
+
207
+ ### [Mainframe Refactoring: COBOL & JCL Optimization](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/cobol_to_cobol/)
208
+ An analytical suite for sanitizing mainframe monoliths. It safely neutralizes legacy lexical traps, extracts dead execution memory, maps topological DAG execution orders, and generates Zero-Trust JCL configurations for modern cloud deployments.
209
+ * **Proven Metric:** The dead-code extraction engine removed over 6,700 lines of dead execution blocks and orphaned variables from the standard IBM CICS benchmark app in seconds.
210
+
211
+ ### [Software Supply Chain Security & Pre-Commit Firewalls](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/supply_chain_security/)
212
+ Extreme-velocity pre-commit firewalls. Instead of trusting manifest files, it scans physical internals to block steganography, byte-level XOR decryption loops, homoglyph typosquatting, and exposed cryptographic vaults before they ever enter your CI/CD pipeline. **[Deploy directly via our GitHub Action](https://github.com/squid-protocol/gitgalaxy/blob/main/github-action-readme.md).**
213
+
214
+ ### [Zero-Trust SBOM Generation & Dependency Auditing](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/compliance/)
215
+ A Zero-Trust Software Bill of Materials (SBOM) generator. It refuses to blindly trust `package.json` or `requirements.txt` files, instead locating the physical dependencies on disk, mathematically verifying their entropy and linguistic identity, and generating strict CycloneDX 1.4 JSON reports.
216
+ * **Proven Metric:** Successfully mapped and mathematically verified the physical internals of 170 unique Go modules inside the local Kubernetes repository.
217
+
218
+ ### [API Security & Shadow API Detection](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/network_auditing/)
219
+ A deterministic mapping tool that hunts undocumented vulnerabilities. It uses structural regex to find active physical routing logic (Express, Spring Boot, FastAPI) and applies set theory against official OpenAPI/Swagger documentation to isolate critical Shadow APIs and outdated Ghost APIs.
220
+
221
+ ### [High-Speed PII Detection & Log Analysis](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/terabyte_log_scanning/)
222
+ Unindexed, tactical log analysis operating at 0.07 GB/sec. It streams massive database dumps to deterministically hunt and mask PII (Credit Cards, SSNs, AWS Keys) and uses static architecture maps to prove exact runtime execution frequencies with ASCII time-series histograms.
223
+
224
+ ### [AI Agent Guardrails & Codebase Protection](https://github.com/squid-protocol/gitgalaxy/tree/main/gitgalaxy/tools/ai_guardrails/)
225
+ Specialized keyword sensors protecting both your application and your codebase. The AppSec Sensor detects weaponized LLM features (RCE funnels, exfiltration risks), while the Dev Agent Firewall evaluates token mass and blast radius to restrict autonomous coding agents from modifying dangerous or context-token-draining files. Helps identify which files need to be chunked to reduce context overload.
226
+
227
+ ## Local Browser-Based 3D Codebase Visualization
228
+
229
+ If you prefer visual analytics, we've built a topological dashboard where each file represents a node, sized and colored according to specific risk metrics.
230
+
231
+ Simply drag and drop your generated `your_repo_GPU_galaxy.json` file (or a `.zip` of your raw repository) directly into [GitGalaxy.io](https://gitgalaxy.io/). All rendering and scanning happens entirely in your browser's local memory.
232
+
233
+ ### 🔭 Watch GitGalaxy in Action
234
+
235
+ **Mapping 3.2 Million Lines of C++ in 11 Seconds | OpenCV** [![OpenCV Demo](https://img.youtube.com/vi/3ScQCSUBdZw/maxresdefault.jpg)](https://youtu.be/3ScQCSUBdZw)
236
+
237
+ ![GitGalaxy Topological Visualizer 3D graph rendering complex software repository structures and K-means clustering archetypes in the browser](https://raw.githubusercontent.com/squid-protocol/gitgalaxy/main/docs/wiki/assets/metavisualizer.png)
238
+
239
+ ## Zero-Trust Data Security
240
+
241
+ Your code never leaves your machine. GitGalaxy performs 100% of its scanning and vectorization locally.
242
+
243
+ * **No Data Transmission:** Source code is never transmitted to any API, cloud database, or third-party service.
244
+ * **Ephemeral Memory Processing:** Repositories are unpacked into a volatile memory buffer (RAM) and are automatically purged when the browser tab is closed.
245
+ * **Privacy-by-Design:** Even when using the web-based viewer, the data remains behind the user's firewall at all times.
246
+
247
+ ## ⚖️ Licensing & Usage
248
+
249
+ Copyright (c) 2026 Joe Esquibel
250
+
251
+ GitGalaxy is distributed under the **PolyForm Noncommercial License 1.0.0**.
252
+
253
+ ### 🎓 Community Free Tier (Academic, Research, & Hobbyist)
254
+ We are deeply committed to the open-source and academic communities. If you are using GitGalaxy for personal projects, academic research, or non-commercial development, the engine is 100% free to use.
255
+
256
+ To suppress the commercial licensing delays in your terminal or personal CI/CD pipelines, simply set the following environment variable:
257
+
258
+ ```bash
259
+ export GITGALAXY_LICENSE_KEY="COMMUNITY_FREE_TIER"
260
+ ```
261
+
262
+ ### 🏢 Commercial & Enterprise Use
263
+ Running GitGalaxy in corporate environments, proprietary codebases, or commercial CI/CD pipelines requires an enterprise license. Unlicensed corporate pipelines will experience intentional execution friction, and attempting to use the Community Free Tier key in a corporate environment will trigger explicit non-compliance warnings in your audit logs.
264
+
265
+ To acquire a zero-trust commercial key for your organization and ensure clean compliance logs, please contact: **joe@gitgalaxy.io**