Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
81cbe6e
Implement persistent and scoped environment variable management
AstroAir Jul 5, 2025
7ca9448
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 5, 2025
4c47f0f
refactor(math): Replace OpenMP parallelism with std::transform for ve…
AstroAir Jul 13, 2025
631460f
Add comprehensive unit tests for Thread and parallel_for_each_optimized
AstroAir Jul 13, 2025
6e9f68a
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Jul 13, 2025
15d5cb5
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 13, 2025
cf2ead5
Add comprehensive unit tests for SqliteDB functionality
AstroAir Jul 14, 2025
193d51e
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Jul 14, 2025
f09bc55
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 14, 2025
541f39f
Refactor logging to use spdlog across the project
AstroAir Jul 14, 2025
801758e
Add unit tests for UdpSocketHub and circular/chunked deques
AstroAir Jul 15, 2025
ea61bfd
Add comprehensive tests for async connection components
AstroAir Jul 16, 2025
c5addb5
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Jul 16, 2025
b36650e
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 16, 2025
19d8615
Save local changes before pulling from dev branch
AstroAir Jul 27, 2025
6df9cf6
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 27, 2025
90a252e
Refactor platform-specific includes and improve code organization
AstroAir Jul 29, 2025
6b8d779
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Jul 29, 2025
4fcb82e
Refactor tests to use shared_ptr and enhance naming conventions
AstroAir Jul 30, 2025
9a93e3a
feat(core): add features, improve stability, and fix tests across mod…
AstroAir Jul 31, 2025
af7c6fe
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 31, 2025
dc909a4
feat: Add test reorganization and status reporting scripts
AstroAir Aug 2, 2025
c136681
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Aug 2, 2025
f72fb22
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 2, 2025
1339499
feat: Enhance coverage badge generation with cross-platform support a…
AstroAir Aug 2, 2025
cbec0f0
Merge branch 'dev' of https://github.com/ElementAstro/Atom into dev
AstroAir Aug 2, 2025
d05f527
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 2, 2025
ca756eb
feat: Add comprehensive cross-platform support and installation script
AstroAir Aug 2, 2025
9b696f0
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 2, 2025
b697397
Add comprehensive tests for AdvancedExecutor and Cron components
AstroAir Aug 10, 2025
91b0bae
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 10, 2025
79a3680
Add MimeTypes class for handling MIME types and file extensions
AstroAir Aug 20, 2025
34c9298
Add comprehensive tests for network address classes
AstroAir Aug 23, 2025
2b9f9db
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 23, 2025
ca93cb7
Add modular installer and package validation tool for Atom library
AstroAir Aug 23, 2025
c5a587c
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 23, 2025
936f39e
Refactor tests and improve error handling
AstroAir Aug 24, 2025
0da4e10
Add comprehensive examples for Atom Web integration and MIME type det…
AstroAir Aug 25, 2025
4d55201
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 25, 2025
fcd4737
Add template functions for policy based algorithm design, improve the…
AstroAir Aug 26, 2025
c1651d3
Merge branch 'chore/build-fixes-2025-08-21' of https://github.com/Ele…
AstroAir Aug 26, 2025
c978aee
Add comprehensive tests for facade and reflection systems
AstroAir Aug 26, 2025
256433b
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 26, 2025
ce61f7f
Add comprehensive unit tests for ProcessManager, Stat, and Storage fu…
AstroAir Aug 27, 2025
d26b9fc
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 27, 2025
160b94f
Add unit and integration tests for DownloadManager and web functional…
AstroAir Aug 27, 2025
1df5afe
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 27, 2025
1639506
Refactor error handling and logging in VariableManager and improve CM…
AstroAir Aug 29, 2025
cb277fb
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 29, 2025
99a2b93
Refactor command registration and execution in components
AstroAir Aug 29, 2025
aa7ec21
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 29, 2025
c38eb1f
Add unit tests for TimeManager functionality
AstroAir Aug 31, 2025
c174c2e
Add comprehensive tests for atom components and memory management
AstroAir Sep 9, 2025
7d660bf
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 9, 2025
c48abe3
docs(warp): enhance WARP.md with improved build documentation and arc…
AstroAir Sep 11, 2025
d1df4d1
Merge remote changes with WARP.md enhancements
AstroAir Sep 12, 2025
922ece3
refactor: major codebase cleanup and build system improvements
AstroAir Sep 14, 2025
b7b61a5
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 14, 2025
ce1acc4
Add comprehensive unit and integration tests for error handling system
AstroAir Sep 19, 2025
9023505
Resolve merge conflicts: Remove temporary test files
AstroAir Sep 23, 2025
a445179
Clean up redundant files and build artifacts
AstroAir Sep 23, 2025
3f24d21
Pre-cleanup backup: Save current build system state before CMake audi…
AstroAir Sep 24, 2025
50bcf7a
Add comprehensive unit tests for socket functionality and validation …
AstroAir Oct 3, 2025
5a1b76a
fix: resolve compilation errors in core library and examples
AstroAir Oct 17, 2025
925231f
chore: remove deleted header files and add stub implementations
AstroAir Oct 17, 2025
e296967
refactor: comprehensive code improvements and test updates
AstroAir Oct 17, 2025
0e2afda
chore: update .gitignore to exclude test debug files
AstroAir Oct 17, 2025
5ac3fbc
feat: add xmake build system support and new infrastructure
AstroAir Oct 17, 2025
492f313
feat: add circuit breaker pattern and test log
AstroAir Oct 17, 2025
a4fe300
chore: comprehensive code improvements and test updates
AstroAir Oct 26, 2025
1e05ca3
Fix systematic testing issues and improve MSVC compatibility
AstroAir Nov 1, 2025
4ba3eef
Systematic testing fixes
AstroAir Nov 6, 2025
30e15fa
refactor: reorganize examples and fix compiler warnings
AstroAir Nov 12, 2025
f61a802
chore: apply pre-commit fixes (markdownlint config, ruff F405, B028 s…
AstroAir Nov 14, 2025
61c5fe7
chore: ignore python/build-python artifacts
AstroAir Nov 14, 2025
8ecfd48
Fix error context and IP address handling
AstroAir Nov 14, 2025
efebfff
Systematic testing fixes
AstroAir Nov 17, 2025
d1058a5
Logging migration updates
AstroAir Nov 17, 2025
1989645
feat: add python image/secret modules, update gitignore and CI workflows
AstroAir Dec 4, 2025
c6d0b8b
refactor: reorganize connection module and fix pre-commit issues
AstroAir Dec 7, 2025
7fe658f
refactor: update web module, connection examples, tests framework and…
AstroAir Dec 13, 2025
928e5a6
refactor: reorganize scripts, add secret/search modules, update tests…
AstroAir Dec 18, 2025
abb7ffe
refactor(python): reorganize bindings into modular subdirectory struc…
AstroAir Dec 22, 2025
8b886d1
fix: resolve MinGW compilation issues in secret storage and example f…
AstroAir Jan 29, 2026
2e8f4de
fix: resolve compilation issues in example files
AstroAir Jan 29, 2026
2069e58
feat(image): add OCR, FITS, SER enhancements and metadata support
AstroAir Jan 29, 2026
bf6147f
Merge test-fixes/systematic-testing into dev: consolidate fix branches
AstroAir Jan 29, 2026
e7cfadc
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jan 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
31 changes: 31 additions & 0 deletions .augment/rules/build-all.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
type: "manual"
---

# Complete Atom Project Build

Build the entire Atom project from scratch using the CMake build system.
During the build process:

1. Execute a complete build of all project components
2. Identify and document every error, warning, or build failure
3. For each issue encountered:
- Investigate the root cause thoroughly using available tools
- Implement a proper, complete fix (no placeholders, no TODOs)
- Verify the fix resolves the issue
4. Continue iterating through the build-fix cycle until the entire project
builds successfully with zero errors
5. Do not skip any errors or leave any issues unresolved
6. Provide a summary of all issues found and how each was resolved

## Requirements

- Use the existing CMake configuration in the project
- Apply real, working solutions only - no temporary workarounds
- Ensure all downstream changes are made (update all callers, tests)
- Verify the final build completes successfully before concluding

## Goal

A fully functional, clean build of the entire Atom project with all
compilation issues genuinely resolved.
61 changes: 61 additions & 0 deletions .augment/rules/build-examples-fix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
type: "manual"
---

# Build All Example Projects

Build all example projects in the Atom repository's `example/` directory using
the MSVC compiler and vcpkg dependency manager. For each example, perform a
complete build cycle and systematically resolve any compilation, linking, or
runtime issues encountered.

## Specific Requirements

1. **Discovery Phase:**
- Identify all example projects/subdirectories within `example/`
- Determine the build system used for each example (CMake targets, standalone projects, etc.)
- Verify which Atom modules each example depends on

2. **Build Process:**
- Configure and build each example using the MSVC toolchain with vcpkg
- Use appropriate CMake presets or build commands consistent with the project's build system
- Enable parallel compilation where possible
- Build in both Debug and Release configurations if feasible

3. **Issue Resolution:**
- Fix all compilation errors (syntax errors, missing headers, type mismatches)
- Resolve all linking errors (missing libraries, undefined symbols)
- Address MSVC-specific compatibility issues using conditional compilation
- Ensure cross-platform compatibility is maintained (don't break GCC/Clang)
- Install any missing dependencies through vcpkg or package managers

4. **Verification:**
- Confirm each example executable builds successfully without errors
- If the examples have associated tests, run them to verify correctness
- If no automated tests exist, perform basic smoke testing by running each
example binary to ensure it executes without crashing

5. **Documentation:**
- Track all changes made to fix build issues (file paths, errors, solutions)
- Note any new dependencies added or build configuration changes
- Document any platform-specific workarounds implemented

## Expected Deliverables

Provide a comprehensive summary containing:

- **Examples Built:** Complete list of all example projects found and their
build status (success/failure)
- **Issues Encountered:** Detailed description of each build error, linking
error, or runtime issue discovered
- **Resolutions Applied:** Specific fixes implemented for each issue (code
changes, dependency installations, configuration updates)
- **Verification Results:** Confirmation that each example compiles, links,
and runs successfully
- **Build Artifacts:** Location of generated executables and any relevant
build outputs
- **Compatibility Notes:** Any MSVC-specific changes made and verification
that cross-platform compatibility is preserved

Focus on achieving a complete, successful build of all examples while
maintaining code quality and cross-platform compatibility.
33 changes: 33 additions & 0 deletions .augment/rules/build-linux.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
type: "manual"
---

# Linux-Style Build Configuration

Build the entire Atom project using Linux-style build configuration
(GCC/Clang toolchain) on the current Windows environment. During the build
process:

1. Configure the project to use a Linux-compatible build approach (e.g.,
using MinGW, WSL, or similar Unix-like environment)
2. Attempt a complete build of all modules and components
3. Identify and fix ALL compilation errors, linking errors, and build
failures that occur
4. Pay special attention to platform-specific and compiler-specific
compatibility issues between different toolchains (MSVC vs GCC/MinGW)
5. When encountering compiler-specific incompatibilities, use preprocessor
macros to conditionally compile code based on the compiler and platform:
- Use `#ifdef _MSC_VER` for MSVC-specific code
- Use `#ifdef __GNUC__` for GCC/MinGW-specific code
- Use `#ifdef __clang__` for Clang-specific code
- Use `#ifdef _WIN32` or `#ifdef __linux__` for platform-specific code
6. Ensure that the fixes maintain cross-platform compatibility and don't
break builds on other platforms/compilers
7. Document any significant changes or workarounds needed for Linux-style
build compatibility

## Goal

Achieve a successful, complete build of the Atom project using Linux-compatible
build tools while maintaining compatibility with other build environments
(especially MSVC) through appropriate use of conditional compilation.
39 changes: 39 additions & 0 deletions .augment/rules/build-mingw.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
type: "manual"
---

# MinGW64 Build Configuration

Build the entire Atom project using the MSYS2 (MinGW64) preset and resolve
all compilation/linking issues that arise during the build process.

## Specific Requirements

1. **Build Configuration:**
- Use the MSYS2 MinGW64 environment (not MSVC)
- Configure CMake to use the MinGW64 compiler toolchain
- Ensure all build presets and scripts work correctly with MinGW64

2. **Issue Resolution:**
- Fix ALL compilation errors, warnings, and linking issues encountered
- Address any platform-specific incompatibilities between MSVC and MinGW/GCC
- Resolve any missing dependencies or library linking problems

3. **Cross-Compiler Compatibility:**
- When encountering code that is incompatible between MSVC and MinGW/GCC,
use preprocessor macros to distinguish between environments
- Use appropriate compiler detection macros such as:
- `#ifdef _MSC_VER` for MSVC-specific code
- `#ifdef __GNUC__` or `#ifdef __MINGW64__` for MinGW/GCC-specific code
- Ensure the codebase remains compatible with both MSVC and MinGW64

4. **Testing:**
- Verify that the build completes successfully without errors
- Ensure all modules compile and link correctly
- Test that the built binaries function properly

## Expected Outcome

A fully functional build of the Atom project using MSYS2 MinGW64, with all
compiler-specific issues resolved through appropriate conditional compilation
directives, maintaining cross-platform compatibility.
45 changes: 45 additions & 0 deletions .augment/rules/build-mix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
type: "manual"
---

# Cross-Compilation Build

Build the entire Atom project using cross-compilation mode and resolve all
compilation, linking, and configuration issues that arise during the build
process.

## Specific Requirements

1. **Cross-Compilation Setup:**
- Identify and configure the appropriate cross-compilation toolchain
- Set up CMake toolchain files for cross-compilation if needed
- Configure build system to use cross-compiler instead of native

2. **Build Execution:**
- Attempt a complete cross-compilation build of all modules
- Use appropriate CMake configuration flags for cross-compilation
- Example: `CMAKE_TOOLCHAIN_FILE`, `CMAKE_SYSTEM_NAME`,
`CMAKE_SYSTEM_PROCESSOR`

3. **Issue Resolution:**
- Fix ALL compilation errors during cross-compilation
- Resolve linking errors related to cross-platform libraries
- Address platform-specific incompatibilities (endianness, word size, ABI)
- Handle missing or incompatible dependencies for target platform
- Fix architecture-specific code issues (x86 vs ARM, 32-bit vs 64-bit)

4. **Platform Compatibility:**
- Ensure proper handling of platform-specific code paths
- Verify that all dependencies are available for target platform
- Address system library differences between host and target

5. **Verification:**
- Confirm cross-compilation build completes successfully
- Verify all modules compile and link correctly for target platform
- Document cross-compilation configuration and changes made

## Expected Outcome

A successful cross-compilation build of the Atom project for the target
platform, with all cross-platform compatibility issues resolved and
documented.
26 changes: 26 additions & 0 deletions .augment/rules/build-msvc-vcpkg.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
type: "manual"
---

# MSVC Build with vcpkg

Build the entire Atom project using MSVC (Microsoft Visual C++) compiler
with vcpkg as the dependency manager. During the build process:

1. Configure the project to use MSVC toolchain and vcpkg for dependencies
2. Attempt a complete build of all modules and components
3. Identify and fix ALL compilation, linking, and build failures
4. Pay special attention to platform-specific compatibility issues between
MSVC and other compilers (MinGW, GCC, Clang)
5. When encountering compiler-specific incompatibilities, use preprocessor
macros to conditionally compile code based on the compiler being used
(e.g., `#ifdef _MSC_VER` for MSVC, `#ifdef __GNUC__` for GCC/MinGW)
6. Ensure that the fixes maintain cross-platform compatibility and don't
break builds on other platforms
7. Document any significant changes or workarounds needed for MSVC

## Goal

Achieve a successful, complete build of the Atom project using the MSVC +
vcpkg toolchain while maintaining compatibility with other build
environments through appropriate use of conditional compilation.
34 changes: 34 additions & 0 deletions .augment/rules/commit-fix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
type: "manual"
---

# Complete Git Commit and Push

Complete the git commit and push to the remote repository, fixing all
pre-commit hook issues that arise during the process.

## Requirements

1. Stage all current changes for commit
2. Attempt to commit the changes
3. If pre-commit hooks fail, analyze and fix ALL issues reported by the hooks
(including but not limited to: linting errors, formatting issues, test
failures, type checking errors)
4. Re-run the commit after fixes until pre-commit hooks pass successfully
5. Push the committed changes to the remote repository
6. Ensure that ALL existing functionality remains intact - do not break any
current features or tests while fixing pre-commit issues

## Constraints

- Use appropriate git commands for staging, committing, and pushing
- Apply fixes that align with the project's coding standards and conventions
- If pre-commit hooks include formatters (like clang-format, black, etc.),
allow them to auto-fix when possible
- Verify that all tests still pass after applying fixes
- Do not skip or bypass pre-commit hooks - all issues must be properly
resolved

Note: The instruction is in Chinese. Translation: "Complete this commit to
remote, and fix all pre-commit issues encountered, without affecting existing
functionality"
43 changes: 43 additions & 0 deletions .augment/rules/complete-missing-files.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
type: "manual"
---

# Complete Missing Standard Files

Complete all standard files required for a professional GitHub repository for
the Atom project. Ensure the following:

## Essential GitHub Files

Create or update as needed:

- `.gitignore` - Comprehensive ignore patterns for C++, Python, CMake build
artifacts, IDE files, and platform-specific files
- `LICENSE` - Appropriate open-source license file (if not already present)
- `CONTRIBUTING.md` - Contribution guidelines including code style, commit
conventions, PR process, and testing requirements
- `CODE_OF_CONDUCT.md` - Community code of conduct
- `.github/ISSUE_TEMPLATE/` - Issue templates for bug reports and feature
requests
- `.github/PULL_REQUEST_TEMPLATE.md` - Pull request template
- `CHANGELOG.md` - Version history and release notes (if applicable)

## Quality Standards

- All files should follow industry best practices and conventions
- Content should be accurate, professional, and reflect the actual project
structure
- Reference existing project documentation (README.md, AGENTS.md, CLAUDE.md,
STYLE_OF_CODE.md) for consistency
- Ensure all templates and guidelines align with the project's C++/Python
nature and CMake build system

## Verification

- Review existing files first to avoid duplication
- Ensure all content is relevant to the Atom astronomical software library
project
- Maintain consistency with the project's existing coding standards

Do NOT create files that already exist with adequate content. Only create or
update files that are missing or incomplete.
Loading