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.

Files changed (412) hide show
  1. plans/.velocity/metrics.json +96 -0
  2. plans/0-overview-template.md +268 -0
  3. plans/N-phase-template.md +106 -0
  4. plans/PLAN_AUDIT_SUMMARY.md +173 -0
  5. plans/TEMPLATE-USAGE-GUIDE.md +198 -0
  6. plans/__init__.py +1 -0
  7. plans/abandoned/compaction-agent-system/0-Overview.md +123 -0
  8. plans/abandoned/compaction-agent-system/agents-index-update-plan.md +109 -0
  9. plans/abandoned/compaction-agent-system/compacted_state.md +85 -0
  10. plans/abandoned/compaction-agent-system/implementation-plan.md +107 -0
  11. plans/abandoned/compaction-agent-system/system-validation-report.md +159 -0
  12. plans/abandoned/compaction-agent-system/usage-guide.md +210 -0
  13. plans/abandoned/hook-system-enhancement/0-Overview.md +214 -0
  14. plans/abandoned/hook-system-enhancement/1-Phase1-Core-Infrastructure.md +313 -0
  15. plans/abandoned/hook-system-enhancement/2-Phase2-Intelligent-Testing.md +385 -0
  16. plans/abandoned/hook-system-enhancement/3-Phase3-Physics-Validation.md +444 -0
  17. plans/abandoned/hook-system-enhancement/4-Phase4-Performance-Monitoring.md +458 -0
  18. plans/abandoned/hook-system-enhancement/5-Phase5-Developer-Experience.md +532 -0
  19. plans/abandoned/hook-system-enhancement/6-Implementation-Timeline.md +274 -0
  20. plans/abandoned/hook-system-enhancement/7-Risk-Management.md +376 -0
  21. plans/abandoned/hook-system-enhancement/8-Testing-Strategy.md +579 -0
  22. plans/abandoned/readthedocs-automation/0-Overview.md +247 -0
  23. plans/abandoned/readthedocs-automation/1-Emergency-Documentation-Fixes.md +270 -0
  24. plans/abandoned/readthedocs-automation/2-Template-System-Enhancement.md +811 -0
  25. plans/abandoned/readthedocs-automation/3-Quality-Audit-ReadTheDocs-Integration.md +844 -0
  26. plans/abandoned/readthedocs-automation/4-Plan-Consolidation-Cleanup.md +632 -0
  27. plans/abandoned/readthedocs-automation/9-Closeout.md +207 -0
  28. plans/abandoned/readthedocs-automation/ABANDONMENT_REASON.md +72 -0
  29. plans/cicd-architecture-redesign/0-Overview.md +193 -0
  30. plans/cicd-architecture-redesign/1-Workflow-Creation.md +103 -0
  31. plans/cicd-architecture-redesign/2-Version-Detection.md +123 -0
  32. plans/cicd-architecture-redesign/3-Deployment-Gates.md +169 -0
  33. plans/cicd-architecture-redesign/4-RC-Testing.md +194 -0
  34. plans/cicd-architecture-redesign/5-TestPyPI-Validation.md +264 -0
  35. plans/cicd-architecture-redesign/6-Production-Release.md +263 -0
  36. plans/cicd-architecture-redesign/7-Cleanup.md +243 -0
  37. plans/cicd-architecture-redesign/8-Documentation.md +285 -0
  38. plans/cicd-architecture-redesign/Closeout.md +225 -0
  39. plans/closeout-template.md +259 -0
  40. plans/completed/circular-import-audit/0-Overview.md +152 -0
  41. plans/completed/circular-import-audit/1-Static-Dependency-Analysis.md +62 -0
  42. plans/completed/circular-import-audit/2-Dynamic-Import-Testing.md +56 -0
  43. plans/completed/circular-import-audit/3-Performance-Impact-Assessment.md +56 -0
  44. plans/completed/circular-import-audit/4-Issue-Remediation.md +78 -0
  45. plans/completed/circular-import-audit/5-Preventive-Infrastructure.md +89 -0
  46. plans/completed/claude-settings-ecosystem-alignment/0-Overview.md +162 -0
  47. plans/completed/claude-settings-ecosystem-alignment/1-Security-Foundation.md +148 -0
  48. plans/completed/claude-settings-ecosystem-alignment/2-Hook-Integration.md +158 -0
  49. plans/completed/claude-settings-ecosystem-alignment/3-Agent-System-Integration.md +177 -0
  50. plans/completed/claude-settings-ecosystem-alignment/4-Enhanced-Workflow-Automation.md +159 -0
  51. plans/completed/claude-settings-ecosystem-alignment/5-Validation-Monitoring.md +181 -0
  52. plans/completed/claude-settings-ecosystem-alignment/compacted_session_state.md +290 -0
  53. plans/completed/combined_plan_with_checklist_documentation/1-Overview-and-Goals.md +51 -0
  54. plans/completed/combined_plan_with_checklist_documentation/2-Toolchain-and-Hosting.md +69 -0
  55. plans/completed/combined_plan_with_checklist_documentation/3-Repository-Structure.md +61 -0
  56. plans/completed/combined_plan_with_checklist_documentation/4-Configuration-and-Standards.md +70 -0
  57. plans/completed/combined_plan_with_checklist_documentation/5-Documentation-Content.md +62 -0
  58. plans/completed/combined_plan_with_checklist_documentation/6-CI-CD-and-Validation.md +58 -0
  59. plans/completed/combined_plan_with_checklist_documentation/7-Maintenance.md +55 -0
  60. plans/completed/combined_test_plan_with_checklist_fitfunctions/0-Overview.md +135 -0
  61. plans/completed/combined_test_plan_with_checklist_fitfunctions/1-Common-fixtures.md +59 -0
  62. plans/completed/combined_test_plan_with_checklist_fitfunctions/10-power_laws.md +56 -0
  63. plans/completed/combined_test_plan_with_checklist_fitfunctions/2-core.py-FitFunction.md +118 -0
  64. plans/completed/combined_test_plan_with_checklist_fitfunctions/3-gaussians.py-Gaussian-GaussianNormalized-GaussianLn.md +69 -0
  65. plans/completed/combined_test_plan_with_checklist_fitfunctions/4-trend_fits.py-TrendFit.md +99 -0
  66. plans/completed/combined_test_plan_with_checklist_fitfunctions/5-plots.py-FFPlot.md +98 -0
  67. plans/completed/combined_test_plan_with_checklist_fitfunctions/6-tex_info.py-TeXinfo.md +79 -0
  68. plans/completed/combined_test_plan_with_checklist_fitfunctions/7-Justification.md +49 -0
  69. plans/completed/combined_test_plan_with_checklist_fitfunctions/8-exponentials.md +64 -0
  70. plans/completed/combined_test_plan_with_checklist_fitfunctions/9-lines.md +58 -0
  71. plans/completed/combined_test_plan_with_checklist_plotting/0-Overview.md +142 -0
  72. plans/completed/combined_test_plan_with_checklist_plotting/1-base.py.md +90 -0
  73. plans/completed/combined_test_plan_with_checklist_plotting/10-labels-special.py.md +102 -0
  74. plans/completed/combined_test_plan_with_checklist_plotting/11-labels-chemistry.py.md +212 -0
  75. plans/completed/combined_test_plan_with_checklist_plotting/12-labels-composition.py.md +242 -0
  76. plans/completed/combined_test_plan_with_checklist_plotting/13-labels-datetime.py.md +247 -0
  77. plans/completed/combined_test_plan_with_checklist_plotting/14-labels-elemental_abundance.py.md +274 -0
  78. plans/completed/combined_test_plan_with_checklist_plotting/15-visual-validation.md +256 -0
  79. plans/completed/combined_test_plan_with_checklist_plotting/16-integration-testing.md +266 -0
  80. plans/completed/combined_test_plan_with_checklist_plotting/17-performance-benchmarks.md +267 -0
  81. plans/completed/combined_test_plan_with_checklist_plotting/18-Fixtures-and-Utilities.md +86 -0
  82. plans/completed/combined_test_plan_with_checklist_plotting/2-agg_plot.py.md +90 -0
  83. plans/completed/combined_test_plan_with_checklist_plotting/3-histograms.py.md +201 -0
  84. plans/completed/combined_test_plan_with_checklist_plotting/4-scatter.py.md +167 -0
  85. plans/completed/combined_test_plan_with_checklist_plotting/5-spiral.py.md +216 -0
  86. plans/completed/combined_test_plan_with_checklist_plotting/6-orbits.py.md +108 -0
  87. plans/completed/combined_test_plan_with_checklist_plotting/7-tools.py.md +86 -0
  88. plans/completed/combined_test_plan_with_checklist_plotting/8-select_data_from_figure.py.md +97 -0
  89. plans/completed/combined_test_plan_with_checklist_plotting/9-labels-base.py.md +88 -0
  90. plans/completed/combined_test_plan_with_checklist_solar_activity/.gitkeep +0 -0
  91. plans/completed/combined_test_plan_with_checklist_solar_activity/0-Overview.md +170 -0
  92. plans/completed/combined_test_plan_with_checklist_solar_activity/1-Package-Entry-Point-__init__.py.md +121 -0
  93. plans/completed/combined_test_plan_with_checklist_solar_activity/2-Core-Base-Classes-base.py.md +142 -0
  94. plans/completed/combined_test_plan_with_checklist_solar_activity/3-Plotting-Helpers-plots.py.md +123 -0
  95. plans/completed/combined_test_plan_with_checklist_solar_activity/4-LISIRD-Sub-package.md +119 -0
  96. plans/completed/combined_test_plan_with_checklist_solar_activity/5-Extrema-Calculator.md +103 -0
  97. plans/completed/combined_test_plan_with_checklist_solar_activity/6-Sunspot-Number-Sub-package.md +163 -0
  98. plans/completed/combined_test_plan_with_checklist_solar_activity/7-Sunspot-Number-Init.py.md +217 -0
  99. plans/completed/combined_test_plan_with_checklist_solar_activity/compacted_state.md +52 -0
  100. plans/completed/compaction-agent-modernization/0-Overview.md +156 -0
  101. plans/completed/compaction-agent-modernization/1-Architecture-Audit-Gap-Analysis.md +132 -0
  102. plans/completed/compaction-agent-modernization/2-Token-Baseline-Recalibration.md +153 -0
  103. plans/completed/compaction-agent-modernization/3-Agent-Reference-Updates.md +184 -0
  104. plans/completed/compaction-agent-modernization/4-Compression-Algorithm-Modernization.md +238 -0
  105. plans/completed/compaction-agent-modernization/5-Workflow-Integration-Streamlining.md +252 -0
  106. plans/completed/compaction-agent-modernization/6-Template-Structure-Optimization.md +240 -0
  107. plans/completed/compaction-agent-modernization/7-Integration-Testing-Validation.md +292 -0
  108. plans/completed/compaction-hook-enhancement/0-Overview.md +150 -0
  109. plans/completed/compaction-hook-enhancement/1-Token-Estimation-Enhancement.md +179 -0
  110. plans/completed/compaction-hook-enhancement/2-Compression-Intelligence.md +294 -0
  111. plans/completed/compaction-hook-enhancement/3-Git-Integration-Metadata.md +310 -0
  112. plans/completed/compaction-hook-enhancement/4-Session-Continuity-Features.md +358 -0
  113. plans/completed/compaction-hook-enhancement/5-Testing-Strategy.md +404 -0
  114. plans/completed/compaction-hook-enhancement/6-Integration-Roadmap.md +319 -0
  115. plans/completed/compaction-hook-enhancement/compacted_state.md +142 -0
  116. plans/completed/docstring-audit-enhancement/0-Overview.md +274 -0
  117. plans/completed/docstring-audit-enhancement/1-Infrastructure-Setup-and-Validation-Tools.md +206 -0
  118. plans/completed/docstring-audit-enhancement/2-Core-Physics-Modules-Enhancement.md +237 -0
  119. plans/completed/docstring-audit-enhancement/3-Fitfunctions-Mathematical-Modules-Enhancement.md +188 -0
  120. plans/completed/docstring-audit-enhancement/4-Plotting-Visualization-Modules-Enhancement.md +243 -0
  121. plans/completed/docstring-audit-enhancement/5-Specialized-Modules-Enhancement.md +216 -0
  122. plans/completed/docstring-audit-enhancement/6-Validation-and-Integration.md +216 -0
  123. plans/completed/fitfunctions-testing-implementation/0-Overview.md +130 -0
  124. plans/completed/fitfunctions-testing-implementation/1-Test-Infrastructure-Setup.md +79 -0
  125. plans/completed/fitfunctions-testing-implementation/2-Common-Fixtures-Test-Utilities.md +104 -0
  126. plans/completed/fitfunctions-testing-implementation/3-Core-FitFunction-Testing.md +168 -0
  127. plans/completed/fitfunctions-testing-implementation/4-Specialized-Function-Classes.md +210 -0
  128. plans/completed/fitfunctions-testing-implementation/5-Advanced-Classes-Testing.md +214 -0
  129. plans/completed/fitfunctions-testing-implementation/6-Plotting-Integration-Testing.md +231 -0
  130. plans/completed/fitfunctions-testing-implementation/7-Extended-Coverage-BONUS.md +184 -0
  131. plans/completed/numpy-docstring-conversion-plan/numpy-docstring-conversion-plan.md +118 -0
  132. plans/completed/pr-review-remediation/0-Overview.md +138 -0
  133. plans/completed/pr-review-remediation/1-Critical-Safety-Improvements.md +179 -0
  134. plans/completed/pr-review-remediation/2-Smart-Timeouts-Validation.md +399 -0
  135. plans/completed/pr-review-remediation/3-Enhanced-GitHub-Integration.md +258 -0
  136. plans/completed/pr-review-remediation/compacted_state.md +66 -0
  137. plans/completed/python-310-migration/0-Overview.md +390 -0
  138. plans/completed/python-310-migration/1-Planning-Setup.md +164 -0
  139. plans/completed/python-310-migration/2-Implementation.md +256 -0
  140. plans/completed/python-310-migration/3-Testing-Validation.md +335 -0
  141. plans/completed/python-310-migration/4-Documentation-Release.md +274 -0
  142. plans/completed/python-310-migration/5-Closeout.md +252 -0
  143. plans/completed/requirements-management-consolidation/0-Overview.md +118 -0
  144. plans/completed/requirements-management-consolidation/1-Documentation-Validation-Environment-Setup.md +116 -0
  145. plans/completed/requirements-management-consolidation/2-Requirements-Consolidation.md +161 -0
  146. plans/completed/requirements-management-consolidation/3-Workflow-Automation-Final-Integration.md +196 -0
  147. plans/completed/single-ecosystem-plan-implementation/0-Overview.md +83 -0
  148. plans/completed/single-ecosystem-plan-implementation/1-Plan-Preservation-Session-Management.md +38 -0
  149. plans/completed/single-ecosystem-plan-implementation/2-File-Structure-Optimization.md +43 -0
  150. plans/completed/single-ecosystem-plan-implementation/3-Plan-Migration-Archive-Setup.md +82 -0
  151. plans/completed/single-ecosystem-plan-implementation/4-Agent-System-Transformation.md +108 -0
  152. plans/completed/single-ecosystem-plan-implementation/5-Template-System-Enhancement.md +131 -0
  153. plans/completed/single-ecosystem-plan-implementation/6-Final-Validation-Testing.md +120 -0
  154. plans/completed/test-directory-consolidation/0-Overview.md +51 -0
  155. plans/completed/test-directory-consolidation/1-Structure-Preparation.md +82 -0
  156. plans/completed/test-directory-consolidation/2-File-Migration.md +100 -0
  157. plans/completed/test-directory-consolidation/3-Import-Transformation.md +117 -0
  158. plans/completed/test-directory-consolidation/4-Configuration-Consolidation.md +140 -0
  159. plans/completed/test-directory-consolidation/5-Validation.md +152 -0
  160. plans/completed/test-directory-consolidation/6-Cleanup.md +156 -0
  161. plans/completed/test-planning-agents-architecture/0-Overview.md +79 -0
  162. plans/completed/test-planning-agents-architecture/1-Branch-Isolation-Testing.md +49 -0
  163. plans/completed/test-planning-agents-architecture/2-Cross-Branch-Coordination.md +51 -0
  164. plans/completed/test-planning-agents-architecture/3-Merge-Workflow-Testing.md +48 -0
  165. plans/deployment-semver-pypi-rtd/0-Overview.md +463 -0
  166. plans/deployment-semver-pypi-rtd/1-Semantic-Versioning-Foundation.md +136 -0
  167. plans/deployment-semver-pypi-rtd/2-PyPI-Deployment-Infrastructure.md +168 -0
  168. plans/deployment-semver-pypi-rtd/3-Release-Automation.md +214 -0
  169. plans/deployment-semver-pypi-rtd/4-Plan-Closeout.md +543 -0
  170. plans/deployment-semver-pypi-rtd/compacted_session_state.md +172 -0
  171. plans/deployment-semver-pypi-rtd/compacted_state.md +131 -0
  172. plans/documentation-code-audit/0-Overview.md +393 -0
  173. plans/documentation-code-audit/1-Discovery-Inventory.md +183 -0
  174. plans/documentation-code-audit/2-Execution-Environment-Setup.md +263 -0
  175. plans/documentation-code-audit/3-Systematic-Validation.md +322 -0
  176. plans/documentation-code-audit/4-Code-Example-Remediation.md +358 -0
  177. plans/documentation-code-audit/5-Physics-MultiIndex-Compliance.md +464 -0
  178. plans/documentation-code-audit/6-Doctest-Integration.md +523 -0
  179. plans/documentation-code-audit/7-Reporting-Documentation.md +498 -0
  180. plans/documentation-code-audit/8-Closeout.md +456 -0
  181. plans/documentation-rebuild-session/compacted_state.md +109 -0
  182. plans/documentation-rendering-fixes/0-Overview.md +104 -0
  183. plans/documentation-rendering-fixes/1-Sphinx-Build-Diagnostics-Warning-Audit.md +101 -0
  184. plans/documentation-rendering-fixes/2-Configuration-Infrastructure-Fixes.md +113 -0
  185. plans/documentation-rendering-fixes/3-Docstring-Syntax-Audit-Repair.md +131 -0
  186. plans/documentation-rendering-fixes/4-HTML-Page-Rendering-Verification.md +113 -0
  187. plans/documentation-rendering-fixes/5-Advanced-Documentation-Quality-Assurance.md +119 -0
  188. plans/documentation-rendering-fixes/6-Documentation-Build-Optimization-Testing.md +129 -0
  189. plans/documentation-rendering-fixes/compacted_state.md +132 -0
  190. plans/documentation-template-fix/0-Overview.md +197 -0
  191. plans/documentation-template-fix/1-Template-System-Analysis.md +269 -0
  192. plans/documentation-template-fix/2-Template-Modification.md +609 -0
  193. plans/documentation-template-fix/3-Build-System-Integration.md +766 -0
  194. plans/documentation-template-fix/4-Testing-Validation.md +1399 -0
  195. plans/documentation-template-fix/5-Documentation-Training.md +602 -0
  196. plans/documentation-workflow-fix/0-Overview.md +222 -0
  197. plans/documentation-workflow-fix/1-Immediate-Fixes.md +238 -0
  198. plans/documentation-workflow-fix/2-Configuration-Setup.md +298 -0
  199. plans/documentation-workflow-fix/3-Pre-commit-Integration.md +382 -0
  200. plans/documentation-workflow-fix/4-Workflow-Improvements.md +446 -0
  201. plans/documentation-workflow-fix/5-Documentation-and-Training.md +527 -0
  202. plans/duplicate-object-warnings-fix-plan.md +130 -0
  203. plans/github-issues-migration/0-Overview.md +510 -0
  204. plans/github-issues-migration/1-Foundation-Label-System.md +180 -0
  205. plans/github-issues-migration/2-Migration-Tool-Rewrite.md +235 -0
  206. plans/github-issues-migration/3-CLI-Integration-Automation.md +169 -0
  207. plans/github-issues-migration/4-Validated-Migration.md +252 -0
  208. plans/github-issues-migration/5-Documentation-Training.md +171 -0
  209. plans/github-issues-migration/6-Closeout.md +179 -0
  210. plans/github-workflows-repair/repair-plan.md +299 -0
  211. plans/issues_from_plans.py +342 -0
  212. plans/pr-270-doc-validation-fixes/0-Overview.md +354 -0
  213. plans/pr-270-doc-validation-fixes/1-Critical-PR-Fixes.md +117 -0
  214. plans/pr-270-doc-validation-fixes/2-Framework-Right-Sizing.md +129 -0
  215. plans/pr-270-doc-validation-fixes/3-Sustainable-Documentation.md +126 -0
  216. plans/pr-270-doc-validation-fixes/4-Closeout-Migration.md +143 -0
  217. plans/pr-270-doc-validation-fixes/PLAN_COMPLETED.md +149 -0
  218. plans/python-310-migration/0-Overview.md +390 -0
  219. plans/python-310-migration/1-Planning-Setup.md +164 -0
  220. plans/python-310-migration/2-Implementation.md +256 -0
  221. plans/python-310-migration/3-Testing-Validation.md +335 -0
  222. plans/python-310-migration/4-Documentation-Release.md +274 -0
  223. plans/python-310-migration/5-Closeout.md +252 -0
  224. plans/readthedocs-simplified/0-Overview.md +243 -0
  225. plans/readthedocs-simplified/1-Immediate-Fixes.md +216 -0
  226. plans/readthedocs-simplified/2-Template-Simplification.md +278 -0
  227. plans/readthedocs-simplified/3-ReadTheDocs-Setup.md +298 -0
  228. plans/readthedocs-simplified/4-Testing-Validation.md +328 -0
  229. plans/readthedocs-simplified/5-Closeout.md +231 -0
  230. plans/readthedocs-simplified/compacted_state.md +127 -0
  231. plans/session-compaction-2025-08-12/compacted_state.md +114 -0
  232. plans/session-compaction-2025-08-13/compacted_state.md +145 -0
  233. plans/session-continuity-protocol/0-Overview.md +35 -0
  234. plans/session-continuity-protocol/1-Core-Principles-Framework.md +40 -0
  235. plans/session-continuity-protocol/2-Pre-Session-Validation-System.md +79 -0
  236. plans/session-continuity-protocol/3-Context-Switching-Prevention.md +87 -0
  237. plans/session-continuity-protocol/4-Progress-Tracking-Recovery.md +100 -0
  238. plans/sphinx-warnings-analysis.md +222 -0
  239. plans/systemprompt-optimization/0-Overview.md +447 -0
  240. plans/systemprompt-optimization/1-Deploy-SystemPrompt.md +114 -0
  241. plans/systemprompt-optimization/2-Documentation-Alignment.md +198 -0
  242. plans/systemprompt-optimization/3-Monitoring-Infrastructure.md +396 -0
  243. plans/systemprompt-optimization/4-Implementation-Script.md +450 -0
  244. plans/systemprompt-optimization/9-Closeout.md +165 -0
  245. plans/systemprompt-optimization/compacted_state.md +143 -0
  246. plans/template-value-propositions/0-Overview.md +357 -0
  247. plans/template-value-propositions/1-Value-Proposition-Framework-Design.md +144 -0
  248. plans/template-value-propositions/2-Plan-Template-Enhancement.md +178 -0
  249. plans/template-value-propositions/3-Value-Generator-Hook-Implementation.md +291 -0
  250. plans/template-value-propositions/4-Value-Validator-Hook-Implementation.md +274 -0
  251. plans/template-value-propositions/5-Documentation-Agent-Updates.md +219 -0
  252. plans/template-value-propositions/6-Integration-Testing-Validation.md +247 -0
  253. plans/tests-audit/0-Overview.md +410 -0
  254. plans/tests-audit/1-Discovery-Inventory.md +170 -0
  255. plans/tests-audit/2-Physics-Validation-Audit.md +195 -0
  256. plans/tests-audit/3-Architecture-Compliance.md +195 -0
  257. plans/tests-audit/4-Numerical-Stability-Analysis.md +203 -0
  258. plans/tests-audit/5-Documentation-Enhancement.md +220 -0
  259. plans/tests-audit/6-Audit-Deliverables.md +220 -0
  260. plans/tests-audit/7-Closeout.md +252 -0
  261. plans/tests-audit/artifacts/ARCHITECTURE_COMPLIANCE_REPORT.md +315 -0
  262. plans/tests-audit/artifacts/ARCHITECTURE_RECOMMENDATIONS.md +943 -0
  263. plans/tests-audit/artifacts/COMPREHENSIVE_AUDIT_REPORT.md +356 -0
  264. plans/tests-audit/artifacts/CONTRIBUTING_ENHANCED_TEMPLATE.md +419 -0
  265. plans/tests-audit/artifacts/COVERAGE_GAP_ANALYSIS.md +152 -0
  266. plans/tests-audit/artifacts/DOCUMENTATION_ENHANCEMENT_REPORT.md +502 -0
  267. plans/tests-audit/artifacts/EXECUTIVE_AUDIT_SUMMARY.md +129 -0
  268. plans/tests-audit/artifacts/IMPLEMENTATION_ROADMAP.md +647 -0
  269. plans/tests-audit/artifacts/NUMERICAL_RECOMMENDATIONS.md +739 -0
  270. plans/tests-audit/artifacts/NUMERICAL_STABILITY_GUIDE_TEMPLATE.rst +451 -0
  271. plans/tests-audit/artifacts/NUMERICAL_STABILITY_REPORT.md +301 -0
  272. plans/tests-audit/artifacts/PHASE_3_SUMMARY.md +280 -0
  273. plans/tests-audit/artifacts/PHASE_4_SUMMARY.md +229 -0
  274. plans/tests-audit/artifacts/PHASE_5_SUMMARY.md +292 -0
  275. plans/tests-audit/artifacts/PHASE_6_CLOSEOUT.md +278 -0
  276. plans/tests-audit/artifacts/PHYSICS_GUIDE_TEMPLATE.rst +268 -0
  277. plans/tests-audit/artifacts/PHYSICS_VALIDATION_REPORT.md +235 -0
  278. plans/tests-audit/artifacts/TECHNICAL_DELIVERABLES_PACKAGE.md +2502 -0
  279. plans/tests-audit/artifacts/TEST_INVENTORY.csv +1204 -0
  280. plans/tests-audit/artifacts/TEST_INVENTORY.md +135 -0
  281. plans/tests-audit/artifacts/test_discovery_analysis.py +231 -0
  282. plans/tests-audit/artifacts/test_parser.py +395 -0
  283. solarwindpy/README.md +3 -0
  284. solarwindpy/Untitled.ipynb +54 -0
  285. solarwindpy/__init__.py +74 -0
  286. solarwindpy/core/__init__.py +23 -0
  287. solarwindpy/core/alfvenic_turbulence.py +804 -0
  288. solarwindpy/core/base.py +267 -0
  289. solarwindpy/core/ions.py +309 -0
  290. solarwindpy/core/plasma.py +2133 -0
  291. solarwindpy/core/spacecraft.py +256 -0
  292. solarwindpy/core/tensor.py +90 -0
  293. solarwindpy/core/units_constants.py +199 -0
  294. solarwindpy/core/vector.py +328 -0
  295. solarwindpy/fitfunctions/__init__.py +20 -0
  296. solarwindpy/fitfunctions/core.py +734 -0
  297. solarwindpy/fitfunctions/exponentials.py +188 -0
  298. solarwindpy/fitfunctions/gaussians.py +264 -0
  299. solarwindpy/fitfunctions/lines.py +116 -0
  300. solarwindpy/fitfunctions/moyal.py +71 -0
  301. solarwindpy/fitfunctions/plots.py +751 -0
  302. solarwindpy/fitfunctions/power_laws.py +209 -0
  303. solarwindpy/fitfunctions/tex_info.py +568 -0
  304. solarwindpy/fitfunctions/trend_fits.py +482 -0
  305. solarwindpy/instabilities/__init__.py +16 -0
  306. solarwindpy/instabilities/beta_ani.py +82 -0
  307. solarwindpy/instabilities/verscharen2016.py +631 -0
  308. solarwindpy/plotting/__init__.py +33 -0
  309. solarwindpy/plotting/agg_plot.py +489 -0
  310. solarwindpy/plotting/base.py +465 -0
  311. solarwindpy/plotting/hist1d.py +405 -0
  312. solarwindpy/plotting/hist2d.py +1035 -0
  313. solarwindpy/plotting/histograms.py +1845 -0
  314. solarwindpy/plotting/labels/__init__.py +104 -0
  315. solarwindpy/plotting/labels/base.py +686 -0
  316. solarwindpy/plotting/labels/chemistry.py +19 -0
  317. solarwindpy/plotting/labels/composition.py +100 -0
  318. solarwindpy/plotting/labels/datetime.py +235 -0
  319. solarwindpy/plotting/labels/elemental_abundance.py +73 -0
  320. solarwindpy/plotting/labels/special.py +794 -0
  321. solarwindpy/plotting/orbits.py +515 -0
  322. solarwindpy/plotting/scatter.py +99 -0
  323. solarwindpy/plotting/select_data_from_figure.py +329 -0
  324. solarwindpy/plotting/spiral.py +980 -0
  325. solarwindpy/plotting/tools.py +434 -0
  326. solarwindpy/scripts/__init__.py +1 -0
  327. solarwindpy/scripts/logs/.gitignore +1 -0
  328. solarwindpy/solar_activity/__init__.py +53 -0
  329. solarwindpy/solar_activity/base.py +605 -0
  330. solarwindpy/solar_activity/lisird/__init__.py +3 -0
  331. solarwindpy/solar_activity/lisird/extrema_calculator.py +394 -0
  332. solarwindpy/solar_activity/lisird/lisird.py +319 -0
  333. solarwindpy/solar_activity/plots.py +116 -0
  334. solarwindpy/solar_activity/sunspot_number/.DS_Store +0 -0
  335. solarwindpy/solar_activity/sunspot_number/__init__.py +3 -0
  336. solarwindpy/solar_activity/sunspot_number/sidc.py +556 -0
  337. solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv +72 -0
  338. solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv.silso +72 -0
  339. solarwindpy/tools/__init__.py +162 -0
  340. solarwindpy-0.1.0.dist-info/METADATA +181 -0
  341. solarwindpy-0.1.0.dist-info/RECORD +409 -0
  342. {solarwindpy-0.0.1.dev0.dist-info → solarwindpy-0.1.0.dist-info}/WHEEL +1 -1
  343. solarwindpy-0.1.0.dist-info/licenses/LICENSE.rst +32 -0
  344. solarwindpy-0.1.0.dist-info/top_level.txt +3 -0
  345. tests/__init__.py +1 -0
  346. tests/conftest.py +10 -0
  347. tests/core/__init__.py +1 -0
  348. tests/core/test_alfvenic_turbulence.py +544 -0
  349. tests/core/test_base.py +112 -0
  350. tests/core/test_base_head_tail.py +29 -0
  351. tests/core/test_base_mi_tuples.py +11 -0
  352. tests/core/test_core_verify_datetimeindex.py +32 -0
  353. tests/core/test_ions.py +325 -0
  354. tests/core/test_plasma.py +2581 -0
  355. tests/core/test_plasma_io.py +12 -0
  356. tests/core/test_quantities.py +507 -0
  357. tests/core/test_spacecraft.py +210 -0
  358. tests/core/test_units_constants.py +22 -0
  359. tests/data/epoch.csv +4 -0
  360. tests/data/plasma.csv +4 -0
  361. tests/data/spacecraft.csv +4 -0
  362. tests/fitfunctions/conftest.py +60 -0
  363. tests/fitfunctions/test_core.py +193 -0
  364. tests/fitfunctions/test_exponentials.py +342 -0
  365. tests/fitfunctions/test_gaussians.py +142 -0
  366. tests/fitfunctions/test_lines.py +349 -0
  367. tests/fitfunctions/test_moyal.py +258 -0
  368. tests/fitfunctions/test_plots.py +258 -0
  369. tests/fitfunctions/test_power_laws.py +365 -0
  370. tests/fitfunctions/test_tex_info.py +183 -0
  371. tests/fitfunctions/test_trend_fit_properties.py +31 -0
  372. tests/fitfunctions/test_trend_fits.py +244 -0
  373. tests/plotting/__init__.py +1 -0
  374. tests/plotting/labels/__init__.py +1 -0
  375. tests/plotting/labels/test_chemistry.py +243 -0
  376. tests/plotting/labels/test_composition.py +345 -0
  377. tests/plotting/labels/test_datetime.py +445 -0
  378. tests/plotting/labels/test_elemental_abundance.py +366 -0
  379. tests/plotting/labels/test_init.py +66 -0
  380. tests/plotting/labels/test_labels_base.py +347 -0
  381. tests/plotting/labels/test_special.py +550 -0
  382. tests/plotting/test_agg_plot.py +602 -0
  383. tests/plotting/test_base.py +752 -0
  384. tests/plotting/test_fixtures_utilities.py +775 -0
  385. tests/plotting/test_histograms.py +546 -0
  386. tests/plotting/test_integration.py +675 -0
  387. tests/plotting/test_orbits.py +435 -0
  388. tests/plotting/test_performance.py +708 -0
  389. tests/plotting/test_scatter.py +752 -0
  390. tests/plotting/test_select_data_from_figure.py +1209 -0
  391. tests/plotting/test_spiral.py +573 -0
  392. tests/plotting/test_tools.py +607 -0
  393. tests/plotting/test_visual_validation.py +465 -0
  394. tests/solar_activity/__init__.py +1 -0
  395. tests/solar_activity/lisird/__init__.py +1 -0
  396. tests/solar_activity/lisird/test_extrema_calculator.py +593 -0
  397. tests/solar_activity/lisird/test_lisird_id.py +187 -0
  398. tests/solar_activity/sunspot_number/__init__.py +1 -0
  399. tests/solar_activity/sunspot_number/test_init.py +399 -0
  400. tests/solar_activity/sunspot_number/test_sidc.py +465 -0
  401. tests/solar_activity/sunspot_number/test_sidc_id.py +223 -0
  402. tests/solar_activity/sunspot_number/test_sidc_loader.py +275 -0
  403. tests/solar_activity/sunspot_number/test_ssn_extrema.py +406 -0
  404. tests/solar_activity/test_base.py +656 -0
  405. tests/solar_activity/test_init.py +396 -0
  406. tests/solar_activity/test_plots.py +371 -0
  407. tests/test_circular_imports.py +408 -0
  408. tests/test_issue_titles.py +25 -0
  409. tests/test_statusline.py +298 -0
  410. solarwindpy-0.0.1.dev0.dist-info/METADATA +0 -14
  411. solarwindpy-0.0.1.dev0.dist-info/RECORD +0 -4
  412. solarwindpy-0.0.1.dev0.dist-info/top_level.txt +0 -1
