Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
workflow_dispatch:
inputs:
version:
description: 'Release version; must match pyproject.toml (for example 1.3.2)'
description: 'Release version; must match pyproject.toml (without the v prefix)'
required: true
type: string

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "contextd"
version = "1.3.2"
version = "1.4.0"
description = "Build system for AI coding-agent context"
readme = "README.md"
requires-python = ">=3.10"
Expand Down
14 changes: 12 additions & 2 deletions scripts/test_contextd_runtime.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import io
import importlib.util
import os
import re
import shutil
import subprocess
import sys
Expand Down Expand Up @@ -1364,15 +1365,24 @@ def test_thesis_hardening_docs_and_release_mapping() -> None:
assert 'BINARY="contextd-${PLATFORM}-arm64"' not in release, release
assert "Linux arm64 prebuilt binary is not available" in release, release
assert "contextd-linux-arm64" not in release, release
assert 'version = "1.3.2"' in pyproject, pyproject
project_version_match = re.search(
r'(?m)^version\s*=\s*"([^"]+)"\s*$',
pyproject,
)
assert project_version_match, pyproject
project_version = project_version_match.group(1)
assert re.fullmatch(
r"[0-9]+\.[0-9]+\.[0-9]+(?:[.-][0-9A-Za-z.-]+)?",
project_version,
), project_version
for module in ("cmd_synapse", "lib.synapse_engine", "lib.frontmatter"):
assert f"'{module}'" in spec, (module, spec)
assert "'synapse_engine'" not in spec, "top-level lib module would create duplicate state"
assert "'scripts/lib'" not in spec, "PyInstaller path exposes duplicate top-level modules"
assert "needs: [release-metadata, verify, package-source, build-binaries]" in release
assert "python-version: ['3.10', '3.12']" in release
actual_version = contextd_version.get_version(start_path=ROOT)
assert actual_version == "1.3.2", actual_version
assert actual_version == project_version, (actual_version, project_version)
print(" ok thesis_hardening_docs_and_release_mapping")


Expand Down
Loading