solarwindpy 0.0.1.dev0__py3-none-any.whl → 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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.0.dist-info/METADATA +181 -0
- solarwindpy-0.1.0.dist-info/RECORD +409 -0
- {solarwindpy-0.0.1.dev0.dist-info → solarwindpy-0.1.0.dist-info}/WHEEL +1 -1
- solarwindpy-0.1.0.dist-info/licenses/LICENSE.rst +32 -0
- solarwindpy-0.1.0.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,207 @@
|
|
|
1
|
+
# Plan Closeout - readthedocs-automation
|
|
2
|
+
|
|
3
|
+
## Closeout Metadata
|
|
4
|
+
- **Plan Name**: readthedocs-automation
|
|
5
|
+
- **Completed Date**: 2025-08-19
|
|
6
|
+
- **Total Duration**: [Actual hours] (Estimated: 10 hours)
|
|
7
|
+
- **Phases Completed**: 4/4
|
|
8
|
+
- **Final Status**: ✅ COMPLETED
|
|
9
|
+
- **Success Rate**: [percentage based on acceptance criteria met]
|
|
10
|
+
- **Implementation Branch**: feature/readthedocs-automation
|
|
11
|
+
- **Plan Branch**: plan/readthedocs-automation - PRESERVED
|
|
12
|
+
- **Archived Location**: plans/completed/readthedocs-automation/
|
|
13
|
+
|
|
14
|
+
## 📊 Executive Summary
|
|
15
|
+
|
|
16
|
+
### 🎯 Objectives Achievement
|
|
17
|
+
- **Primary Objective**: Implement automated ReadTheDocs documentation deployment with zero manual RST editing through:
|
|
18
|
+
1. **Template-based customization** - All changes through persistent templates
|
|
19
|
+
2. **Automated pipeline** - Push to master triggers ReadTheDocs builds
|
|
20
|
+
3. **Physics-aware documentation** - Scientific context in generated docs
|
|
21
|
+
4. **Plan consolidation** - Single source of truth replacing 4 existing plans
|
|
22
|
+
- **Achievement Status**: [✅ Fully Achieved | ⚠️ Partially Achieved | ❌ Not Achieved]
|
|
23
|
+
- **Key Deliverables**:
|
|
24
|
+
- [List major deliverables completed]
|
|
25
|
+
- [Include specific files, features, or capabilities delivered]
|
|
26
|
+
|
|
27
|
+
### 📈 Success Metrics
|
|
28
|
+
- **Acceptance Criteria Met**: [X]/[Y] ([percentage]%)
|
|
29
|
+
- **Test Coverage**: [percentage]% (Target: ≥95%)
|
|
30
|
+
- **Code Quality**: [All checks passed | Issues noted below]
|
|
31
|
+
- **Performance Impact**: [Describe any performance changes]
|
|
32
|
+
|
|
33
|
+
## 🏗️ Technical Architecture Decisions
|
|
34
|
+
|
|
35
|
+
### Core Design Choices
|
|
36
|
+
- **Architectural Pattern**: [Describe main architectural approach chosen]
|
|
37
|
+
- **Framework/Library Choices**: [List key technical dependencies added/modified]
|
|
38
|
+
- **Data Structure Decisions**: [Especially important for SolarWindPy's MultiIndex patterns]
|
|
39
|
+
|
|
40
|
+
### Physics/Scientific Validation Patterns
|
|
41
|
+
- **Unit Consistency**: [Describe validation approaches for physical units]
|
|
42
|
+
- **Numerical Stability**: [Document approaches for computational accuracy]
|
|
43
|
+
- **Scientific Constraints**: [Physics laws/principles enforced in implementation]
|
|
44
|
+
- **Validation Methods**: [How correctness was verified - tests, benchmarks, literature comparison]
|
|
45
|
+
|
|
46
|
+
### Integration Decisions
|
|
47
|
+
- **SolarWindPy Ecosystem**: [How implementation fits with core/, plotting/, fitfunctions/]
|
|
48
|
+
- **API Design**: [Public interface decisions and rationale]
|
|
49
|
+
- **Backwards Compatibility**: [Compatibility considerations and any breaking changes]
|
|
50
|
+
|
|
51
|
+
## 📋 Implementation Insights
|
|
52
|
+
|
|
53
|
+
### Phase-by-Phase Learnings
|
|
54
|
+
#### Phase 1: [Phase Name]
|
|
55
|
+
- **Key Challenge**: [Main technical or conceptual challenge]
|
|
56
|
+
- **Solution Approach**: [How it was resolved]
|
|
57
|
+
- **Time Variance**: [Actual vs estimated time with explanation]
|
|
58
|
+
|
|
59
|
+
#### Phase 2: [Phase Name]
|
|
60
|
+
- **Key Challenge**: [Main technical or conceptual challenge]
|
|
61
|
+
- **Solution Approach**: [How it was resolved]
|
|
62
|
+
- **Time Variance**: [Actual vs estimated time with explanation]
|
|
63
|
+
|
|
64
|
+
[Continue for all phases]
|
|
65
|
+
|
|
66
|
+
### Unexpected Discoveries
|
|
67
|
+
- **Technical Surprises**: [Unexpected technical findings or requirements]
|
|
68
|
+
- **Domain Knowledge**: [New understanding of physics/scientific computing domain]
|
|
69
|
+
- **Tool/Framework Insights**: [Learnings about development tools, testing, etc.]
|
|
70
|
+
|
|
71
|
+
## 🧪 Quality Assurance
|
|
72
|
+
|
|
73
|
+
### Testing Strategy Execution
|
|
74
|
+
- **Test Categories**: [Unit, integration, physics validation, performance]
|
|
75
|
+
- **Coverage Analysis**: [Which areas achieved target coverage, which didn't]
|
|
76
|
+
- **Physics Validation**: [How scientific correctness was verified]
|
|
77
|
+
- **Edge Case Handling**: [Boundary conditions, numerical edge cases addressed]
|
|
78
|
+
|
|
79
|
+
### Code Quality Metrics
|
|
80
|
+
- **Linting Results**: [flake8, black formatting status]
|
|
81
|
+
- **Documentation Quality**: [NumPy docstring compliance, example coverage]
|
|
82
|
+
- **Performance Benchmarks**: [Any performance testing results]
|
|
83
|
+
|
|
84
|
+
## 📊 Velocity Intelligence
|
|
85
|
+
|
|
86
|
+
### Time Estimation Accuracy
|
|
87
|
+
- **Total Estimated**: [hours]
|
|
88
|
+
- **Total Actual**: [hours]
|
|
89
|
+
- **Variance**: [percentage over/under estimate]
|
|
90
|
+
- **Accuracy Factor**: [actual/estimated ratio for velocity learning]
|
|
91
|
+
|
|
92
|
+
### Task-Level Analysis
|
|
93
|
+
| Task Category | Estimated | Actual | Variance | Notes |
|
|
94
|
+
|---------------|-----------|--------|----------|-------|
|
|
95
|
+
| Physics Implementation | [hours] | [hours] | [%] | [Complexity factors discovered] |
|
|
96
|
+
| Testing Development | [hours] | [hours] | [%] | [Testing complexity insights] |
|
|
97
|
+
| Documentation | [hours] | [hours] | [%] | [Documentation effort learnings] |
|
|
98
|
+
| Integration | [hours] | [hours] | [%] | [Integration complexity factors] |
|
|
99
|
+
|
|
100
|
+
### Velocity Learning Inputs
|
|
101
|
+
- **Complexity Factors Discovered**:
|
|
102
|
+
- Physics validation: [multiplier] (e.g., 1.3x for complex calculations)
|
|
103
|
+
- Numerical stability: [multiplier] (e.g., 1.5x for edge case handling)
|
|
104
|
+
- Plotting integration: [multiplier] (e.g., 0.8x for standard patterns)
|
|
105
|
+
- **Developer Productivity**: [session rating - high/medium/low with factors]
|
|
106
|
+
|
|
107
|
+
## 🎓 Lessons Learned
|
|
108
|
+
|
|
109
|
+
### What Worked Well
|
|
110
|
+
- **Technical Approaches**: [Successful patterns, tools, methodologies]
|
|
111
|
+
- **Planning Accuracy**: [Where estimates were accurate and why]
|
|
112
|
+
- **Team/Process**: [Effective collaboration or workflow elements]
|
|
113
|
+
- **SolarWindPy Patterns**: [Package-specific patterns that worked well]
|
|
114
|
+
|
|
115
|
+
### What Could Be Improved
|
|
116
|
+
- **Technical Challenges**: [Areas that took longer or were more complex than expected]
|
|
117
|
+
- **Planning Gaps**: [Estimation errors or missing considerations]
|
|
118
|
+
- **Process Issues**: [Workflow inefficiencies or obstacles encountered]
|
|
119
|
+
- **Knowledge Gaps**: [Domain knowledge that would have accelerated development]
|
|
120
|
+
|
|
121
|
+
### Reusable Patterns
|
|
122
|
+
- **Code Patterns**: [Reusable implementation patterns for similar work]
|
|
123
|
+
- **Testing Patterns**: [Effective testing approaches for similar domains]
|
|
124
|
+
- **Physics Validation**: [Validation approaches applicable to other physics implementations]
|
|
125
|
+
- **Documentation Patterns**: [Effective documentation strategies for scientific software]
|
|
126
|
+
|
|
127
|
+
## 🔮 Future Recommendations
|
|
128
|
+
|
|
129
|
+
### Immediate Follow-up Tasks
|
|
130
|
+
- [ ] [Any immediate technical debt or cleanup items]
|
|
131
|
+
- [ ] [Documentation improvements identified but not completed]
|
|
132
|
+
- [ ] [Performance optimizations that could be beneficial]
|
|
133
|
+
|
|
134
|
+
### Enhancement Opportunities
|
|
135
|
+
- **Feature Extensions**: [Natural extensions or enhancements that could build on this work]
|
|
136
|
+
- **Performance Optimizations**: [Potential optimization opportunities for future consideration]
|
|
137
|
+
- **Integration Possibilities**: [Ways this work could integrate with other SolarWindPy components]
|
|
138
|
+
|
|
139
|
+
### Related Work Suggestions
|
|
140
|
+
- **Complementary Plans**: [Other plans that would synergize with this implementation]
|
|
141
|
+
- **Dependency Updates**: [Recommendations for dependency or infrastructure improvements]
|
|
142
|
+
- **Research Directions**: [Scientific computing or physics research directions this enables]
|
|
143
|
+
|
|
144
|
+
## 📚 Knowledge Transfer
|
|
145
|
+
|
|
146
|
+
### Key Implementation Details
|
|
147
|
+
- **Critical Code Locations**: [File paths and line numbers for key implementation details]
|
|
148
|
+
- **Configuration Dependencies**: [Important configuration or environment requirements]
|
|
149
|
+
- **External Dependencies**: [Third-party dependencies and version constraints]
|
|
150
|
+
|
|
151
|
+
### Maintenance Considerations
|
|
152
|
+
- **Regular Maintenance**: [Ongoing maintenance requirements]
|
|
153
|
+
- **Update Procedures**: [How to update or modify this implementation safely]
|
|
154
|
+
- **Testing Requirements**: [Essential tests to maintain when making changes]
|
|
155
|
+
- **Documentation Maintenance**: [Documentation that needs regular updates]
|
|
156
|
+
|
|
157
|
+
### Expert Knowledge Requirements
|
|
158
|
+
- **Domain Expertise**: [Physics or scientific computing knowledge needed for maintenance]
|
|
159
|
+
- **Technical Skills**: [Specific technical skills required for future modifications]
|
|
160
|
+
- **SolarWindPy Context**: [Package-specific knowledge essential for this component]
|
|
161
|
+
|
|
162
|
+
## 🏷️ Reference Information
|
|
163
|
+
|
|
164
|
+
### Commit History
|
|
165
|
+
- **Feature Branch**: feature/readthedocs-automation - [number] commits
|
|
166
|
+
- **Key Commits**:
|
|
167
|
+
- [commit-hash]: [Brief description of major milestone]
|
|
168
|
+
- [commit-hash]: [Brief description of major milestone]
|
|
169
|
+
|
|
170
|
+
### Documentation Updates
|
|
171
|
+
- **API Documentation**: [Files updated with new API documentation]
|
|
172
|
+
- **User Documentation**: [Examples, tutorials, or user guides updated]
|
|
173
|
+
- **Developer Documentation**: [Technical documentation for future developers]
|
|
174
|
+
|
|
175
|
+
### Related Plans
|
|
176
|
+
- **Dependency Plans**: [Plans this work depended on]
|
|
177
|
+
- **Dependent Plans**: [Plans that now depend on this work]
|
|
178
|
+
- **Related Initiatives**: [Parallel or complementary development efforts]
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 📋 Closeout Checklist
|
|
183
|
+
|
|
184
|
+
### Technical Completion
|
|
185
|
+
- [ ] All acceptance criteria from 0-Overview.md verified
|
|
186
|
+
- [ ] Test coverage ≥95% achieved and maintained
|
|
187
|
+
- [ ] Code quality checks (black, flake8) passing
|
|
188
|
+
- [ ] Physics validation tests passing
|
|
189
|
+
- [ ] Documentation updated (API, examples, guides)
|
|
190
|
+
|
|
191
|
+
### Knowledge Preservation
|
|
192
|
+
- [ ] All technical decisions documented above
|
|
193
|
+
- [ ] Lessons learned captured for velocity learning
|
|
194
|
+
- [ ] Reusable patterns identified and documented
|
|
195
|
+
- [ ] Future recommendations recorded
|
|
196
|
+
|
|
197
|
+
### Process Completion
|
|
198
|
+
- [ ] Feature branch merged to plan branch
|
|
199
|
+
- [ ] Plan branch prepared for archival
|
|
200
|
+
- [ ] Velocity metrics recorded in .velocity/metrics.json
|
|
201
|
+
- [ ] Cross-plan dependencies updated
|
|
202
|
+
- [ ] Branch preservation logged
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
*Plan completed on [Date] by UnifiedPlanCoordinator - Archived to plans/completed/readthedocs-automation/ with branch preservation*
|
|
207
|
+
*Closeout generated from closeout-template.md v1.0*
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Plan Abandonment Record
|
|
2
|
+
|
|
3
|
+
## Plan Information
|
|
4
|
+
- **Original Plan**: readthedocs-automation
|
|
5
|
+
- **Created**: 2025-08-19
|
|
6
|
+
- **Abandoned**: 2025-08-20
|
|
7
|
+
- **Estimated Duration**: 10+ hours (4 phases)
|
|
8
|
+
- **Replacement**: readthedocs-simplified (2 hours, 4 phases)
|
|
9
|
+
|
|
10
|
+
## Abandonment Reason
|
|
11
|
+
|
|
12
|
+
### Over-Engineering Assessment
|
|
13
|
+
This plan was abandoned due to **unnecessary complexity** that did not align with SolarWindPy's immediate needs:
|
|
14
|
+
|
|
15
|
+
1. **Physics-Aware Templates** - Custom template enhancements with physics-specific sections
|
|
16
|
+
2. **Quality Validation Framework** - Complex validation scripts and quality metrics
|
|
17
|
+
3. **Multiple Output Formats** - PDF and EPUB generation beyond basic HTML
|
|
18
|
+
4. **Comprehensive Badge Collections** - Extensive status badge implementations
|
|
19
|
+
5. **Advanced Webhook Integration** - Complex automation beyond simple deployment
|
|
20
|
+
|
|
21
|
+
### Why It Was Over-Engineered
|
|
22
|
+
- **10+ hour implementation** for features that provided marginal value
|
|
23
|
+
- **Complex validation frameworks** when standard Sphinx warnings suffice
|
|
24
|
+
- **Physics-specific enhancements** that could be added incrementally if needed
|
|
25
|
+
- **Multiple output formats** that aren't used by most Python packages
|
|
26
|
+
- **Advanced automation** when manual setup works fine initially
|
|
27
|
+
|
|
28
|
+
### What Was Preserved
|
|
29
|
+
The replacement plan (readthedocs-simplified) preserves the **essential insights**:
|
|
30
|
+
- **Template persistence requirement** - Core architectural need
|
|
31
|
+
- **Doc8 linting fixes** - Immediate CI/CD unblocking
|
|
32
|
+
- **ReadTheDocs configuration** - Basic deployment capability
|
|
33
|
+
- **Quality validation** - Simple, effective testing
|
|
34
|
+
|
|
35
|
+
### Value Comparison
|
|
36
|
+
|
|
37
|
+
| Aspect | Abandoned Plan | Replacement Plan | Assessment |
|
|
38
|
+
|--------|---------------|------------------|------------|
|
|
39
|
+
| **Implementation Time** | 10+ hours | 2 hours | **80% time savings** |
|
|
40
|
+
| **Complexity** | High | Low | **Much easier to maintain** |
|
|
41
|
+
| **Template Persistence** | ✅ | ✅ | **Same core value** |
|
|
42
|
+
| **ReadTheDocs Deployment** | ✅ | ✅ | **Same end result** |
|
|
43
|
+
| **CI/CD Unblocking** | ✅ (after 10 hours) | ✅ (immediate) | **90% faster delivery** |
|
|
44
|
+
| **Physics Documentation** | ✅ | ❌ (deferrable) | **Optional enhancement** |
|
|
45
|
+
|
|
46
|
+
## Strategic Decision
|
|
47
|
+
The abandonment represents a **strategic pivot** from:
|
|
48
|
+
- **Theoretical future requirements** → **Immediate practical needs**
|
|
49
|
+
- **Complex upfront implementation** → **Incremental enhancement path**
|
|
50
|
+
- **Over-engineered solutions** → **Standard, proven patterns**
|
|
51
|
+
|
|
52
|
+
## Lessons Learned
|
|
53
|
+
1. **Start simple**: Basic functionality delivers 90% of the value
|
|
54
|
+
2. **Incremental enhancement**: Features can be added when actually needed
|
|
55
|
+
3. **Standard patterns**: What most Python packages use is usually sufficient
|
|
56
|
+
4. **Time to value**: 2 hours of working documentation > 10 hours of perfect documentation
|
|
57
|
+
|
|
58
|
+
## Future Enhancement Path
|
|
59
|
+
If advanced features from this plan are needed later:
|
|
60
|
+
1. **Physics templates**: Add incrementally to existing template system
|
|
61
|
+
2. **Quality frameworks**: Implement when documentation scale requires it
|
|
62
|
+
3. **Multiple formats**: Add PDF/EPUB if users specifically request them
|
|
63
|
+
4. **Advanced automation**: Enhance when manual process becomes bottleneck
|
|
64
|
+
|
|
65
|
+
## References
|
|
66
|
+
- **Replacement Plan**: `plans/readthedocs-simplified/`
|
|
67
|
+
- **Original Plan Files**: Preserved in this directory for reference
|
|
68
|
+
- **Implementation Comparison**: See readthedocs-simplified/0-Overview.md
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
*Abandoned in favor of pragmatic simplicity that delivers immediate value with minimal complexity.*
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
# CI/CD Architecture Redesign - Overview
|
|
2
|
+
|
|
3
|
+
## Plan Metadata
|
|
4
|
+
- **Plan Name**: CI/CD Architecture Redesign
|
|
5
|
+
- **Created**: 2025-08-24
|
|
6
|
+
- **Branch**: plan/cicd-architecture-redesign
|
|
7
|
+
- **Implementation Branch**: feature/cicd-architecture-redesign
|
|
8
|
+
- **PlanManager**: UnifiedPlanCoordinator
|
|
9
|
+
- **PlanImplementer**: UnifiedPlanCoordinator
|
|
10
|
+
- **Structure**: Multi-Phase
|
|
11
|
+
- **Total Phases**: 8
|
|
12
|
+
- **Dependencies**: None
|
|
13
|
+
- **Affects**: .github/workflows/, CLAUDE.md, RELEASE.md (new)
|
|
14
|
+
- **Estimated Duration**: 6.5 hours
|
|
15
|
+
- **Status**: Planning
|
|
16
|
+
|
|
17
|
+
## Phase Overview
|
|
18
|
+
- [x] **Phase 1: Workflow Creation** (Est: 1 hour) - Create release-pipeline.yml and continuous-integration.yml
|
|
19
|
+
- [x] **Phase 2: Version Detection Configuration** (Est: 30 minutes) - RC vs production tag detection logic
|
|
20
|
+
- [x] **Phase 3: Deployment Gates** (Est: 30 minutes) - Progressive deployment configuration
|
|
21
|
+
- [ ] **Phase 4: Release Candidate Testing** (Est: 1 hour) - Test with v0.1.0-rc5
|
|
22
|
+
- [ ] **Phase 5: TestPyPI Validation** (Est: 30 minutes) - Verify package installation
|
|
23
|
+
- [ ] **Phase 6: Production Release** (Est: 1 hour) - Deploy v0.1.0 to PyPI
|
|
24
|
+
- [ ] **Phase 7: Cleanup** (Est: 30 minutes) - Remove old broken workflows
|
|
25
|
+
- [ ] **Phase 8: Documentation** (Est: 30 minutes) - Update CLAUDE.md and create RELEASE.md
|
|
26
|
+
|
|
27
|
+
## Phase Files
|
|
28
|
+
1. [1-Workflow-Creation.md](./1-Workflow-Creation.md)
|
|
29
|
+
2. [2-Version-Detection.md](./2-Version-Detection.md)
|
|
30
|
+
3. [3-Deployment-Gates.md](./3-Deployment-Gates.md)
|
|
31
|
+
4. [4-RC-Testing.md](./4-RC-Testing.md)
|
|
32
|
+
5. [5-TestPyPI-Validation.md](./5-TestPyPI-Validation.md)
|
|
33
|
+
6. [6-Production-Release.md](./6-Production-Release.md)
|
|
34
|
+
7. [7-Cleanup.md](./7-Cleanup.md)
|
|
35
|
+
8. [8-Documentation.md](./8-Documentation.md)
|
|
36
|
+
9. [Closeout.md](./Closeout.md)
|
|
37
|
+
|
|
38
|
+
## 🎯 Objective
|
|
39
|
+
Complete redesign of GitHub Actions CI/CD workflows to bypass cache corruption and enable reliable PyPI/TestPyPI deployments for SolarWindPy v0.1.0.
|
|
40
|
+
|
|
41
|
+
## 🧠 Context
|
|
42
|
+
- **ci.yml** and **publish.yml** workflows failing with 0-second duration
|
|
43
|
+
- Root cause: Comments inside YAML literal block scalars breaking GitHub Actions parser
|
|
44
|
+
- GitHub cache corruption preventing workflow execution
|
|
45
|
+
- Blocking v0.1.0 release to PyPI/TestPyPI
|
|
46
|
+
|
|
47
|
+
## 🔧 Technical Requirements
|
|
48
|
+
- GitHub Actions workflows
|
|
49
|
+
- PyPI and TestPyPI API tokens (already configured)
|
|
50
|
+
- Python 3.8-3.12 compatibility
|
|
51
|
+
- Multi-platform testing (Ubuntu, macOS, Windows)
|
|
52
|
+
- setuptools_scm for version detection
|
|
53
|
+
|
|
54
|
+
## 📂 Affected Areas
|
|
55
|
+
- .github/workflows/ (complete replacement)
|
|
56
|
+
- CLAUDE.md (workflow documentation updates)
|
|
57
|
+
- RELEASE.md (new deployment procedures)
|
|
58
|
+
|
|
59
|
+
## ✅ Acceptance Criteria
|
|
60
|
+
- [ ] All phases completed successfully
|
|
61
|
+
- [ ] RC tags deploy to TestPyPI only (v0.1.0-rc5 test)
|
|
62
|
+
- [ ] Production tags deploy to both TestPyPI and PyPI (v0.1.0)
|
|
63
|
+
- [ ] GitHub Actions duration > 0 seconds (no parser failures)
|
|
64
|
+
- [ ] Release branches created for audit trail
|
|
65
|
+
- [ ] Old broken workflows removed
|
|
66
|
+
- [ ] Documentation updated
|
|
67
|
+
|
|
68
|
+
## 🧪 Testing Strategy
|
|
69
|
+
- Test with v0.1.0-rc5 tag (TestPyPI only)
|
|
70
|
+
- Validate package installation from TestPyPI
|
|
71
|
+
- Deploy v0.1.0 tag (full pipeline)
|
|
72
|
+
- Verify PyPI package availability
|
|
73
|
+
- Confirm conda-forge automation triggers
|
|
74
|
+
|
|
75
|
+
## 📊 Value Proposition Analysis [REQUIRED - AUTO-GENERATED]
|
|
76
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
77
|
+
*To generate value propositions: `python .claude/hooks/plan-value-generator.py --plan-file plans/cicd-architecture-redesign/0-Overview.md`*
|
|
78
|
+
|
|
79
|
+
### Scientific Software Development Value
|
|
80
|
+
[Auto-generated analysis of research efficiency improvements and development quality enhancements]
|
|
81
|
+
|
|
82
|
+
### Developer Productivity Value
|
|
83
|
+
[Auto-generated analysis of planning efficiency, resource optimization, and token usage improvements]
|
|
84
|
+
|
|
85
|
+
## 💰 Resource & Cost Analysis [REQUIRED - AUTO-GENERATED]
|
|
86
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
87
|
+
|
|
88
|
+
### Development Investment
|
|
89
|
+
[Auto-generated implementation time breakdown and maintenance considerations]
|
|
90
|
+
|
|
91
|
+
### Token Usage Economics
|
|
92
|
+
[Auto-generated current vs enhanced token usage comparison and break-even analysis]
|
|
93
|
+
|
|
94
|
+
## ⚠️ Risk Assessment & Mitigation [REQUIRED - AUTO-GENERATED]
|
|
95
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
96
|
+
|
|
97
|
+
### Technical Implementation Risks
|
|
98
|
+
[Auto-generated risk matrix with probability, impact, and mitigation strategies]
|
|
99
|
+
|
|
100
|
+
### Project Management Risks
|
|
101
|
+
[Auto-generated project timeline and resource allocation risks]
|
|
102
|
+
|
|
103
|
+
### Scientific Workflow Risks
|
|
104
|
+
[Auto-generated assessment of impact on research workflows and computational accuracy]
|
|
105
|
+
|
|
106
|
+
## 🔒 Security Proposition [REQUIRED - AUTO-GENERATED]
|
|
107
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
108
|
+
|
|
109
|
+
### Code-Level Security Assessment
|
|
110
|
+
[Auto-generated dependency vulnerability analysis, authentication impacts, and attack surface assessment]
|
|
111
|
+
|
|
112
|
+
### Scientific Computing Environment Security
|
|
113
|
+
[Auto-generated development workflow security and CI/CD pipeline considerations]
|
|
114
|
+
|
|
115
|
+
**Note**: This security assessment covers code-level security only. FAIR data compliance is explicitly excluded and not implemented in this system.
|
|
116
|
+
|
|
117
|
+
## 🎯 Scope Audit [REQUIRED - AUTO-GENERATED]
|
|
118
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
119
|
+
*To generate scope audit: `python .claude/hooks/plan-scope-auditor.py --plan-file plans/cicd-architecture-redesign/0-Overview.md`*
|
|
120
|
+
|
|
121
|
+
### SolarWindPy Alignment Assessment
|
|
122
|
+
[Auto-generated alignment score and scientific mission compatibility analysis]
|
|
123
|
+
|
|
124
|
+
### Scientific Research Relevance
|
|
125
|
+
[Auto-generated assessment of research impact and computational science focus]
|
|
126
|
+
|
|
127
|
+
### Module Impact Analysis
|
|
128
|
+
[Auto-generated analysis of affected SolarWindPy modules and architecture compliance]
|
|
129
|
+
|
|
130
|
+
### Scope Boundary Enforcement
|
|
131
|
+
[Auto-generated scope controls and out-of-scope risk identification]
|
|
132
|
+
|
|
133
|
+
## 💾 Token Usage Optimization [REQUIRED - AUTO-GENERATED]
|
|
134
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
135
|
+
|
|
136
|
+
### Current Token Usage Patterns
|
|
137
|
+
[Auto-generated analysis of manual planning token costs and inefficiency sources]
|
|
138
|
+
|
|
139
|
+
### Optimized Token Usage Strategy
|
|
140
|
+
[Auto-generated hook-based generation efficiency and context preservation benefits]
|
|
141
|
+
|
|
142
|
+
## ⏱️ Time Investment Analysis [REQUIRED - AUTO-GENERATED]
|
|
143
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
144
|
+
|
|
145
|
+
### Implementation Time Breakdown
|
|
146
|
+
[Auto-generated phase-by-phase time estimates with confidence intervals]
|
|
147
|
+
|
|
148
|
+
### Time Savings Analysis
|
|
149
|
+
[Auto-generated per-plan time savings and long-term efficiency gains]
|
|
150
|
+
|
|
151
|
+
### Break-Even Calculation
|
|
152
|
+
[Auto-generated investment vs returns analysis and payback timeline]
|
|
153
|
+
|
|
154
|
+
## 🎯 Usage & Adoption Metrics [REQUIRED - AUTO-GENERATED]
|
|
155
|
+
<!-- This section will be automatically generated by .claude/hooks/plan-value-generator.py -->
|
|
156
|
+
|
|
157
|
+
### Target Use Cases
|
|
158
|
+
[Auto-generated primary and secondary applications for this plan type]
|
|
159
|
+
|
|
160
|
+
### Adoption Strategy
|
|
161
|
+
[Auto-generated phased rollout approach and success factors]
|
|
162
|
+
|
|
163
|
+
### Success Metrics
|
|
164
|
+
[Auto-generated quantitative and qualitative success indicators]
|
|
165
|
+
|
|
166
|
+
## 📊 Progress Tracking
|
|
167
|
+
|
|
168
|
+
### Overall Status
|
|
169
|
+
- **Phases Completed**: 3/8
|
|
170
|
+
- **Tasks Completed**: 6/40
|
|
171
|
+
- **Time Invested**: 2h of 6.5h
|
|
172
|
+
- **Last Updated**: 2025-08-25
|
|
173
|
+
|
|
174
|
+
### Implementation Notes
|
|
175
|
+
- **Phases 1-3 Complete (0c646c5)**: Comprehensive workflow architecture implemented
|
|
176
|
+
- **Phase 1**: release-pipeline.yml and continuous-integration.yml created with clean architecture
|
|
177
|
+
- **Phase 2**: Version detection logic implemented with RC pattern `-rc[0-9]+$` plus alpha/beta support
|
|
178
|
+
- **Phase 3**: Deployment gates configured with progressive flow: TestPyPI → PyPI → GitHub Release → Conda-Forge
|
|
179
|
+
- All deployment conditionals properly reference `needs.version-analysis.outputs.is_rc == 'false'`
|
|
180
|
+
- Quality validation matrix: 3 OS × 4 Python versions = 12 test combinations
|
|
181
|
+
- Ready to proceed with Phase 4: Release Candidate Testing (v0.1.0-rc5)
|
|
182
|
+
|
|
183
|
+
## 🔗 Related Plans
|
|
184
|
+
None
|
|
185
|
+
|
|
186
|
+
## 💬 Notes & Considerations
|
|
187
|
+
- This plan completely replaces the broken ci.yml and publish.yml workflows
|
|
188
|
+
- The new architecture is simpler, more maintainable, and more reliable
|
|
189
|
+
- Release candidate strategy ensures safe testing before production deployments
|
|
190
|
+
- The approach has been validated against GitHub Actions best practices and documentation
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
*This multi-phase plan uses the plan-per-branch architecture where implementation occurs on feature/cicd-architecture-redesign branch with progress tracked via commit checksums across phase files.*
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# Phase 1: Workflow Creation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Create the two new GitHub Actions workflows that will replace the broken ci.yml and publish.yml files with clean, maintainable alternatives.
|
|
5
|
+
|
|
6
|
+
## Objectives
|
|
7
|
+
- Create `release-pipeline.yml` for version tag deployments
|
|
8
|
+
- Create `continuous-integration.yml` for PR validation
|
|
9
|
+
- Implement tag detection logic with RC identification
|
|
10
|
+
- Configure progressive deployment stages
|
|
11
|
+
- Avoid complex YAML patterns that caused original failures
|
|
12
|
+
|
|
13
|
+
## Tasks
|
|
14
|
+
|
|
15
|
+
### Task 1.1: Create release-pipeline.yml (40 minutes)
|
|
16
|
+
**Implementation Steps:**
|
|
17
|
+
```bash
|
|
18
|
+
# Create the new release pipeline workflow
|
|
19
|
+
touch .github/workflows/release-pipeline.yml
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Workflow Requirements:**
|
|
23
|
+
- **Trigger**: Version tags (v*) on master branch
|
|
24
|
+
- **Flow**: Tag Detection → Quality Checks → Release Branch → TestPyPI → [PyPI if not RC] → [Conda if not RC]
|
|
25
|
+
- **Features**:
|
|
26
|
+
- Intelligent version detection (RC vs production)
|
|
27
|
+
- Progressive deployment with validation gates
|
|
28
|
+
- Release branch creation for audit trail
|
|
29
|
+
- No complex conditionals or inline comments
|
|
30
|
+
|
|
31
|
+
**Quality Checks Matrix:**
|
|
32
|
+
- 3 Operating Systems: Ubuntu, macOS, Windows
|
|
33
|
+
- 4 Python versions: 3.9, 3.10, 3.11, 3.12
|
|
34
|
+
- Total: 12 test combinations
|
|
35
|
+
|
|
36
|
+
**Deployment Stages:**
|
|
37
|
+
1. Always deploy to TestPyPI
|
|
38
|
+
2. Deploy to PyPI only if not RC
|
|
39
|
+
3. Create GitHub Release only if not RC
|
|
40
|
+
4. Open conda-forge issue only if not RC
|
|
41
|
+
|
|
42
|
+
### Task 1.2: Create continuous-integration.yml (20 minutes)
|
|
43
|
+
**Implementation Steps:**
|
|
44
|
+
```bash
|
|
45
|
+
# Create the new CI workflow for PRs
|
|
46
|
+
touch .github/workflows/continuous-integration.yml
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**Workflow Requirements:**
|
|
50
|
+
- **Trigger**: Pull requests and non-master branches
|
|
51
|
+
- **Flow**: Quick tests with Python 3.12 on Ubuntu
|
|
52
|
+
- **Purpose**: Lightweight PR validation
|
|
53
|
+
- **Features**:
|
|
54
|
+
- Single platform testing for speed
|
|
55
|
+
- Essential quality checks only
|
|
56
|
+
- No deployment logic
|
|
57
|
+
|
|
58
|
+
## Acceptance Criteria
|
|
59
|
+
- [ ] `release-pipeline.yml` created with complete deployment logic
|
|
60
|
+
- [ ] `continuous-integration.yml` created with PR validation
|
|
61
|
+
- [ ] Both workflows use clean YAML without inline comments
|
|
62
|
+
- [ ] Tag detection logic correctly identifies RC vs production
|
|
63
|
+
- [ ] Progressive deployment configured with proper conditionals
|
|
64
|
+
- [ ] Quality checks matrix covers all supported platforms
|
|
65
|
+
- [ ] Workflows validate syntax when committed
|
|
66
|
+
|
|
67
|
+
## Risk Mitigation
|
|
68
|
+
- **YAML Parsing**: Avoid comments inside literal blocks that broke original workflows
|
|
69
|
+
- **Parallel Operation**: New workflows coexist with broken ones during testing
|
|
70
|
+
- **Validation**: Syntax check workflows before committing
|
|
71
|
+
- **Rollback**: Keep old workflows until new ones proven functional
|
|
72
|
+
|
|
73
|
+
## Progress Tracking
|
|
74
|
+
- [x] Task 1.1: release-pipeline.yml created and configured
|
|
75
|
+
- [x] Task 1.2: continuous-integration.yml created and configured
|
|
76
|
+
- [x] Both workflows committed to feature branch (commit: 0c646c5)
|
|
77
|
+
- [x] Syntax validation passed
|
|
78
|
+
- [x] Ready for Phase 2: Version Detection Configuration
|
|
79
|
+
|
|
80
|
+
## Implementation Checksum
|
|
81
|
+
**Commit**: `0c646c5` - feat: implement Phase 1 - create new CI/CD workflows
|
|
82
|
+
**Files Created**:
|
|
83
|
+
- `.github/workflows/release-pipeline.yml` (433 lines)
|
|
84
|
+
- `.github/workflows/continuous-integration.yml` (150 lines)
|
|
85
|
+
|
|
86
|
+
## Phase 1 Completion Notes
|
|
87
|
+
- Created clean, linear workflow architecture bypassing GitHub cache issues
|
|
88
|
+
- Implemented progressive deployment: TestPyPI → PyPI → GitHub Release
|
|
89
|
+
- RC detection logic prevents production deployments for release candidates
|
|
90
|
+
- Quality validation matrix covers 3 operating systems and 4 Python versions
|
|
91
|
+
- Lightweight PR validation with extended testing for plan branches
|
|
92
|
+
- No complex YAML patterns or inline comments that could break parsing
|
|
93
|
+
|
|
94
|
+
## Time Estimate
|
|
95
|
+
**Total: 1 hour**
|
|
96
|
+
- Task 1.1: 40 minutes
|
|
97
|
+
- Task 1.2: 20 minutes
|
|
98
|
+
|
|
99
|
+
## Notes
|
|
100
|
+
- These workflows completely bypass the GitHub cache corruption issue by using new file names
|
|
101
|
+
- Clean linear flow design makes debugging easier
|
|
102
|
+
- No complex YAML patterns that could break GitHub Actions parser
|
|
103
|
+
- Foundation for reliable PyPI deployment process
|