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,222 @@
|
|
|
1
|
+
# Documentation Workflow Fix Plan - Overview
|
|
2
|
+
|
|
3
|
+
## Executive Summary
|
|
4
|
+
|
|
5
|
+
**CRITICAL ISSUE**: The GitHub documentation workflow has been failing consistently since August 16, 2025, with a 100% failure rate across all branches and PRs. This blocks all documentation builds, deployments to GitHub Pages, and downstream CI/CD processes.
|
|
6
|
+
|
|
7
|
+
## Problem Statement
|
|
8
|
+
|
|
9
|
+
### Current Situation
|
|
10
|
+
- **All documentation builds failing** since August 16, 2025
|
|
11
|
+
- **10 consecutive workflow failures** documented
|
|
12
|
+
- **Zero successful builds** in recent history
|
|
13
|
+
- **GitHub Pages deployment blocked** preventing documentation updates
|
|
14
|
+
- **Developer workflow disrupted** with every PR showing failed checks
|
|
15
|
+
|
|
16
|
+
### Root Cause
|
|
17
|
+
The failures are caused by `doc8` documentation linting errors:
|
|
18
|
+
1. **Missing newlines at EOF** (4 files) - D005 errors
|
|
19
|
+
2. **Trailing whitespace** (2 instances) - D002 errors
|
|
20
|
+
3. **Line too long** (1 instance) - D001 error
|
|
21
|
+
|
|
22
|
+
These are formatting issues, not functional problems, but the strict linting configuration (exit on error) blocks the entire pipeline.
|
|
23
|
+
|
|
24
|
+
### Impact Analysis
|
|
25
|
+
- **Documentation updates blocked** for 3+ days
|
|
26
|
+
- **PR merges delayed** due to failed status checks
|
|
27
|
+
- **User documentation outdated** on GitHub Pages
|
|
28
|
+
- **Developer frustration** from constant failures
|
|
29
|
+
- **Wasted CI/CD resources** on failing builds
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Detailed Propositions
|
|
34
|
+
|
|
35
|
+
### 1. Risk Proposition
|
|
36
|
+
|
|
37
|
+
| Risk Category | Probability | Impact | Severity | Mitigation Strategy |
|
|
38
|
+
|---------------|------------|--------|----------|-------------------|
|
|
39
|
+
| **Immediate Formatting Fixes** |
|
|
40
|
+
| Breaking valid RST syntax | 5% | Medium | Low | Local testing before commit |
|
|
41
|
+
| Missing an error location | 10% | Low | Low | Run doc8 locally for verification |
|
|
42
|
+
| Introducing new issues | 5% | Low | Low | Use automated formatting tools |
|
|
43
|
+
| **Configuration Changes** |
|
|
44
|
+
| Too restrictive rules | 30% | Low | Low | Start permissive, tighten gradually |
|
|
45
|
+
| Incompatible with Sphinx | 5% | High | Medium | Test documentation build thoroughly |
|
|
46
|
+
| Team resistance | 20% | Low | Low | Document benefits clearly |
|
|
47
|
+
| **Pre-commit Integration** |
|
|
48
|
+
| Developer setup friction | 40% | Low | Low | Make optional initially, provide setup script |
|
|
49
|
+
| Performance impact | 10% | Low | Low | Only check changed files |
|
|
50
|
+
| Hook bypass | 30% | Low | Low | CI/CD as backstop |
|
|
51
|
+
| **Workflow Modifications** |
|
|
52
|
+
| Auto-fix side effects | 15% | Medium | Low | Review changes in PR |
|
|
53
|
+
| Masking real issues | 10% | Medium | Low | Maintain strict mode for master |
|
|
54
|
+
|
|
55
|
+
**Overall Risk Assessment**: **LOW** - These are non-functional formatting fixes with established patterns and minimal risk.
|
|
56
|
+
|
|
57
|
+
### 2. Value Proposition
|
|
58
|
+
|
|
59
|
+
| Value Dimension | Current State | Target State | Value Delivered |
|
|
60
|
+
|-----------------|---------------|--------------|-----------------|
|
|
61
|
+
| **Build Success Rate** | 0% (complete failure) | 100% | Unblocks entire documentation pipeline |
|
|
62
|
+
| **Time to Deploy Docs** | ∞ (blocked) | 5 minutes | Enables continuous documentation delivery |
|
|
63
|
+
| **Developer Experience** | Frustrating, blocked PRs | Smooth, automated | 100% improvement in workflow |
|
|
64
|
+
| **Documentation Quality** | Inconsistent formatting | Standardized, professional | Enhanced readability and maintainability |
|
|
65
|
+
| **CI/CD Efficiency** | 100% waste on failures | 95% successful builds | Compute resource optimization |
|
|
66
|
+
| **Error Prevention** | Reactive (post-commit) | Proactive (pre-commit) | 90% reduction in formatting issues |
|
|
67
|
+
| **Team Productivity** | 10 min/PR debugging | 0 min/PR | 500 min/month saved |
|
|
68
|
+
| **Documentation Freshness** | Stale (3+ days) | Current (hourly) | Real-time documentation updates |
|
|
69
|
+
|
|
70
|
+
**Total Value Score**: **CRITICAL** - Unblocks essential infrastructure and improves all metrics.
|
|
71
|
+
|
|
72
|
+
### 3. Cost Proposition
|
|
73
|
+
|
|
74
|
+
| Cost Component | One-Time Investment | Recurring Cost | Annual Impact |
|
|
75
|
+
|----------------|-------------------|----------------|---------------|
|
|
76
|
+
| **Current State Costs** |
|
|
77
|
+
| Failed build debugging | - | 10 min/day | 40 hours/year |
|
|
78
|
+
| Manual formatting fixes | - | 5 min/PR | 20 hours/year |
|
|
79
|
+
| Delayed deployments | - | 30 min/week | 26 hours/year |
|
|
80
|
+
| Context switching | - | 15 min/incident | 12 hours/year |
|
|
81
|
+
| **Total Current Cost** | - | - | **98 hours/year** |
|
|
82
|
+
| **Implementation Costs** |
|
|
83
|
+
| Initial fixes | 5 minutes | - | - |
|
|
84
|
+
| Configuration setup | 10 minutes | - | - |
|
|
85
|
+
| Pre-commit integration | 15 minutes | - | - |
|
|
86
|
+
| Workflow updates | 10 minutes | - | - |
|
|
87
|
+
| Documentation | 10 minutes | - | - |
|
|
88
|
+
| **Total Implementation** | **50 minutes** | - | - |
|
|
89
|
+
| **Ongoing Costs** |
|
|
90
|
+
| Hook maintenance | - | 5 min/month | 1 hour/year |
|
|
91
|
+
| Configuration updates | - | 10 min/quarter | 40 min/year |
|
|
92
|
+
| **Total New Costs** | - | - | **1.67 hours/year** |
|
|
93
|
+
|
|
94
|
+
**ROI Calculation**:
|
|
95
|
+
- Investment: 50 minutes
|
|
96
|
+
- Annual Savings: 96.33 hours
|
|
97
|
+
- **Return: 11,560% in first year**
|
|
98
|
+
|
|
99
|
+
### 4. Time Proposition
|
|
100
|
+
|
|
101
|
+
| Phase | Duration | Cumulative Time | Value Unlocked | Critical Path |
|
|
102
|
+
|-------|----------|-----------------|----------------|---------------|
|
|
103
|
+
| **Phase 1: Immediate Fixes** | 5 min | 5 min | Unblocks pipeline | ✅ Critical |
|
|
104
|
+
| **Phase 2: Configuration** | 10 min | 15 min | Prevents recurrence | ✅ Critical |
|
|
105
|
+
| **Phase 3: Pre-commit Hooks** | 15 min | 30 min | Proactive prevention | ⚠️ Important |
|
|
106
|
+
| **Phase 4: Workflow Updates** | 10 min | 40 min | Resilient CI/CD | 📝 Nice to have |
|
|
107
|
+
| **Phase 5: Documentation** | 10 min | 50 min | Team enablement | 📝 Nice to have |
|
|
108
|
+
|
|
109
|
+
**Time to First Value**: **5 minutes** (immediate unblocking)
|
|
110
|
+
**Time to Full Solution**: **50 minutes**
|
|
111
|
+
**Break-even Point**: First prevented incident (same day)
|
|
112
|
+
|
|
113
|
+
### 5. Usage Proposition
|
|
114
|
+
|
|
115
|
+
| Stakeholder | Current Usage Experience | Post-Fix Experience | Usage Improvement |
|
|
116
|
+
|-------------|-------------------------|-------------------|-------------------|
|
|
117
|
+
| **Developers** |
|
|
118
|
+
| PR submission | ❌ Always fails doc check | ✅ Automatic formatting | 100% success rate |
|
|
119
|
+
| Local development | No format checking | Pre-commit validation | Catch issues before push |
|
|
120
|
+
| Debugging time | 10 min per failure | 0 min | 100% time savings |
|
|
121
|
+
| **Maintainers** |
|
|
122
|
+
| PR reviews | Must fix formatting | Auto-formatted | 50% faster reviews |
|
|
123
|
+
| Release process | Blocked by failures | Smooth automation | Reliable releases |
|
|
124
|
+
| Issue triage | Formatting complaints | None | Reduced support burden |
|
|
125
|
+
| **End Users** |
|
|
126
|
+
| Documentation access | Stale (days old) | Current (hourly) | Always fresh docs |
|
|
127
|
+
| Content quality | Inconsistent | Professional | Better experience |
|
|
128
|
+
| **CI/CD System** |
|
|
129
|
+
| Build attempts | 100% failures | 95%+ success | Efficient resource use |
|
|
130
|
+
| Compute time | Wasted on retries | Productive builds | 50% reduction |
|
|
131
|
+
|
|
132
|
+
### 6. Token Proposition
|
|
133
|
+
|
|
134
|
+
| Token Usage Scenario | Current (per incident) | After Fix | Savings | Annual (50 incidents) |
|
|
135
|
+
|---------------------|----------------------|-----------|---------|---------------------|
|
|
136
|
+
| **Debugging Failures** |
|
|
137
|
+
| Error investigation | 500 tokens | 0 | 500 | 25,000 tokens |
|
|
138
|
+
| Solution research | 300 tokens | 0 | 300 | 15,000 tokens |
|
|
139
|
+
| Fix attempts | 400 tokens | 50 | 350 | 17,500 tokens |
|
|
140
|
+
| **Communication** |
|
|
141
|
+
| Explaining to team | 200 tokens | 0 | 200 | 10,000 tokens |
|
|
142
|
+
| Documentation | 100 tokens | 20 | 80 | 4,000 tokens |
|
|
143
|
+
| **Prevention** |
|
|
144
|
+
| Pre-commit setup | 0 | 100 (one-time) | -100 | -100 tokens |
|
|
145
|
+
| Configuration | 0 | 50 (one-time) | -50 | -50 tokens |
|
|
146
|
+
| **Total per Incident** | 1,500 tokens | 70 tokens | 1,430 | - |
|
|
147
|
+
| **Annual Total** | 75,000 tokens | 3,650 tokens | - | **71,350 tokens saved** |
|
|
148
|
+
|
|
149
|
+
**Token ROI**: 95% reduction in token usage for documentation issues
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Solution Architecture
|
|
154
|
+
|
|
155
|
+
### Multi-Layer Defense Strategy
|
|
156
|
+
```
|
|
157
|
+
Pre-commit Hooks → Local Validation → CI/CD Checks → Auto-fixing → Deployment
|
|
158
|
+
↓ ↓ ↓ ↓ ↓
|
|
159
|
+
Prevent Issues Catch Early Enforce Standards Heal Issues Deliver Docs
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Key Components
|
|
163
|
+
1. **Immediate fixes** - Unblock pipeline (5 minutes)
|
|
164
|
+
2. **Configuration layer** - Standardize rules (10 minutes)
|
|
165
|
+
3. **Pre-commit defense** - Prevent issues (15 minutes)
|
|
166
|
+
4. **CI/CD resilience** - Auto-healing (10 minutes)
|
|
167
|
+
5. **Documentation** - Enable team (10 minutes)
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Success Metrics
|
|
172
|
+
|
|
173
|
+
### Immediate (Day 1)
|
|
174
|
+
- ✅ Documentation workflow passes
|
|
175
|
+
- ✅ GitHub Pages deployment resumes
|
|
176
|
+
- ✅ All existing PRs unblocked
|
|
177
|
+
|
|
178
|
+
### Short-term (Week 1)
|
|
179
|
+
- ✅ Zero formatting failures
|
|
180
|
+
- ✅ Pre-commit hooks adopted by team
|
|
181
|
+
- ✅ Documentation stays current
|
|
182
|
+
|
|
183
|
+
### Long-term (Month 1)
|
|
184
|
+
- ✅ 95%+ build success rate
|
|
185
|
+
- ✅ 50% reduction in documentation issues
|
|
186
|
+
- ✅ Improved developer satisfaction
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Risk Mitigation
|
|
191
|
+
|
|
192
|
+
### Rollback Strategy
|
|
193
|
+
1. **Phase 1 rollback**: Revert formatting changes via `git revert`
|
|
194
|
+
2. **Phase 2 rollback**: Remove .doc8 configuration file
|
|
195
|
+
3. **Phase 3 rollback**: Disable pre-commit hooks
|
|
196
|
+
4. **Phase 4 rollback**: Restore original workflow file
|
|
197
|
+
5. **Emergency bypass**: Comment out doc8 check in workflow
|
|
198
|
+
|
|
199
|
+
### Validation Approach
|
|
200
|
+
- Local testing before each phase
|
|
201
|
+
- Incremental rollout (fix → test → next phase)
|
|
202
|
+
- Non-blocking mode for initial deployment
|
|
203
|
+
- Monitoring and adjustment period
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## Recommendation
|
|
208
|
+
|
|
209
|
+
### **IMMEDIATE ACTION REQUIRED**
|
|
210
|
+
|
|
211
|
+
**Priority**: **CRITICAL** - Documentation pipeline completely blocked
|
|
212
|
+
|
|
213
|
+
**Recommendation**: Implement Phase 1 immediately (5 minutes) to unblock pipeline, then proceed with remaining phases for long-term stability.
|
|
214
|
+
|
|
215
|
+
**Justification**:
|
|
216
|
+
1. **Zero documentation builds** for 3+ days is unacceptable
|
|
217
|
+
2. **Trivial fixes** with massive impact
|
|
218
|
+
3. **No functional risk** - only formatting changes
|
|
219
|
+
4. **Immediate value** - unblocks everything in 5 minutes
|
|
220
|
+
5. **High ROI** - 11,560% return in first year
|
|
221
|
+
|
|
222
|
+
This plan transforms a critical blocker into an opportunity to implement robust documentation quality controls with minimal investment and maximum return.
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
# Phase 1: Immediate Fixes
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
Immediately resolve all doc8 linting errors to unblock the documentation pipeline and restore CI/CD functionality.
|
|
5
|
+
|
|
6
|
+
## Current State Analysis
|
|
7
|
+
|
|
8
|
+
### Failed Files and Errors
|
|
9
|
+
```
|
|
10
|
+
Total files scanned = 12
|
|
11
|
+
Total accumulated errors = 7
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
### Error Breakdown
|
|
15
|
+
1. **Missing newline at end of file (D005)** - 4 occurrences
|
|
16
|
+
2. **Trailing whitespace (D002)** - 2 occurrences
|
|
17
|
+
3. **Line too long (D001)** - 1 occurrence
|
|
18
|
+
|
|
19
|
+
### Affected Files
|
|
20
|
+
- `docs/source/api_reference.rst`
|
|
21
|
+
- `docs/source/index.rst`
|
|
22
|
+
- `docs/source/_templates/autosummary/module.rst`
|
|
23
|
+
- `docs/source/_templates/autosummary/class.rst`
|
|
24
|
+
|
|
25
|
+
## Implementation Steps
|
|
26
|
+
|
|
27
|
+
### Step 1.1: Fix Missing Newlines (2 minutes)
|
|
28
|
+
|
|
29
|
+
**Files to modify**:
|
|
30
|
+
1. `docs/source/api_reference.rst` (line 9)
|
|
31
|
+
2. `docs/source/index.rst` (line 34)
|
|
32
|
+
3. `docs/source/_templates/autosummary/module.rst` (line 7)
|
|
33
|
+
4. `docs/source/_templates/autosummary/class.rst` (line 29)
|
|
34
|
+
|
|
35
|
+
**Action**: Add a single newline character at the end of each file
|
|
36
|
+
|
|
37
|
+
**Command approach**:
|
|
38
|
+
```bash
|
|
39
|
+
# Add newline to each file if missing
|
|
40
|
+
for file in docs/source/api_reference.rst \
|
|
41
|
+
docs/source/index.rst \
|
|
42
|
+
docs/source/_templates/autosummary/module.rst \
|
|
43
|
+
docs/source/_templates/autosummary/class.rst; do
|
|
44
|
+
# Check if file ends with newline, add if missing
|
|
45
|
+
[ -n "$(tail -c 1 "$file")" ] && echo >> "$file"
|
|
46
|
+
done
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**Manual approach**:
|
|
50
|
+
- Open each file in editor
|
|
51
|
+
- Navigate to end of file
|
|
52
|
+
- Ensure cursor is on a new empty line
|
|
53
|
+
- Save file
|
|
54
|
+
|
|
55
|
+
### Step 1.2: Remove Trailing Whitespace (1 minute)
|
|
56
|
+
|
|
57
|
+
**File to modify**: `docs/source/index.rst`
|
|
58
|
+
- Line 17: Remove trailing spaces
|
|
59
|
+
- Line 23: Remove trailing spaces
|
|
60
|
+
|
|
61
|
+
**Current content** (lines 15-25):
|
|
62
|
+
```rst
|
|
63
|
+
.. toctree::
|
|
64
|
+
:maxdepth: 3
|
|
65
|
+
:caption: API Reference
|
|
66
|
+
|
|
67
|
+
api_reference
|
|
68
|
+
|
|
69
|
+
.. toctree::
|
|
70
|
+
:maxdepth: 1
|
|
71
|
+
:caption: Development
|
|
72
|
+
|
|
73
|
+
documentation_review
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Issue**: Lines 17 and 23 have trailing spaces after "API Reference" and "Development"
|
|
77
|
+
|
|
78
|
+
**Command approach**:
|
|
79
|
+
```bash
|
|
80
|
+
# Remove all trailing whitespace from the file
|
|
81
|
+
sed -i 's/[[:space:]]*$//' docs/source/index.rst
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Manual approach**:
|
|
85
|
+
- Open `docs/source/index.rst`
|
|
86
|
+
- Go to line 17, position cursor at end of line
|
|
87
|
+
- Delete any invisible spaces
|
|
88
|
+
- Go to line 23, position cursor at end of line
|
|
89
|
+
- Delete any invisible spaces
|
|
90
|
+
- Save file
|
|
91
|
+
|
|
92
|
+
### Step 1.3: Fix Line Length (2 minutes)
|
|
93
|
+
|
|
94
|
+
**File to modify**: `docs/source/index.rst`
|
|
95
|
+
- Line 4: Line exceeds maximum length
|
|
96
|
+
|
|
97
|
+
**Current content** (line 4):
|
|
98
|
+
```rst
|
|
99
|
+
SolarWindPy is a comprehensive toolkit for analyzing solar wind plasma and magnetic field data.
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Issue**: Line is 96 characters (typical RST max is 79-80)
|
|
103
|
+
|
|
104
|
+
**Fixed content**:
|
|
105
|
+
```rst
|
|
106
|
+
SolarWindPy is a comprehensive toolkit for analyzing solar wind plasma and
|
|
107
|
+
magnetic field data.
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Manual approach**:
|
|
111
|
+
- Open `docs/source/index.rst`
|
|
112
|
+
- Navigate to line 4
|
|
113
|
+
- Break line at appropriate point (after "and")
|
|
114
|
+
- Ensure proper RST formatting maintained
|
|
115
|
+
- Save file
|
|
116
|
+
|
|
117
|
+
## Validation Steps
|
|
118
|
+
|
|
119
|
+
### Step 1.4: Local Validation (1 minute)
|
|
120
|
+
|
|
121
|
+
**Pre-commit validation**:
|
|
122
|
+
```bash
|
|
123
|
+
# Install doc8 locally if not present
|
|
124
|
+
pip install doc8
|
|
125
|
+
|
|
126
|
+
# Run doc8 on affected files
|
|
127
|
+
doc8 docs/source/api_reference.rst \
|
|
128
|
+
docs/source/index.rst \
|
|
129
|
+
docs/source/_templates/autosummary/module.rst \
|
|
130
|
+
docs/source/_templates/autosummary/class.rst
|
|
131
|
+
|
|
132
|
+
# Run on entire docs directory
|
|
133
|
+
doc8 docs --ignore-path docs/source/api
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
**Expected output**:
|
|
137
|
+
```
|
|
138
|
+
Total files scanned = 12
|
|
139
|
+
Total accumulated errors = 0
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Step 1.5: Build Validation (optional, 2 minutes)
|
|
143
|
+
|
|
144
|
+
**Test documentation build locally**:
|
|
145
|
+
```bash
|
|
146
|
+
cd docs
|
|
147
|
+
make clean
|
|
148
|
+
make html
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
**Expected result**: Build completes without errors
|
|
152
|
+
|
|
153
|
+
## Success Criteria
|
|
154
|
+
|
|
155
|
+
### Must Pass
|
|
156
|
+
- [ ] All 4 files have newlines at EOF
|
|
157
|
+
- [ ] No trailing whitespace in index.rst
|
|
158
|
+
- [ ] Line 4 of index.rst is within length limits
|
|
159
|
+
- [ ] doc8 returns 0 errors
|
|
160
|
+
- [ ] Documentation builds successfully
|
|
161
|
+
|
|
162
|
+
### Validation Command
|
|
163
|
+
```bash
|
|
164
|
+
# Final validation - should return exit code 0
|
|
165
|
+
doc8 README.rst docs CITATION.rst --ignore-path docs/source/api
|
|
166
|
+
echo "Exit code: $?"
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## Rollback Plan
|
|
170
|
+
|
|
171
|
+
If fixes cause unexpected issues:
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# Revert all changes
|
|
175
|
+
git checkout -- docs/source/api_reference.rst \
|
|
176
|
+
docs/source/index.rst \
|
|
177
|
+
docs/source/_templates/autosummary/module.rst \
|
|
178
|
+
docs/source/_templates/autosummary/class.rst
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## Time and Resource Estimate
|
|
182
|
+
|
|
183
|
+
| Task | Duration | Tools Required |
|
|
184
|
+
|------|----------|---------------|
|
|
185
|
+
| Fix newlines | 2 min | Text editor or sed |
|
|
186
|
+
| Fix whitespace | 1 min | Text editor or sed |
|
|
187
|
+
| Fix line length | 2 min | Text editor |
|
|
188
|
+
| Validation | 1 min | doc8, Python |
|
|
189
|
+
| **Total** | **6 min** | Basic tools |
|
|
190
|
+
|
|
191
|
+
## Risk Assessment
|
|
192
|
+
|
|
193
|
+
| Risk | Probability | Impact | Mitigation |
|
|
194
|
+
|------|------------|--------|------------|
|
|
195
|
+
| Break RST syntax | Very Low (2%) | Medium | Test build locally |
|
|
196
|
+
| Miss an error | Low (5%) | Low | Run comprehensive doc8 |
|
|
197
|
+
| Git merge conflicts | Low (10%) | Low | Fix on clean branch |
|
|
198
|
+
|
|
199
|
+
## Commit Message
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
fix: resolve doc8 linting errors blocking documentation builds
|
|
203
|
+
|
|
204
|
+
- Add missing newlines at end of 4 RST files
|
|
205
|
+
- Remove trailing whitespace from index.rst (lines 17, 23)
|
|
206
|
+
- Fix line length issue on index.rst line 4
|
|
207
|
+
- Unblocks documentation workflow that has been failing since Aug 16
|
|
208
|
+
|
|
209
|
+
Fixes all 7 doc8 errors:
|
|
210
|
+
- 4x D005 (no newline at end of file)
|
|
211
|
+
- 2x D002 (trailing whitespace)
|
|
212
|
+
- 1x D001 (line too long)
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
## Expected Outcome
|
|
216
|
+
|
|
217
|
+
### Immediate Results
|
|
218
|
+
- ✅ Documentation workflow passes
|
|
219
|
+
- ✅ GitHub Pages deployment resumes
|
|
220
|
+
- ✅ All PRs show passing documentation check
|
|
221
|
+
- ✅ CI/CD pipeline unblocked
|
|
222
|
+
|
|
223
|
+
### Metrics
|
|
224
|
+
- Build success rate: 0% → 100%
|
|
225
|
+
- Time to deploy: ∞ → 5 minutes
|
|
226
|
+
- Developer friction: High → None
|
|
227
|
+
|
|
228
|
+
## Next Steps
|
|
229
|
+
|
|
230
|
+
After successful implementation:
|
|
231
|
+
1. Monitor next automatic workflow run
|
|
232
|
+
2. Verify GitHub Pages deployment
|
|
233
|
+
3. Proceed to Phase 2 (Configuration) to prevent recurrence
|
|
234
|
+
4. Notify team of resolution
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
*This phase is CRITICAL and should be implemented immediately to restore documentation functionality.*
|