@@ -0,0 +1,274 @@
1
+ # SolarWindPy Docstring Audit and Enhancement Plan
2
+
3
+ ## **Executive Summary**
4
+
5
+ **OBJECTIVE**: Conservative docstring audit and format standardization of all 53 Python modules in SolarWindPy package for strict NumPy convention compliance.
6
+
7
+ **SCOPE**: Format standardization and consistency enhancement of existing docstrings across core/, fitfunctions/, plotting/, solar_activity/, instabilities/, and tools/ packages. Focus on compliance over content expansion.
8
+
9
+ **QUALITY TARGET**: 100% NumPy docstring convention compliance through format standardization and minimal content enhancement.
10
+
11
+ ## **Business Case and Value Proposition**
12
+
13
+ ### **Critical Documentation Issues**
14
+ - **Format Inconsistencies**: Mixed docstring styles (Google/informal vs NumPy format)
15
+ - **Parameter Documentation**: Inconsistent type notation and descriptions
16
+ - **Missing Basic Docstrings**: Some methods and functions completely lack documentation
17
+ - **LaTeX Formatting**: Inconsistent mathematical notation formatting
18
+ - **Return Documentation**: Missing or incomplete Returns sections
19
+
20
+ ### **Benefits of Standardization**
21
+ - **Format Consistency**: Uniform NumPy docstring format across entire codebase
22
+ - **Developer Experience**: Standardized documentation improves maintainability
23
+ - **Tool Compatibility**: Better pydocstyle and Sphinx integration
24
+ - **Code Quality**: Consistent formatting standards improve readability
25
+ - **IDE Integration**: Enhanced autocomplete through standardized parameter documentation
26
+
27
+ ## **Scope Analysis**
28
+
29
+ ### **Module Inventory (53 Python files)**
30
+
31
+ #### **Core Physics Modules (9 files)**
32
+ - `core/__init__.py` - Package entry point
33
+ - `core/base.py` - Base class with logging and utilities
34
+ - `core/plasma.py` - Main Plasma container class
35
+ - `core/ions.py` - Ion species handling
36
+ - `core/spacecraft.py` - Spacecraft trajectory data
37
+ - `core/vector.py` - Vector mathematical operations
38
+ - `core/tensor.py` - Tensor mathematical operations
39
+ - `core/units_constants.py` - Physical constants and conversions
40
+ - `core/alfvenic_turbulence.py` - Alfven wave turbulence calculations
41
+
42
+ #### **Fitfunctions Mathematical Modules (10 files)**
43
+ - `fitfunctions/__init__.py` - Package entry point
44
+ - `fitfunctions/core.py` - Abstract FitFunction base class
45
+ - `fitfunctions/gaussians.py` - Gaussian distribution fits
46
+ - `fitfunctions/exponentials.py` - Exponential function fits
47
+ - `fitfunctions/lines.py` - Linear regression fits
48
+ - `fitfunctions/power_laws.py` - Power law function fits
49
+ - `fitfunctions/moyal.py` - Moyal distribution fits
50
+ - `fitfunctions/trend_fits.py` - Trend analysis fits
51
+ - `fitfunctions/plots.py` - Fit visualization tools
52
+ - `fitfunctions/tex_info.py` - LaTeX formatting utilities
53
+
54
+ #### **Plotting Visualization Modules (18 files)**
55
+ - `plotting/__init__.py` - Package entry point
56
+ - `plotting/base.py` - Base plotting utilities
57
+ - `plotting/agg_plot.py` - Aggregated plot utilities
58
+ - `plotting/histograms.py` - Histogram plotting (deprecated, use hist1d/hist2d)
59
+ - `plotting/hist1d.py` - 1D histogram plots
60
+ - `plotting/hist2d.py` - 2D histogram plots
61
+ - `plotting/scatter.py` - Scatter plot utilities
62
+ - `plotting/spiral.py` - Spiral mesh calculations
63
+ - `plotting/orbits.py` - Orbital trajectory plots
64
+ - `plotting/tools.py` - General plotting tools
65
+ - `plotting/select_data_from_figure.py` - Interactive data selection
66
+ - `plotting/labels/__init__.py` - Labels package entry point
67
+ - `plotting/labels/base.py` - Base label formatting
68
+ - `plotting/labels/special.py` - Special scientific labels
69
+ - `plotting/labels/chemistry.py` - Chemical species labels
70
+ - `plotting/labels/composition.py` - Composition ratio labels
71
+ - `plotting/labels/datetime.py` - Time formatting labels
72
+ - `plotting/labels/elemental_abundance.py` - Element abundance labels
73
+
74
+ #### **Solar Activity Modules (8 files)**
75
+ - `solar_activity/__init__.py` - Package entry point
76
+ - `solar_activity/base.py` - Base solar activity classes
77
+ - `solar_activity/plots.py` - Solar activity plotting
78
+ - `solar_activity/lisird/__init__.py` - LISIRD package entry point
79
+ - `solar_activity/lisird/lisird.py` - LISIRD data interface
80
+ - `solar_activity/lisird/extrema_calculator.py` - Solar extrema calculations
81
+ - `solar_activity/sunspot_number/__init__.py` - Sunspot package entry point
82
+ - `solar_activity/sunspot_number/sidc.py` - SIDC sunspot data interface
83
+
84
+ #### **Instabilities Physics Modules (2 files)**
85
+ - `instabilities/__init__.py` - Package entry point
86
+ - `instabilities/beta_ani.py` - Beta-anisotropy instability calculations
87
+ - `instabilities/verscharen2016.py` - Verscharen 2016 instability model
88
+
89
+ #### **Tools and Utilities (6 files)**
90
+ - `tools/__init__.py` - Package entry point
91
+ - `scripts/__init__.py` - Scripts package entry point
92
+ - `plans/__init__.py` - Plans package entry point
93
+ - `plans/issues_from_plans.py` - Issue generation utility
94
+ - `__init__.py` - Main package entry point
95
+ - Additional utility scripts
96
+
97
+ ## **Implementation Strategy**
98
+
99
+ ### **Quality Standards**
100
+
101
+ #### **NumPy Docstring Convention Requirements**
102
+ ```python
103
+ def function(param1, param2=None):
104
+ """Short one-line summary.
105
+
106
+ Longer description with more details about the function's
107
+ purpose and behavior.
108
+
109
+ Parameters
110
+ ----------
111
+ param1 : type
112
+ Description of param1.
113
+ param2 : type, optional
114
+ Description of param2. Default is None.
115
+
116
+ Returns
117
+ -------
118
+ type
119
+ Description of return value.
120
+
121
+ Raises
122
+ ------
123
+ ValueError
124
+ When invalid input is provided.
125
+
126
+ Examples
127
+ --------
128
+ >>> result = function(1, 2)
129
+ >>> print(result)
130
+ 3
131
+
132
+ Notes
133
+ -----
134
+ Additional technical notes about the implementation.
135
+
136
+ References
137
+ ----------
138
+ .. [1] Author, "Title", Journal, Year.
139
+ """
140
+ ```
141
+
142
+ #### **Scientific Documentation Requirements**
143
+ - **Mathematical Notation**: Proper LaTeX formatting in docstrings
144
+ - **Physical Units**: Clear unit specifications for all quantities
145
+ - **Literature References**: Proper citations for physics algorithms
146
+ - **Parameter Validation**: Clear documentation of expected ranges/values
147
+
148
+ #### **Coverage Requirements**
149
+ - **100% Public API**: All public classes, methods, functions documented
150
+ - **Module-Level**: Comprehensive module docstrings with usage examples
151
+ - **Property Documentation**: All properties with getter/setter documentation
152
+ - **Internal Methods**: Key internal methods documented for maintainability
153
+
154
+ ### **Validation Framework**
155
+
156
+ #### **Automated Validation Tools**
157
+ - **pydocstyle**: NumPy convention compliance checking
158
+ - **Sphinx Integration**: Documentation build validation
159
+ - **Custom Validators**: Physics-specific validation (units, equations)
160
+ - **Example Testing**: Docstring example code validation
161
+
162
+ #### **Manual Review Checklist**
163
+ - [ ] NumPy format compliance
164
+ - [ ] Complete parameter documentation
165
+ - [ ] Proper return value documentation
166
+ - [ ] Exception documentation
167
+ - [ ] Usage examples included
168
+ - [ ] Mathematical notation correct
169
+ - [ ] Physical units specified
170
+ - [ ] Literature references included
171
+
172
+ ## **Phase Structure**
173
+
174
+ ### **Phase 1: Infrastructure Setup and Validation Tools** (Est. 3 hours)
175
+ - Set up pydocstyle configuration for NumPy convention
176
+ - Create baseline documentation coverage analysis
177
+ - Configure validation scripts for format compliance
178
+ - Establish Sphinx integration for consistent builds
179
+
180
+ ### **Phase 2: Core Physics Modules Format Standardization** (Est. 8 hours)
181
+ **Target: 9 core module files**
182
+ - Convert existing docstrings to strict NumPy format
183
+ - Standardize parameter type notation (e.g., array_like)
184
+ - Add missing Returns sections where functions return values
185
+ - Standardize existing LaTeX equation formatting
186
+
187
+ ### **Phase 3: Fitfunctions Mathematical Modules Format Standardization** (Est. 7 hours)
188
+ **Target: 10 fitfunction module files**
189
+ - Convert docstrings to NumPy format compliance
190
+ - Standardize mathematical notation formatting
191
+ - Ensure consistent parameter documentation format
192
+ - Add basic docstrings where completely missing
193
+
194
+ ### **Phase 4: Plotting Visualization Modules Format Standardization** (Est. 10 hours)
195
+ **Target: 18 plotting module files**
196
+ - Convert mixed docstring styles to NumPy format
197
+ - Standardize parameter documentation for plotting functions
198
+ - Add basic module-level docstrings where missing
199
+ - Ensure consistent Returns section formatting
200
+
201
+ ### **Phase 5: Specialized Modules Format Standardization** (Est. 6 hours)
202
+ **Target: 16 specialized module files (solar_activity, instabilities, tools, etc.)**
203
+ - Convert existing docstrings to NumPy format
204
+ - Add basic docstrings for undocumented functions
205
+ - Standardize parameter and return documentation
206
+ - Ensure consistent module-level documentation
207
+
208
+ ### **Phase 6: Validation and Integration** (Est. 3 hours)
209
+ - Run comprehensive pydocstyle validation
210
+ - Fix remaining format compliance issues
211
+ - Validate Sphinx documentation builds
212
+ - Ensure consistency across all modules
213
+
214
+ ## **Success Criteria**
215
+
216
+ ### **Primary Success Metrics**
217
+ - **100% NumPy Convention Compliance**: All docstrings pass pydocstyle validation
218
+ - **Complete API Coverage**: Every public method, class, and function documented
219
+ - **Enhanced Sphinx Build**: Comprehensive auto-generated documentation
220
+ - **Example Code Validation**: All docstring examples execute successfully
221
+
222
+ ### **Quality Assurance Metrics**
223
+ - **Zero pydocstyle Violations**: Clean docstring format compliance
224
+ - **Comprehensive Parameter Documentation**: All parameters with types and descriptions
225
+ - **Mathematical Notation**: Proper LaTeX formatting in scientific modules
226
+ - **Usage Examples**: Practical examples for key functionality
227
+
228
+ ## **Timeline and Resource Allocation**
229
+
230
+ ### **Total Estimated Duration: 37 hours**
231
+ - **Phase 1**: 3 hours (Infrastructure)
232
+ - **Phase 2**: 8 hours (Core modules - 9 files)
233
+ - **Phase 3**: 7 hours (Fitfunctions - 10 files)
234
+ - **Phase 4**: 10 hours (Plotting - 18 files)
235
+ - **Phase 5**: 6 hours (Specialized - 16 files)
236
+ - **Phase 6**: 3 hours (Validation)
237
+
238
+ ### **Resource Requirements**
239
+ - **Technical Expertise**: Python documentation standards, NumPy docstring conventions
240
+ - **Basic Domain Knowledge**: Understanding of existing code functionality
241
+ - **Tools**: pydocstyle, Sphinx, basic LaTeX formatting knowledge
242
+
243
+ ## **Risk Mitigation**
244
+
245
+ ### **Potential Challenges**
246
+ - **Format Conversion**: Converting mixed docstring styles to NumPy format
247
+ - **Legacy Code**: Inconsistent existing documentation styles
248
+ - **Format Compliance**: Ensuring strict pydocstyle compliance
249
+ - **Large Scope**: 53 modules requiring systematic standardization
250
+
251
+ ### **Mitigation Strategies**
252
+ - **Incremental Validation**: Phase-by-phase pydocstyle checking
253
+ - **Conservative Approach**: Focus on format over content to avoid errors
254
+ - **Template Standardization**: Consistent NumPy format patterns
255
+ - **Automated Tooling**: pydocstyle validation pipeline
256
+
257
+ ## **Long-term Benefits**
258
+
259
+ ### **Maintainability Improvements**
260
+ - **Developer Onboarding**: Clear API documentation for new contributors
261
+ - **Code Comprehension**: Enhanced understanding of complex physics calculations
262
+ - **Debugging Support**: Better documentation aids in troubleshooting
263
+
264
+ ### **User Experience Enhancements**
265
+ - **Auto-generated Documentation**: Professional-quality API reference
266
+ - **IDE Integration**: Enhanced autocomplete and help systems
267
+ - **Scientific Integrity**: Proper mathematical notation and citations
268
+
269
+ ### **Quality Assurance**
270
+ - **Consistency Standards**: Uniform documentation across entire codebase
271
+ - **Validation Pipeline**: Automated compliance checking in CI/CD
272
+ - **Future-proofing**: Established patterns for new module development
273
+
274
+ This conservative docstring audit and format standardization plan will achieve 100% NumPy docstring convention compliance across SolarWindPy, providing consistent documentation formatting while maintaining scientific accuracy through minimal content changes.
@@ -0,0 +1,206 @@
1
+ # Phase 1: Infrastructure Setup and Validation Tools
2
+
3
+ ## **Objective**
4
+ Establish docstring format validation infrastructure and baseline coverage analysis for NumPy convention compliance across the SolarWindPy codebase.
5
+
6
+ ## **Scope**
7
+ Set up pydocstyle validation and baseline analysis tools to ensure strict NumPy docstring format compliance across all 53 Python modules.
8
+
9
+ ## **Implementation Tasks**
10
+
11
+ ### **Task 1: Docstring Validation Tool Configuration** (1 hour)
12
+
13
+ #### **pydocstyle Configuration Setup**
14
+ ```ini
15
+ # .pydocstyle configuration file
16
+ [pydocstyle]
17
+ convention = numpy
18
+ match = (?!test_).*\.py
19
+ add-ignore = D100,D104,D105
20
+ add-source = solarwindpy/
21
+ ```
22
+
23
+ #### **Configuration Requirements**
24
+ - **Convention**: Strict NumPy docstring format
25
+ - **Scope**: All solarwindpy/ modules excluding test files
26
+ - **Ignored Checks**: Module-level docstrings for __init__.py files (selective)
27
+ - **Source Path**: Target solarwindpy package directory
28
+
29
+ #### **Integration Points**
30
+ - Add pydocstyle to requirements-dev.txt
31
+ - Configure pre-commit hook for docstring validation
32
+ - Set up CI/CD pipeline integration for automated checking
33
+
34
+ ### **Task 2: Format Compliance Baseline Analysis** (1 hour)
35
+
36
+ #### **Format Compliance Analysis Script**
37
+ ```python
38
+ #!/usr/bin/env python
39
+ """Docstring format compliance analysis for SolarWindPy modules."""
40
+
41
+ import ast
42
+ import os
43
+ from pathlib import Path
44
+
45
+ class DocstringFormatAnalyzer(ast.NodeVisitor):
46
+ """Analyze docstring format compliance in Python modules."""
47
+
48
+ def __init__(self):
49
+ self.stats = {
50
+ 'total_docstrings': 0,
51
+ 'numpy_format': 0,
52
+ 'google_format': 0,
53
+ 'informal_format': 0,
54
+ 'missing_docstrings': 0,
55
+ }
56
+ self.format_issues = []
57
+ ```
58
+
59
+ #### **Analysis Targets**
60
+ - **Format Detection**: Identify NumPy vs Google vs informal docstring styles
61
+ - **Missing Docstrings**: Functions/methods completely lacking documentation
62
+ - **Parameter Format**: Inconsistent parameter documentation styles
63
+ - **Returns Section**: Missing or improperly formatted returns documentation
64
+
65
+ #### **Baseline Metrics Collection**
66
+ - Current format compliance percentage by module
67
+ - Identification of mixed docstring styles
68
+ - Priority ranking for standardization based on format inconsistencies
69
+
70
+ ### **Task 3: NumPy Format Validation Framework** (0.5 hours)
71
+
72
+ #### **Format Compliance Rules**
73
+ ```python
74
+ class NumPyFormatValidator:
75
+ """Validate NumPy docstring format compliance."""
76
+
77
+ REQUIRED_SECTIONS = {
78
+ 'functions': ['Parameters', 'Returns'],
79
+ 'methods': ['Parameters', 'Returns'],
80
+ 'classes': ['Parameters'],
81
+ 'properties': ['Returns'],
82
+ }
83
+
84
+ FORMAT_REQUIREMENTS = {
85
+ 'parameter_format': True, # param : type format
86
+ 'section_headers': True, # Proper section formatting
87
+ 'consistent_style': True, # NumPy format throughout
88
+ }
89
+ ```
90
+
91
+ #### **Format Standardization Focus**
92
+ - **Parameter Format**: Consistent `param : type` notation
93
+ - **Section Headers**: Proper underline formatting for NumPy sections
94
+ - **Type Documentation**: Standardized type annotations
95
+ - **Returns Format**: Consistent return value documentation
96
+
97
+ #### **Validation Workflow**
98
+ 1. **Format Compliance**: NumPy convention structure validation
99
+ 2. **Section Presence**: Required sections existence check
100
+ 3. **Style Consistency**: Uniform formatting across modules
101
+ 4. **pydocstyle Integration**: Automated compliance checking
102
+
103
+ ### **Task 4: Sphinx Integration Setup** (0.5 hours)
104
+
105
+ #### **Sphinx Configuration Updates**
106
+ ```python
107
+ # docs/conf.py enhancements
108
+ extensions = [
109
+ 'sphinx.ext.autodoc',
110
+ 'sphinx.ext.napoleon', # NumPy/Google style docstrings
111
+ 'sphinx.ext.viewcode',
112
+ 'sphinx.ext.mathjax', # LaTeX math rendering
113
+ 'sphinx.ext.doctest', # Docstring example testing
114
+ 'numpydoc', # Enhanced NumPy docstring support
115
+ ]
116
+
117
+ napoleon_config = {
118
+ 'napoleon_google_docstring': False,
119
+ 'napoleon_numpy_docstring': True,
120
+ 'napoleon_include_init_with_doc': True,
121
+ 'napoleon_include_private_with_doc': False,
122
+ 'napoleon_include_special_with_doc': True,
123
+ 'napoleon_use_admonition_for_examples': False,
124
+ 'napoleon_use_admonition_for_notes': False,
125
+ 'napoleon_use_admonition_for_references': False,
126
+ 'napoleon_use_ivar': False,
127
+ 'napoleon_use_param': True,
128
+ 'napoleon_use_rtype': True,
129
+ }
130
+ ```
131
+
132
+ #### **Documentation Build Configuration**
133
+ - **NumPy Style Support**: Napoleon extension for NumPy format
134
+ - **Consistent Rendering**: Standardized docstring presentation
135
+ - **Format Validation**: Sphinx build warnings for format issues
136
+ - **API Reference**: Clean automated documentation generation
137
+
138
+ ## **Validation and Testing Criteria**
139
+
140
+ ### **Tool Validation Requirements**
141
+ - [ ] pydocstyle runs successfully on entire codebase
142
+ - [ ] Coverage analysis script executes without errors
143
+ - [ ] Custom validation rules detect compliance issues correctly
144
+ - [ ] Sphinx builds enhanced documentation successfully
145
+
146
+ ### **Baseline Format Compliance Metrics**
147
+ - [ ] **Format Distribution**: Percentage of NumPy vs other formats per module
148
+ - [ ] **Priority List**: Modules with highest format inconsistency
149
+ - [ ] **Compliance Report**: pydocstyle violation summary
150
+ - [ ] **Missing Documentation**: Functions completely lacking docstrings
151
+
152
+ ### **Infrastructure Quality Checks**
153
+ - [ ] **pydocstyle Integration**: Automated format validation
154
+ - [ ] **Pre-commit Hooks**: Format checking in developer workflow
155
+ - [ ] **Sphinx Build**: Consistent documentation generation
156
+ - [ ] **Format Validation**: NumPy convention compliance checking
157
+
158
+ ## **Deliverables**
159
+
160
+ ### **Configuration Files**
161
+ - `.pydocstyle` - NumPy convention configuration
162
+ - `scripts/format_analysis.py` - Format compliance analysis tool
163
+ - `scripts/validate_formats.py` - NumPy format validation framework
164
+ - Updated `docs/conf.py` - NumPy-focused Sphinx configuration
165
+
166
+ ### **Baseline Reports**
167
+ - **Format Report**: Current docstring format distribution by module
168
+ - **Compliance Report**: pydocstyle violations summary
169
+ - **Priority Matrix**: Standardization priority by format inconsistency
170
+ - **Missing Documentation**: Functions requiring basic docstrings
171
+
172
+ ### **Validation Pipeline**
173
+ - **Pre-commit Integration**: Developer workflow validation
174
+ - **CI/CD Checks**: Automated pull request validation
175
+ - **Documentation Build**: Enhanced API reference generation
176
+ - **Example Testing**: Docstring code validation framework
177
+
178
+ ## **Success Criteria**
179
+
180
+ ### **Primary Infrastructure Goals**
181
+ - **Format Validation**: pydocstyle NumPy convention checking operational
182
+ - **Baseline Analysis**: Current format compliance status established
183
+ - **Standardization Pipeline**: Automated format validation framework
184
+ - **Sphinx Integration**: NumPy-focused documentation build capability
185
+
186
+ ### **Quality Assurance Standards**
187
+ - **NumPy Compliance**: Validation rules enforce strict format adherence
188
+ - **Format Consistency**: Uniform docstring style across all modules
189
+ - **pydocstyle Integration**: Zero violations target for format compliance
190
+ - **Developer Integration**: Seamless format checking in development workflow
191
+
192
+ ## **Next Phase Prerequisites**
193
+
194
+ ### **Infrastructure Readiness**
195
+ - Format validation tools configured and operational
196
+ - Baseline format compliance metrics documented and analyzed
197
+ - Priority standardization list established and reviewed
198
+ - Documentation build pipeline tested for NumPy format support
199
+
200
+ ### **Quality Framework**
201
+ - NumPy docstring format enforcement active
202
+ - Format consistency standards defined and implemented
203
+ - pydocstyle validation framework operational
204
+ - Automated format checking integrated into development workflow
205
+
206
+ This infrastructure foundation enables systematic, automated, and consistent docstring format standardization across the entire SolarWindPy codebase while maintaining existing scientific content accuracy.