solarwindpy 0.0.1.dev0__py3-none-any.whl → 0.1.1__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.
Potentially problematic release.
This version of solarwindpy might be problematic. Click here for more details.
- plans/.velocity/metrics.json +96 -0
- plans/0-overview-template.md +268 -0
- plans/N-phase-template.md +106 -0
- plans/PLAN_AUDIT_SUMMARY.md +173 -0
- plans/TEMPLATE-USAGE-GUIDE.md +198 -0
- plans/__init__.py +1 -0
- plans/abandoned/compaction-agent-system/0-Overview.md +123 -0
- plans/abandoned/compaction-agent-system/agents-index-update-plan.md +109 -0
- plans/abandoned/compaction-agent-system/compacted_state.md +85 -0
- plans/abandoned/compaction-agent-system/implementation-plan.md +107 -0
- plans/abandoned/compaction-agent-system/system-validation-report.md +159 -0
- plans/abandoned/compaction-agent-system/usage-guide.md +210 -0
- plans/abandoned/hook-system-enhancement/0-Overview.md +214 -0
- plans/abandoned/hook-system-enhancement/1-Phase1-Core-Infrastructure.md +313 -0
- plans/abandoned/hook-system-enhancement/2-Phase2-Intelligent-Testing.md +385 -0
- plans/abandoned/hook-system-enhancement/3-Phase3-Physics-Validation.md +444 -0
- plans/abandoned/hook-system-enhancement/4-Phase4-Performance-Monitoring.md +458 -0
- plans/abandoned/hook-system-enhancement/5-Phase5-Developer-Experience.md +532 -0
- plans/abandoned/hook-system-enhancement/6-Implementation-Timeline.md +274 -0
- plans/abandoned/hook-system-enhancement/7-Risk-Management.md +376 -0
- plans/abandoned/hook-system-enhancement/8-Testing-Strategy.md +579 -0
- plans/abandoned/readthedocs-automation/0-Overview.md +247 -0
- plans/abandoned/readthedocs-automation/1-Emergency-Documentation-Fixes.md +270 -0
- plans/abandoned/readthedocs-automation/2-Template-System-Enhancement.md +811 -0
- plans/abandoned/readthedocs-automation/3-Quality-Audit-ReadTheDocs-Integration.md +844 -0
- plans/abandoned/readthedocs-automation/4-Plan-Consolidation-Cleanup.md +632 -0
- plans/abandoned/readthedocs-automation/9-Closeout.md +207 -0
- plans/abandoned/readthedocs-automation/ABANDONMENT_REASON.md +72 -0
- plans/cicd-architecture-redesign/0-Overview.md +193 -0
- plans/cicd-architecture-redesign/1-Workflow-Creation.md +103 -0
- plans/cicd-architecture-redesign/2-Version-Detection.md +123 -0
- plans/cicd-architecture-redesign/3-Deployment-Gates.md +169 -0
- plans/cicd-architecture-redesign/4-RC-Testing.md +194 -0
- plans/cicd-architecture-redesign/5-TestPyPI-Validation.md +264 -0
- plans/cicd-architecture-redesign/6-Production-Release.md +263 -0
- plans/cicd-architecture-redesign/7-Cleanup.md +243 -0
- plans/cicd-architecture-redesign/8-Documentation.md +285 -0
- plans/cicd-architecture-redesign/Closeout.md +225 -0
- plans/closeout-template.md +259 -0
- plans/completed/circular-import-audit/0-Overview.md +152 -0
- plans/completed/circular-import-audit/1-Static-Dependency-Analysis.md +62 -0
- plans/completed/circular-import-audit/2-Dynamic-Import-Testing.md +56 -0
- plans/completed/circular-import-audit/3-Performance-Impact-Assessment.md +56 -0
- plans/completed/circular-import-audit/4-Issue-Remediation.md +78 -0
- plans/completed/circular-import-audit/5-Preventive-Infrastructure.md +89 -0
- plans/completed/claude-settings-ecosystem-alignment/0-Overview.md +162 -0
- plans/completed/claude-settings-ecosystem-alignment/1-Security-Foundation.md +148 -0
- plans/completed/claude-settings-ecosystem-alignment/2-Hook-Integration.md +158 -0
- plans/completed/claude-settings-ecosystem-alignment/3-Agent-System-Integration.md +177 -0
- plans/completed/claude-settings-ecosystem-alignment/4-Enhanced-Workflow-Automation.md +159 -0
- plans/completed/claude-settings-ecosystem-alignment/5-Validation-Monitoring.md +181 -0
- plans/completed/claude-settings-ecosystem-alignment/compacted_session_state.md +290 -0
- plans/completed/combined_plan_with_checklist_documentation/1-Overview-and-Goals.md +51 -0
- plans/completed/combined_plan_with_checklist_documentation/2-Toolchain-and-Hosting.md +69 -0
- plans/completed/combined_plan_with_checklist_documentation/3-Repository-Structure.md +61 -0
- plans/completed/combined_plan_with_checklist_documentation/4-Configuration-and-Standards.md +70 -0
- plans/completed/combined_plan_with_checklist_documentation/5-Documentation-Content.md +62 -0
- plans/completed/combined_plan_with_checklist_documentation/6-CI-CD-and-Validation.md +58 -0
- plans/completed/combined_plan_with_checklist_documentation/7-Maintenance.md +55 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/0-Overview.md +135 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/1-Common-fixtures.md +59 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/10-power_laws.md +56 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/2-core.py-FitFunction.md +118 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/3-gaussians.py-Gaussian-GaussianNormalized-GaussianLn.md +69 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/4-trend_fits.py-TrendFit.md +99 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/5-plots.py-FFPlot.md +98 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/6-tex_info.py-TeXinfo.md +79 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/7-Justification.md +49 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/8-exponentials.md +64 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/9-lines.md +58 -0
- plans/completed/combined_test_plan_with_checklist_plotting/0-Overview.md +142 -0
- plans/completed/combined_test_plan_with_checklist_plotting/1-base.py.md +90 -0
- plans/completed/combined_test_plan_with_checklist_plotting/10-labels-special.py.md +102 -0
- plans/completed/combined_test_plan_with_checklist_plotting/11-labels-chemistry.py.md +212 -0
- plans/completed/combined_test_plan_with_checklist_plotting/12-labels-composition.py.md +242 -0
- plans/completed/combined_test_plan_with_checklist_plotting/13-labels-datetime.py.md +247 -0
- plans/completed/combined_test_plan_with_checklist_plotting/14-labels-elemental_abundance.py.md +274 -0
- plans/completed/combined_test_plan_with_checklist_plotting/15-visual-validation.md +256 -0
- plans/completed/combined_test_plan_with_checklist_plotting/16-integration-testing.md +266 -0
- plans/completed/combined_test_plan_with_checklist_plotting/17-performance-benchmarks.md +267 -0
- plans/completed/combined_test_plan_with_checklist_plotting/18-Fixtures-and-Utilities.md +86 -0
- plans/completed/combined_test_plan_with_checklist_plotting/2-agg_plot.py.md +90 -0
- plans/completed/combined_test_plan_with_checklist_plotting/3-histograms.py.md +201 -0
- plans/completed/combined_test_plan_with_checklist_plotting/4-scatter.py.md +167 -0
- plans/completed/combined_test_plan_with_checklist_plotting/5-spiral.py.md +216 -0
- plans/completed/combined_test_plan_with_checklist_plotting/6-orbits.py.md +108 -0
- plans/completed/combined_test_plan_with_checklist_plotting/7-tools.py.md +86 -0
- plans/completed/combined_test_plan_with_checklist_plotting/8-select_data_from_figure.py.md +97 -0
- plans/completed/combined_test_plan_with_checklist_plotting/9-labels-base.py.md +88 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/.gitkeep +0 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/0-Overview.md +170 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/1-Package-Entry-Point-__init__.py.md +121 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/2-Core-Base-Classes-base.py.md +142 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/3-Plotting-Helpers-plots.py.md +123 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/4-LISIRD-Sub-package.md +119 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/5-Extrema-Calculator.md +103 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/6-Sunspot-Number-Sub-package.md +163 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/7-Sunspot-Number-Init.py.md +217 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/compacted_state.md +52 -0
- plans/completed/compaction-agent-modernization/0-Overview.md +156 -0
- plans/completed/compaction-agent-modernization/1-Architecture-Audit-Gap-Analysis.md +132 -0
- plans/completed/compaction-agent-modernization/2-Token-Baseline-Recalibration.md +153 -0
- plans/completed/compaction-agent-modernization/3-Agent-Reference-Updates.md +184 -0
- plans/completed/compaction-agent-modernization/4-Compression-Algorithm-Modernization.md +238 -0
- plans/completed/compaction-agent-modernization/5-Workflow-Integration-Streamlining.md +252 -0
- plans/completed/compaction-agent-modernization/6-Template-Structure-Optimization.md +240 -0
- plans/completed/compaction-agent-modernization/7-Integration-Testing-Validation.md +292 -0
- plans/completed/compaction-hook-enhancement/0-Overview.md +150 -0
- plans/completed/compaction-hook-enhancement/1-Token-Estimation-Enhancement.md +179 -0
- plans/completed/compaction-hook-enhancement/2-Compression-Intelligence.md +294 -0
- plans/completed/compaction-hook-enhancement/3-Git-Integration-Metadata.md +310 -0
- plans/completed/compaction-hook-enhancement/4-Session-Continuity-Features.md +358 -0
- plans/completed/compaction-hook-enhancement/5-Testing-Strategy.md +404 -0
- plans/completed/compaction-hook-enhancement/6-Integration-Roadmap.md +319 -0
- plans/completed/compaction-hook-enhancement/compacted_state.md +142 -0
- plans/completed/docstring-audit-enhancement/0-Overview.md +274 -0
- plans/completed/docstring-audit-enhancement/1-Infrastructure-Setup-and-Validation-Tools.md +206 -0
- plans/completed/docstring-audit-enhancement/2-Core-Physics-Modules-Enhancement.md +237 -0
- plans/completed/docstring-audit-enhancement/3-Fitfunctions-Mathematical-Modules-Enhancement.md +188 -0
- plans/completed/docstring-audit-enhancement/4-Plotting-Visualization-Modules-Enhancement.md +243 -0
- plans/completed/docstring-audit-enhancement/5-Specialized-Modules-Enhancement.md +216 -0
- plans/completed/docstring-audit-enhancement/6-Validation-and-Integration.md +216 -0
- plans/completed/fitfunctions-testing-implementation/0-Overview.md +130 -0
- plans/completed/fitfunctions-testing-implementation/1-Test-Infrastructure-Setup.md +79 -0
- plans/completed/fitfunctions-testing-implementation/2-Common-Fixtures-Test-Utilities.md +104 -0
- plans/completed/fitfunctions-testing-implementation/3-Core-FitFunction-Testing.md +168 -0
- plans/completed/fitfunctions-testing-implementation/4-Specialized-Function-Classes.md +210 -0
- plans/completed/fitfunctions-testing-implementation/5-Advanced-Classes-Testing.md +214 -0
- plans/completed/fitfunctions-testing-implementation/6-Plotting-Integration-Testing.md +231 -0
- plans/completed/fitfunctions-testing-implementation/7-Extended-Coverage-BONUS.md +184 -0
- plans/completed/numpy-docstring-conversion-plan/numpy-docstring-conversion-plan.md +118 -0
- plans/completed/pr-review-remediation/0-Overview.md +138 -0
- plans/completed/pr-review-remediation/1-Critical-Safety-Improvements.md +179 -0
- plans/completed/pr-review-remediation/2-Smart-Timeouts-Validation.md +399 -0
- plans/completed/pr-review-remediation/3-Enhanced-GitHub-Integration.md +258 -0
- plans/completed/pr-review-remediation/compacted_state.md +66 -0
- plans/completed/python-310-migration/0-Overview.md +390 -0
- plans/completed/python-310-migration/1-Planning-Setup.md +164 -0
- plans/completed/python-310-migration/2-Implementation.md +256 -0
- plans/completed/python-310-migration/3-Testing-Validation.md +335 -0
- plans/completed/python-310-migration/4-Documentation-Release.md +274 -0
- plans/completed/python-310-migration/5-Closeout.md +252 -0
- plans/completed/requirements-management-consolidation/0-Overview.md +118 -0
- plans/completed/requirements-management-consolidation/1-Documentation-Validation-Environment-Setup.md +116 -0
- plans/completed/requirements-management-consolidation/2-Requirements-Consolidation.md +161 -0
- plans/completed/requirements-management-consolidation/3-Workflow-Automation-Final-Integration.md +196 -0
- plans/completed/single-ecosystem-plan-implementation/0-Overview.md +83 -0
- plans/completed/single-ecosystem-plan-implementation/1-Plan-Preservation-Session-Management.md +38 -0
- plans/completed/single-ecosystem-plan-implementation/2-File-Structure-Optimization.md +43 -0
- plans/completed/single-ecosystem-plan-implementation/3-Plan-Migration-Archive-Setup.md +82 -0
- plans/completed/single-ecosystem-plan-implementation/4-Agent-System-Transformation.md +108 -0
- plans/completed/single-ecosystem-plan-implementation/5-Template-System-Enhancement.md +131 -0
- plans/completed/single-ecosystem-plan-implementation/6-Final-Validation-Testing.md +120 -0
- plans/completed/test-directory-consolidation/0-Overview.md +51 -0
- plans/completed/test-directory-consolidation/1-Structure-Preparation.md +82 -0
- plans/completed/test-directory-consolidation/2-File-Migration.md +100 -0
- plans/completed/test-directory-consolidation/3-Import-Transformation.md +117 -0
- plans/completed/test-directory-consolidation/4-Configuration-Consolidation.md +140 -0
- plans/completed/test-directory-consolidation/5-Validation.md +152 -0
- plans/completed/test-directory-consolidation/6-Cleanup.md +156 -0
- plans/completed/test-planning-agents-architecture/0-Overview.md +79 -0
- plans/completed/test-planning-agents-architecture/1-Branch-Isolation-Testing.md +49 -0
- plans/completed/test-planning-agents-architecture/2-Cross-Branch-Coordination.md +51 -0
- plans/completed/test-planning-agents-architecture/3-Merge-Workflow-Testing.md +48 -0
- plans/deployment-semver-pypi-rtd/0-Overview.md +463 -0
- plans/deployment-semver-pypi-rtd/1-Semantic-Versioning-Foundation.md +136 -0
- plans/deployment-semver-pypi-rtd/2-PyPI-Deployment-Infrastructure.md +168 -0
- plans/deployment-semver-pypi-rtd/3-Release-Automation.md +214 -0
- plans/deployment-semver-pypi-rtd/4-Plan-Closeout.md +543 -0
- plans/deployment-semver-pypi-rtd/compacted_session_state.md +172 -0
- plans/deployment-semver-pypi-rtd/compacted_state.md +131 -0
- plans/documentation-code-audit/0-Overview.md +393 -0
- plans/documentation-code-audit/1-Discovery-Inventory.md +183 -0
- plans/documentation-code-audit/2-Execution-Environment-Setup.md +263 -0
- plans/documentation-code-audit/3-Systematic-Validation.md +322 -0
- plans/documentation-code-audit/4-Code-Example-Remediation.md +358 -0
- plans/documentation-code-audit/5-Physics-MultiIndex-Compliance.md +464 -0
- plans/documentation-code-audit/6-Doctest-Integration.md +523 -0
- plans/documentation-code-audit/7-Reporting-Documentation.md +498 -0
- plans/documentation-code-audit/8-Closeout.md +456 -0
- plans/documentation-rebuild-session/compacted_state.md +109 -0
- plans/documentation-rendering-fixes/0-Overview.md +104 -0
- plans/documentation-rendering-fixes/1-Sphinx-Build-Diagnostics-Warning-Audit.md +101 -0
- plans/documentation-rendering-fixes/2-Configuration-Infrastructure-Fixes.md +113 -0
- plans/documentation-rendering-fixes/3-Docstring-Syntax-Audit-Repair.md +131 -0
- plans/documentation-rendering-fixes/4-HTML-Page-Rendering-Verification.md +113 -0
- plans/documentation-rendering-fixes/5-Advanced-Documentation-Quality-Assurance.md +119 -0
- plans/documentation-rendering-fixes/6-Documentation-Build-Optimization-Testing.md +129 -0
- plans/documentation-rendering-fixes/compacted_state.md +132 -0
- plans/documentation-template-fix/0-Overview.md +197 -0
- plans/documentation-template-fix/1-Template-System-Analysis.md +269 -0
- plans/documentation-template-fix/2-Template-Modification.md +609 -0
- plans/documentation-template-fix/3-Build-System-Integration.md +766 -0
- plans/documentation-template-fix/4-Testing-Validation.md +1399 -0
- plans/documentation-template-fix/5-Documentation-Training.md +602 -0
- plans/documentation-workflow-fix/0-Overview.md +222 -0
- plans/documentation-workflow-fix/1-Immediate-Fixes.md +238 -0
- plans/documentation-workflow-fix/2-Configuration-Setup.md +298 -0
- plans/documentation-workflow-fix/3-Pre-commit-Integration.md +382 -0
- plans/documentation-workflow-fix/4-Workflow-Improvements.md +446 -0
- plans/documentation-workflow-fix/5-Documentation-and-Training.md +527 -0
- plans/duplicate-object-warnings-fix-plan.md +130 -0
- plans/github-issues-migration/0-Overview.md +510 -0
- plans/github-issues-migration/1-Foundation-Label-System.md +180 -0
- plans/github-issues-migration/2-Migration-Tool-Rewrite.md +235 -0
- plans/github-issues-migration/3-CLI-Integration-Automation.md +169 -0
- plans/github-issues-migration/4-Validated-Migration.md +252 -0
- plans/github-issues-migration/5-Documentation-Training.md +171 -0
- plans/github-issues-migration/6-Closeout.md +179 -0
- plans/github-workflows-repair/repair-plan.md +299 -0
- plans/issues_from_plans.py +342 -0
- plans/pr-270-doc-validation-fixes/0-Overview.md +354 -0
- plans/pr-270-doc-validation-fixes/1-Critical-PR-Fixes.md +117 -0
- plans/pr-270-doc-validation-fixes/2-Framework-Right-Sizing.md +129 -0
- plans/pr-270-doc-validation-fixes/3-Sustainable-Documentation.md +126 -0
- plans/pr-270-doc-validation-fixes/4-Closeout-Migration.md +143 -0
- plans/pr-270-doc-validation-fixes/PLAN_COMPLETED.md +149 -0
- plans/python-310-migration/0-Overview.md +390 -0
- plans/python-310-migration/1-Planning-Setup.md +164 -0
- plans/python-310-migration/2-Implementation.md +256 -0
- plans/python-310-migration/3-Testing-Validation.md +335 -0
- plans/python-310-migration/4-Documentation-Release.md +274 -0
- plans/python-310-migration/5-Closeout.md +252 -0
- plans/readthedocs-simplified/0-Overview.md +243 -0
- plans/readthedocs-simplified/1-Immediate-Fixes.md +216 -0
- plans/readthedocs-simplified/2-Template-Simplification.md +278 -0
- plans/readthedocs-simplified/3-ReadTheDocs-Setup.md +298 -0
- plans/readthedocs-simplified/4-Testing-Validation.md +328 -0
- plans/readthedocs-simplified/5-Closeout.md +231 -0
- plans/readthedocs-simplified/compacted_state.md +127 -0
- plans/session-compaction-2025-08-12/compacted_state.md +114 -0
- plans/session-compaction-2025-08-13/compacted_state.md +145 -0
- plans/session-continuity-protocol/0-Overview.md +35 -0
- plans/session-continuity-protocol/1-Core-Principles-Framework.md +40 -0
- plans/session-continuity-protocol/2-Pre-Session-Validation-System.md +79 -0
- plans/session-continuity-protocol/3-Context-Switching-Prevention.md +87 -0
- plans/session-continuity-protocol/4-Progress-Tracking-Recovery.md +100 -0
- plans/sphinx-warnings-analysis.md +222 -0
- plans/systemprompt-optimization/0-Overview.md +447 -0
- plans/systemprompt-optimization/1-Deploy-SystemPrompt.md +114 -0
- plans/systemprompt-optimization/2-Documentation-Alignment.md +198 -0
- plans/systemprompt-optimization/3-Monitoring-Infrastructure.md +396 -0
- plans/systemprompt-optimization/4-Implementation-Script.md +450 -0
- plans/systemprompt-optimization/9-Closeout.md +165 -0
- plans/systemprompt-optimization/compacted_state.md +143 -0
- plans/template-value-propositions/0-Overview.md +357 -0
- plans/template-value-propositions/1-Value-Proposition-Framework-Design.md +144 -0
- plans/template-value-propositions/2-Plan-Template-Enhancement.md +178 -0
- plans/template-value-propositions/3-Value-Generator-Hook-Implementation.md +291 -0
- plans/template-value-propositions/4-Value-Validator-Hook-Implementation.md +274 -0
- plans/template-value-propositions/5-Documentation-Agent-Updates.md +219 -0
- plans/template-value-propositions/6-Integration-Testing-Validation.md +247 -0
- plans/tests-audit/0-Overview.md +410 -0
- plans/tests-audit/1-Discovery-Inventory.md +170 -0
- plans/tests-audit/2-Physics-Validation-Audit.md +195 -0
- plans/tests-audit/3-Architecture-Compliance.md +195 -0
- plans/tests-audit/4-Numerical-Stability-Analysis.md +203 -0
- plans/tests-audit/5-Documentation-Enhancement.md +220 -0
- plans/tests-audit/6-Audit-Deliverables.md +220 -0
- plans/tests-audit/7-Closeout.md +252 -0
- plans/tests-audit/artifacts/ARCHITECTURE_COMPLIANCE_REPORT.md +315 -0
- plans/tests-audit/artifacts/ARCHITECTURE_RECOMMENDATIONS.md +943 -0
- plans/tests-audit/artifacts/COMPREHENSIVE_AUDIT_REPORT.md +356 -0
- plans/tests-audit/artifacts/CONTRIBUTING_ENHANCED_TEMPLATE.md +419 -0
- plans/tests-audit/artifacts/COVERAGE_GAP_ANALYSIS.md +152 -0
- plans/tests-audit/artifacts/DOCUMENTATION_ENHANCEMENT_REPORT.md +502 -0
- plans/tests-audit/artifacts/EXECUTIVE_AUDIT_SUMMARY.md +129 -0
- plans/tests-audit/artifacts/IMPLEMENTATION_ROADMAP.md +647 -0
- plans/tests-audit/artifacts/NUMERICAL_RECOMMENDATIONS.md +739 -0
- plans/tests-audit/artifacts/NUMERICAL_STABILITY_GUIDE_TEMPLATE.rst +451 -0
- plans/tests-audit/artifacts/NUMERICAL_STABILITY_REPORT.md +301 -0
- plans/tests-audit/artifacts/PHASE_3_SUMMARY.md +280 -0
- plans/tests-audit/artifacts/PHASE_4_SUMMARY.md +229 -0
- plans/tests-audit/artifacts/PHASE_5_SUMMARY.md +292 -0
- plans/tests-audit/artifacts/PHASE_6_CLOSEOUT.md +278 -0
- plans/tests-audit/artifacts/PHYSICS_GUIDE_TEMPLATE.rst +268 -0
- plans/tests-audit/artifacts/PHYSICS_VALIDATION_REPORT.md +235 -0
- plans/tests-audit/artifacts/TECHNICAL_DELIVERABLES_PACKAGE.md +2502 -0
- plans/tests-audit/artifacts/TEST_INVENTORY.csv +1204 -0
- plans/tests-audit/artifacts/TEST_INVENTORY.md +135 -0
- plans/tests-audit/artifacts/test_discovery_analysis.py +231 -0
- plans/tests-audit/artifacts/test_parser.py +395 -0
- solarwindpy/README.md +3 -0
- solarwindpy/Untitled.ipynb +54 -0
- solarwindpy/__init__.py +74 -0
- solarwindpy/core/__init__.py +23 -0
- solarwindpy/core/alfvenic_turbulence.py +804 -0
- solarwindpy/core/base.py +267 -0
- solarwindpy/core/ions.py +309 -0
- solarwindpy/core/plasma.py +2133 -0
- solarwindpy/core/spacecraft.py +256 -0
- solarwindpy/core/tensor.py +90 -0
- solarwindpy/core/units_constants.py +199 -0
- solarwindpy/core/vector.py +328 -0
- solarwindpy/fitfunctions/__init__.py +20 -0
- solarwindpy/fitfunctions/core.py +734 -0
- solarwindpy/fitfunctions/exponentials.py +188 -0
- solarwindpy/fitfunctions/gaussians.py +264 -0
- solarwindpy/fitfunctions/lines.py +116 -0
- solarwindpy/fitfunctions/moyal.py +71 -0
- solarwindpy/fitfunctions/plots.py +751 -0
- solarwindpy/fitfunctions/power_laws.py +209 -0
- solarwindpy/fitfunctions/tex_info.py +568 -0
- solarwindpy/fitfunctions/trend_fits.py +482 -0
- solarwindpy/instabilities/__init__.py +16 -0
- solarwindpy/instabilities/beta_ani.py +82 -0
- solarwindpy/instabilities/verscharen2016.py +631 -0
- solarwindpy/plotting/__init__.py +33 -0
- solarwindpy/plotting/agg_plot.py +489 -0
- solarwindpy/plotting/base.py +465 -0
- solarwindpy/plotting/hist1d.py +405 -0
- solarwindpy/plotting/hist2d.py +1035 -0
- solarwindpy/plotting/histograms.py +1845 -0
- solarwindpy/plotting/labels/__init__.py +104 -0
- solarwindpy/plotting/labels/base.py +686 -0
- solarwindpy/plotting/labels/chemistry.py +19 -0
- solarwindpy/plotting/labels/composition.py +100 -0
- solarwindpy/plotting/labels/datetime.py +235 -0
- solarwindpy/plotting/labels/elemental_abundance.py +73 -0
- solarwindpy/plotting/labels/special.py +794 -0
- solarwindpy/plotting/orbits.py +515 -0
- solarwindpy/plotting/scatter.py +99 -0
- solarwindpy/plotting/select_data_from_figure.py +329 -0
- solarwindpy/plotting/spiral.py +980 -0
- solarwindpy/plotting/tools.py +434 -0
- solarwindpy/scripts/__init__.py +1 -0
- solarwindpy/scripts/logs/.gitignore +1 -0
- solarwindpy/solar_activity/__init__.py +53 -0
- solarwindpy/solar_activity/base.py +605 -0
- solarwindpy/solar_activity/lisird/__init__.py +3 -0
- solarwindpy/solar_activity/lisird/extrema_calculator.py +394 -0
- solarwindpy/solar_activity/lisird/lisird.py +319 -0
- solarwindpy/solar_activity/plots.py +116 -0
- solarwindpy/solar_activity/sunspot_number/.DS_Store +0 -0
- solarwindpy/solar_activity/sunspot_number/__init__.py +3 -0
- solarwindpy/solar_activity/sunspot_number/sidc.py +556 -0
- solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv +72 -0
- solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv.silso +72 -0
- solarwindpy/tools/__init__.py +162 -0
- solarwindpy-0.1.1.dist-info/METADATA +181 -0
- solarwindpy-0.1.1.dist-info/RECORD +409 -0
- {solarwindpy-0.0.1.dev0.dist-info → solarwindpy-0.1.1.dist-info}/WHEEL +1 -1
- solarwindpy-0.1.1.dist-info/licenses/LICENSE.rst +32 -0
- solarwindpy-0.1.1.dist-info/top_level.txt +3 -0
- tests/__init__.py +1 -0
- tests/conftest.py +10 -0
- tests/core/__init__.py +1 -0
- tests/core/test_alfvenic_turbulence.py +544 -0
- tests/core/test_base.py +112 -0
- tests/core/test_base_head_tail.py +29 -0
- tests/core/test_base_mi_tuples.py +11 -0
- tests/core/test_core_verify_datetimeindex.py +32 -0
- tests/core/test_ions.py +325 -0
- tests/core/test_plasma.py +2581 -0
- tests/core/test_plasma_io.py +12 -0
- tests/core/test_quantities.py +507 -0
- tests/core/test_spacecraft.py +210 -0
- tests/core/test_units_constants.py +22 -0
- tests/data/epoch.csv +4 -0
- tests/data/plasma.csv +4 -0
- tests/data/spacecraft.csv +4 -0
- tests/fitfunctions/conftest.py +60 -0
- tests/fitfunctions/test_core.py +193 -0
- tests/fitfunctions/test_exponentials.py +342 -0
- tests/fitfunctions/test_gaussians.py +142 -0
- tests/fitfunctions/test_lines.py +349 -0
- tests/fitfunctions/test_moyal.py +258 -0
- tests/fitfunctions/test_plots.py +258 -0
- tests/fitfunctions/test_power_laws.py +365 -0
- tests/fitfunctions/test_tex_info.py +183 -0
- tests/fitfunctions/test_trend_fit_properties.py +31 -0
- tests/fitfunctions/test_trend_fits.py +244 -0
- tests/plotting/__init__.py +1 -0
- tests/plotting/labels/__init__.py +1 -0
- tests/plotting/labels/test_chemistry.py +243 -0
- tests/plotting/labels/test_composition.py +345 -0
- tests/plotting/labels/test_datetime.py +445 -0
- tests/plotting/labels/test_elemental_abundance.py +366 -0
- tests/plotting/labels/test_init.py +66 -0
- tests/plotting/labels/test_labels_base.py +347 -0
- tests/plotting/labels/test_special.py +550 -0
- tests/plotting/test_agg_plot.py +602 -0
- tests/plotting/test_base.py +752 -0
- tests/plotting/test_fixtures_utilities.py +775 -0
- tests/plotting/test_histograms.py +546 -0
- tests/plotting/test_integration.py +675 -0
- tests/plotting/test_orbits.py +435 -0
- tests/plotting/test_performance.py +708 -0
- tests/plotting/test_scatter.py +752 -0
- tests/plotting/test_select_data_from_figure.py +1209 -0
- tests/plotting/test_spiral.py +573 -0
- tests/plotting/test_tools.py +607 -0
- tests/plotting/test_visual_validation.py +465 -0
- tests/solar_activity/__init__.py +1 -0
- tests/solar_activity/lisird/__init__.py +1 -0
- tests/solar_activity/lisird/test_extrema_calculator.py +593 -0
- tests/solar_activity/lisird/test_lisird_id.py +187 -0
- tests/solar_activity/sunspot_number/__init__.py +1 -0
- tests/solar_activity/sunspot_number/test_init.py +399 -0
- tests/solar_activity/sunspot_number/test_sidc.py +465 -0
- tests/solar_activity/sunspot_number/test_sidc_id.py +223 -0
- tests/solar_activity/sunspot_number/test_sidc_loader.py +275 -0
- tests/solar_activity/sunspot_number/test_ssn_extrema.py +406 -0
- tests/solar_activity/test_base.py +656 -0
- tests/solar_activity/test_init.py +396 -0
- tests/solar_activity/test_plots.py +371 -0
- tests/test_circular_imports.py +408 -0
- tests/test_issue_titles.py +25 -0
- tests/test_statusline.py +298 -0
- solarwindpy-0.0.1.dev0.dist-info/METADATA +0 -14
- solarwindpy-0.0.1.dev0.dist-info/RECORD +0 -4
- solarwindpy-0.0.1.dev0.dist-info/top_level.txt +0 -1
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
# Phase 3: Physics Validation
|
|
2
|
+
|
|
3
|
+
## Phase Metadata
|
|
4
|
+
- **Phase**: 3/5
|
|
5
|
+
- **Estimated Duration**: 4-5 hours
|
|
6
|
+
- **Dependencies**: Phase 1 (Core Infrastructure), Phase 2 (Intelligent Testing)
|
|
7
|
+
- **Status**: Not Started
|
|
8
|
+
|
|
9
|
+
## 🎯 Phase Objective
|
|
10
|
+
Implement an advanced physics validation engine that enhances the existing PhysicsValidator agent integration, adds automated physics constraint checking, and provides comprehensive validation for scientific computing requirements. This phase ensures that the enhanced hook system maintains the scientific rigor required for NASA research code and peer-reviewed publications.
|
|
11
|
+
|
|
12
|
+
## 🧠 Phase Context
|
|
13
|
+
SolarWindPy is used for analyzing spacecraft data and must maintain strict physics validation standards. The current system has basic physics validation through the PhysicsValidator agent. This phase creates an advanced, automated system that:
|
|
14
|
+
|
|
15
|
+
- Integrates seamlessly with the existing PhysicsValidator agent
|
|
16
|
+
- Validates physics units and dimensional consistency
|
|
17
|
+
- Checks scientific constraints (thermal speed conventions, Alfvén speed calculations)
|
|
18
|
+
- Validates spacecraft data handling and MultiIndex DataFrame operations
|
|
19
|
+
- Ensures reproducibility for published research
|
|
20
|
+
- Maintains integration with scipy.constants and scientific Python ecosystem
|
|
21
|
+
|
|
22
|
+
**Critical Requirement**: Zero compromise on scientific accuracy or physics validation quality.
|
|
23
|
+
|
|
24
|
+
## 📋 Implementation Tasks
|
|
25
|
+
|
|
26
|
+
### Task Group 1: Physics Validation Engine
|
|
27
|
+
- [ ] **Enhanced PhysicsValidator Integration** (Est: 60 min) - Deep integration with existing PhysicsValidator agent
|
|
28
|
+
- Commit: `<checksum>`
|
|
29
|
+
- Status: Pending
|
|
30
|
+
- Files: `.claude/hooks/physics_validator_integration.py`
|
|
31
|
+
- Notes: Seamless agent integration, validation orchestration, result processing
|
|
32
|
+
|
|
33
|
+
- [ ] **Unit Consistency Checker** (Est: 45 min) - Automated unit validation for physics calculations
|
|
34
|
+
- Commit: `<checksum>`
|
|
35
|
+
- Status: Pending
|
|
36
|
+
- Files: `.claude/hooks/unit_checker.py`
|
|
37
|
+
- Notes: Unit tracking, dimensional analysis, SI unit enforcement
|
|
38
|
+
|
|
39
|
+
- [ ] **Physics Constraint Validator** (Est: 45 min) - Validate scientific constraints and conventions
|
|
40
|
+
- Commit: `<checksum>`
|
|
41
|
+
- Status: Pending
|
|
42
|
+
- Files: `.claude/hooks/physics_constraints.py`
|
|
43
|
+
- Notes: Thermal speed convention (mw² = 2kT), missing data handling (NaN), physical bounds
|
|
44
|
+
|
|
45
|
+
### Task Group 2: Scientific Computing Validation
|
|
46
|
+
- [ ] **Numerical Stability Guard Integration** (Est: 45 min) - Integration with NumericalStabilityGuard agent
|
|
47
|
+
- Commit: `<checksum>`
|
|
48
|
+
- Status: Pending
|
|
49
|
+
- Files: `.claude/hooks/numerical_stability_integration.py`
|
|
50
|
+
- Notes: Agent coordination, stability analysis, error handling
|
|
51
|
+
|
|
52
|
+
- [ ] **Scientific Constants Validator** (Est: 30 min) - Validate usage of scientific constants
|
|
53
|
+
- Commit: `<checksum>`
|
|
54
|
+
- Status: Pending
|
|
55
|
+
- Files: `.claude/hooks/constants_validator.py`
|
|
56
|
+
- Notes: scipy.constants integration, unit consistency, constant usage validation
|
|
57
|
+
|
|
58
|
+
- [ ] **Data Structure Validator** (Est: 45 min) - Validate MultiIndex DataFrame operations and spacecraft data
|
|
59
|
+
- Commit: `<checksum>`
|
|
60
|
+
- Status: Pending
|
|
61
|
+
- Files: `.claude/hooks/dataframe_validator.py`
|
|
62
|
+
- Notes: MultiIndex validation, Epoch datetime indices, data integrity checks
|
|
63
|
+
|
|
64
|
+
### Task Group 3: Research Workflow Validation
|
|
65
|
+
- [ ] **Reproducibility Checker** (Est: 30 min) - Ensure reproducible research workflows
|
|
66
|
+
- Commit: `<checksum>`
|
|
67
|
+
- Status: Pending
|
|
68
|
+
- Files: `.claude/hooks/reproducibility_checker.py`
|
|
69
|
+
- Notes: Random seed validation, deterministic operations, version tracking
|
|
70
|
+
|
|
71
|
+
- [ ] **Publication Readiness Validator** (Est: 30 min) - Validate code for publication standards
|
|
72
|
+
- Commit: `<checksum>`
|
|
73
|
+
- Status: Pending
|
|
74
|
+
- Files: `.claude/hooks/publication_validator.py`
|
|
75
|
+
- Notes: Code quality for papers, documentation completeness, example validation
|
|
76
|
+
|
|
77
|
+
- [ ] **Peer Review Compliance** (Est: 30 min) - Ensure compliance with peer review requirements
|
|
78
|
+
- Commit: `<checksum>`
|
|
79
|
+
- Status: Pending
|
|
80
|
+
- Files: `.claude/hooks/peer_review_validator.py`
|
|
81
|
+
- Notes: Code transparency, methodology validation, result verification
|
|
82
|
+
|
|
83
|
+
### Task Group 4: Spacecraft Data Validation
|
|
84
|
+
- [ ] **Plasma Physics Validator** (Est: 45 min) - Validate plasma physics calculations and constraints
|
|
85
|
+
- Commit: `<checksum>`
|
|
86
|
+
- Status: Pending
|
|
87
|
+
- Files: `.claude/hooks/plasma_validator.py`
|
|
88
|
+
- Notes: Plasma parameter validation, ion composition checks, magnetic field validation
|
|
89
|
+
|
|
90
|
+
- [ ] **Time Series Validator** (Est: 30 min) - Validate spacecraft time series data handling
|
|
91
|
+
- Commit: `<checksum>`
|
|
92
|
+
- Status: Pending
|
|
93
|
+
- Files: `.claude/hooks/timeseries_validator.py`
|
|
94
|
+
- Notes: Chronological order, data gaps, timestamp validation
|
|
95
|
+
|
|
96
|
+
- [ ] **Instrument Data Validator** (Est: 30 min) - Validate spacecraft instrument data processing
|
|
97
|
+
- Commit: `<checksum>`
|
|
98
|
+
- Status: Pending
|
|
99
|
+
- Files: `.claude/hooks/instrument_validator.py`
|
|
100
|
+
- Notes: Data quality flags, calibration validation, measurement units
|
|
101
|
+
|
|
102
|
+
### Task Group 5: Validation Orchestration
|
|
103
|
+
- [ ] **Physics Validation Orchestrator** (Est: 45 min) - Coordinate all physics validation components
|
|
104
|
+
- Commit: `<checksum>`
|
|
105
|
+
- Status: Pending
|
|
106
|
+
- Files: `.claude/hooks/physics_orchestrator.py`
|
|
107
|
+
- Notes: Validation workflow, agent coordination, result aggregation
|
|
108
|
+
|
|
109
|
+
- [ ] **Validation Reporting System** (Est: 30 min) - Generate comprehensive validation reports
|
|
110
|
+
- Commit: `<checksum>`
|
|
111
|
+
- Status: Pending
|
|
112
|
+
- Files: `.claude/hooks/validation_reporter.py`
|
|
113
|
+
- Notes: Report generation, issue tracking, validation metrics
|
|
114
|
+
|
|
115
|
+
- [ ] **Emergency Physics Check** (Est: 30 min) - Critical physics validation for urgent commits
|
|
116
|
+
- Commit: `<checksum>`
|
|
117
|
+
- Status: Pending
|
|
118
|
+
- Files: `.claude/hooks/emergency_physics_check.py`
|
|
119
|
+
- Notes: Fast validation mode, critical checks only, emergency protocols
|
|
120
|
+
|
|
121
|
+
## ✅ Phase Acceptance Criteria
|
|
122
|
+
- [ ] PhysicsValidator agent integration enhanced and fully functional
|
|
123
|
+
- [ ] Unit consistency checking operational across all physics modules
|
|
124
|
+
- [ ] Physics constraints validated automatically (thermal speed, Alfvén speed, etc.)
|
|
125
|
+
- [ ] NumericalStabilityGuard agent seamlessly integrated
|
|
126
|
+
- [ ] Scientific constants usage validated with scipy.constants
|
|
127
|
+
- [ ] MultiIndex DataFrame operations validated for spacecraft data
|
|
128
|
+
- [ ] Reproducibility checking ensures deterministic research workflows
|
|
129
|
+
- [ ] Publication readiness validation operational
|
|
130
|
+
- [ ] Plasma physics calculations validated comprehensively
|
|
131
|
+
- [ ] Time series and instrument data validation functional
|
|
132
|
+
- [ ] Physics validation orchestration coordinates all components
|
|
133
|
+
- [ ] Validation reporting provides comprehensive feedback
|
|
134
|
+
- [ ] Emergency physics check available for urgent commits
|
|
135
|
+
- [ ] All existing physics validation capabilities preserved
|
|
136
|
+
- [ ] Phase tests pass with >95% coverage
|
|
137
|
+
- [ ] Integration with Phases 1 and 2 complete
|
|
138
|
+
- [ ] Scientific workflow validation maintained
|
|
139
|
+
|
|
140
|
+
## 🧪 Phase Testing Strategy
|
|
141
|
+
|
|
142
|
+
### Physics Validation Testing
|
|
143
|
+
- **Unit Testing**: Individual validation components and algorithms
|
|
144
|
+
- **Physics Accuracy**: Validate against known physics results
|
|
145
|
+
- **Constraint Testing**: Verify physics constraint enforcement
|
|
146
|
+
- **Edge Case Testing**: Boundary conditions and special cases
|
|
147
|
+
- **Agent Integration**: PhysicsValidator and NumericalStabilityGuard coordination
|
|
148
|
+
|
|
149
|
+
### Scientific Computing Testing
|
|
150
|
+
- **Numerical Accuracy**: Precision and stability validation
|
|
151
|
+
- **Reproducibility**: Deterministic result validation
|
|
152
|
+
- **Constants Usage**: Scientific constants integration testing
|
|
153
|
+
- **Data Structure**: MultiIndex DataFrame validation testing
|
|
154
|
+
|
|
155
|
+
### Research Workflow Testing
|
|
156
|
+
- **End-to-End**: Complete research workflow validation
|
|
157
|
+
- **Publication**: Publication-ready code validation
|
|
158
|
+
- **Peer Review**: Compliance with review standards
|
|
159
|
+
- **Spacecraft Data**: Real spacecraft data processing validation
|
|
160
|
+
|
|
161
|
+
### Performance Testing
|
|
162
|
+
- **Validation Speed**: Physics validation execution time
|
|
163
|
+
- **Memory Usage**: Resource consumption during validation
|
|
164
|
+
- **Scalability**: Performance with large datasets
|
|
165
|
+
- **Parallel Validation**: Concurrent validation operations
|
|
166
|
+
|
|
167
|
+
## 🔧 Phase Technical Requirements
|
|
168
|
+
|
|
169
|
+
### Dependencies
|
|
170
|
+
- **Phase 1**: Core infrastructure and agent integration framework
|
|
171
|
+
- **Phase 2**: Intelligent testing system for physics test selection
|
|
172
|
+
- **numpy**: Numerical computing foundation
|
|
173
|
+
- **scipy**: Scientific computing library and constants
|
|
174
|
+
- **pandas**: DataFrame operations and MultiIndex handling
|
|
175
|
+
- **astropy**: Astronomical units and constants (if used)
|
|
176
|
+
- **matplotlib**: Plotting validation (for PlottingEngineer integration)
|
|
177
|
+
- **pytest**: Physics test execution and validation
|
|
178
|
+
|
|
179
|
+
### Environment
|
|
180
|
+
- **Scientific Python**: Full scientific Python stack
|
|
181
|
+
- **Agent Access**: PhysicsValidator and NumericalStabilityGuard agents
|
|
182
|
+
- **Physics Data**: Access to test physics datasets
|
|
183
|
+
- **Validation Resources**: Computational resources for physics validation
|
|
184
|
+
|
|
185
|
+
### Constraints
|
|
186
|
+
- **Scientific Accuracy**: Zero compromise on physics validation quality
|
|
187
|
+
- **Performance**: Validation must complete within reasonable time
|
|
188
|
+
- **Reproducibility**: All validation must be deterministic
|
|
189
|
+
- **Compatibility**: Maintain compatibility with existing physics code
|
|
190
|
+
- **Standards**: Adhere to scientific computing best practices
|
|
191
|
+
|
|
192
|
+
## 📂 Phase Affected Areas
|
|
193
|
+
|
|
194
|
+
### New Physics Validation Files
|
|
195
|
+
- `.claude/hooks/physics_validator_integration.py` - Enhanced agent integration
|
|
196
|
+
- `.claude/hooks/unit_checker.py` - Unit consistency validation
|
|
197
|
+
- `.claude/hooks/physics_constraints.py` - Physics constraint validation
|
|
198
|
+
- `.claude/hooks/numerical_stability_integration.py` - NumericalStabilityGuard integration
|
|
199
|
+
- `.claude/hooks/constants_validator.py` - Scientific constants validation
|
|
200
|
+
- `.claude/hooks/dataframe_validator.py` - DataFrame structure validation
|
|
201
|
+
- `.claude/hooks/reproducibility_checker.py` - Reproducibility validation
|
|
202
|
+
- `.claude/hooks/publication_validator.py` - Publication readiness
|
|
203
|
+
- `.claude/hooks/peer_review_validator.py` - Peer review compliance
|
|
204
|
+
- `.claude/hooks/plasma_validator.py` - Plasma physics validation
|
|
205
|
+
- `.claude/hooks/timeseries_validator.py` - Time series validation
|
|
206
|
+
- `.claude/hooks/instrument_validator.py` - Instrument data validation
|
|
207
|
+
- `.claude/hooks/physics_orchestrator.py` - Validation orchestration
|
|
208
|
+
- `.claude/hooks/validation_reporter.py` - Validation reporting
|
|
209
|
+
- `.claude/hooks/emergency_physics_check.py` - Emergency validation
|
|
210
|
+
|
|
211
|
+
### Enhanced Configuration
|
|
212
|
+
- `.claude/config/hook_config.yaml` - Physics validation configuration
|
|
213
|
+
- `.claude/config/physics_constraints.yaml` - Physics constraint definitions
|
|
214
|
+
- `.claude/config/validation_rules.yaml` - Validation rule definitions
|
|
215
|
+
|
|
216
|
+
### Validation Data and Cache
|
|
217
|
+
- `.claude/validation/` - Validation data and reference results
|
|
218
|
+
- `.claude/cache/physics_validation/` - Physics validation cache
|
|
219
|
+
- `.claude/reports/validation/` - Validation reports and logs
|
|
220
|
+
|
|
221
|
+
### Enhanced Existing Files
|
|
222
|
+
- `.claude/hooks/hook_manager.py` - Add physics validation orchestration
|
|
223
|
+
- `.claude/hooks/pre_commit_handler.py` - Integrate physics validation
|
|
224
|
+
- `.claude/hooks/pre_push_handler.py` - Comprehensive physics validation
|
|
225
|
+
- `.claude/hooks/test_selector.py` - Physics test prioritization
|
|
226
|
+
|
|
227
|
+
## 📊 Phase Progress Tracking
|
|
228
|
+
|
|
229
|
+
### Current Status
|
|
230
|
+
- **Tasks Completed**: 0/15
|
|
231
|
+
- **Time Invested**: 0h of 4.5h estimated
|
|
232
|
+
- **Completion Percentage**: 0%
|
|
233
|
+
- **Last Updated**: 2025-01-19
|
|
234
|
+
|
|
235
|
+
### Physics Validation Metrics
|
|
236
|
+
- **Validation Coverage**: 100% of physics modules (target)
|
|
237
|
+
- **Accuracy Preservation**: No reduction in validation quality
|
|
238
|
+
- **Performance Impact**: <20% increase in validation time
|
|
239
|
+
- **Agent Integration**: All physics agents fully integrated
|
|
240
|
+
|
|
241
|
+
### Blockers & Issues
|
|
242
|
+
- **Dependencies**: Requires Phases 1 and 2 completion
|
|
243
|
+
- **Agent Access**: Needs PhysicsValidator and NumericalStabilityGuard agents
|
|
244
|
+
- **Physics Data**: Requires access to validation datasets
|
|
245
|
+
|
|
246
|
+
### Next Actions
|
|
247
|
+
1. **Prerequisites**: Complete Phases 1 and 2
|
|
248
|
+
2. **Immediate**: Begin PhysicsValidator integration enhancement
|
|
249
|
+
3. **Short-term**: Implement unit consistency and constraint validation
|
|
250
|
+
4. **Medium-term**: Add scientific computing and research workflow validation
|
|
251
|
+
5. **Validation**: Comprehensive physics validation testing
|
|
252
|
+
|
|
253
|
+
## 💬 Phase Implementation Notes
|
|
254
|
+
|
|
255
|
+
### Scientific Rigor Requirements
|
|
256
|
+
- **Zero Compromise**: No reduction in physics validation quality
|
|
257
|
+
- **Comprehensive Coverage**: All physics modules must be validated
|
|
258
|
+
- **Reproducible Results**: All validation must be deterministic
|
|
259
|
+
- **Research Standards**: Meet publication and peer review requirements
|
|
260
|
+
|
|
261
|
+
### Physics Validation Strategies
|
|
262
|
+
- **Layered Validation**: Multiple validation levels for comprehensive coverage
|
|
263
|
+
- **Agent Coordination**: Leverage existing specialized agents effectively
|
|
264
|
+
- **Automated Checking**: Reduce manual validation while maintaining quality
|
|
265
|
+
- **Fast Validation**: Emergency mode for urgent commits
|
|
266
|
+
|
|
267
|
+
### Code Structure Examples
|
|
268
|
+
|
|
269
|
+
#### Enhanced PhysicsValidator Integration
|
|
270
|
+
```python
|
|
271
|
+
class PhysicsValidatorIntegration:
|
|
272
|
+
"""Enhanced integration with PhysicsValidator agent."""
|
|
273
|
+
|
|
274
|
+
def __init__(self, config: dict):
|
|
275
|
+
self.config = config
|
|
276
|
+
self.agent_interface = AgentInterface()
|
|
277
|
+
self.unit_checker = UnitChecker()
|
|
278
|
+
self.constraints_validator = PhysicsConstraints()
|
|
279
|
+
|
|
280
|
+
async def validate_physics(self, changed_files: List[str]) -> ValidationResult:
|
|
281
|
+
"""Comprehensive physics validation of changed files."""
|
|
282
|
+
validation_tasks = []
|
|
283
|
+
|
|
284
|
+
# Identify physics-related changes
|
|
285
|
+
physics_files = self._filter_physics_files(changed_files)
|
|
286
|
+
|
|
287
|
+
if not physics_files:
|
|
288
|
+
return ValidationResult.success("No physics files changed")
|
|
289
|
+
|
|
290
|
+
# Unit consistency validation
|
|
291
|
+
validation_tasks.append(
|
|
292
|
+
self.unit_checker.validate_units(physics_files)
|
|
293
|
+
)
|
|
294
|
+
|
|
295
|
+
# Physics constraints validation
|
|
296
|
+
validation_tasks.append(
|
|
297
|
+
self.constraints_validator.validate_constraints(physics_files)
|
|
298
|
+
)
|
|
299
|
+
|
|
300
|
+
# PhysicsValidator agent consultation
|
|
301
|
+
validation_tasks.append(
|
|
302
|
+
self.agent_interface.invoke_agent(
|
|
303
|
+
"physics_validator",
|
|
304
|
+
{"files": physics_files, "validation_type": "comprehensive"}
|
|
305
|
+
)
|
|
306
|
+
)
|
|
307
|
+
|
|
308
|
+
# Execute all validations
|
|
309
|
+
results = await asyncio.gather(*validation_tasks)
|
|
310
|
+
|
|
311
|
+
return self._aggregate_results(results)
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
#### Unit Consistency Checker
|
|
315
|
+
```python
|
|
316
|
+
class UnitChecker:
|
|
317
|
+
"""Validate unit consistency in physics calculations."""
|
|
318
|
+
|
|
319
|
+
def __init__(self):
|
|
320
|
+
self.unit_registry = self._load_unit_registry()
|
|
321
|
+
self.physics_constants = self._load_physics_constants()
|
|
322
|
+
|
|
323
|
+
def validate_units(self, files: List[str]) -> ValidationResult:
|
|
324
|
+
"""Validate unit consistency across physics files."""
|
|
325
|
+
issues = []
|
|
326
|
+
|
|
327
|
+
for file_path in files:
|
|
328
|
+
try:
|
|
329
|
+
ast_tree = self._parse_file(file_path)
|
|
330
|
+
unit_issues = self._analyze_units(ast_tree, file_path)
|
|
331
|
+
issues.extend(unit_issues)
|
|
332
|
+
except Exception as e:
|
|
333
|
+
issues.append(f"Error analyzing {file_path}: {e}")
|
|
334
|
+
|
|
335
|
+
if issues:
|
|
336
|
+
return ValidationResult.failure("Unit consistency issues", issues)
|
|
337
|
+
else:
|
|
338
|
+
return ValidationResult.success("All units consistent")
|
|
339
|
+
|
|
340
|
+
def _analyze_units(self, ast_tree, file_path: str) -> List[str]:
|
|
341
|
+
"""Analyze AST for unit consistency issues."""
|
|
342
|
+
issues = []
|
|
343
|
+
|
|
344
|
+
# Check for thermal speed convention: mw² = 2kT
|
|
345
|
+
thermal_speed_issues = self._check_thermal_speed_convention(ast_tree)
|
|
346
|
+
issues.extend(thermal_speed_issues)
|
|
347
|
+
|
|
348
|
+
# Check for proper SI unit usage
|
|
349
|
+
si_unit_issues = self._check_si_units(ast_tree)
|
|
350
|
+
issues.extend(si_unit_issues)
|
|
351
|
+
|
|
352
|
+
# Check for dimensional consistency
|
|
353
|
+
dimensional_issues = self._check_dimensional_consistency(ast_tree)
|
|
354
|
+
issues.extend(dimensional_issues)
|
|
355
|
+
|
|
356
|
+
return [f"{file_path}: {issue}" for issue in issues]
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
#### Physics Constraints Validator
|
|
360
|
+
```python
|
|
361
|
+
class PhysicsConstraints:
|
|
362
|
+
"""Validate physics constraints and conventions."""
|
|
363
|
+
|
|
364
|
+
def __init__(self):
|
|
365
|
+
self.constraints = self._load_constraints()
|
|
366
|
+
|
|
367
|
+
def validate_constraints(self, files: List[str]) -> ValidationResult:
|
|
368
|
+
"""Validate physics constraints in changed files."""
|
|
369
|
+
violations = []
|
|
370
|
+
|
|
371
|
+
for file_path in files:
|
|
372
|
+
file_violations = self._check_file_constraints(file_path)
|
|
373
|
+
violations.extend(file_violations)
|
|
374
|
+
|
|
375
|
+
if violations:
|
|
376
|
+
return ValidationResult.failure("Physics constraint violations", violations)
|
|
377
|
+
else:
|
|
378
|
+
return ValidationResult.success("All physics constraints satisfied")
|
|
379
|
+
|
|
380
|
+
def _check_file_constraints(self, file_path: str) -> List[str]:
|
|
381
|
+
"""Check physics constraints for a single file."""
|
|
382
|
+
violations = []
|
|
383
|
+
|
|
384
|
+
with open(file_path, 'r') as f:
|
|
385
|
+
content = f.read()
|
|
386
|
+
|
|
387
|
+
# Check thermal speed convention
|
|
388
|
+
if 'thermal_speed' in content or 'v_th' in content:
|
|
389
|
+
violations.extend(self._check_thermal_speed_convention(content, file_path))
|
|
390
|
+
|
|
391
|
+
# Check Alfvén speed calculation
|
|
392
|
+
if 'alfven' in content.lower() or 'v_a' in content:
|
|
393
|
+
violations.extend(self._check_alfven_speed(content, file_path))
|
|
394
|
+
|
|
395
|
+
# Check missing data handling
|
|
396
|
+
violations.extend(self._check_missing_data_handling(content, file_path))
|
|
397
|
+
|
|
398
|
+
# Check time series ordering
|
|
399
|
+
violations.extend(self._check_time_series_order(content, file_path))
|
|
400
|
+
|
|
401
|
+
return violations
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
#### Configuration Enhancement
|
|
405
|
+
```yaml
|
|
406
|
+
# Addition to .claude/config/hook_config.yaml
|
|
407
|
+
physics_validation:
|
|
408
|
+
enabled: true
|
|
409
|
+
strict_mode: true
|
|
410
|
+
emergency_mode: false
|
|
411
|
+
|
|
412
|
+
agents:
|
|
413
|
+
physics_validator:
|
|
414
|
+
enabled: true
|
|
415
|
+
timeout: 30
|
|
416
|
+
critical: true
|
|
417
|
+
|
|
418
|
+
numerical_stability_guard:
|
|
419
|
+
enabled: true
|
|
420
|
+
timeout: 20
|
|
421
|
+
critical: true
|
|
422
|
+
|
|
423
|
+
validation_levels:
|
|
424
|
+
unit_consistency: true
|
|
425
|
+
physics_constraints: true
|
|
426
|
+
numerical_stability: true
|
|
427
|
+
reproducibility: true
|
|
428
|
+
publication_readiness: false # Enable for publication branches
|
|
429
|
+
|
|
430
|
+
constraints:
|
|
431
|
+
thermal_speed_convention: "mw2_equals_2kT"
|
|
432
|
+
missing_data_value: "NaN"
|
|
433
|
+
time_series_order: "chronological"
|
|
434
|
+
alfven_speed_formula: "B_over_sqrt_mu0_rho"
|
|
435
|
+
|
|
436
|
+
performance:
|
|
437
|
+
max_validation_time: 60 # seconds
|
|
438
|
+
parallel_validation: true
|
|
439
|
+
cache_results: true
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
*Phase 3 of 5 - SolarWindPy Integrated Hook System Enhancement - Last Updated: 2025-01-19*
|
|
444
|
+
*See [0-Overview.md](./0-Overview.md) for complete plan context and cross-phase coordination.*
|