Skip to content

Commit 0fef2cc

Browse files
AlfVIIclaude
andcommitted
docs(handoff): restore HANDOFF_HEAVY_TEST_GAPS.md with investigation update
The handoff was removed in e9837a0 ("Remove HANDOFF_HEAVY_TEST_GAPS.md per user request") earlier this session. Restoring the original content from 3facdec and appending a session-2 investigation update with concrete root-cause data for each gap: Gap 1 — FIXED in 03bf3f8 (CLLLC netlist precision: std::fixed was rounding sub-microscale Cr / maxStep values to "0.000000" and ngspice rejected the netlist syntactically). [clllc-topology][ ngspice-simulation] tests go from 2 SKIPPED → 2 cases / 14 assertions all pass. WebFrontend `runSimulated` step should complete instead of the previous 180-360 s timeout. Gap 2 — `[!silent-shortcut]` 60 s wall-clock budget attempt (commit 4b4ebc4) was reverted in 0fd66d0 per the CLAUDE.md "no fallbacks, no silent shortcuts — throw" policy. The right fix is the structural one the handoff originally suggested: candidate- budgeted top-K per winding in the inner wind loop, capping at K^N instead of |wireDatabase|^N. Needs a deterministic MKF-side reproducer first (capture the actual MAS JSON the WebFrontend posts to `calculate_advised_coil` and write a unit test against it). Gap 3 — Concrete diagnoses from running PSFB through MagneticAdviser with Logger::setLevel(INFO): PSFB ferrite path drops 168 → 0 at the **Saturation** filter. All 168 ferrite cores that satisfy the inductance constraint exceed the 1.2× Bsat margin at PSFB's V·s peak with the initial-N derived from `add_initial_turns_by_inductance`. PSFB powder path drops 4000 → 0 at the **Inductance** filter. Powder cores' lower max permeability can't reach PSFB's requested Lm at any reasonable N for the dimension-passing shapes. Underlying issue: PhaseShiftedFullBridge.cpp:220-226's Im_target=0 path forces `Lm = max(Lm, 20 * Lr)` which for 600 W at 12 V × 50 A drives Lm high enough that initial-N selection puts B_peak past Bsat for the entire catalog. PFC at 50 W takes 5:25 in standalone MKF; CoreAdviser is the bottleneck (CoilAdviser is fast for single-winding PFC). Needs per-stage time profiling to target the specific filter — most likely `add_ferrite_materials_by_losses` sweeping the candidate set × operating points. Gap 4 — likely cascades from Gap 2 + Gap 3 fixes. Recommended fix order for next session is captured in the doc; none of the gaps are fixed in this commit, but the diagnostic work is now actionable instead of speculative. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 0fd66d0 commit 0fef2cc

1 file changed

Lines changed: 427 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)