Skip to content

Harden Solavin for research-grade I-V analysis - #2

Merged
dev-juy merged 3 commits into
mainfrom
audit/research-grade-validation
Jul 30, 2026
Merged

Harden Solavin for research-grade I-V analysis#2
dev-juy merged 3 commits into
mainfrom
audit/research-grade-validation

Conversation

@dev-juy

@dev-juy dev-juy commented Jul 29, 2026

Copy link
Copy Markdown
Owner

What changed

  • Replaced fragile I–V calculations with a validation-aware analysis core using exact piecewise-linear maximum-power-point evaluation.
  • Added explicit quality states for invalid, provisional, censored, and ambiguous sweeps; derived values are withheld when unsupported.
  • Corrected sparse-channel voltage alignment, duplicate-voltage handling, signed-current behavior, SI scaling, and comparison logic.
  • Removed chart smoothing that could invent curve shape and removed fabricated instrument/live/calibration claims.
  • Hardened CSV/XLSX import and export, including formula-injection protection, size/row limits, provenance sheets, and efficiency inputs.
  • Replaced the vulnerable XLSX dependency and upgraded the build/test stack.
  • Added deterministic, status-aware research assistance that does not rank invalid or provisional results.
  • Replaced the broken CI filename with a real GitHub Actions workflow and added citation and validation documentation.

Why

The prior implementation could silently convert missing measurements to zero, align channels by row rather than voltage, display an unbracketed open-circuit voltage as exact, calculate downstream metrics from unsupported values, and visually smooth data into shapes that were never measured. Those behaviors are unacceptable for research visualization.

Validation

  • 53/53 automated tests pass.
  • 300 randomized analytic linear-oracle trials.
  • Six independent continuous single-diode/golden-search oracles.
  • Scale-invariance, censored-sweep, ambiguous-crossing, malformed-input, sparse-alignment, export-provenance, and safety-limit tests.
  • Coverage: 92.94% statements, 85.46% branches, 98.52% functions, 96.46% lines.
  • npm audit --audit-level=high: 0 vulnerabilities.
  • Standard and standalone production builds pass.
  • CI installs Chromium and runs browser-level CSV/XLSX/chart smoke tests.

Research scope and limitations

This change makes the system fail transparently outside its validated scope; it does not claim IEC certification or universal correctness. Series and shunt resistance remain local diagnostic estimates, uncertainty propagation is not implemented, hysteresis requires separate forward/reverse sweeps, and instrument calibration remains the researcher’s responsibility. See docs/VALIDATION.md for the full validation register.

@netlify

netlify Bot commented Jul 29, 2026

Copy link
Copy Markdown

Deploy Preview for solavin ready!

Name Link
🔨 Latest commit 3afe2b5
🔍 Latest deploy log https://app.netlify.com/projects/solavin/deploys/6a6b87afa8c2d90009f7aa83
😎 Deploy Preview https://deploy-preview-2--solavin.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@dev-juy
dev-juy marked this pull request as ready for review July 30, 2026 17:29
@dev-juy
dev-juy merged commit 799d461 into main Jul 30, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant