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,179 @@
|
|
|
1
|
+
# Phase 1: Token Estimation Enhancement - 30 minutes
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Enhance the current line-based token estimation in `create-compaction.py` with more accurate character/word-based heuristics that better reflect actual Claude token usage patterns.
|
|
5
|
+
|
|
6
|
+
## Current State Analysis
|
|
7
|
+
**Current Implementation (Lines 34-65):**
|
|
8
|
+
```python
|
|
9
|
+
def estimate_context_size():
|
|
10
|
+
# Rough estimate: 3 tokens per line
|
|
11
|
+
estimated_tokens = total_lines * 3
|
|
12
|
+
return estimated_tokens, total_lines
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Problems:**
|
|
16
|
+
- Line-based estimation ignores content density
|
|
17
|
+
- Fixed 3 tokens/line ratio doesn't reflect reality
|
|
18
|
+
- No consideration of different content types (code vs prose vs tables)
|
|
19
|
+
- No adjustment for markdown formatting overhead
|
|
20
|
+
|
|
21
|
+
## Phase Objectives
|
|
22
|
+
- [ ] Replace line-based estimation with character/word-based heuristics
|
|
23
|
+
- [ ] Implement content-type aware token estimation
|
|
24
|
+
- [ ] Add markdown overhead calculation
|
|
25
|
+
- [ ] Validate accuracy against known token counts
|
|
26
|
+
- [ ] Maintain backward compatibility
|
|
27
|
+
|
|
28
|
+
## Implementation Tasks
|
|
29
|
+
|
|
30
|
+
### Task 1.1: Enhanced Token Estimation Function (15 min)
|
|
31
|
+
**Target:** `create-compaction.py:estimate_context_size()`
|
|
32
|
+
|
|
33
|
+
```python
|
|
34
|
+
def estimate_context_size_enhanced():
|
|
35
|
+
"""Enhanced token estimation using character/word-based heuristics."""
|
|
36
|
+
context_files = ['CLAUDE.md', 'claude_session_state.md', '.claude/agents/*.md']
|
|
37
|
+
|
|
38
|
+
total_chars = 0
|
|
39
|
+
total_words = 0
|
|
40
|
+
total_lines = 0
|
|
41
|
+
content_breakdown = {'code': 0, 'prose': 0, 'tables': 0, 'lists': 0}
|
|
42
|
+
|
|
43
|
+
for file_path in get_context_files(context_files):
|
|
44
|
+
chars, words, lines, content_types = analyze_file_content(file_path)
|
|
45
|
+
total_chars += chars
|
|
46
|
+
total_words += words
|
|
47
|
+
total_lines += lines
|
|
48
|
+
for content_type, count in content_types.items():
|
|
49
|
+
content_breakdown[content_type] += count
|
|
50
|
+
|
|
51
|
+
# Enhanced token estimation based on content analysis
|
|
52
|
+
base_tokens = total_words * 1.3 # Base word-to-token ratio
|
|
53
|
+
|
|
54
|
+
# Content-type adjustments
|
|
55
|
+
code_penalty = content_breakdown['code'] * 0.2 # Code is token-dense
|
|
56
|
+
table_penalty = content_breakdown['tables'] * 0.15 # Tables have structure overhead
|
|
57
|
+
markdown_overhead = total_lines * 0.1 # Markdown formatting
|
|
58
|
+
|
|
59
|
+
estimated_tokens = int(base_tokens + code_penalty + table_penalty + markdown_overhead)
|
|
60
|
+
|
|
61
|
+
return estimated_tokens, total_lines, content_breakdown
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Acceptance Criteria:**
|
|
65
|
+
- [ ] Function returns more accurate token estimates
|
|
66
|
+
- [ ] Content breakdown provides insight into token usage
|
|
67
|
+
- [ ] Estimation accuracy within ±10% for typical content
|
|
68
|
+
- [ ] Performance impact < 1 second
|
|
69
|
+
|
|
70
|
+
### Task 1.2: Content Analysis Utilities (10 min)
|
|
71
|
+
**Target:** New functions in `create-compaction.py`
|
|
72
|
+
|
|
73
|
+
```python
|
|
74
|
+
def analyze_file_content(file_path):
|
|
75
|
+
"""Analyze file content for token estimation."""
|
|
76
|
+
try:
|
|
77
|
+
with open(file_path, 'r', encoding='utf-8') as f:
|
|
78
|
+
content = f.read()
|
|
79
|
+
|
|
80
|
+
lines = content.count('\n') + 1
|
|
81
|
+
chars = len(content)
|
|
82
|
+
words = len(content.split())
|
|
83
|
+
|
|
84
|
+
# Content type detection
|
|
85
|
+
content_types = {
|
|
86
|
+
'code': count_code_blocks(content),
|
|
87
|
+
'prose': count_prose_paragraphs(content),
|
|
88
|
+
'tables': count_tables(content),
|
|
89
|
+
'lists': count_lists(content)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
return chars, words, lines, content_types
|
|
93
|
+
except Exception:
|
|
94
|
+
return 0, 0, 0, {'code': 0, 'prose': 0, 'tables': 0, 'lists': 0}
|
|
95
|
+
|
|
96
|
+
def count_code_blocks(content):
|
|
97
|
+
"""Count code blocks in markdown content."""
|
|
98
|
+
return content.count('```') // 2
|
|
99
|
+
|
|
100
|
+
def count_prose_paragraphs(content):
|
|
101
|
+
"""Count prose paragraphs (non-list, non-code text)."""
|
|
102
|
+
lines = content.split('\n')
|
|
103
|
+
prose_lines = 0
|
|
104
|
+
for line in lines:
|
|
105
|
+
stripped = line.strip()
|
|
106
|
+
if (stripped and not stripped.startswith('#') and
|
|
107
|
+
not stripped.startswith('-') and not stripped.startswith('*') and
|
|
108
|
+
not stripped.startswith('|') and not stripped.startswith('```')):
|
|
109
|
+
prose_lines += 1
|
|
110
|
+
return prose_lines
|
|
111
|
+
|
|
112
|
+
def count_tables(content):
|
|
113
|
+
"""Count markdown tables."""
|
|
114
|
+
lines = content.split('\n')
|
|
115
|
+
table_lines = sum(1 for line in lines if line.strip().startswith('|'))
|
|
116
|
+
return table_lines
|
|
117
|
+
|
|
118
|
+
def count_lists(content):
|
|
119
|
+
"""Count list items."""
|
|
120
|
+
lines = content.split('\n')
|
|
121
|
+
list_lines = sum(1 for line in lines if line.strip().startswith(('-', '*', '+')))
|
|
122
|
+
return list_lines
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Acceptance Criteria:**
|
|
126
|
+
- [ ] Accurate content type detection
|
|
127
|
+
- [ ] Robust error handling for invalid files
|
|
128
|
+
- [ ] Performance suitable for real-time estimation
|
|
129
|
+
- [ ] Clear content categorization
|
|
130
|
+
|
|
131
|
+
### Task 1.3: Integration and Testing (5 min)
|
|
132
|
+
**Target:** Integration with existing compaction flow
|
|
133
|
+
|
|
134
|
+
- [ ] Replace existing `estimate_context_size()` calls
|
|
135
|
+
- [ ] Update compaction output to show content breakdown
|
|
136
|
+
- [ ] Add validation against known good estimates
|
|
137
|
+
- [ ] Ensure backward compatibility for existing scripts
|
|
138
|
+
|
|
139
|
+
**Enhanced Output Example:**
|
|
140
|
+
```
|
|
141
|
+
📊 Token Analysis:
|
|
142
|
+
- Estimated: 12,450 tokens (prev: 8,200 tokens)
|
|
143
|
+
- Content: 3,200 words, 45,600 chars
|
|
144
|
+
- Breakdown: 25% code, 60% prose, 10% tables, 5% lists
|
|
145
|
+
- Accuracy: ±850 tokens (93% confidence)
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## Integration Points
|
|
149
|
+
|
|
150
|
+
### Hook Ecosystem
|
|
151
|
+
- **validate-session-state.sh**: Use enhanced estimates for session loading decisions
|
|
152
|
+
- **git-workflow-validator.sh**: Include token metrics in branch transition decisions
|
|
153
|
+
|
|
154
|
+
### Agent Coordination
|
|
155
|
+
- **UnifiedPlanCoordinator**: Receive accurate token estimates for planning decisions
|
|
156
|
+
- **TestEngineer**: Use content breakdown for test context preservation
|
|
157
|
+
|
|
158
|
+
## Testing Strategy
|
|
159
|
+
- [ ] Unit tests for content analysis functions
|
|
160
|
+
- [ ] Validation against existing compaction files with known token counts
|
|
161
|
+
- [ ] Performance benchmarks vs current implementation
|
|
162
|
+
- [ ] Integration tests with existing hooks
|
|
163
|
+
|
|
164
|
+
## Rollback Plan
|
|
165
|
+
- Keep existing `estimate_context_size()` as fallback
|
|
166
|
+
- Feature flag for enhanced estimation
|
|
167
|
+
- Automatic fallback on estimation errors
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
**Phase 1 Completion Criteria:**
|
|
171
|
+
- [ ] Enhanced token estimation implemented
|
|
172
|
+
- [ ] Content analysis utilities functional
|
|
173
|
+
- [ ] Integration completed with existing flow
|
|
174
|
+
- [ ] Testing validates improved accuracy
|
|
175
|
+
- [ ] Performance meets requirements (<5s total compaction time)
|
|
176
|
+
|
|
177
|
+
**Estimated Time: 30 minutes**
|
|
178
|
+
**Dependencies: None**
|
|
179
|
+
**Deliverables: Enhanced `create-compaction.py` with accurate token estimation**
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
# Phase 2: Compression Intelligence - 45 minutes
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Implement content-aware compression strategies that intelligently reduce context size while preserving critical information for session continuity. Focus on semantic preservation rather than simple truncation.
|
|
5
|
+
|
|
6
|
+
## Current State Analysis
|
|
7
|
+
**Current Implementation (Lines 100-110):**
|
|
8
|
+
```python
|
|
9
|
+
if tokens > 15000:
|
|
10
|
+
target = "high (40-60% reduction)"
|
|
11
|
+
target_tokens = int(tokens * 0.5)
|
|
12
|
+
elif tokens > 8000:
|
|
13
|
+
target = "medium (30-50% reduction)"
|
|
14
|
+
target_tokens = int(tokens * 0.65)
|
|
15
|
+
else:
|
|
16
|
+
target = "light (maintain efficiency)"
|
|
17
|
+
target_tokens = tokens
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
**Problems:**
|
|
21
|
+
- Simple percentage-based reduction without content awareness
|
|
22
|
+
- No preservation of critical context elements
|
|
23
|
+
- No semantic understanding of what to compress vs preserve
|
|
24
|
+
- Manual targeting without adaptive intelligence
|
|
25
|
+
|
|
26
|
+
## Phase Objectives
|
|
27
|
+
- [ ] Implement content-aware compression strategies
|
|
28
|
+
- [ ] Add semantic preservation for critical context
|
|
29
|
+
- [ ] Create adaptive compression targeting
|
|
30
|
+
- [ ] Develop compression utility functions
|
|
31
|
+
- [ ] Integrate with enhanced token estimation
|
|
32
|
+
|
|
33
|
+
## Implementation Tasks
|
|
34
|
+
|
|
35
|
+
### Task 2.1: Compression Strategy Engine (20 min)
|
|
36
|
+
**Target:** New `CompactionStrategy` class in `create-compaction.py`
|
|
37
|
+
|
|
38
|
+
```python
|
|
39
|
+
class CompactionStrategy:
|
|
40
|
+
"""Intelligent compaction strategy based on content analysis."""
|
|
41
|
+
|
|
42
|
+
def __init__(self, content_breakdown, total_tokens, target_reduction=0.4):
|
|
43
|
+
self.content_breakdown = content_breakdown
|
|
44
|
+
self.total_tokens = total_tokens
|
|
45
|
+
self.target_reduction = target_reduction
|
|
46
|
+
self.critical_patterns = [
|
|
47
|
+
r'## Plan Metadata',
|
|
48
|
+
r'### Phase \d+:',
|
|
49
|
+
r'\[x\].*', # Completed tasks
|
|
50
|
+
r'- \[\s\].*in_progress', # Active tasks
|
|
51
|
+
r'git branch.*',
|
|
52
|
+
r'Acceptance Criteria',
|
|
53
|
+
r'Next Actions'
|
|
54
|
+
]
|
|
55
|
+
|
|
56
|
+
def create_compression_plan(self):
|
|
57
|
+
"""Create intelligent compression plan."""
|
|
58
|
+
plan = {
|
|
59
|
+
'preserve_sections': self._identify_critical_sections(),
|
|
60
|
+
'compress_sections': self._identify_compressible_sections(),
|
|
61
|
+
'compression_methods': self._select_compression_methods(),
|
|
62
|
+
'target_tokens': int(self.total_tokens * (1 - self.target_reduction))
|
|
63
|
+
}
|
|
64
|
+
return plan
|
|
65
|
+
|
|
66
|
+
def _identify_critical_sections(self):
|
|
67
|
+
"""Identify sections that must be preserved."""
|
|
68
|
+
return [
|
|
69
|
+
'Plan Metadata',
|
|
70
|
+
'Phase Overview with status',
|
|
71
|
+
'Current git state',
|
|
72
|
+
'Active tasks and progress',
|
|
73
|
+
'Next Actions',
|
|
74
|
+
'Acceptance Criteria',
|
|
75
|
+
'Recent commits (last 3)',
|
|
76
|
+
'Agent coordination points'
|
|
77
|
+
]
|
|
78
|
+
|
|
79
|
+
def _identify_compressible_sections(self):
|
|
80
|
+
"""Identify sections suitable for compression."""
|
|
81
|
+
return [
|
|
82
|
+
'Completed task details',
|
|
83
|
+
'Historical context beyond 1 week',
|
|
84
|
+
'Verbose descriptions (keep summaries)',
|
|
85
|
+
'Repeated documentation',
|
|
86
|
+
'Example code (keep signatures)',
|
|
87
|
+
'Long file listings',
|
|
88
|
+
'Detailed error traces (keep summaries)'
|
|
89
|
+
]
|
|
90
|
+
|
|
91
|
+
def _select_compression_methods(self):
|
|
92
|
+
"""Select appropriate compression methods."""
|
|
93
|
+
methods = []
|
|
94
|
+
|
|
95
|
+
if self.content_breakdown['code'] > 30:
|
|
96
|
+
methods.append('compress_code_examples')
|
|
97
|
+
if self.content_breakdown['prose'] > 50:
|
|
98
|
+
methods.append('summarize_verbose_sections')
|
|
99
|
+
if self.content_breakdown['lists'] > 20:
|
|
100
|
+
methods.append('compact_lists')
|
|
101
|
+
if self.content_breakdown['tables'] > 10:
|
|
102
|
+
methods.append('optimize_tables')
|
|
103
|
+
|
|
104
|
+
return methods
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Acceptance Criteria:**
|
|
108
|
+
- [ ] Intelligent section identification
|
|
109
|
+
- [ ] Adaptive compression method selection
|
|
110
|
+
- [ ] Configurable critical pattern preservation
|
|
111
|
+
- [ ] Content-type aware compression strategies
|
|
112
|
+
|
|
113
|
+
### Task 2.2: Compression Implementation Functions (15 min)
|
|
114
|
+
**Target:** New utility functions for actual content compression
|
|
115
|
+
|
|
116
|
+
```python
|
|
117
|
+
def apply_intelligent_compression(content, compression_plan):
|
|
118
|
+
"""Apply intelligent compression based on plan."""
|
|
119
|
+
compressed_content = content
|
|
120
|
+
|
|
121
|
+
for method in compression_plan['compression_methods']:
|
|
122
|
+
if method == 'compress_code_examples':
|
|
123
|
+
compressed_content = compress_code_examples(compressed_content)
|
|
124
|
+
elif method == 'summarize_verbose_sections':
|
|
125
|
+
compressed_content = summarize_verbose_sections(compressed_content)
|
|
126
|
+
elif method == 'compact_lists':
|
|
127
|
+
compressed_content = compact_lists(compressed_content)
|
|
128
|
+
elif method == 'optimize_tables':
|
|
129
|
+
compressed_content = optimize_tables(compressed_content)
|
|
130
|
+
|
|
131
|
+
return compressed_content
|
|
132
|
+
|
|
133
|
+
def compress_code_examples(content):
|
|
134
|
+
"""Compress code examples while preserving signatures."""
|
|
135
|
+
import re
|
|
136
|
+
|
|
137
|
+
def compress_code_block(match):
|
|
138
|
+
code = match.group(1)
|
|
139
|
+
lines = code.split('\n')
|
|
140
|
+
|
|
141
|
+
# Preserve function/class signatures and docstrings
|
|
142
|
+
important_lines = []
|
|
143
|
+
for line in lines:
|
|
144
|
+
stripped = line.strip()
|
|
145
|
+
if (stripped.startswith('def ') or stripped.startswith('class ') or
|
|
146
|
+
stripped.startswith('"""') or stripped.startswith("'''") or
|
|
147
|
+
stripped.startswith('#') or not stripped):
|
|
148
|
+
important_lines.append(line)
|
|
149
|
+
elif len(important_lines) < 10: # Keep first 10 lines
|
|
150
|
+
important_lines.append(line)
|
|
151
|
+
|
|
152
|
+
if len(lines) > len(important_lines):
|
|
153
|
+
important_lines.append(f' # ... ({len(lines) - len(important_lines)} lines compressed)')
|
|
154
|
+
|
|
155
|
+
return f'```\n{"\n".join(important_lines)}\n```'
|
|
156
|
+
|
|
157
|
+
# Compress code blocks
|
|
158
|
+
pattern = r'```(?:python|bash|\w+)?\n(.*?)\n```'
|
|
159
|
+
return re.sub(pattern, compress_code_block, content, flags=re.DOTALL)
|
|
160
|
+
|
|
161
|
+
def summarize_verbose_sections(content):
|
|
162
|
+
"""Summarize verbose prose sections."""
|
|
163
|
+
sections = content.split('\n## ')
|
|
164
|
+
compressed_sections = []
|
|
165
|
+
|
|
166
|
+
for section in sections:
|
|
167
|
+
if len(section) > 1000: # Long sections
|
|
168
|
+
lines = section.split('\n')
|
|
169
|
+
# Keep header and first 3 lines, summarize rest
|
|
170
|
+
summary = '\n'.join(lines[:4])
|
|
171
|
+
if len(lines) > 4:
|
|
172
|
+
summary += f'\n\n*[{len(lines) - 4} additional lines summarized for compaction]*\n'
|
|
173
|
+
compressed_sections.append(summary)
|
|
174
|
+
else:
|
|
175
|
+
compressed_sections.append(section)
|
|
176
|
+
|
|
177
|
+
return '\n## '.join(compressed_sections)
|
|
178
|
+
|
|
179
|
+
def compact_lists(content):
|
|
180
|
+
"""Compact long lists while preserving structure."""
|
|
181
|
+
import re
|
|
182
|
+
|
|
183
|
+
def compact_list_block(match):
|
|
184
|
+
list_content = match.group(0)
|
|
185
|
+
lines = list_content.split('\n')
|
|
186
|
+
|
|
187
|
+
if len(lines) > 10:
|
|
188
|
+
# Keep first 5 and last 2 items
|
|
189
|
+
kept_lines = lines[:5] + [f' *[...{len(lines) - 7} items compacted...]*'] + lines[-2:]
|
|
190
|
+
return '\n'.join(kept_lines)
|
|
191
|
+
return list_content
|
|
192
|
+
|
|
193
|
+
# Find list blocks
|
|
194
|
+
pattern = r'(?:^[ ]*[-*+].*\n)+'
|
|
195
|
+
return re.sub(pattern, compact_list_block, content, flags=re.MULTILINE)
|
|
196
|
+
|
|
197
|
+
def optimize_tables(content):
|
|
198
|
+
"""Optimize markdown tables for compaction."""
|
|
199
|
+
import re
|
|
200
|
+
|
|
201
|
+
def compress_table(match):
|
|
202
|
+
table = match.group(0)
|
|
203
|
+
lines = table.split('\n')
|
|
204
|
+
|
|
205
|
+
if len(lines) > 8: # Long tables
|
|
206
|
+
# Keep header, separator, first 3 rows, and last row
|
|
207
|
+
compressed = lines[:2] + lines[2:5] + [f'| ... | ({len(lines) - 6} rows) | ... |'] + lines[-1:]
|
|
208
|
+
return '\n'.join(compressed)
|
|
209
|
+
return table
|
|
210
|
+
|
|
211
|
+
# Find table blocks
|
|
212
|
+
pattern = r'(?:^\|.*\|\n)+'
|
|
213
|
+
return re.sub(pattern, compress_table, content, flags=re.MULTILINE)
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**Acceptance Criteria:**
|
|
217
|
+
- [ ] Code examples compressed while preserving key signatures
|
|
218
|
+
- [ ] Verbose sections summarized intelligently
|
|
219
|
+
- [ ] Lists compacted with structure preservation
|
|
220
|
+
- [ ] Tables optimized for space efficiency
|
|
221
|
+
|
|
222
|
+
### Task 2.3: Integration with Compaction Flow (10 min)
|
|
223
|
+
**Target:** Update main compaction creation function
|
|
224
|
+
|
|
225
|
+
```python
|
|
226
|
+
def create_compaction_with_intelligence():
|
|
227
|
+
"""Create intelligent compaction with content-aware compression."""
|
|
228
|
+
# Get enhanced token estimation
|
|
229
|
+
tokens, lines, content_breakdown = estimate_context_size_enhanced()
|
|
230
|
+
|
|
231
|
+
# Determine compression strategy
|
|
232
|
+
if tokens > 15000:
|
|
233
|
+
target_reduction = 0.5
|
|
234
|
+
elif tokens > 8000:
|
|
235
|
+
target_reduction = 0.35
|
|
236
|
+
else:
|
|
237
|
+
target_reduction = 0.2
|
|
238
|
+
|
|
239
|
+
# Create compression strategy
|
|
240
|
+
strategy = CompactionStrategy(content_breakdown, tokens, target_reduction)
|
|
241
|
+
compression_plan = strategy.create_compression_plan()
|
|
242
|
+
|
|
243
|
+
# Apply intelligent compression to content
|
|
244
|
+
raw_content = collect_session_content()
|
|
245
|
+
compressed_content = apply_intelligent_compression(raw_content, compression_plan)
|
|
246
|
+
|
|
247
|
+
# Create compaction with metadata
|
|
248
|
+
final_content = create_compaction_content(compressed_content, compression_plan)
|
|
249
|
+
|
|
250
|
+
return final_content, compression_plan
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
**Enhanced Compaction Output:**
|
|
254
|
+
```markdown
|
|
255
|
+
## Compression Analysis
|
|
256
|
+
- **Strategy**: Content-aware semantic preservation
|
|
257
|
+
- **Methods Applied**: compress_code_examples, summarize_verbose_sections
|
|
258
|
+
- **Critical Sections Preserved**: 8/8 (Plan Metadata, Phase Overview, Git State, Active Tasks)
|
|
259
|
+
- **Compression Ratio**: 12,450 → 7,200 tokens (42% reduction)
|
|
260
|
+
- **Semantic Preservation**: High (critical context maintained)
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
## Integration Points
|
|
264
|
+
|
|
265
|
+
### Hook Ecosystem
|
|
266
|
+
- **validate-session-state.sh**: Load compressed context with preserved structure
|
|
267
|
+
- **git-workflow-validator.sh**: Use compression metadata for branch decisions
|
|
268
|
+
|
|
269
|
+
### Agent Coordination
|
|
270
|
+
- **UnifiedPlanCoordinator**: Receive semantically preserved context
|
|
271
|
+
- **All domain agents**: Preserved critical patterns for their specializations
|
|
272
|
+
|
|
273
|
+
## Testing Strategy
|
|
274
|
+
- [ ] Unit tests for each compression method
|
|
275
|
+
- [ ] Integration tests with various content types
|
|
276
|
+
- [ ] Semantic preservation validation
|
|
277
|
+
- [ ] Performance benchmarks for compression operations
|
|
278
|
+
|
|
279
|
+
## Configuration
|
|
280
|
+
- [ ] Configurable critical patterns via `.claude/config/compaction-settings.json`
|
|
281
|
+
- [ ] Adjustable compression targets
|
|
282
|
+
- [ ] Method selection preferences
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
**Phase 2 Completion Criteria:**
|
|
286
|
+
- [ ] Intelligent compression strategies implemented
|
|
287
|
+
- [ ] Content-aware compression methods functional
|
|
288
|
+
- [ ] Semantic preservation validated
|
|
289
|
+
- [ ] Integration with enhanced token estimation
|
|
290
|
+
- [ ] Performance maintains <5s total compaction time
|
|
291
|
+
|
|
292
|
+
**Estimated Time: 45 minutes**
|
|
293
|
+
**Dependencies: Phase 1 (Enhanced Token Estimation)**
|
|
294
|
+
**Deliverables: Intelligent compression engine in `create-compaction.py`**
|