__init__.py file-level

at sha256:c · View file ↗ · Intel ↗

History
1 files
1 commits
0 hotspots
0 🧊 dead
0 💥 blast risk
sha256:8 docs: queue board-identity follow-ups so they survive the session Capt… · aaronrene · Sep 5, 2026
1 """Shared fixtures for Q3-release desktop installer tests (§QR.13)."""
2
3 from __future__ import annotations
4
5 from pathlib import Path
6
7 from tests.support import KIT_ROOT
8
9 RELEASE_WORKFLOW = KIT_ROOT / ".github" / "workflows" / "desktop-release.yml"
10 SMOKE_WORKFLOW = KIT_ROOT / ".github" / "workflows" / "desktop-build-smoke.yml"
11 RELEASE_TEMPLATE = KIT_ROOT / "templates" / "ci" / "desktop-release-github-actions.yml"
12 BUNDLE_SCRIPT = KIT_ROOT / "scripts" / "bundle-desktop-kit.sh"
13 RUNBOOK = KIT_ROOT / "docs" / "TRACK-Q-DESKTOP-OPERATOR-RUNBOOK.md"
14 DESKTOP_KEYS = KIT_ROOT / "desktop" / "keys"
15 PUBLIC_KEY = DESKTOP_KEYS / "release.minisign.pub"
16
17 GIT_SHA_FIXTURE = "a" * 40
18
19
20 def sample_signed_artifacts(version: str = "0.1.0") -> list[dict]:
21 """Return three signed platform artifact dicts for schema tests."""
22 return [
23 {
24 "platform": "macos",
25 "filename": f"Overseer Kit_{version}_aarch64.dmg",
26 "sha256": "b" * 64,
27 "arch": "aarch64",
28 "signing": {"status": "signed", "method": "developer_id_notarized"},
29 },
30 {
31 "platform": "windows",
32 "filename": f"Overseer Kit_{version}_x64_en-US.msi",
33 "sha256": "c" * 64,
34 "arch": "x86_64",
35 "signing": {"status": "signed", "method": "authenticode"},
36 },
37 {
38 "platform": "linux",
39 "filename": f"Overseer Kit_{version}_amd64.AppImage",
40 "sha256": "d" * 64,
41 "arch": "x86_64",
42 "signing": {"status": "signed", "method": "minisign_detached"},
43 },
44 ]
45
46
47 def write_artifact_files(directory: Path, artifacts: list[dict]) -> list[Path]:
48 """Write tiny fixture files named like release artifacts; return paths."""
49 directory.mkdir(parents=True, exist_ok=True)
50 paths: list[Path] = []
51 for item in artifacts:
52 path = directory / item["filename"]
53 # Distinct bytes per platform so hashes differ.
54 path.write_bytes(f"fixture:{item['platform']}:{item['filename']}\n".encode("utf-8"))
55 paths.append(path)
56 return paths