OPT-06: within-solve basis-reuse hull classification

Descriptive Release measurements for one implementation and three small 2D fixtures. No speedup or general scaling claim is made.

Measured source commit: ef70e8c580a9556b0f5d96e49070d33221bf5b64
Evidence: 42 measured rows, 0 failed rows; report status remains descriptive because no separate limiter profile was collected.
Timing scope: steady_clock around reduce_hull or reduce_hull_basis_reuse only; point cloud setup, HiGHS LP workspace creation, and independent hull-equivalence verification excluded.

Median durations

degenerate / baseline0.633 ms; n=7degenerate / basis-reuse0.051 ms; n=7interior-basis / baseline0.471 ms; n=7interior-basis / basis-reuse0.044 ms; n=7permuted / baseline0.901 ms; n=7permuted / basis-reuse0.052 ms; n=7

Per-method summary

case_idmethodattemptssuccessesfailuresmedian_nsmin_nsmax_nsmedian_lp_callsmedian_pivotsmedian_degenerate_pivotsmedian_bulk_candidatesmedian_bulk_removals
degeneratebaseline77063340062380065610070003
degeneratebasis-reuse77051200488005360004042
interior-basisbaseline77047120045610066430050001
interior-basisbasis-reuse77044400428005150004220
permutedbaseline770901200890100936700100006
permutedbasis-reuse77052200494005550004072

Evidence and limits

Every timed pair is followed by untimed mutual LP-membership checks of both retained hulls against each other. The deterministic interior-basis fixture is covered by the unit test but excluded from timing because the LP baseline returned incomplete; raw failed attempts are preserved separately.

Hardware/compiler/build details and all raw rows are retained in records.json, trials.csv, summary.csv, raw stdout JSONL, raw stderr, and the sanitized build log. LP/pivot/bulk counters describe operations, not elapsed-time components.

The fixtures are intentionally small and do not model the fuel-consumption application or establish production workload scaling. Timed methods are alternated, but no tuned performance verdict is drawn; a dedicated limiter profile and broader workload family would be needed before claiming a winner.