From e8c72c851d2f30dbc545975efc557c2bec84bf3a Mon Sep 17 00:00:00 2001 From: Douglas Stebila Date: Fri, 24 Jul 2026 10:56:32 -0400 Subject: [PATCH] Skip extmu ML-DSA variants in generic signature tests liboqs main now enables the external-mu ML-DSA variants (ML-DSA-44-extmu, ML-DSA-65-extmu, ML-DSA-87-extmu). These cannot be signed via the standard OQS_SIG_sign path, so the generic correctness tests in test_sig.py, which iterate over all enabled mechanisms and call plain sign(), fail with "RuntimeError: Can not sign message". Exclude the extmu variants from the generic sign/verify tests to unblock CI. Proper support (a dedicated external-mu signing path plus tests) is tracked in #151. Co-Authored-By: Claude Opus 4.8 (1M context) Signed-off-by: Douglas Stebila --- tests/test_sig.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/test_sig.py b/tests/test_sig.py index 185f6a2..21645cb 100644 --- a/tests/test_sig.py +++ b/tests/test_sig.py @@ -4,8 +4,13 @@ import oqs from oqs.oqs import Signature, native -# Sigs for which unit testing is disabled -disabled_sig_patterns = [] +# Sigs for which unit testing is disabled. +# +# The ML-DSA "external mu" (extmu) variants require an externally computed mu +# and cannot be signed via the standard sign() API, so exclude them from the +# generic sign/verify correctness tests. See +# https://github.com/open-quantum-safe/liboqs-python/issues/151. +disabled_sig_patterns = ["extmu"] if platform.system() == "Windows": disabled_sig_patterns = [""]