forge-doctor-data 1.0.0__py3-none-any.whl

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 (434) hide show
  1. forge_doctor_data/__init__.py +10 -0
  2. forge_doctor_data/__main__.py +6 -0
  3. forge_doctor_data/_forge_portal.py +913 -0
  4. forge_doctor_data/_graphstudio.py +376 -0
  5. forge_doctor_data/_graphview.py +181 -0
  6. forge_doctor_data/_installkit.py +1706 -0
  7. forge_doctor_data/analyzers/__init__.py +0 -0
  8. forge_doctor_data/analyzers/abstractions.py +349 -0
  9. forge_doctor_data/analyzers/airflow_model.py +661 -0
  10. forge_doctor_data/analyzers/analytical_model.py +464 -0
  11. forge_doctor_data/analyzers/athena_model.py +326 -0
  12. forge_doctor_data/analyzers/azure_model.py +298 -0
  13. forge_doctor_data/analyzers/bigquery_model.py +449 -0
  14. forge_doctor_data/analyzers/controlm_model.py +435 -0
  15. forge_doctor_data/analyzers/databricks_model.py +304 -0
  16. forge_doctor_data/analyzers/datacontract_model.py +448 -0
  17. forge_doctor_data/analyzers/dbt_model.py +424 -0
  18. forge_doctor_data/analyzers/delta_model.py +299 -0
  19. forge_doctor_data/analyzers/dynamodb_model.py +626 -0
  20. forge_doctor_data/analyzers/emr_model.py +325 -0
  21. forge_doctor_data/analyzers/execution_adapters.py +849 -0
  22. forge_doctor_data/analyzers/flink_model.py +248 -0
  23. forge_doctor_data/analyzers/gcp_model.py +305 -0
  24. forge_doctor_data/analyzers/glue_ast.py +152 -0
  25. forge_doctor_data/analyzers/graph_model.py +311 -0
  26. forge_doctor_data/analyzers/graph_queries.py +454 -0
  27. forge_doctor_data/analyzers/hcl_lite.py +202 -0
  28. forge_doctor_data/analyzers/iceberg_model.py +471 -0
  29. forge_doctor_data/analyzers/index.py +743 -0
  30. forge_doctor_data/analyzers/kafka_model.py +324 -0
  31. forge_doctor_data/analyzers/kinesis_model.py +288 -0
  32. forge_doctor_data/analyzers/lakeformation_model.py +853 -0
  33. forge_doctor_data/analyzers/lambda_model.py +382 -0
  34. forge_doctor_data/analyzers/metadata_model.py +464 -0
  35. forge_doctor_data/analyzers/neptune_explain.py +189 -0
  36. forge_doctor_data/analyzers/neptune_model.py +671 -0
  37. forge_doctor_data/analyzers/neptune_queries.py +147 -0
  38. forge_doctor_data/analyzers/parquet_model.py +219 -0
  39. forge_doctor_data/analyzers/platform_graph_builder.py +1757 -0
  40. forge_doctor_data/analyzers/pyproject.py +100 -0
  41. forge_doctor_data/analyzers/quality_model.py +500 -0
  42. forge_doctor_data/analyzers/redshift_model.py +473 -0
  43. forge_doctor_data/analyzers/runtime_evidence.py +1200 -0
  44. forge_doctor_data/analyzers/search_model.py +492 -0
  45. forge_doctor_data/analyzers/snowflake_model.py +429 -0
  46. forge_doctor_data/analyzers/spark_ast.py +224 -0
  47. forge_doctor_data/analyzers/sql_ast.py +288 -0
  48. forge_doctor_data/analyzers/stepfunctions_model.py +334 -0
  49. forge_doctor_data/analyzers/streaming_model.py +385 -0
  50. forge_doctor_data/analyzers/streaming_runtime.py +295 -0
  51. forge_doctor_data/analyzers/terraform_model.py +229 -0
  52. forge_doctor_data/analyzers/trino_model.py +301 -0
  53. forge_doctor_data/analyzers/warehouse_model.py +590 -0
  54. forge_doctor_data/api.py +137 -0
  55. forge_doctor_data/checks/__init__.py +113 -0
  56. forge_doctor_data/checks/airflow.py +337 -0
  57. forge_doctor_data/checks/analytical.py +479 -0
  58. forge_doctor_data/checks/architecture.py +106 -0
  59. forge_doctor_data/checks/aws.py +196 -0
  60. forge_doctor_data/checks/azure.py +152 -0
  61. forge_doctor_data/checks/bigquery.py +338 -0
  62. forge_doctor_data/checks/ci.py +213 -0
  63. forge_doctor_data/checks/cloud.py +139 -0
  64. forge_doctor_data/checks/controlm.py +293 -0
  65. forge_doctor_data/checks/datacontract.py +163 -0
  66. forge_doctor_data/checks/dbt.py +205 -0
  67. forge_doctor_data/checks/dependencies.py +308 -0
  68. forge_doctor_data/checks/docker.py +217 -0
  69. forge_doctor_data/checks/dynamodb.py +696 -0
  70. forge_doctor_data/checks/gcp.py +150 -0
  71. forge_doctor_data/checks/git_checks.py +126 -0
  72. forge_doctor_data/checks/glue.py +203 -0
  73. forge_doctor_data/checks/graph.py +639 -0
  74. forge_doctor_data/checks/iac.py +266 -0
  75. forge_doctor_data/checks/iceberg.py +491 -0
  76. forge_doctor_data/checks/lakeformation.py +501 -0
  77. forge_doctor_data/checks/metadata.py +315 -0
  78. forge_doctor_data/checks/neptune.py +843 -0
  79. forge_doctor_data/checks/parquet.py +226 -0
  80. forge_doctor_data/checks/platform_rules.py +873 -0
  81. forge_doctor_data/checks/platforms.py +588 -0
  82. forge_doctor_data/checks/policy_pack.py +45 -0
  83. forge_doctor_data/checks/python_env.py +254 -0
  84. forge_doctor_data/checks/quality.py +252 -0
  85. forge_doctor_data/checks/redshift.py +342 -0
  86. forge_doctor_data/checks/repository.py +255 -0
  87. forge_doctor_data/checks/search.py +221 -0
  88. forge_doctor_data/checks/serverless.py +537 -0
  89. forge_doctor_data/checks/snowflake.py +255 -0
  90. forge_doctor_data/checks/spark.py +419 -0
  91. forge_doctor_data/checks/sql.py +135 -0
  92. forge_doctor_data/checks/stepfunctions.py +239 -0
  93. forge_doctor_data/checks/streaming.py +234 -0
  94. forge_doctor_data/checks/streaming_bus.py +512 -0
  95. forge_doctor_data/checks/terraform.py +289 -0
  96. forge_doctor_data/checks/trino.py +226 -0
  97. forge_doctor_data/checks/warehouse.py +158 -0
  98. forge_doctor_data/cli/__init__.py +228 -0
  99. forge_doctor_data/cli/advise.py +74 -0
  100. forge_doctor_data/cli/agent.py +79 -0
  101. forge_doctor_data/cli/airflow.py +108 -0
  102. forge_doctor_data/cli/analytical.py +71 -0
  103. forge_doctor_data/cli/app.py +64 -0
  104. forge_doctor_data/cli/bench.py +97 -0
  105. forge_doctor_data/cli/bigquery.py +67 -0
  106. forge_doctor_data/cli/capabilities.py +233 -0
  107. forge_doctor_data/cli/catalog.py +57 -0
  108. forge_doctor_data/cli/cloud.py +61 -0
  109. forge_doctor_data/cli/collector.py +38 -0
  110. forge_doctor_data/cli/common.py +867 -0
  111. forge_doctor_data/cli/compatibility.py +211 -0
  112. forge_doctor_data/cli/contract.py +147 -0
  113. forge_doctor_data/cli/controlm.py +127 -0
  114. forge_doctor_data/cli/datamodel.py +92 -0
  115. forge_doctor_data/cli/dbt.py +80 -0
  116. forge_doctor_data/cli/diff.py +320 -0
  117. forge_doctor_data/cli/dynamodb.py +189 -0
  118. forge_doctor_data/cli/export.py +39 -0
  119. forge_doctor_data/cli/fix.py +153 -0
  120. forge_doctor_data/cli/fleet.py +488 -0
  121. forge_doctor_data/cli/golden.py +112 -0
  122. forge_doctor_data/cli/graph.py +229 -0
  123. forge_doctor_data/cli/history.py +213 -0
  124. forge_doctor_data/cli/hosts.py +52 -0
  125. forge_doctor_data/cli/iceberg.py +223 -0
  126. forge_doctor_data/cli/incident.py +159 -0
  127. forge_doctor_data/cli/inspect.py +79 -0
  128. forge_doctor_data/cli/install_cmd.py +277 -0
  129. forge_doctor_data/cli/lab.py +323 -0
  130. forge_doctor_data/cli/lakeformation.py +194 -0
  131. forge_doctor_data/cli/misc.py +1360 -0
  132. forge_doctor_data/cli/neptune.py +213 -0
  133. forge_doctor_data/cli/optimize.py +181 -0
  134. forge_doctor_data/cli/parquet.py +70 -0
  135. forge_doctor_data/cli/platform.py +123 -0
  136. forge_doctor_data/cli/platforms.py +190 -0
  137. forge_doctor_data/cli/plugins.py +223 -0
  138. forge_doctor_data/cli/policy.py +230 -0
  139. forge_doctor_data/cli/portal.py +75 -0
  140. forge_doctor_data/cli/project.py +83 -0
  141. forge_doctor_data/cli/quality.py +71 -0
  142. forge_doctor_data/cli/redshift.py +74 -0
  143. forge_doctor_data/cli/reliability.py +125 -0
  144. forge_doctor_data/cli/remediate.py +86 -0
  145. forge_doctor_data/cli/rootcause.py +129 -0
  146. forge_doctor_data/cli/runtime.py +780 -0
  147. forge_doctor_data/cli/scan.py +269 -0
  148. forge_doctor_data/cli/search.py +78 -0
  149. forge_doctor_data/cli/serverless.py +136 -0
  150. forge_doctor_data/cli/snowflake.py +74 -0
  151. forge_doctor_data/cli/stepfunctions.py +89 -0
  152. forge_doctor_data/cli/streaming.py +182 -0
  153. forge_doctor_data/cli/streaming_bus.py +177 -0
  154. forge_doctor_data/cli/terraform.py +111 -0
  155. forge_doctor_data/cli/trino.py +64 -0
  156. forge_doctor_data/cli/twin.py +297 -0
  157. forge_doctor_data/cli/whatif.py +291 -0
  158. forge_doctor_data/cli/workspace.py +285 -0
  159. forge_doctor_data/contracts/__init__.py +55 -0
  160. forge_doctor_data/contracts/fixtures/capability.json +10 -0
  161. forge_doctor_data/contracts/fixtures/diagnostic-manifest.json +32 -0
  162. forge_doctor_data/contracts/fixtures/entity.json +13 -0
  163. forge_doctor_data/contracts/fixtures/evidence.json +7 -0
  164. forge_doctor_data/contracts/fixtures/finding.json +18 -0
  165. forge_doctor_data/contracts/fixtures/handoff.json +78 -0
  166. forge_doctor_data/contracts/fixtures/migration-plan.json +15 -0
  167. forge_doctor_data/contracts/fixtures/relationship.json +8 -0
  168. forge_doctor_data/contracts/fixtures/remediation-plan.json +16 -0
  169. forge_doctor_data/contracts/fixtures/unknown-fact.json +8 -0
  170. forge_doctor_data/contracts/models.py +668 -0
  171. forge_doctor_data/contracts/schemas.py +231 -0
  172. forge_doctor_data/contracts/version.py +63 -0
  173. forge_doctor_data/core/__init__.py +0 -0
  174. forge_doctor_data/core/agent_context.py +235 -0
  175. forge_doctor_data/core/baseline.py +136 -0
  176. forge_doctor_data/core/bench.py +216 -0
  177. forge_doctor_data/core/cache.py +212 -0
  178. forge_doctor_data/core/capabilities.py +630 -0
  179. forge_doctor_data/core/capability_deps.py +435 -0
  180. forge_doctor_data/core/capability_graph.py +131 -0
  181. forge_doctor_data/core/capacity.py +481 -0
  182. forge_doctor_data/core/change_correlation.py +510 -0
  183. forge_doctor_data/core/change_intel.py +203 -0
  184. forge_doctor_data/core/collectors.py +102 -0
  185. forge_doctor_data/core/compat.py +133 -0
  186. forge_doctor_data/core/config.py +216 -0
  187. forge_doctor_data/core/conformance.py +161 -0
  188. forge_doctor_data/core/context.py +222 -0
  189. forge_doctor_data/core/contract.py +822 -0
  190. forge_doctor_data/core/contract_adapters.py +106 -0
  191. forge_doctor_data/core/contract_check.py +100 -0
  192. forge_doctor_data/core/cost_drivers.py +717 -0
  193. forge_doctor_data/core/critical_path.py +505 -0
  194. forge_doctor_data/core/crossdomain.py +140 -0
  195. forge_doctor_data/core/crossmigration.py +444 -0
  196. forge_doctor_data/core/decisions.py +198 -0
  197. forge_doctor_data/core/delivery.py +171 -0
  198. forge_doctor_data/core/diagnose.py +231 -0
  199. forge_doctor_data/core/diagnosis.py +673 -0
  200. forge_doctor_data/core/errors.py +5 -0
  201. forge_doctor_data/core/execution_history.py +664 -0
  202. forge_doctor_data/core/execution_model.py +344 -0
  203. forge_doctor_data/core/execution_store.py +104 -0
  204. forge_doctor_data/core/experiments/__init__.py +46 -0
  205. forge_doctor_data/core/experiments/fixture.py +264 -0
  206. forge_doctor_data/core/experiments/measured.py +450 -0
  207. forge_doctor_data/core/experiments_v2.py +33 -0
  208. forge_doctor_data/core/fingerprint.py +205 -0
  209. forge_doctor_data/core/fixes.py +357 -0
  210. forge_doctor_data/core/fleet.py +143 -0
  211. forge_doctor_data/core/forger.py +81 -0
  212. forge_doctor_data/core/golden.py +266 -0
  213. forge_doctor_data/core/graph.py +159 -0
  214. forge_doctor_data/core/handoff.py +62 -0
  215. forge_doctor_data/core/history.py +268 -0
  216. forge_doctor_data/core/incident.py +491 -0
  217. forge_doctor_data/core/incremental.py +404 -0
  218. forge_doctor_data/core/knowledge.py +609 -0
  219. forge_doctor_data/core/lab.py +868 -0
  220. forge_doctor_data/core/lineage.py +262 -0
  221. forge_doctor_data/core/metrics.py +131 -0
  222. forge_doctor_data/core/migration/__init__.py +42 -0
  223. forge_doctor_data/core/migration/cross_platform.py +541 -0
  224. forge_doctor_data/core/migration/platform.py +341 -0
  225. forge_doctor_data/core/migration_v2.py +36 -0
  226. forge_doctor_data/core/models.py +187 -0
  227. forge_doctor_data/core/ontology.py +256 -0
  228. forge_doctor_data/core/optimization/__init__.py +34 -0
  229. forge_doctor_data/core/optimization/evidence.py +497 -0
  230. forge_doctor_data/core/optimization/static.py +219 -0
  231. forge_doctor_data/core/optimize.py +10 -0
  232. forge_doctor_data/core/optimize_v2.py +27 -0
  233. forge_doctor_data/core/performance.py +743 -0
  234. forge_doctor_data/core/physical_design.py +252 -0
  235. forge_doctor_data/core/platform_graph.py +244 -0
  236. forge_doctor_data/core/platform_ontology.py +1163 -0
  237. forge_doctor_data/core/policy.py +137 -0
  238. forge_doctor_data/core/policy_pack.py +522 -0
  239. forge_doctor_data/core/portfolio.py +626 -0
  240. forge_doctor_data/core/profiles.py +63 -0
  241. forge_doctor_data/core/project_info.py +79 -0
  242. forge_doctor_data/core/project_status.py +205 -0
  243. forge_doctor_data/core/registry.py +48 -0
  244. forge_doctor_data/core/regression.py +540 -0
  245. forge_doctor_data/core/reliability.py +757 -0
  246. forge_doctor_data/core/remediation.py +177 -0
  247. forge_doctor_data/core/runner.py +158 -0
  248. forge_doctor_data/core/runtime_evidence.py +119 -0
  249. forge_doctor_data/core/sbom.py +261 -0
  250. forge_doctor_data/core/scaffold.py +129 -0
  251. forge_doctor_data/core/schema.py +241 -0
  252. forge_doctor_data/core/schema_compat.py +504 -0
  253. forge_doctor_data/core/schemas.py +464 -0
  254. forge_doctor_data/core/semantic_diff.py +352 -0
  255. forge_doctor_data/core/service.py +272 -0
  256. forge_doctor_data/core/spark_runtime.py +352 -0
  257. forge_doctor_data/core/sql_portability.py +342 -0
  258. forge_doctor_data/core/traversal.py +56 -0
  259. forge_doctor_data/core/trends.py +175 -0
  260. forge_doctor_data/core/twin.py +197 -0
  261. forge_doctor_data/core/twin_states.py +528 -0
  262. forge_doctor_data/core/whatif.py +411 -0
  263. forge_doctor_data/core/workspace.py +314 -0
  264. forge_doctor_data/graphview.py +77 -0
  265. forge_doctor_data/install/__init__.py +14 -0
  266. forge_doctor_data/install/service.py +337 -0
  267. forge_doctor_data/integrations/__init__.py +1 -0
  268. forge_doctor_data/integrations/hostflow.py +259 -0
  269. forge_doctor_data/integrations/lsp_server.py +197 -0
  270. forge_doctor_data/integrations/mcp_protocol.py +126 -0
  271. forge_doctor_data/integrations/mcp_server.py +653 -0
  272. forge_doctor_data/knowledge/airflow/objects.json +52 -0
  273. forge_doctor_data/knowledge/athena/engines.json +27 -0
  274. forge_doctor_data/knowledge/capabilities/adls.json +43 -0
  275. forge_doctor_data/knowledge/capabilities/athena.json +72 -0
  276. forge_doctor_data/knowledge/capabilities/azure_fabric.json +33 -0
  277. forge_doctor_data/knowledge/capabilities/bigquery.json +75 -0
  278. forge_doctor_data/knowledge/capabilities/cloud.json +180 -0
  279. forge_doctor_data/knowledge/capabilities/databricks.json +55 -0
  280. forge_doctor_data/knowledge/capabilities/dataflow.json +33 -0
  281. forge_doctor_data/knowledge/capabilities/dataplex.json +33 -0
  282. forge_doctor_data/knowledge/capabilities/dataproc.json +33 -0
  283. forge_doctor_data/knowledge/capabilities/delta.json +120 -0
  284. forge_doctor_data/knowledge/capabilities/dynamodb.json +154 -0
  285. forge_doctor_data/knowledge/capabilities/emr.json +57 -0
  286. forge_doctor_data/knowledge/capabilities/eventhubs.json +33 -0
  287. forge_doctor_data/knowledge/capabilities/flink.json +41 -0
  288. forge_doctor_data/knowledge/capabilities/glue.json +83 -0
  289. forge_doctor_data/knowledge/capabilities/graph.json +83 -0
  290. forge_doctor_data/knowledge/capabilities/iceberg.json +60 -0
  291. forge_doctor_data/knowledge/capabilities/kafka.json +48 -0
  292. forge_doctor_data/knowledge/capabilities/kinesis.json +41 -0
  293. forge_doctor_data/knowledge/capabilities/lakeformation.json +91 -0
  294. forge_doctor_data/knowledge/capabilities/lambda.json +56 -0
  295. forge_doctor_data/knowledge/capabilities/neptune.json +128 -0
  296. forge_doctor_data/knowledge/capabilities/pubsub.json +41 -0
  297. forge_doctor_data/knowledge/capabilities/purview.json +33 -0
  298. forge_doctor_data/knowledge/capabilities/redshift.json +83 -0
  299. forge_doctor_data/knowledge/capabilities/search.json +90 -0
  300. forge_doctor_data/knowledge/capabilities/snowflake.json +83 -0
  301. forge_doctor_data/knowledge/capabilities/synapse.json +33 -0
  302. forge_doctor_data/knowledge/capabilities/trino.json +125 -0
  303. forge_doctor_data/knowledge/capabilities/warehouse.json +80 -0
  304. forge_doctor_data/knowledge/capacity/bigquery.json +30 -0
  305. forge_doctor_data/knowledge/capacity/redshift.json +29 -0
  306. forge_doctor_data/knowledge/capacity/snowflake.json +31 -0
  307. forge_doctor_data/knowledge/capacity/trino.json +29 -0
  308. forge_doctor_data/knowledge/controlm/objects.json +82 -0
  309. forge_doctor_data/knowledge/cost_drivers/drivers.json +52 -0
  310. forge_doctor_data/knowledge/cost_drivers/thresholds.json +35 -0
  311. forge_doctor_data/knowledge/databricks/runtime.json +47 -0
  312. forge_doctor_data/knowledge/delta/features.json +48 -0
  313. forge_doctor_data/knowledge/dynamodb/global-tables.json +33 -0
  314. forge_doctor_data/knowledge/dynamodb/indexes.json +38 -0
  315. forge_doctor_data/knowledge/dynamodb/limits.json +32 -0
  316. forge_doctor_data/knowledge/dynamodb/modeling.json +33 -0
  317. forge_doctor_data/knowledge/dynamodb/streams.json +33 -0
  318. forge_doctor_data/knowledge/dynamodb/transactions.json +33 -0
  319. forge_doctor_data/knowledge/emr/releases.json +36 -0
  320. forge_doctor_data/knowledge/errors/airflow.json +100 -0
  321. forge_doctor_data/knowledge/errors/controlm.json +101 -0
  322. forge_doctor_data/knowledge/errors/databricks.json +69 -0
  323. forge_doctor_data/knowledge/errors/glue.json +134 -0
  324. forge_doctor_data/knowledge/errors/iceberg.json +67 -0
  325. forge_doctor_data/knowledge/errors/python.json +115 -0
  326. forge_doctor_data/knowledge/errors/spark.json +195 -0
  327. forge_doctor_data/knowledge/flink/config.json +33 -0
  328. forge_doctor_data/knowledge/glue/compatibility.json +68 -0
  329. forge_doctor_data/knowledge/glue/versions.json +58 -0
  330. forge_doctor_data/knowledge/graph/algorithms.json +21 -0
  331. forge_doctor_data/knowledge/graph/modeling.json +38 -0
  332. forge_doctor_data/knowledge/graph/property-graph.json +39 -0
  333. forge_doctor_data/knowledge/graph/rdf.json +32 -0
  334. forge_doctor_data/knowledge/iceberg/compatibility.json +60 -0
  335. forge_doctor_data/knowledge/iceberg/spec.json +58 -0
  336. forge_doctor_data/knowledge/iceberg/versions.json +40 -0
  337. forge_doctor_data/knowledge/kafka/config.json +50 -0
  338. forge_doctor_data/knowledge/kinesis/config.json +33 -0
  339. forge_doctor_data/knowledge/lakeformation/cross-account.json +37 -0
  340. forge_doctor_data/knowledge/lakeformation/errors.json +240 -0
  341. forge_doctor_data/knowledge/lakeformation/hybrid.json +27 -0
  342. forge_doctor_data/knowledge/lakeformation/permissions.json +67 -0
  343. forge_doctor_data/knowledge/lambda/runtimes.json +27 -0
  344. forge_doctor_data/knowledge/neptune/analytics.json +22 -0
  345. forge_doctor_data/knowledge/neptune/bulk-loader.json +26 -0
  346. forge_doctor_data/knowledge/neptune/compatibility.json +22 -0
  347. forge_doctor_data/knowledge/neptune/engines.json +22 -0
  348. forge_doctor_data/knowledge/neptune/explain.json +22 -0
  349. forge_doctor_data/knowledge/neptune/features.json +28 -0
  350. forge_doctor_data/knowledge/neptune/global-database.json +21 -0
  351. forge_doctor_data/knowledge/neptune/ingestion.json +21 -0
  352. forge_doctor_data/knowledge/neptune/products.json +22 -0
  353. forge_doctor_data/knowledge/neptune/query-languages.json +33 -0
  354. forge_doctor_data/knowledge/parquet/format.json +22 -0
  355. forge_doctor_data/knowledge/performance/engines.json +95 -0
  356. forge_doctor_data/knowledge/performance/regression.json +38 -0
  357. forge_doctor_data/knowledge/performance/thresholds.json +51 -0
  358. forge_doctor_data/knowledge/python/compatibility.json +21 -0
  359. forge_doctor_data/knowledge/reliability/engines.json +65 -0
  360. forge_doctor_data/knowledge/remediation/chains.json +157 -0
  361. forge_doctor_data/knowledge/remediation/iceberg.json +167 -0
  362. forge_doctor_data/knowledge/remediation/parquet.json +133 -0
  363. forge_doctor_data/knowledge/remediation/platform.json +96 -0
  364. forge_doctor_data/knowledge/remediation/spark.json +160 -0
  365. forge_doctor_data/knowledge/remediation/streaming.json +106 -0
  366. forge_doctor_data/knowledge/spark/versions.json +27 -0
  367. forge_doctor_data/knowledge/stepfunctions/integrations.json +20 -0
  368. forge_doctor_data/knowledge/stepfunctions/query-languages.json +47 -0
  369. forge_doctor_data/knowledge/streaming/delivery.json +59 -0
  370. forge_doctor_data/knowledge/streaming/spark/stateful_ops.json +22 -0
  371. forge_doctor_data/knowledge/terraform/language.json +31 -0
  372. forge_doctor_data/knowledge/terraform/providers.json +36 -0
  373. forge_doctor_data/output/__init__.py +0 -0
  374. forge_doctor_data/output/agent_renderer.py +53 -0
  375. forge_doctor_data/output/console.py +252 -0
  376. forge_doctor_data/output/html_renderer.py +25 -0
  377. forge_doctor_data/output/json_renderer.py +105 -0
  378. forge_doctor_data/output/sarif_renderer.py +103 -0
  379. forge_doctor_data/output/summary.py +28 -0
  380. forge_doctor_data/plugins/__init__.py +0 -0
  381. forge_doctor_data/plugins/discovery.py +359 -0
  382. forge_doctor_data/plugins/isolation.py +291 -0
  383. forge_doctor_data/plugins/manager.py +276 -0
  384. forge_doctor_data/plugins/protocol.py +176 -0
  385. forge_doctor_data/portal_adapter.py +750 -0
  386. forge_doctor_data/portal_assets/chunk-7_l-b4Tr.js +1 -0
  387. forge_doctor_data/portal_assets/chunk-B0Iad6pD.js +1 -0
  388. forge_doctor_data/portal_assets/chunk-B605XnCF.js +1 -0
  389. forge_doctor_data/portal_assets/chunk-B7N3TXcn.js +1 -0
  390. forge_doctor_data/portal_assets/chunk-BAj6yGem.js +1 -0
  391. forge_doctor_data/portal_assets/chunk-BGUitn2r.js +1 -0
  392. forge_doctor_data/portal_assets/chunk-BVKnCv85.js +1 -0
  393. forge_doctor_data/portal_assets/chunk-BYyM9V_w.js +1 -0
  394. forge_doctor_data/portal_assets/chunk-BaQMhq-G.js +1 -0
  395. forge_doctor_data/portal_assets/chunk-BavOrxVm.js +1 -0
  396. forge_doctor_data/portal_assets/chunk-Bb0C24YV.js +1 -0
  397. forge_doctor_data/portal_assets/chunk-BfCFGPzs.js +1 -0
  398. forge_doctor_data/portal_assets/chunk-C2t4OUVu.js +1 -0
  399. forge_doctor_data/portal_assets/chunk-C3pI4QjU.js +1 -0
  400. forge_doctor_data/portal_assets/chunk-C4gpbtbP.js +1 -0
  401. forge_doctor_data/portal_assets/chunk-CGWeHhKY.js +1 -0
  402. forge_doctor_data/portal_assets/chunk-CJCT86Dr.js +1 -0
  403. forge_doctor_data/portal_assets/chunk-CXcsLDPJ.js +1 -0
  404. forge_doctor_data/portal_assets/chunk-CcjxoLxw.js +1 -0
  405. forge_doctor_data/portal_assets/chunk-D-gBPXHa.js +1 -0
  406. forge_doctor_data/portal_assets/chunk-D3eZogIe.js +1 -0
  407. forge_doctor_data/portal_assets/chunk-DQU0VyoQ.js +1 -0
  408. forge_doctor_data/portal_assets/chunk-DqWNkF1O.js +1 -0
  409. forge_doctor_data/portal_assets/chunk-DuPPkSIE.js +3 -0
  410. forge_doctor_data/portal_assets/chunk-DyIHOW_a.js +1 -0
  411. forge_doctor_data/portal_assets/chunk-Fx4zSGL5.js +1 -0
  412. forge_doctor_data/portal_assets/chunk-UBKt05Rg.js +1 -0
  413. forge_doctor_data/portal_assets/chunk-htnJDQEY.js +1 -0
  414. forge_doctor_data/portal_assets/chunk-kXRFMGqe.js +1 -0
  415. forge_doctor_data/portal_assets/chunk-qe3u763a.js +1 -0
  416. forge_doctor_data/portal_assets/favicon.ico +0 -0
  417. forge_doctor_data/portal_assets/index.html +13 -0
  418. forge_doctor_data/portal_assets/main-QDFVZK3T.js +5 -0
  419. forge_doctor_data/portal_assets/styles-MQEBDFDX.css +1 -0
  420. forge_doctor_data/sdk.py +64 -0
  421. forge_doctor_data/ui/__init__.py +28 -0
  422. forge_doctor_data/ui/app.py +529 -0
  423. forge_doctor_data/ui/home.py +114 -0
  424. forge_doctor_data/ui/i18n.py +143 -0
  425. forge_doctor_data/ui/kit.py +689 -0
  426. forge_doctor_data/ui/screen.py +648 -0
  427. forge_doctor_data/ui/tui.py +106 -0
  428. forge_doctor_data/ui/wizard.py +309 -0
  429. forge_doctor_data/version.py +5 -0
  430. forge_doctor_data-1.0.0.dist-info/METADATA +548 -0
  431. forge_doctor_data-1.0.0.dist-info/RECORD +434 -0
  432. forge_doctor_data-1.0.0.dist-info/WHEEL +4 -0
  433. forge_doctor_data-1.0.0.dist-info/entry_points.txt +3 -0
  434. forge_doctor_data-1.0.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,10 @@
1
+ """Forge Doctor Data - deterministic diagnostics for data engineering projects."""
2
+
3
+ from importlib.metadata import PackageNotFoundError
4
+ from importlib.metadata import version as _dist_version
5
+
6
+ try:
7
+ # Single source of truth: the [project] version in pyproject.toml.
8
+ __version__ = _dist_version("forge-doctor-data")
9
+ except PackageNotFoundError: # src tree without install (editable checkouts)
10
+ __version__ = "1.0.0"
@@ -0,0 +1,6 @@
1
+ """Allow ``python -m forge_doctor_data``."""
2
+
3
+ from forge_doctor_data.cli import app
4
+
5
+ if __name__ == "__main__":
6
+ app()