Skip to content

Commit c4c6c19

Browse files
Pigbibicodex
andcommitted
Merge remote-tracking branch 'origin/main' into codex-reusable-pr-review
Co-Authored-By: Codex <noreply@openai.com>
2 parents d7f8d1d + 90e2c77 commit c4c6c19

10 files changed

Lines changed: 1141 additions & 46 deletions

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ This repository is the central manifest source for QSL compatibility checks.
3333

3434
- `qsl.toml`: current repo QSL metadata (`tier`, `upgrade_ring`, `bundle`).
3535
- `scripts/check_qsl_compat.py`: validate a repo's QSL compliance in `pyproject.toml`/`uv.lock` against central bundle.
36+
- `python/scripts/qslctl.py`: unified QSL version-control CLI for repo checks, workspace checks, ring reports/plans, and matrix generation.
3637
- `scripts/render_qsl_dependency_graph.py`: render dependency graph for review.
3738
- `compat/bundles/2026.07.0.toml`: first compatibility bundle (CalVer).
3839
- `compat/repo-tiers.toml`: repo tier and upgrade ring policy notes.

compat/bundles/2026.07.2.toml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name = "2026.07.2"
2+
description = "QSL compatibility bundle after QuantPlatformKit live-constraints and QPK_PIN refresh"
3+
created_at = "2026-07-05"
4+
5+
[repos]
6+
QuantPlatformKit = "37c81901160c5b31127a27dba1c63944933fb6bf"
7+
UsEquityStrategies = "17ddb86c72d44b2c7b78ba7a10d8f71b21180166"
8+
HkEquityStrategies = "b6a8ac2ad3c8110b5ea74fb059c8206388d63bcd"
9+
CnEquityStrategies = "8dfadcf8a4dc6cc516f27a4013248474603d8ce2"
10+
CryptoStrategies = "39bf4733cef922bdeacfd0adef394e7819a04908"
11+
QuantStrategyPlugins = "1f3a27b8fd83d71b583f4f5160a748e95fbefaa1"
12+
MarketSignalSources = "bda8ab10b80a646e4b579ef4c0d5dfe90776e908"

docs/qsl_version_control.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# QSL version control plane
2+
3+
QuantRuntimeSettings is the control plane for QuantStrategyLab internal version
4+
management.
5+
6+
## Source of truth
7+
8+
- `compat/bundles/*.toml` is the source of truth for internal repository commit pins.
9+
- Each consumer repository declares its bundle in `qsl.toml`.
10+
- Consumer files (`pyproject.toml`, `uv.lock`, `requirements.txt`, `constraints.txt`) must match the declared bundle.
11+
- `internal_dependency_matrix.json` is generated from local consumer dependency files; do not hand-edit it except for emergency repair.
12+
13+
## CLI
14+
15+
Use `qslctl` for repository and workspace checks:
16+
17+
```bash
18+
python3 python/scripts/qslctl.py check --repo-root ../UsEquityStrategies
19+
python3 python/scripts/qslctl.py check-all --projects-root /Users/lisiyi/Projects
20+
python3 python/scripts/qslctl.py report --projects-root /Users/lisiyi/Projects
21+
python3 python/scripts/qslctl.py plan --projects-root /Users/lisiyi/Projects
22+
python3 python/scripts/qslctl.py generate-matrix --projects-root /Users/lisiyi/Projects --check
23+
python3 python/scripts/qslctl.py generate-matrix --projects-root /Users/lisiyi/Projects --sync
24+
```
25+
26+
## Rollout policy
27+
28+
1. Create or update a bundle in `compat/bundles/`.
29+
2. Apply that bundle by ring: core → strategy libraries → pipelines/research → runtime platforms → ops/tooling.
30+
3. Regenerate `internal_dependency_matrix.json` after consumer pins are updated.
31+
4. Keep strict checks enabled only after a ring is converged.
32+
33+
## Workspace report / plan
34+
35+
- `qslctl report` is read-only. It groups the current workspace by ring, status, and bundle hotspot.
36+
- `qslctl plan` is read-only. It renders the ring-by-ring convergence order and highlights which repos should be fixed before the next ring starts.
37+
- Use `report` to answer “what is broken right now?” and `plan` to answer “what should we fix first?”

0 commit comments

Comments
 (0)