Skip to content
12 changes: 12 additions & 0 deletions .cursor/environment.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"name": "BandScope",
"install": "curl --proto '=https' --tlsv1.2 -LsSf https://astral.sh/uv/0.8.6/install.sh | env UV_UNMANAGED_INSTALL=\"$HOME/.local/bin\" sh && export PATH=\"$HOME/.local/bin:$PATH\" && npm ci && uv sync --project services/analysis-engine --group dev --frozen",
"ports": [{ "name": "desktop-dev", "port": 5173 }],
"terminals": [
{
"name": "desktop-dev",
"command": "npm run dev --workspace @bandscope/desktop",
"description": "Vite dev server for the BandScope desktop app (browser fallback mode) at http://localhost:5173/"
}
]
}
23 changes: 23 additions & 0 deletions services/analysis-engine/tests/test_cloud_agent_environment.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
"""Regression tests for the reproducible Cursor Cloud Agent bootstrap."""

from __future__ import annotations

import json
from pathlib import Path


def test_cloud_agent_install_uses_pinned_locked_dependency_bootstrap() -> None:
"""Keep Cloud Agent dependency setup aligned with BandScope's locked CI path."""
repo_root = Path(__file__).resolve().parents[3]
environment = json.loads(
(repo_root / ".cursor" / "environment.json").read_text(encoding="utf-8")
)
install = environment["install"]

assert "https://astral.sh/uv/0.8.6/install.sh" in install
assert "--proto '=https'" in install
assert "--tlsv1.2" in install
assert 'UV_UNMANAGED_INSTALL="$HOME/.local/bin"' in install
assert "npm ci" in install
assert "npm install" not in install
assert "uv sync --project services/analysis-engine --group dev --frozen" in install
Loading