From 352623b2a9acfd412071aa45ee0e3c3e5b7012a4 Mon Sep 17 00:00:00 2001 From: Pigbibi <20649888+Pigbibi@users.noreply.github.com> Date: Fri, 3 Jul 2026 16:39:51 +0800 Subject: [PATCH] chore: add qsl compat metadata and compatibility tests Co-Authored-By: Codex --- qsl.toml | 9 +++++++++ tests/test_qsl_metadata.py | 20 ++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 qsl.toml create mode 100644 tests/test_qsl_metadata.py diff --git a/qsl.toml b/qsl.toml new file mode 100644 index 0000000..14343df --- /dev/null +++ b/qsl.toml @@ -0,0 +1,9 @@ +[qsl] +repo = "ResearchSignalContextPipelines" +tier = "research" +ring = 2 +allow_legacy = false +snapshot_contract = "docs/architecture.md" + +[qsl.compat] +bundle = "2026.07.0" diff --git a/tests/test_qsl_metadata.py b/tests/test_qsl_metadata.py new file mode 100644 index 0000000..26423a4 --- /dev/null +++ b/tests/test_qsl_metadata.py @@ -0,0 +1,20 @@ +"""Minimal QSL compat metadata smoke tests.""" + +from __future__ import annotations + +from pathlib import Path +import tomllib + + +def test_qsl_metadata_has_compat_bundle() -> None: + path = Path(__file__).resolve().parents[1] / "qsl.toml" + with path.open("rb") as f: + data = tomllib.load(f) + + qsl = data["qsl"] + assert qsl["tier"] == "research" + assert qsl["ring"] == 2 + assert qsl.get("repo") == "ResearchSignalContextPipelines" + compat = qsl["compat"] + assert compat["bundle"] == "2026.07.0" + assert qsl.get("snapshot_contract") == "docs/architecture.md"