gapless-crypto-data 2.2.0__tar.gz → 2.5.0__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 (166) hide show
  1. gapless_crypto_data-2.5.0/.claude/settings.local.json +19 -0
  2. gapless_crypto_data-2.5.0/.gapless_checkpoints/joblib_cache/.gitignore +2 -0
  3. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183058_36e7d2ec.json +36 -0
  4. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183100_7e130f98.json +37 -0
  5. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183101_515b4690.json +43 -0
  6. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183103_828c36f1.json +36 -0
  7. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183117_9d842ca2.json +36 -0
  8. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183118_35b71e32.json +37 -0
  9. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183120_e201f120.json +43 -0
  10. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183121_7aa0a4fd.json +36 -0
  11. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183841_63564a52.json +36 -0
  12. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183843_01458e87.json +37 -0
  13. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183844_30f0e3c0.json +43 -0
  14. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_183846_8c1e44b4.json +36 -0
  15. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_184500_9b6f812c.json +36 -0
  16. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_184502_ae48d84a.json +37 -0
  17. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_184503_b094245f.json +43 -0
  18. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_184505_665fb523.json +36 -0
  19. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_184510_fe5d92fa.json +36 -0
  20. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_185913_7e391e5f.json +36 -0
  21. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_185915_9eeeaea3.json +37 -0
  22. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_185917_315392bf.json +43 -0
  23. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_185918_82d9bb0d.json +36 -0
  24. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_190357_002f8cec.json +36 -0
  25. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_190358_be23058d.json +37 -0
  26. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_190359_c676ca87.json +43 -0
  27. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_190401_ccacb147.json +36 -0
  28. gapless_crypto_data-2.5.0/.gapless_checkpoints/progress_report_20250917_190406_d23113c8.json +36 -0
  29. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183058_36e7d2ec.json +22 -0
  30. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183100_7e130f98.json +23 -0
  31. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183101_515b4690.json +29 -0
  32. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183103_828c36f1.json +22 -0
  33. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183117_9d842ca2.json +22 -0
  34. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183118_35b71e32.json +23 -0
  35. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183120_e201f120.json +29 -0
  36. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183121_7aa0a4fd.json +22 -0
  37. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183841_63564a52.json +22 -0
  38. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183843_01458e87.json +23 -0
  39. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183844_30f0e3c0.json +29 -0
  40. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_183846_8c1e44b4.json +22 -0
  41. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_184500_9b6f812c.json +22 -0
  42. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_184502_ae48d84a.json +23 -0
  43. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_184503_b094245f.json +29 -0
  44. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_184505_665fb523.json +22 -0
  45. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_184510_fe5d92fa.json +22 -0
  46. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_185913_7e391e5f.json +22 -0
  47. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_185915_9eeeaea3.json +23 -0
  48. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_185917_315392bf.json +29 -0
  49. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_185918_82d9bb0d.json +22 -0
  50. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_190357_002f8cec.json +22 -0
  51. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_190358_be23058d.json +23 -0
  52. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_190359_c676ca87.json +29 -0
  53. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_190401_ccacb147.json +22 -0
  54. gapless_crypto_data-2.5.0/.gapless_checkpoints/session_20250917_190406_d23113c8.json +22 -0
  55. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/.github/workflows/ci-cd.yml +53 -50
  56. gapless_crypto_data-2.5.0/.github/workflows/publish.yml +108 -0
  57. gapless_crypto_data-2.5.0/.pre-commit-config.yaml +42 -0
  58. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/CLAUDE.md +0 -0
  59. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/PKG-INFO +190 -3
  60. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/README.md +184 -0
  61. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/RELEASE_NOTES.md +1 -1
  62. gapless_crypto_data-2.5.0/docs/CURRENT_ARCHITECTURE_STATUS.yaml +176 -0
  63. gapless_crypto_data-2.5.0/docs/MILESTONE_v2.5.0.yaml +228 -0
  64. gapless_crypto_data-2.5.0/docs/archive/MILESTONE_v2.3.0.yaml +139 -0
  65. gapless_crypto_data-2.5.0/docs/archive/MILESTONE_v2.4.0.yaml +142 -0
  66. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/README.md +4 -4
  67. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/pyproject.toml +8 -3
  68. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/__init__.py +20 -5
  69. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/cli.py +218 -63
  70. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/collectors/binance_public_data_collector.py +247 -83
  71. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/gap_filling/safe_file_operations.py +151 -4
  72. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/gap_filling/universal_gap_filler.py +64 -6
  73. gapless_crypto_data-2.5.0/src/gapless_crypto_data/regression/__init__.py +13 -0
  74. gapless_crypto_data-2.5.0/src/gapless_crypto_data/regression/regression_detector.py +513 -0
  75. gapless_crypto_data-2.5.0/src/gapless_crypto_data/resume/__init__.py +12 -0
  76. gapless_crypto_data-2.5.0/src/gapless_crypto_data/resume/intelligent_checkpointing.py +379 -0
  77. gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240101_v2.5.0.csv +35 -0
  78. gapless_crypto_data-2.2.0/adversarial_test_output/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.metadata.json → gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240101_v2.5.0.metadata.json +6 -5
  79. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240102_0.0y.csv → gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240102_v2.5.0.csv +2 -2
  80. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240102_0.0y.metadata.json → gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240102_v2.5.0.metadata.json +4 -4
  81. gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-4h_20240101-20240101_v2.5.0.csv +17 -0
  82. gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-4h_20240101-20240101_v2.5.0.metadata.json +101 -0
  83. gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1h_20240101-20240101_v2.5.0.csv +35 -0
  84. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.metadata.json → gapless_crypto_data-2.5.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1h_20240101-20240101_v2.5.0.metadata.json +27 -10
  85. gapless_crypto_data-2.5.0/src/gapless_crypto_data/streaming/__init__.py +13 -0
  86. gapless_crypto_data-2.5.0/src/gapless_crypto_data/streaming/memory_streaming.py +330 -0
  87. gapless_crypto_data-2.5.0/src/gapless_crypto_data/utils/__init__.py +29 -0
  88. gapless_crypto_data-2.5.0/src/gapless_crypto_data/utils/error_handling.py +202 -0
  89. gapless_crypto_data-2.5.0/test_data/binance_spot_BTCUSDT-1h_20240101-20240101_v2.5.0.csv +35 -0
  90. gapless_crypto_data-2.2.0/test_py_output/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.metadata.json → gapless_crypto_data-2.5.0/test_data/binance_spot_BTCUSDT-1h_20240101-20240101_v2.5.0.metadata.json +7 -6
  91. gapless_crypto_data-2.5.0/test_data_large/binance_spot_BTCUSDT-1h_20140101-20240101_v2.5.0.csv +55872 -0
  92. gapless_crypto_data-2.5.0/test_data_large/binance_spot_BTCUSDT-1h_20140101-20240101_v2.5.0.metadata.json +162 -0
  93. gapless_crypto_data-2.5.0/test_data_large/binance_spot_BTCUSDT-1h_20140101-20240101_v2.5.0_gapped.csv.bak +55776 -0
  94. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_binance_collector.py +1 -1
  95. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_cli.py +5 -1
  96. gapless_crypto_data-2.5.0/tests/test_cli_integration.py +446 -0
  97. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_gap_filler.py +21 -21
  98. gapless_crypto_data-2.5.0/tests/test_regression.py +316 -0
  99. gapless_crypto_data-2.5.0/tests/test_streaming.py +334 -0
  100. gapless_crypto_data-2.5.0/uv.lock +2310 -0
  101. gapless_crypto_data-2.2.0/.github/workflows/publish.yml +0 -118
  102. gapless_crypto_data-2.2.0/.pre-commit-config.yaml +0 -63
  103. gapless_crypto_data-2.2.0/adversarial_test_output/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.csv +0 -3
  104. gapless_crypto_data-2.2.0/adversarial_test_output/test_with_gaps.csv +0 -3
  105. gapless_crypto_data-2.2.0/src/gapless_crypto_data/exchanges/__init__.py +0 -1
  106. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.csv +0 -3
  107. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20250831-20250831_0.0y.csv +0 -3
  108. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-1h_20250831-20250831_0.0y.metadata.json +0 -69
  109. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-4h_20250831-20250831_0.0y.csv +0 -3
  110. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_BTCUSDT-4h_20250831-20250831_0.0y.metadata.json +0 -69
  111. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-1h_20240801-20240801_0.0y.csv +0 -3
  112. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-1h_20240801-20240801_0.0y.metadata.json +0 -84
  113. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-1h_20250831-20250831_0.0y.csv +0 -3
  114. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-1h_20250831-20250831_0.0y.metadata.json +0 -69
  115. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-4h_20250831-20250831_0.0y.csv +0 -3
  116. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_ETHUSDT-4h_20250831-20250831_0.0y.metadata.json +0 -69
  117. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-15m_20220101-20220101_0.0y.csv +0 -3
  118. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-15m_20220101-20220101_0.0y.metadata.json +0 -83
  119. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-15m_20230320-20230328_0.0y.csv +0 -3
  120. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-15m_20230320-20230328_0.0y.metadata.json +0 -86
  121. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1h_20220901-20250831_3.0y.metadata.json +0 -125
  122. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1h_20230320-20230328_0.0y.csv +0 -3
  123. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1h_20230320-20230328_0.0y.metadata.json +0 -86
  124. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1m_20230320-20230328_0.0y.csv +0 -3
  125. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-1m_20230320-20230328_0.0y.metadata.json +0 -86
  126. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-2h_20230320-20230328_0.0y.csv +0 -3
  127. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-2h_20230320-20230328_0.0y.metadata.json +0 -86
  128. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-30m_20230320-20230328_0.0y.csv +0 -3
  129. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-30m_20230320-20230328_0.0y.metadata.json +0 -86
  130. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-3m_20230320-20230328_0.0y.csv +0 -3
  131. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-3m_20230320-20230328_0.0y.metadata.json +0 -86
  132. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-4h_20230320-20230328_0.0y.csv +0 -3
  133. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-4h_20230320-20230328_0.0y.metadata.json +0 -86
  134. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-5m_20230320-20230328_0.0y.csv +0 -3
  135. gapless_crypto_data-2.2.0/src/gapless_crypto_data/sample_data/binance_spot_SOLUSDT-5m_20230320-20230328_0.0y.metadata.json +0 -86
  136. gapless_crypto_data-2.2.0/src/gapless_crypto_data/utils/__init__.py +0 -1
  137. gapless_crypto_data-2.2.0/test_gaps/test_data_with_gaps.csv +0 -3
  138. gapless_crypto_data-2.2.0/test_py_output/binance_spot_BTCUSDT-1h_20240101-20240101_0.0y.csv +0 -3
  139. gapless_crypto_data-2.2.0/uv.lock +0 -1155
  140. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/.gitattributes +0 -0
  141. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/.gitignore +0 -0
  142. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/.python-version +0 -0
  143. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/CHANGELOG.md +0 -0
  144. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/LICENSE +0 -0
  145. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/docs/PUBLISHING.md +0 -0
  146. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.0.yaml +0 -0
  147. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.1.yaml +0 -0
  148. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.2.yaml +0 -0
  149. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.3.yaml +0 -0
  150. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.4.yaml +0 -0
  151. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.0.5.yaml +0 -0
  152. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.1.0.yaml +0 -0
  153. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.1.1.yaml +0 -0
  154. {gapless_crypto_data-2.2.0/docs → gapless_crypto_data-2.5.0/docs/archive}/MILESTONE_v2.2.0.yaml +0 -0
  155. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/basic_data_collection.py +0 -0
  156. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/cli_usage_examples.sh +0 -0
  157. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/complete_workflow.py +0 -0
  158. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/gap_filling_example.py +0 -0
  159. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/examples/safe_data_collection.py +0 -0
  160. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/collectors/__init__.py +0 -0
  161. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/src/gapless_crypto_data/gap_filling/__init__.py +0 -0
  162. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/__init__.py +0 -0
  163. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_atomic_operations.py +0 -0
  164. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_integration.py +0 -0
  165. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_output_dir_dataframe_fix.py +0 -0
  166. {gapless_crypto_data-2.2.0 → gapless_crypto_data-2.5.0}/tests/test_package.py +0 -0
