|
| 1 | +# MB01XX Test Inventory - Phase 1 Audit |
| 2 | + |
| 3 | +**Date:** 2025-11-12 |
| 4 | +**Branch:** feat/phase-1-audit-cleanup |
| 5 | +**Status:** Foundation for multi-phase test fixes |
| 6 | + |
| 7 | +--- |
| 8 | + |
| 9 | +## Summary |
| 10 | + |
| 11 | +**Total Tests:** 43 |
| 12 | +**All Tests:** Failing with signature mismatches |
| 13 | +**Non-existent Functions:** 0 (already removed) |
| 14 | +**Unwrapped Functions:** 0 in tests (MB01KD, MB01MD, MB01ND not wrapped, not tested) |
| 15 | + |
| 16 | +--- |
| 17 | + |
| 18 | +## Test Inventory by Function |
| 19 | + |
| 20 | +### Phase 2: Simple Functions (No Workspace) - 6 tests |
| 21 | + |
| 22 | +| Function | Tests | Signature | Status | |
| 23 | +|----------|-------|-----------|--------| |
| 24 | +| **MB01SD** | 3 | `mb01sd(jobs, m, n, a_obj, r_obj, c_obj) → a_obj` | Needs 6 args, tests use 5 | |
| 25 | +| **MB01SS** | 2 | `mb01ss(jobs, uplo, n, a_obj, d_obj) → a_obj` | Needs check | |
| 26 | +| **MB01XD** | 2 | `mb01xd(m, n, a_obj, b_obj) → (b_obj, info)` | Needs check | |
| 27 | +| **MB01XY** | 2 | `mb01xy(uplo, n, a_obj) → (a_obj, info)` | Needs check | |
| 28 | + |
| 29 | +### Phase 3: Scaling/Normalization - 0 tests |
| 30 | +| Function | Tests | Wrapped? | Notes | |
| 31 | +|----------|-------|----------|-------| |
| 32 | +| **MB01PD** | 0 | ✓ | Missing tests | |
| 33 | +| **MB01QD** | 0 | ✓ | Missing tests | |
| 34 | + |
| 35 | +### Phase 4: Symmetric/Skew-symmetric Transformations - 8 tests |
| 36 | + |
| 37 | +| Function | Tests | Signature | Status | |
| 38 | +|----------|-------|-----------|--------| |
| 39 | +| **MB01LD** | 2 | `mb01ld(uplo, trans, m, n, k, alpha, beta, r_obj, a_obj, x_obj, dwork_obj) → (r_obj, x_obj, info)` | Needs 11 args | |
| 40 | +| **MB01RB** | 2 | `mb01rb(uplo, trans, n, k, alpha, beta, a_obj, b_obj, c_obj) → (c_obj, info)` | Needs check | |
| 41 | +| **MB01RD** | 1 | `mb01rd(uplo, trans, n, k, alpha, beta, b_obj, a_obj) → (a_obj, info)` | Needs check | |
| 42 | +| **MB01RH** | 1 | Needs check | Wrapped, untested properly | |
| 43 | +| **MB01RT** | 1 | Needs check | Wrapped, untested properly | |
| 44 | +| **MB01RU** | 1 | Needs check | Wrapped, untested properly | |
| 45 | +| **MB01RW** | 1 | Needs check | Wrapped, untested properly | |
| 46 | +| **MB01RX** | 1 | Needs check | Wrapped, untested properly | |
| 47 | +| **MB01RY** | 1 | Needs check | Wrapped, untested properly | |
| 48 | + |
| 49 | +### Phase 5: Hessenberg Operations - 14 tests |
| 50 | + |
| 51 | +| Function | Tests | Wrapped? | Status | |
| 52 | +|----------|-------|----------|--------| |
| 53 | +| **MB01OC** | 1 | ✓ | Signature mismatch | |
| 54 | +| **MB01OD** | 1 | ✓ | Signature mismatch | |
| 55 | +| **MB01OE** | 1 | ✓ | Signature mismatch | |
| 56 | +| **MB01OH** | 1 | ✓ | Signature mismatch | |
| 57 | +| **MB01OO** | 1 | ✓ | Signature mismatch | |
| 58 | +| **MB01OS** | 1 | ✓ | Signature mismatch | |
| 59 | +| **MB01OT** | 1 | ✓ | Signature mismatch | |
| 60 | +| **MB01TD** | 1 | ✓ | Signature mismatch | |
| 61 | +| **MB01UD** | 1 | ✓ | Signature mismatch | |
| 62 | +| **MB01UW** | 1 | ✓ | Signature mismatch | |
| 63 | +| **MB01UX** | 2 | ✓ | Signature mismatch | |
| 64 | +| **MB01UY** | 2 | ✓ | Signature mismatch | |
| 65 | + |
| 66 | +### Phase 6: Special Operations - 4 tests |
| 67 | + |
| 68 | +| Function | Tests | Wrapped? | Status | |
| 69 | +|----------|-------|----------|--------| |
| 70 | +| **MB01VD** | 1 | ✓ | Signature mismatch | |
| 71 | +| **MB01WD** | 2 | ✓ | Signature mismatch | |
| 72 | +| **MB01YD** | 2 | ✓ | Signature mismatch | |
| 73 | +| **MB01ZD** | 2 | ✓ | Signature mismatch | |
| 74 | + |
| 75 | +### Phase 7: Complex Function - 2 tests |
| 76 | + |
| 77 | +| Function | Tests | Wrapped? | Status | |
| 78 | +|----------|-------|----------|--------| |
| 79 | +| **MB01UZ** | 2 | ✓ | Signature mismatch (complex) | |
| 80 | + |
| 81 | +--- |
| 82 | + |
| 83 | +## Functions NOT Tested (but wrapped) |
| 84 | + |
| 85 | +Per MB01XX_SIGNATURE_REFERENCE.md, these exist in extension_mb.c but have no tests: |
| 86 | + |
| 87 | +1. **MB01PD** - Safe range scaling (wrapped) |
| 88 | +2. **MB01QD** - Scale by CTO/CFROM (wrapped) |
| 89 | + |
| 90 | +--- |
| 91 | + |
| 92 | +## Functions NOT Wrapped |
| 93 | + |
| 94 | +Per reference, these have NO Python wrappers: |
| 95 | + |
| 96 | +1. **MB01KD** - Skew-symmetric rank 2k |
| 97 | +2. **MB01MD** - Skew-symmetric matrix-vector |
| 98 | +3. **MB01ND** - Skew-symmetric rank 2 |
| 99 | + |
| 100 | +--- |
| 101 | + |
| 102 | +## Phase 1 Deliverables |
| 103 | + |
| 104 | +✓ No non-existent function tests to remove |
| 105 | +✓ No unwrapped function tests to skip |
| 106 | +✓ Test inventory created |
| 107 | +✓ Documented 43 failing tests |
| 108 | +✓ Identified 2 wrapped but untested functions (MB01PD, MB01QD) |
| 109 | + |
| 110 | +**Next:** Phase 2 - Fix simple functions (MB01SD, MB01SS, MB01XD, MB01XY) |
0 commit comments