Skip to content

Commit 714a8b9

Browse files
Pigbibicodex
andcommitted
chore: add qsl compat metadata and compatibility tests
Co-Authored-By: Codex <noreply@openai.com>
1 parent 00fa640 commit 714a8b9

7 files changed

Lines changed: 1504 additions & 3 deletions

File tree

pyproject.toml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
[build-system]
2+
requires = ["setuptools>=69", "wheel"]
3+
build-backend = "setuptools.build_meta"
4+
5+
[project]
6+
name = "crypto-live-pool-pipelines"
7+
version = "0.1.0"
8+
description = "Live-pool rotation pipelines for crypto strategy runtime compatibility."
9+
readme = "README.md"
10+
requires-python = ">=3.11"
11+
dependencies = [
12+
"quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@0063af3b4a974650ea58a7d3f26dd1b94f65d3e8",
13+
"pandas==3.0.3",
14+
"numpy==2.4.6",
15+
"requests==2.34.2",
16+
"matplotlib==3.11.0",
17+
"PyYAML==6.0.3",
18+
"lightgbm==4.6.0",
19+
"scikit-learn==1.9.0",
20+
"scipy==1.17.1",
21+
"joblib==1.5.3",
22+
"google-cloud-storage==3.12.0",
23+
"google-cloud-firestore==2.28.0",
24+
]
25+
26+
[project.optional-dependencies]
27+
test = ["pytest>=8"]
28+
29+
[tool.setuptools]
30+
package-dir = {"" = "src"}
31+
32+
[tool.setuptools.packages.find]
33+
where = ["src"]
34+

qsl.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[qsl]
2+
repo = "CryptoLivePoolPipelines"
3+
tier = "pipeline"
4+
ring = 2
5+
allow_legacy = false
6+
artifact_contract = "docs/integration_contract.md"
7+
snapshot_contract = "docs/integration_contract.md"
8+
9+
10+
[qsl.compat]
11+
bundle = "2026.07.0"

requirements-lock.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@d786c1140967f0e96e35599d057f0655e5a9ba25
1+
quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@0063af3b4a974650ea58a7d3f26dd1b94f65d3e8
22
pandas==3.0.3
33
numpy==2.4.6
44
requests==2.34.2

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@d786c1140967f0e96e35599d057f0655e5a9ba25
1+
quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@0063af3b4a974650ea58a7d3f26dd1b94f65d3e8
22
pandas>=3.0.3
33
numpy>=2.4.6,<2.5
44
requests>=2.34.2

tests/test_monthly_publish_workflow_config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
README_ZH_PATH = PROJECT_ROOT / "README.zh-CN.md"
1010
QPK_DEPENDENCY = (
1111
"quant-platform-kit @ "
12-
"git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@d786c1140967f0e96e35599d057f0655e5a9ba25"
12+
"git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@0063af3b4a974650ea58a7d3f26dd1b94f65d3e8"
1313
)
1414

1515

tests/test_qsl_metadata.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
"""Minimal QSL compat metadata smoke tests."""
2+
3+
from __future__ import annotations
4+
5+
from pathlib import Path
6+
import tomllib
7+
8+
9+
def test_qsl_metadata_has_compat_bundle() -> None:
10+
path = Path(__file__).resolve().parents[1] / "qsl.toml"
11+
with path.open("rb") as f:
12+
data = tomllib.load(f)
13+
14+
qsl = data["qsl"]
15+
assert qsl["tier"] == "pipeline"
16+
assert qsl["ring"] == 2
17+
assert qsl.get("repo") == "CryptoLivePoolPipelines"
18+
compat = qsl["compat"]
19+
assert compat["bundle"] == "2026.07.0"
20+
21+
assert qsl.get("artifact_contract") == "docs/integration_contract.md"
22+
assert qsl.get("snapshot_contract") == "docs/integration_contract.md"

uv.lock

Lines changed: 1434 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)