@@ -0,0 +1,19 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(find:*)",
5
+ "Read(//Users/terryli/eon/ml-feature-set/ml_feature_set/sample_data_v2/**)",
6
+ "Read(//Users/terryli/eon/ml-feature-set/**)",
7
+ "Bash(uv run pytest:*)",
8
+ "Bash(UV_LOG_LEVEL=error uv run --active python -m docs.ultrathink.cli --help)",
9
+ "Bash(UV_LOG_LEVEL=error uv run --active python -m docs.ultrathink.cli check-completeness --package gapless_crypto_data)",
10
+ "Bash(UV_LOG=error uv run --active python -m docs.ultrathink.cli check-completeness --package gapless_crypto_data)",
11
+ "Bash(export UV_LOG=error)",
12
+ "Bash(uv run:*)",
13
+ "Bash(.venv/bin/python -m docs.ultrathink.cli check-completeness:*)",
14
+ "Bash(grep:*)"
15
+ ],
16
+ "deny": [],
17
+ "ask": []
18
+ }
19
+ }
@@ -0,0 +1,2 @@
1
+ # Created by joblib automatically.
2
+ *
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183058_36e7d2ec",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:30:59.622390",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183058_36e7d2ec",
12
+ "created_at": "2025-09-17T18:30:58.791816",
13
+ "last_updated": "2025-09-17T18:30:59.622390",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmp86etc3pl",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.0005655288696289062
35
+ }
36
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183100_7e130f98",
4
+ "completed_symbols": 3,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 3,
7
+ "last_updated": "2025-09-17T18:31:01.185654",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183100_7e130f98",
12
+ "created_at": "2025-09-17T18:31:00.021489",
13
+ "last_updated": "2025-09-17T18:31:01.185654",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT",
17
+ "SOLUSDT"
18
+ ],
19
+ "symbols_in_progress": {},
20
+ "total_datasets_collected": 3,
21
+ "collection_parameters": {
22
+ "start_date": "2024-01-01",
23
+ "end_date": "2024-01-01",
24
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmp6yg8eyb2",
25
+ "timeframes": [
26
+ "1h"
27
+ ]
28
+ },
29
+ "errors": [],
30
+ "current_symbol": "SOLUSDT",
31
+ "completed_symbol": "SOLUSDT"
32
+ },
33
+ "cache_info": {
34
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
35
+ "cache_size_mb": 0.0020589828491210938
36
+ }
37
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183101_515b4690",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:31:02.655981",
8
+ "errors": 1
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183101_515b4690",
12
+ "created_at": "2025-09-17T18:31:01.561043",
13
+ "last_updated": "2025-09-17T18:31:02.655981",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpkg7d0jy5",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [
29
+ {
30
+ "symbol": "INVALIDSYMBOL",
31
+ "error": "Collection returned no results",
32
+ "timestamp": "2025-09-17T18:31:02.267390"
33
+ }
34
+ ],
35
+ "current_symbol": "ETHUSDT",
36
+ "completed_symbol": "ETHUSDT",
37
+ "failed_symbol": "INVALIDSYMBOL"
38
+ },
39
+ "cache_info": {
40
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
41
+ "cache_size_mb": 0.003726959228515625
42
+ }
43
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183103_828c36f1",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:31:03.751838",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183103_828c36f1",
12
+ "created_at": "2025-09-17T18:31:03.057313",
13
+ "last_updated": "2025-09-17T18:31:03.751838",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpcuj7g3g6",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.005391120910644531
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183117_9d842ca2",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:31:18.308470",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183117_9d842ca2",
12
+ "created_at": "2025-09-17T18:31:17.453256",
13
+ "last_updated": "2025-09-17T18:31:18.308470",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpn69uechy",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.006869316101074219
35
+ }
36
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183118_35b71e32",
4
+ "completed_symbols": 3,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 3,
7
+ "last_updated": "2025-09-17T18:31:19.806158",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183118_35b71e32",
12
+ "created_at": "2025-09-17T18:31:18.689614",
13
+ "last_updated": "2025-09-17T18:31:19.806158",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT",
17
+ "SOLUSDT"
18
+ ],
19
+ "symbols_in_progress": {},
20
+ "total_datasets_collected": 3,
21
+ "collection_parameters": {
22
+ "start_date": "2024-01-01",
23
+ "end_date": "2024-01-01",
24
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpwvwrfxd4",
25
+ "timeframes": [
26
+ "1h"
27
+ ]
28
+ },
29
+ "errors": [],
30
+ "current_symbol": "SOLUSDT",
31
+ "completed_symbol": "SOLUSDT"
32
+ },
33
+ "cache_info": {
34
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
35
+ "cache_size_mb": 0.00836181640625
36
+ }
37
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183120_e201f120",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:31:20.984260",
8
+ "errors": 1
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183120_e201f120",
12
+ "created_at": "2025-09-17T18:31:20.185137",
13
+ "last_updated": "2025-09-17T18:31:20.984260",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpgq8z6h58",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [
29
+ {
30
+ "symbol": "INVALIDSYMBOL",
31
+ "error": "Collection returned no results",
32
+ "timestamp": "2025-09-17T18:31:20.752335"
33
+ }
34
+ ],
35
+ "current_symbol": "ETHUSDT",
36
+ "completed_symbol": "ETHUSDT",
37
+ "failed_symbol": "INVALIDSYMBOL"
38
+ },
39
+ "cache_info": {
40
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
41
+ "cache_size_mb": 0.0100250244140625
42
+ }
43
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183121_7aa0a4fd",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:31:22.192977",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183121_7aa0a4fd",
12
+ "created_at": "2025-09-17T18:31:21.362627",
13
+ "last_updated": "2025-09-17T18:31:22.192977",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmp25weeged",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.011687278747558594
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183841_63564a52",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:38:42.778778",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183841_63564a52",
12
+ "created_at": "2025-09-17T18:38:41.904142",
13
+ "last_updated": "2025-09-17T18:38:42.778778",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpqvij00yy",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.013165473937988281
35
+ }
36
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183843_01458e87",
4
+ "completed_symbols": 3,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 3,
7
+ "last_updated": "2025-09-17T18:38:44.478791",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183843_01458e87",
12
+ "created_at": "2025-09-17T18:38:43.151038",
13
+ "last_updated": "2025-09-17T18:38:44.478791",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT",
17
+ "SOLUSDT"
18
+ ],
19
+ "symbols_in_progress": {},
20
+ "total_datasets_collected": 3,
21
+ "collection_parameters": {
22
+ "start_date": "2024-01-01",
23
+ "end_date": "2024-01-01",
24
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmphaghb_6g",
25
+ "timeframes": [
26
+ "1h"
27
+ ]
28
+ },
29
+ "errors": [],
30
+ "current_symbol": "SOLUSDT",
31
+ "completed_symbol": "SOLUSDT"
32
+ },
33
+ "cache_info": {
34
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
35
+ "cache_size_mb": 0.014657974243164062
36
+ }
37
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183844_30f0e3c0",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:38:45.615505",
8
+ "errors": 1
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183844_30f0e3c0",
12
+ "created_at": "2025-09-17T18:38:44.849900",
13
+ "last_updated": "2025-09-17T18:38:45.615505",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpam6x9q4e",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [
29
+ {
30
+ "symbol": "INVALIDSYMBOL",
31
+ "error": "Collection returned no results",
32
+ "timestamp": "2025-09-17T18:38:45.382533"
33
+ }
34
+ ],
35
+ "current_symbol": "ETHUSDT",
36
+ "completed_symbol": "ETHUSDT",
37
+ "failed_symbol": "INVALIDSYMBOL"
38
+ },
39
+ "cache_info": {
40
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
41
+ "cache_size_mb": 0.016324996948242188
42
+ }
43
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_183846_8c1e44b4",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:38:46.513086",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_183846_8c1e44b4",
12
+ "created_at": "2025-09-17T18:38:46.008075",
13
+ "last_updated": "2025-09-17T18:38:46.513086",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmp4pbbeeor",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.017989158630371094
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_184500_9b6f812c",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:45:01.652312",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_184500_9b6f812c",
12
+ "created_at": "2025-09-17T18:45:00.690594",
13
+ "last_updated": "2025-09-17T18:45:01.652312",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpzdgozoy0",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.01946735382080078
35
+ }
36
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_184502_ae48d84a",
4
+ "completed_symbols": 3,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 3,
7
+ "last_updated": "2025-09-17T18:45:02.962350",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_184502_ae48d84a",
12
+ "created_at": "2025-09-17T18:45:02.027059",
13
+ "last_updated": "2025-09-17T18:45:02.962350",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT",
17
+ "SOLUSDT"
18
+ ],
19
+ "symbols_in_progress": {},
20
+ "total_datasets_collected": 3,
21
+ "collection_parameters": {
22
+ "start_date": "2024-01-01",
23
+ "end_date": "2024-01-01",
24
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmp59170q_q",
25
+ "timeframes": [
26
+ "1h"
27
+ ]
28
+ },
29
+ "errors": [],
30
+ "current_symbol": "SOLUSDT",
31
+ "completed_symbol": "SOLUSDT"
32
+ },
33
+ "cache_info": {
34
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
35
+ "cache_size_mb": 0.020958900451660156
36
+ }
37
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_184503_b094245f",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:45:04.749587",
8
+ "errors": 1
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_184503_b094245f",
12
+ "created_at": "2025-09-17T18:45:03.358474",
13
+ "last_updated": "2025-09-17T18:45:04.749587",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpuw6vs3k7",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [
29
+ {
30
+ "symbol": "INVALIDSYMBOL",
31
+ "error": "Collection returned no results",
32
+ "timestamp": "2025-09-17T18:45:04.282901"
33
+ }
34
+ ],
35
+ "current_symbol": "ETHUSDT",
36
+ "completed_symbol": "ETHUSDT",
37
+ "failed_symbol": "INVALIDSYMBOL"
38
+ },
39
+ "cache_info": {
40
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
41
+ "cache_size_mb": 0.02262592315673828
42
+ }
43
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "progress_summary": {
3
+ "session_id": "20250917_184505_665fb523",
4
+ "completed_symbols": 2,
5
+ "symbols_in_progress": 0,
6
+ "total_datasets": 2,
7
+ "last_updated": "2025-09-17T18:45:06.198491",
8
+ "errors": 0
9
+ },
10
+ "detailed_progress": {
11
+ "session_id": "20250917_184505_665fb523",
12
+ "created_at": "2025-09-17T18:45:05.145233",
13
+ "last_updated": "2025-09-17T18:45:06.198491",
14
+ "symbols_completed": [
15
+ "BTCUSDT",
16
+ "ETHUSDT"
17
+ ],
18
+ "symbols_in_progress": {},
19
+ "total_datasets_collected": 2,
20
+ "collection_parameters": {
21
+ "start_date": "2024-01-01",
22
+ "end_date": "2024-01-01",
23
+ "output_dir": "/var/folders/f4/yr36gs0j7gb46m_lcdc6tr2h0000gn/T/tmpqdq7duc9",
24
+ "timeframes": [
25
+ "1h"
26
+ ]
27
+ },
28
+ "errors": [],
29
+ "current_symbol": "ETHUSDT",
30
+ "completed_symbol": "ETHUSDT"
31
+ },
32
+ "cache_info": {
33
+ "cache_dir": "/Users/terryli/eon/gapless-crypto-data/.gapless_checkpoints",
34
+ "cache_size_mb": 0.02428913116455078
35
+ }
36
+ }