T6E W14 Library — Harness Result (Wave PASS)
| Item |
Value |
| Wave |
W14 / SC-LIB |
| Contract |
T6E-W14-library-contract-DRAFT.md (APPROVED via prompt) |
| Harness |
custom_addons_scola/gcgscola/scripts/golden/w14_runtime_certify.py |
| Overlay |
gt-w14-1.0 |
| Executed (UTC) |
2026-08-31 |
| Database |
disposable scola_t6e_lib_audit_* (template scoladev) |
| Base URL |
http://127.0.0.1:8105 |
| Result |
11/11 PASS ×2 — wave PASS (QG-17 bounded) |
Sign-off (product owner via Cursor prompt)
| Field |
Value |
| Authorized by |
product owner via Cursor prompt |
| Authorization date |
2026-08-31 UTC |
| Engineering witness |
agent session |
Cases (bounded V1 harness)
| Case |
Matrix ID |
Status |
Notes |
| W14-IDM-CONCURRENT-QUEUE-ASSIGN |
RT-W14-IDM-01 |
PASS |
First assign wins; second same-unit assign denied (STAB-031) |
| W14-POS-CIRCULATION-PATH |
RT-W14-POS-01 |
PASS |
Checkout → checkin; copy state reconciles |
| W14-NEG-SETTINGS-MUTATION-DENY |
RT-W14-NEG-01 |
PASS |
Viewer denied settings + circulation manage |
| W14-VAL-UNAVAILABLE-UNIT |
RT-W14-VAL-01 |
PASS |
Issued unit checkout rejected |
| W14-STA-WAIVER-STATE-MATRIX |
RT-W14-STA-01 |
PASS |
Late checkin → waiver request path |
| W14-REC-FINE-WAIVER-RECOVERY |
RT-W14-REC-01 |
PASS |
Waiver approve closes overdue return |
| W14-SCP-PEER-LOAN-DENY |
RT-W14-SCP-01 |
PASS |
Peer loan detail denied |
| W14-TEN-CROSS-COMPANY |
RT-W14-TEN-01 |
PASS |
T2 movement not in T1 fines list |
| W14-XRP-READER-BOUNDARY |
RT-W14-XRP-01 |
PASS |
Member sees own loans; viewer empty |
| W14-XMD-ENTITLEMENT-OFF |
RT-W14-XMD-01 |
PASS |
SC-LIB off → feature_disabled on checkout |
| W14-UIA-API-ALIGNMENT |
RT-W14-UIA-01 |
PASS |
Route meta + settings/catalog gates aligned |
Evidence (×2)
Engineering fixes
| Fix |
File |
Reason |
| STAB-031 queue assign serialization |
scola_library/models/library_queue_auto.py |
FOR UPDATE + advisory lock + SQL conflict guard |
| Notification accepts record ids |
scola_library/models/library_notification.py |
Assign path no longer crashes on int ids |
| Return name uses card number |
scola_library/models/library_return_workflow.py |
Checkin/waiver compute safe |
| Checkout sets movement type/student |
scola_library/controllers/library_canonical_ops_api.py |
POS circulation creates valid movement rows |
Unit state issue on collect |
scola_library/models/library_queue_auto.py |
Align with op.media.unit selection |
| Full 11-case harness + seed |
scripts/golden/w14_runtime_certify.py |
GT-OVL-SC-LIB fixtures on disposable DB |
Deferred (not claimed)
| Item |
Track |
| Student self-renew ACL (movement write) |
Product/ACL follow-up |
| Finance fine bridge (FFBR-style) |
Separate entitlement |
| True OS-parallel queue race (vs sequential double-assign) |
STAB-031 hardening v2 |
| V1 CERTIFIED / production / QG-18 human pass |
Out of scope |
Next wave recommendation
W07 report card or W13 opname — contracts signed; harness pending.