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,446 @@
|
|
|
1
|
+
# Phase 4: Workflow Improvements
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
Enhance the GitHub Actions documentation workflow to be more resilient, informative, and self-healing when encountering formatting issues.
|
|
5
|
+
|
|
6
|
+
## Current Workflow Analysis
|
|
7
|
+
|
|
8
|
+
### Workflow Structure
|
|
9
|
+
```yaml
|
|
10
|
+
name: Documentation
|
|
11
|
+
on: [push, pull_request, workflow_dispatch]
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
- Checkout
|
|
15
|
+
- Setup Python
|
|
16
|
+
- Install dependencies
|
|
17
|
+
- Lint with doc8 (FAILS HERE)
|
|
18
|
+
- Check links
|
|
19
|
+
- Build documentation
|
|
20
|
+
- Upload artifacts
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Current Issues
|
|
24
|
+
1. **Fails fast**: Single formatting error blocks entire pipeline
|
|
25
|
+
2. **No auto-fixing**: Could fix simple issues automatically
|
|
26
|
+
3. **Poor error reporting**: Errors not clearly communicated
|
|
27
|
+
4. **No gradual enforcement**: Same rules for all branches
|
|
28
|
+
|
|
29
|
+
## Improved Workflow Design
|
|
30
|
+
|
|
31
|
+
### 4.1 Enhanced Documentation Workflow
|
|
32
|
+
|
|
33
|
+
**Updated `.github/workflows/docs.yml`**:
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
name: Documentation
|
|
37
|
+
|
|
38
|
+
on:
|
|
39
|
+
push:
|
|
40
|
+
branches: ['**']
|
|
41
|
+
pull_request:
|
|
42
|
+
branches: ['**']
|
|
43
|
+
workflow_dispatch:
|
|
44
|
+
inputs:
|
|
45
|
+
auto_fix:
|
|
46
|
+
description: 'Automatically fix formatting issues'
|
|
47
|
+
required: false
|
|
48
|
+
default: 'true'
|
|
49
|
+
type: boolean
|
|
50
|
+
|
|
51
|
+
jobs:
|
|
52
|
+
format-check:
|
|
53
|
+
name: Check Documentation Formatting
|
|
54
|
+
runs-on: ubuntu-latest
|
|
55
|
+
outputs:
|
|
56
|
+
has_issues: ${{ steps.check.outputs.has_issues }}
|
|
57
|
+
error_report: ${{ steps.check.outputs.error_report }}
|
|
58
|
+
steps:
|
|
59
|
+
- uses: actions/checkout@v4
|
|
60
|
+
with:
|
|
61
|
+
fetch-depth: 0 # Need full history for auto-fixes
|
|
62
|
+
|
|
63
|
+
- uses: actions/setup-python@v5
|
|
64
|
+
with:
|
|
65
|
+
python-version: "3.12"
|
|
66
|
+
|
|
67
|
+
- name: Install doc8
|
|
68
|
+
run: pip install doc8
|
|
69
|
+
|
|
70
|
+
- name: Auto-fix formatting issues
|
|
71
|
+
id: autofix
|
|
72
|
+
if: github.event_name == 'pull_request' || inputs.auto_fix == 'true'
|
|
73
|
+
run: |
|
|
74
|
+
echo "🔧 Attempting to auto-fix documentation formatting issues..."
|
|
75
|
+
|
|
76
|
+
# Fix trailing whitespace
|
|
77
|
+
find docs -name "*.rst" -type f -exec sed -i 's/[[:space:]]*$//' {} \;
|
|
78
|
+
|
|
79
|
+
# Ensure newline at end of files
|
|
80
|
+
find docs -name "*.rst" -type f -exec sh -c 'tail -c1 {} | read -r _ || echo >> {}' \;
|
|
81
|
+
|
|
82
|
+
# Check if fixes were made
|
|
83
|
+
if git diff --quiet; then
|
|
84
|
+
echo "✅ No formatting fixes needed"
|
|
85
|
+
echo "fixes_made=false" >> $GITHUB_OUTPUT
|
|
86
|
+
else
|
|
87
|
+
echo "🔧 Formatting fixes applied"
|
|
88
|
+
echo "fixes_made=true" >> $GITHUB_OUTPUT
|
|
89
|
+
|
|
90
|
+
# Show what was fixed
|
|
91
|
+
echo "### Files Fixed" >> $GITHUB_STEP_SUMMARY
|
|
92
|
+
git diff --name-only | while read file; do
|
|
93
|
+
echo "- $file" >> $GITHUB_STEP_SUMMARY
|
|
94
|
+
done
|
|
95
|
+
fi
|
|
96
|
+
|
|
97
|
+
- name: Check documentation formatting
|
|
98
|
+
id: check
|
|
99
|
+
run: |
|
|
100
|
+
echo "📝 Checking documentation formatting..."
|
|
101
|
+
|
|
102
|
+
# Run doc8 and capture output
|
|
103
|
+
if doc8 --config .doc8 README.rst docs CITATION.rst 2>&1 | tee doc8_output.txt; then
|
|
104
|
+
echo "✅ Documentation formatting check passed"
|
|
105
|
+
echo "has_issues=false" >> $GITHUB_OUTPUT
|
|
106
|
+
else
|
|
107
|
+
echo "❌ Documentation formatting issues found"
|
|
108
|
+
echo "has_issues=true" >> $GITHUB_OUTPUT
|
|
109
|
+
|
|
110
|
+
# Create error report
|
|
111
|
+
echo "### Documentation Formatting Issues" >> $GITHUB_STEP_SUMMARY
|
|
112
|
+
echo '```' >> $GITHUB_STEP_SUMMARY
|
|
113
|
+
cat doc8_output.txt >> $GITHUB_STEP_SUMMARY
|
|
114
|
+
echo '```' >> $GITHUB_STEP_SUMMARY
|
|
115
|
+
|
|
116
|
+
# Save error report for PR comment
|
|
117
|
+
echo "error_report<<EOF" >> $GITHUB_OUTPUT
|
|
118
|
+
cat doc8_output.txt >> $GITHUB_OUTPUT
|
|
119
|
+
echo "EOF" >> $GITHUB_OUTPUT
|
|
120
|
+
|
|
121
|
+
# Fail only on main/master branch
|
|
122
|
+
if [[ "${{ github.ref }}" == "refs/heads/main" ]] || [[ "${{ github.ref }}" == "refs/heads/master" ]]; then
|
|
123
|
+
exit 1
|
|
124
|
+
else
|
|
125
|
+
echo "⚠️ Allowing build to continue (not on main branch)"
|
|
126
|
+
fi
|
|
127
|
+
fi
|
|
128
|
+
|
|
129
|
+
- name: Upload formatting report
|
|
130
|
+
if: always()
|
|
131
|
+
uses: actions/upload-artifact@v4
|
|
132
|
+
with:
|
|
133
|
+
name: formatting-report-${{ github.run_id }}
|
|
134
|
+
path: doc8_output.txt
|
|
135
|
+
retention-days: 7
|
|
136
|
+
|
|
137
|
+
build:
|
|
138
|
+
name: Build Documentation
|
|
139
|
+
needs: format-check
|
|
140
|
+
# Continue even if formatting has issues (except on main)
|
|
141
|
+
if: |
|
|
142
|
+
always() &&
|
|
143
|
+
(needs.format-check.result == 'success' ||
|
|
144
|
+
(github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master'))
|
|
145
|
+
runs-on: ubuntu-latest
|
|
146
|
+
steps:
|
|
147
|
+
- uses: actions/checkout@v4
|
|
148
|
+
|
|
149
|
+
- uses: actions/setup-python@v5
|
|
150
|
+
with:
|
|
151
|
+
python-version: "3.12"
|
|
152
|
+
|
|
153
|
+
- uses: actions/cache@v4
|
|
154
|
+
with:
|
|
155
|
+
path: ~/.cache/pip
|
|
156
|
+
key: ${{ runner.os }}-pip-docs-${{ hashFiles('docs/requirements.txt') }}
|
|
157
|
+
restore-keys: |
|
|
158
|
+
${{ runner.os }}-pip-docs-
|
|
159
|
+
|
|
160
|
+
- name: Install system dependencies
|
|
161
|
+
run: |
|
|
162
|
+
sudo apt-get update
|
|
163
|
+
sudo apt-get install -y libhdf5-dev pkg-config
|
|
164
|
+
|
|
165
|
+
- name: Install dependencies
|
|
166
|
+
run: |
|
|
167
|
+
python -m pip install --upgrade pip wheel
|
|
168
|
+
pip install --verbose tables
|
|
169
|
+
pip install -r docs/requirements.txt
|
|
170
|
+
pip install -e .
|
|
171
|
+
|
|
172
|
+
- name: Check documentation links
|
|
173
|
+
run: |
|
|
174
|
+
pip install sphinx-link-checker
|
|
175
|
+
sphinx-build -b linkcheck docs docs/build/linkcheck
|
|
176
|
+
continue-on-error: true
|
|
177
|
+
|
|
178
|
+
- name: Build documentation
|
|
179
|
+
id: build
|
|
180
|
+
env:
|
|
181
|
+
SPHINXOPTS: -W --keep-going -n
|
|
182
|
+
working-directory: docs
|
|
183
|
+
run: |
|
|
184
|
+
echo "📚 Building documentation..."
|
|
185
|
+
make clean
|
|
186
|
+
|
|
187
|
+
if make html 2>&1 | tee build.log; then
|
|
188
|
+
echo "✅ Documentation built successfully"
|
|
189
|
+
echo "build_success=true" >> $GITHUB_OUTPUT
|
|
190
|
+
else
|
|
191
|
+
echo "❌ Documentation build failed"
|
|
192
|
+
echo "build_success=false" >> $GITHUB_OUTPUT
|
|
193
|
+
|
|
194
|
+
# Extract warnings and errors
|
|
195
|
+
echo "### Build Issues" >> $GITHUB_STEP_SUMMARY
|
|
196
|
+
echo '```' >> $GITHUB_STEP_SUMMARY
|
|
197
|
+
grep -E "WARNING|ERROR" build.log >> $GITHUB_STEP_SUMMARY || true
|
|
198
|
+
echo '```' >> $GITHUB_STEP_SUMMARY
|
|
199
|
+
|
|
200
|
+
exit 1
|
|
201
|
+
fi
|
|
202
|
+
|
|
203
|
+
- name: Upload documentation artifacts
|
|
204
|
+
if: always()
|
|
205
|
+
uses: actions/upload-artifact@v4
|
|
206
|
+
with:
|
|
207
|
+
name: documentation-${{ github.run_id }}
|
|
208
|
+
path: |
|
|
209
|
+
docs/build/html/
|
|
210
|
+
docs/build/doctrees/
|
|
211
|
+
docs/build/coverage/
|
|
212
|
+
docs/build/linkcheck/
|
|
213
|
+
docs/build.log
|
|
214
|
+
retention-days: 90
|
|
215
|
+
|
|
216
|
+
- name: Check documentation coverage
|
|
217
|
+
run: |
|
|
218
|
+
mkdir -p docs/build/coverage
|
|
219
|
+
python -m sphinx.ext.coverage -d docs/build/doctrees -o docs/build/coverage docs
|
|
220
|
+
echo "### Documentation Coverage" >> $GITHUB_STEP_SUMMARY
|
|
221
|
+
find docs/build/coverage -name "*.txt" -exec cat {} \; >> $GITHUB_STEP_SUMMARY
|
|
222
|
+
continue-on-error: true
|
|
223
|
+
|
|
224
|
+
comment-pr:
|
|
225
|
+
name: Comment on PR
|
|
226
|
+
if: github.event_name == 'pull_request' && needs.format-check.outputs.has_issues == 'true'
|
|
227
|
+
needs: [format-check, build]
|
|
228
|
+
runs-on: ubuntu-latest
|
|
229
|
+
permissions:
|
|
230
|
+
pull-requests: write
|
|
231
|
+
steps:
|
|
232
|
+
- name: Comment formatting issues on PR
|
|
233
|
+
uses: actions/github-script@v7
|
|
234
|
+
with:
|
|
235
|
+
script: |
|
|
236
|
+
const error_report = `${{ needs.format-check.outputs.error_report }}`;
|
|
237
|
+
|
|
238
|
+
const comment = `## 📝 Documentation Formatting Issues
|
|
239
|
+
|
|
240
|
+
This PR has documentation formatting issues that need to be fixed:
|
|
241
|
+
|
|
242
|
+
\`\`\`
|
|
243
|
+
${error_report}
|
|
244
|
+
\`\`\`
|
|
245
|
+
|
|
246
|
+
### How to Fix
|
|
247
|
+
|
|
248
|
+
1. **Automatically** (recommended):
|
|
249
|
+
\`\`\`bash
|
|
250
|
+
# Install pre-commit hooks
|
|
251
|
+
pip install pre-commit
|
|
252
|
+
pre-commit install
|
|
253
|
+
|
|
254
|
+
# Run auto-fixes
|
|
255
|
+
pre-commit run --all-files
|
|
256
|
+
\`\`\`
|
|
257
|
+
|
|
258
|
+
2. **Manually**:
|
|
259
|
+
- Remove trailing whitespace
|
|
260
|
+
- Ensure files end with newline
|
|
261
|
+
- Keep lines under 100 characters
|
|
262
|
+
|
|
263
|
+
3. **Using doc8**:
|
|
264
|
+
\`\`\`bash
|
|
265
|
+
pip install doc8
|
|
266
|
+
doc8 --config .doc8 docs
|
|
267
|
+
\`\`\`
|
|
268
|
+
|
|
269
|
+
These checks are required to pass on the main branch.`;
|
|
270
|
+
|
|
271
|
+
github.rest.issues.createComment({
|
|
272
|
+
issue_number: context.issue.number,
|
|
273
|
+
owner: context.repo.owner,
|
|
274
|
+
repo: context.repo.repo,
|
|
275
|
+
body: comment
|
|
276
|
+
});
|
|
277
|
+
|
|
278
|
+
deploy:
|
|
279
|
+
needs: build
|
|
280
|
+
if: github.ref == 'refs/heads/master' && github.event_name == 'push'
|
|
281
|
+
runs-on: ubuntu-latest
|
|
282
|
+
steps:
|
|
283
|
+
# [Previous deploy steps remain the same]
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### 4.2 Key Improvements Explained
|
|
287
|
+
|
|
288
|
+
| Improvement | Description | Benefit |
|
|
289
|
+
|-------------|-------------|---------|
|
|
290
|
+
| **Auto-fixing** | Automatically fixes trailing whitespace and EOF | Reduces manual work |
|
|
291
|
+
| **Gradual enforcement** | Strict on main, warnings on branches | Smoother development |
|
|
292
|
+
| **Better reporting** | Detailed error summaries in GitHub UI | Easier debugging |
|
|
293
|
+
| **PR comments** | Automatic comments with fix instructions | Better developer experience |
|
|
294
|
+
| **Resilient building** | Continue building despite format issues | Get partial results |
|
|
295
|
+
| **Artifact preservation** | Save all outputs for debugging | Better troubleshooting |
|
|
296
|
+
|
|
297
|
+
## Implementation Steps
|
|
298
|
+
|
|
299
|
+
### Step 4.1: Backup Current Workflow (1 minute)
|
|
300
|
+
|
|
301
|
+
```bash
|
|
302
|
+
# Create backup
|
|
303
|
+
cp .github/workflows/docs.yml .github/workflows/docs.yml.backup
|
|
304
|
+
|
|
305
|
+
# Verify backup
|
|
306
|
+
ls -la .github/workflows/docs.yml*
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
### Step 4.2: Update Workflow File (5 minutes)
|
|
310
|
+
|
|
311
|
+
Replace the current workflow with the enhanced version above, or apply incremental improvements:
|
|
312
|
+
|
|
313
|
+
**Option A: Full replacement**
|
|
314
|
+
```bash
|
|
315
|
+
# Copy new workflow from plan
|
|
316
|
+
cp plans/documentation-workflow-fix/enhanced-docs.yml .github/workflows/docs.yml
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
**Option B: Incremental updates**
|
|
320
|
+
Add specific improvements one at a time and test.
|
|
321
|
+
|
|
322
|
+
### Step 4.3: Test Workflow (3 minutes)
|
|
323
|
+
|
|
324
|
+
```bash
|
|
325
|
+
# Create test branch
|
|
326
|
+
git checkout -b test/workflow-improvements
|
|
327
|
+
|
|
328
|
+
# Make small doc change
|
|
329
|
+
echo "" >> docs/source/index.rst
|
|
330
|
+
|
|
331
|
+
# Commit and push
|
|
332
|
+
git add .github/workflows/docs.yml docs/source/index.rst
|
|
333
|
+
git commit -m "test: workflow improvements"
|
|
334
|
+
git push origin test/workflow-improvements
|
|
335
|
+
|
|
336
|
+
# Monitor in GitHub Actions UI
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
### Step 4.4: Validate Improvements (2 minutes)
|
|
340
|
+
|
|
341
|
+
Check that:
|
|
342
|
+
- [ ] Workflow runs without syntax errors
|
|
343
|
+
- [ ] Auto-fixing works correctly
|
|
344
|
+
- [ ] Error reporting is clear
|
|
345
|
+
- [ ] PR comments appear (if applicable)
|
|
346
|
+
- [ ] Build continues despite format issues (on branches)
|
|
347
|
+
|
|
348
|
+
## Configuration Options
|
|
349
|
+
|
|
350
|
+
### Environment Variables
|
|
351
|
+
|
|
352
|
+
Add to workflow for customization:
|
|
353
|
+
|
|
354
|
+
```yaml
|
|
355
|
+
env:
|
|
356
|
+
# Maximum line length for doc8
|
|
357
|
+
DOC8_MAX_LINE_LENGTH: 100
|
|
358
|
+
|
|
359
|
+
# Whether to auto-fix issues
|
|
360
|
+
AUTO_FIX_DOCS: true
|
|
361
|
+
|
|
362
|
+
# Strict mode (fail on any issue)
|
|
363
|
+
STRICT_DOC_CHECK: ${{ github.ref == 'refs/heads/main' }}
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
### Workflow Dispatch Parameters
|
|
367
|
+
|
|
368
|
+
Allow manual control:
|
|
369
|
+
|
|
370
|
+
```yaml
|
|
371
|
+
workflow_dispatch:
|
|
372
|
+
inputs:
|
|
373
|
+
auto_fix:
|
|
374
|
+
description: 'Auto-fix formatting'
|
|
375
|
+
type: boolean
|
|
376
|
+
default: true
|
|
377
|
+
strict_check:
|
|
378
|
+
description: 'Fail on any issue'
|
|
379
|
+
type: boolean
|
|
380
|
+
default: false
|
|
381
|
+
verbose:
|
|
382
|
+
description: 'Verbose output'
|
|
383
|
+
type: boolean
|
|
384
|
+
default: false
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
## Monitoring and Metrics
|
|
388
|
+
|
|
389
|
+
### Success Metrics
|
|
390
|
+
|
|
391
|
+
| Metric | Current | Target | Measurement |
|
|
392
|
+
|--------|---------|--------|-------------|
|
|
393
|
+
| Build success rate | 0% | 95% | GitHub Actions analytics |
|
|
394
|
+
| Auto-fix effectiveness | 0% | 80% | Fixed vs manual |
|
|
395
|
+
| Time to resolution | 10 min | 2 min | PR to merge time |
|
|
396
|
+
| Developer satisfaction | Low | High | Survey/feedback |
|
|
397
|
+
|
|
398
|
+
### Monitoring Dashboard
|
|
399
|
+
|
|
400
|
+
Create GitHub Actions badge:
|
|
401
|
+
|
|
402
|
+
```markdown
|
|
403
|
+

|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
### Weekly Review Checklist
|
|
407
|
+
- [ ] Review workflow run history
|
|
408
|
+
- [ ] Check auto-fix success rate
|
|
409
|
+
- [ ] Review PR comments effectiveness
|
|
410
|
+
- [ ] Gather developer feedback
|
|
411
|
+
- [ ] Adjust configuration as needed
|
|
412
|
+
|
|
413
|
+
## Rollback Plan
|
|
414
|
+
|
|
415
|
+
### Quick Rollback
|
|
416
|
+
|
|
417
|
+
```bash
|
|
418
|
+
# Restore backup
|
|
419
|
+
cp .github/workflows/docs.yml.backup .github/workflows/docs.yml
|
|
420
|
+
|
|
421
|
+
# Commit and push
|
|
422
|
+
git add .github/workflows/docs.yml
|
|
423
|
+
git commit -m "revert: restore previous documentation workflow"
|
|
424
|
+
git push
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
### Gradual Rollback
|
|
428
|
+
|
|
429
|
+
Remove features one at a time:
|
|
430
|
+
1. Disable auto-fixing
|
|
431
|
+
2. Remove PR comments
|
|
432
|
+
3. Restore strict checking
|
|
433
|
+
4. Remove enhanced reporting
|
|
434
|
+
|
|
435
|
+
## Next Steps
|
|
436
|
+
|
|
437
|
+
1. Implement workflow improvements
|
|
438
|
+
2. Test on feature branch
|
|
439
|
+
3. Monitor for 1 week
|
|
440
|
+
4. Gather team feedback
|
|
441
|
+
5. Adjust based on results
|
|
442
|
+
6. Proceed to Phase 5 (Documentation)
|
|
443
|
+
|
|
444
|
+
---
|
|
445
|
+
|
|
446
|
+
*This phase makes the CI/CD pipeline resilient and developer-friendly while maintaining quality standards.*
|