|
| 1 | +{ |
| 2 | + "scan_metadata": { |
| 3 | + "timestamp": "2025-01-15T00:00:00Z", |
| 4 | + "scan_type": "module_documentation_update", |
| 5 | + "scan_version": "1.2.0", |
| 6 | + "project_root": "D:\\Project\\Atom", |
| 7 | + "scanner_version": "adaptive-architect-v1", |
| 8 | + "scan_duration": "targeted_module_documentation", |
| 9 | + "files_scanned": "estimated_500+" |
| 10 | + }, |
| 11 | + "project_info": { |
| 12 | + "name": "Atom", |
| 13 | + "version": "0.1.0", |
| 14 | + "description": "Foundational library for astronomical software", |
| 15 | + "license": "GPL-3.0", |
| 16 | + "homepage": "https://github.com/ElementAstro/Atom", |
| 17 | + "cpp_standard": "C++20", |
| 18 | + "cmake_minimum": "3.21", |
| 19 | + "primary_language": "C++", |
| 20 | + "secondary_languages": ["Python", "CMake", "Shell"], |
| 21 | + "platforms": ["Windows", "Linux", "macOS"] |
| 22 | + }, |
| 23 | + "modules": [ |
| 24 | + { |
| 25 | + "name": "algorithm", |
| 26 | + "path": "atom/algorithm", |
| 27 | + "type": "library", |
| 28 | + "dependencies": ["type", "utils", "error"], |
| 29 | + "optional_dependencies": ["OpenSSL", "TBB"], |
| 30 | + "entry_point": "atom/algorithm/algorithm.hpp", |
| 31 | + "has_tests": true, |
| 32 | + "has_examples": true, |
| 33 | + "has_documentation": true, |
| 34 | + "documentation_path": "atom/algorithm/CLAUDE.md", |
| 35 | + "subdirectories": ["core", "crypto", "hash", "math", "compression", "signal", "optimization", "encoding", "graphics", "utils"], |
| 36 | + "description": "Mathematical algorithms, cryptography, signal processing, pathfinding, GPU acceleration" |
| 37 | + }, |
| 38 | + { |
| 39 | + "name": "async", |
| 40 | + "path": "atom/async", |
| 41 | + "type": "library", |
| 42 | + "dependencies": ["utils"], |
| 43 | + "entry_point": "atom/async/async.hpp", |
| 44 | + "has_tests": false, |
| 45 | + "has_examples": true, |
| 46 | + "has_documentation": true, |
| 47 | + "documentation_path": "atom/async/CLAUDE.md", |
| 48 | + "subdirectories": ["core", "threading", "messaging", "execution", "sync", "utils"], |
| 49 | + "description": "Asynchronous programming primitives, futures, promises, executors, messaging" |
| 50 | + }, |
| 51 | + { |
| 52 | + "name": "components", |
| 53 | + "path": "atom/components", |
| 54 | + "type": "library", |
| 55 | + "dependencies": ["meta", "utils", "type", "error"], |
| 56 | + "optional_dependencies": ["Lua", "Python3"], |
| 57 | + "has_tests": true, |
| 58 | + "has_examples": true, |
| 59 | + "has_documentation": true, |
| 60 | + "documentation_path": "atom/components/CLAUDE.md", |
| 61 | + "subdirectories": ["core", "scripting", "lifecycle", "data"], |
| 62 | + "description": "Component system, lifecycle management, scripting engines (Lua, Python), event dispatch" |
| 63 | + }, |
| 64 | + { |
| 65 | + "name": "connection", |
| 66 | + "path": "atom/connection", |
| 67 | + "type": "library", |
| 68 | + "dependencies": ["async", "error", "type"], |
| 69 | + "optional_dependencies": ["ASIO", "OpenSSL", "libssh"], |
| 70 | + "has_tests": true, |
| 71 | + "has_examples": true, |
| 72 | + "has_documentation": true, |
| 73 | + "documentation_path": "atom/connection/CLAUDE.md", |
| 74 | + "subdirectories": ["tcp", "udp", "fifo", "shared", "ssh"], |
| 75 | + "description": "Network communication (TCP, UDP, FIFO, SSH), async sockets, connection pooling" |
| 76 | + }, |
| 77 | + { |
| 78 | + "name": "containers", |
| 79 | + "path": "atom/containers", |
| 80 | + "type": "library", |
| 81 | + "dependencies": ["type"], |
| 82 | + "optional_dependencies": ["Boost"], |
| 83 | + "has_tests": true, |
| 84 | + "has_examples": true, |
| 85 | + "has_documentation": true, |
| 86 | + "documentation_path": "atom/containers/CLAUDE.md", |
| 87 | + "description": "High-performance containers, lock-free queues, intrusive data structures" |
| 88 | + }, |
| 89 | + { |
| 90 | + "name": "error", |
| 91 | + "path": "atom/error", |
| 92 | + "type": "library", |
| 93 | + "dependencies": [], |
| 94 | + "entry_point": "atom/error/error.hpp", |
| 95 | + "has_tests": true, |
| 96 | + "has_examples": true, |
| 97 | + "has_documentation": true, |
| 98 | + "documentation_path": "atom/error/CLAUDE.md", |
| 99 | + "subdirectories": ["core", "stacktrace", "exception", "context", "handler"], |
| 100 | + "optional_dependencies": ["cpptrace", "backward-cpp", "Boost.Stacktrace", "libunwind", "libbacktrace", "Abseil"], |
| 101 | + "description": "Comprehensive error handling, stack traces, error contexts, exception hierarchies" |
| 102 | + }, |
| 103 | + { |
| 104 | + "name": "image", |
| 105 | + "path": "atom/image", |
| 106 | + "type": "library", |
| 107 | + "dependencies": ["algorithm", "io", "async"], |
| 108 | + "optional_dependencies": ["OpenCV", "CFITSIO", "Tesseract", "Leptonica", "nlohmann_json"], |
| 109 | + "entry_point": "atom/image/image.hpp", |
| 110 | + "has_tests": true, |
| 111 | + "has_examples": true, |
| 112 | + "has_documentation": true, |
| 113 | + "documentation_path": "atom/image/CLAUDE.md", |
| 114 | + "subdirectories": ["core", "formats", "io", "processing", "metadata"], |
| 115 | + "description": "Image processing with astronomical format support (FITS, SER), OCR, computer vision" |
| 116 | + }, |
| 117 | + { |
| 118 | + "name": "io", |
| 119 | + "path": "atom/io", |
| 120 | + "type": "library", |
| 121 | + "dependencies": ["async", "utils"], |
| 122 | + "optional_dependencies": ["ZLIB", "minizip-ng", "ASIO", "TBB"], |
| 123 | + "has_tests": false, |
| 124 | + "has_examples": true, |
| 125 | + "has_documentation": true, |
| 126 | + "documentation_path": "atom/io/CLAUDE.md", |
| 127 | + "subdirectories": ["core", "filesystem", "compression", "async"], |
| 128 | + "description": "Input/output operations, file system utilities, compression, async I/O" |
| 129 | + }, |
| 130 | + { |
| 131 | + "name": "log", |
| 132 | + "path": "atom/log", |
| 133 | + "type": "library", |
| 134 | + "dependencies": ["error", "utils"], |
| 135 | + "required_dependencies": ["spdlog", "ZLIB"], |
| 136 | + "has_tests": true, |
| 137 | + "has_examples": true, |
| 138 | + "has_documentation": true, |
| 139 | + "documentation_path": "atom/log/CLAUDE.md", |
| 140 | + "description": "Async logging framework with rotation, memory-mapped sinks, structured logging" |
| 141 | + }, |
| 142 | + { |
| 143 | + "name": "memory", |
| 144 | + "path": "atom/memory", |
| 145 | + "type": "library", |
| 146 | + "dependencies": ["type", "error"], |
| 147 | + "optional_dependencies": ["spdlog", "Boost"], |
| 148 | + "has_tests": true, |
| 149 | + "has_examples": true, |
| 150 | + "has_documentation": true, |
| 151 | + "documentation_path": "atom/memory/CLAUDE.md", |
| 152 | + "description": "Memory management, memory pools, arenas, tracking, custom allocators" |
| 153 | + }, |
| 154 | + { |
| 155 | + "name": "meta", |
| 156 | + "path": "atom/meta", |
| 157 | + "type": "library", |
| 158 | + "dependencies": ["error", "utils"], |
| 159 | + "required_dependencies": ["spdlog"], |
| 160 | + "optional_dependencies": ["json-cpp", "yaml-cpp"], |
| 161 | + "has_tests": true, |
| 162 | + "has_examples": true, |
| 163 | + "has_documentation": true, |
| 164 | + "documentation_path": "atom/meta/CLAUDE.md", |
| 165 | + "description": "Reflection, type traits, property helpers, FFI utilities, metaprogramming" |
| 166 | + }, |
| 167 | + { |
| 168 | + "name": "search", |
| 169 | + "path": "atom/search", |
| 170 | + "type": "library", |
| 171 | + "dependencies": ["type", "io"], |
| 172 | + "required_dependencies": ["spdlog", "SQLite3"], |
| 173 | + "optional_dependencies": ["libmariadb"], |
| 174 | + "has_tests": true, |
| 175 | + "has_examples": true, |
| 176 | + "has_documentation": true, |
| 177 | + "documentation_path": "atom/search/CLAUDE.md", |
| 178 | + "subdirectories": ["core", "cache", "database"], |
| 179 | + "description": "Search functionality, LRU/TTL caches, full-text search, pluggable database backends" |
| 180 | + }, |
| 181 | + { |
| 182 | + "name": "secret", |
| 183 | + "path": "atom/secret", |
| 184 | + "type": "library", |
| 185 | + "dependencies": ["algorithm", "io", "type", "utils"], |
| 186 | + "required_dependencies": ["OpenSSL"], |
| 187 | + "optional_dependencies": ["spdlog", "libsecret"], |
| 188 | + "has_tests": true, |
| 189 | + "has_examples": true, |
| 190 | + "has_documentation": true, |
| 191 | + "documentation_path": "atom/secret/CLAUDE.md", |
| 192 | + "subdirectories": ["core", "crypto", "password", "otp", "storage", "manager", "serialization"], |
| 193 | + "description": "Security and encryption utilities, password management, OTP, secure storage" |
| 194 | + }, |
| 195 | + { |
| 196 | + "name": "serial", |
| 197 | + "path": "atom/serial", |
| 198 | + "type": "library", |
| 199 | + "dependencies": ["error", "log"], |
| 200 | + "optional_dependencies": ["libusb-1.0", "bluez"], |
| 201 | + "has_tests": true, |
| 202 | + "has_examples": true, |
| 203 | + "has_documentation": true, |
| 204 | + "documentation_path": "atom/serial/CLAUDE.md", |
| 205 | + "subdirectories": ["core", "bluetooth", "platform", "usb"], |
| 206 | + "description": "Serial communication, Bluetooth adapters, USB device support" |
| 207 | + }, |
| 208 | + { |
| 209 | + "name": "sysinfo", |
| 210 | + "path": "atom/sysinfo", |
| 211 | + "type": "library", |
| 212 | + "dependencies": ["error", "type", "utils"], |
| 213 | + "optional_dependencies": ["fmt", "spdlog"], |
| 214 | + "has_tests": true, |
| 215 | + "has_examples": true, |
| 216 | + "has_documentation": true, |
| 217 | + "documentation_path": "atom/sysinfo/CLAUDE.md", |
| 218 | + "subdirectories": ["hardware", "storage", "network", "info", "utils"], |
| 219 | + "description": "System information, CPU/memory/disk/GPU/network introspection, hardware monitoring" |
| 220 | + }, |
| 221 | + { |
| 222 | + "name": "system", |
| 223 | + "path": "atom/system", |
| 224 | + "type": "library", |
| 225 | + "dependencies": ["sysinfo", "meta", "utils"], |
| 226 | + "optional_dependencies": ["libusb-1.0"], |
| 227 | + "has_tests": true, |
| 228 | + "has_examples": true, |
| 229 | + "has_documentation": true, |
| 230 | + "documentation_path": "atom/system/CLAUDE.md", |
| 231 | + "subdirectories": ["core", "process", "hardware", "power", "info", "registry", "network", "storage", "signals", "scheduling", "clipboard", "shortcut"], |
| 232 | + "description": "System-level integration, process management, platform-specific code, scheduling" |
| 233 | + }, |
| 234 | + { |
| 235 | + "name": "type", |
| 236 | + "path": "atom/type", |
| 237 | + "type": "library", |
| 238 | + "dependencies": ["error", "utils"], |
| 239 | + "has_tests": false, |
| 240 | + "has_examples": true, |
| 241 | + "has_documentation": true, |
| 242 | + "documentation_path": "atom/type/CLAUDE.md", |
| 243 | + "description": "Type utilities, variant/any helpers, small-vector, type traits" |
| 244 | + }, |
| 245 | + { |
| 246 | + "name": "utils", |
| 247 | + "path": "atom/utils", |
| 248 | + "type": "library", |
| 249 | + "dependencies": ["error", "type"], |
| 250 | + "optional_dependencies": ["OpenSSL", "ZLIB", "fmt", "spdlog", "TBB"], |
| 251 | + "has_tests": false, |
| 252 | + "has_examples": true, |
| 253 | + "has_documentation": true, |
| 254 | + "documentation_path": "atom/utils/CLAUDE.md", |
| 255 | + "subdirectories": ["core", "text", "time", "process", "conversion", "crypto", "random", "debug", "format", "container", "memory"], |
| 256 | + "description": "General utility functions, string/time processing, UUID generation, crypto helpers" |
| 257 | + }, |
| 258 | + { |
| 259 | + "name": "web", |
| 260 | + "path": "atom/web", |
| 261 | + "type": "library", |
| 262 | + "dependencies": ["utils", "io", "system", "log", "type"], |
| 263 | + "optional_dependencies": ["CURL", "fmt", "spdlog"], |
| 264 | + "has_tests": true, |
| 265 | + "has_examples": true, |
| 266 | + "has_documentation": true, |
| 267 | + "documentation_path": "atom/web/CLAUDE.md", |
| 268 | + "subdirectories": ["http", "mime", "utils", "address", "time"], |
| 269 | + "description": "HTTP client, MIME helpers, URL tools, downloaders, web utilities" |
| 270 | + } |
| 271 | + ], |
| 272 | + "supporting_structures": [ |
| 273 | + { |
| 274 | + "name": "tests", |
| 275 | + "path": "tests", |
| 276 | + "type": "test_suite", |
| 277 | + "framework": "GoogleTest", |
| 278 | + "description": "Comprehensive test suite with CTest integration, 19+ test directories", |
| 279 | + "test_modules": ["algorithm", "async", "components", "connection", "containers", "error", "image", "io", "log", "memory", "meta", "search", "secret", "serial", "sysinfo", "system", "type", "utils", "web"] |
| 280 | + }, |
| 281 | + { |
| 282 | + "name": "example", |
| 283 | + "path": "example", |
| 284 | + "type": "examples", |
| 285 | + "description": "Usage examples for all modules, including sub-module examples" |
| 286 | + }, |
| 287 | + { |
| 288 | + "name": "python", |
| 289 | + "path": "python", |
| 290 | + "type": "bindings", |
| 291 | + "framework": "pybind11", |
| 292 | + "description": "Python bindings for most modules with modular subdirectory structure" |
| 293 | + }, |
| 294 | + { |
| 295 | + "name": "scripts", |
| 296 | + "path": "scripts", |
| 297 | + "type": "build_tools", |
| 298 | + "description": "Build scripts, dependency management, packaging tools" |
| 299 | + }, |
| 300 | + { |
| 301 | + "name": "cmake", |
| 302 | + "path": "cmake", |
| 303 | + "type": "build_modules", |
| 304 | + "description": "CMake modules for build configuration", |
| 305 | + "key_modules": ["ModuleDependencies.cmake", "ModuleDependenciesData.cmake", "ScanModule.cmake", "FindDependencies.cmake"] |
| 306 | + }, |
| 307 | + { |
| 308 | + "name": "extra", |
| 309 | + "path": "atom/extra", |
| 310 | + "type": "third_party", |
| 311 | + "description": "Third-party libraries bundled with Atom", |
| 312 | + "libraries": ["spdlog", "asio", "curl", "beast", "uv", "pugixml", "inicpp", "dotenv", "iconv", "boost"] |
| 313 | + } |
| 314 | + ], |
| 315 | + "coverage": { |
| 316 | + "total_modules": 19, |
| 317 | + "modules_with_tests": 17, |
| 318 | + "modules_with_examples": 19, |
| 319 | + "modules_with_documentation": 19, |
| 320 | + "documented_modules": ["algorithm", "async", "components", "connection", "containers", "error", "image", "io", "log", "memory", "meta", "search", "secret", "serial", "sysinfo", "system", "type", "utils", "web"], |
| 321 | + "coverage_percentage": 100.0, |
| 322 | + "estimated_total_files": "500+", |
| 323 | + "estimated_cpp_files": "200+", |
| 324 | + "estimated_hpp_files": "300+", |
| 325 | + "documentation_gaps": [] |
| 326 | + }, |
| 327 | + "ignore_patterns": [ |
| 328 | + "node_modules/**", |
| 329 | + ".git/**", |
| 330 | + ".github/**", |
| 331 | + "dist/**", |
| 332 | + "build/**", |
| 333 | + "build-*/**", |
| 334 | + "build-msvc/**", |
| 335 | + "cmake-build-*/**", |
| 336 | + "out/**", |
| 337 | + "_build/**", |
| 338 | + "python/build-python/**", |
| 339 | + ".venv/**", |
| 340 | + "venv/**", |
| 341 | + "__pycache__/**", |
| 342 | + "*.pyc", |
| 343 | + "*.pyo", |
| 344 | + "*.egg-info/**", |
| 345 | + ".tox/**", |
| 346 | + ".nox/**", |
| 347 | + ".coverage", |
| 348 | + "*.log", |
| 349 | + "*.dll", |
| 350 | + "*.exe", |
| 351 | + "*.obj", |
| 352 | + "*.o", |
| 353 | + "*.a", |
| 354 | + "*.lib", |
| 355 | + "*.so", |
| 356 | + "*.dylib", |
| 357 | + "vcpkg_installed/**", |
| 358 | + "llmdoc/**" |
| 359 | + ], |
| 360 | + "next_steps": [ |
| 361 | + "Add unit tests for modules without tests (async, type, utils, io)", |
| 362 | + "Add more detailed API documentation for each module", |
| 363 | + "Create architecture diagrams for complex modules", |
| 364 | + "Document inter-module dependencies more thoroughly", |
| 365 | + "Add performance benchmarks and optimization guides", |
| 366 | + "Document Python bindings structure and usage", |
| 367 | + "Create integration guides for using multiple modules together" |
| 368 | + ], |
| 369 | + "truncated": false, |
| 370 | + "truncation_reason": null, |
| 371 | + "scan_quality": { |
| 372 | + "module_discovery": "complete", |
| 373 | + "dependency_analysis": "complete", |
| 374 | + "file_statistics": "estimated", |
| 375 | + "documentation_coverage": "complete", |
| 376 | + "test_coverage": "complete" |
| 377 | + } |
| 378 | +} |
0 commit comments