Skip to content

Commit 67d0d4a

Browse files
committed
chore(release): update dependencies and version to 1.0.1
1 parent 0279a33 commit 67d0d4a

5 files changed

Lines changed: 41 additions & 11 deletions

File tree

.github/workflows/release.yml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,27 @@ jobs:
1313
runs-on: ubuntu-latest
1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v4
16+
uses: actions/checkout@v6
1717
with:
1818
fetch-depth: 0
1919

2020
- name: Setup uv
21-
uses: astral-sh/setup-uv@v5
21+
uses: astral-sh/setup-uv@v7
2222
with:
2323
python-version: "3.12"
2424

25+
- name: Install dependencies
26+
run: uv sync
27+
28+
- name: Lint
29+
run: uv run ruff check .
30+
31+
- name: Type check
32+
run: uv run ty check src tests
33+
34+
- name: Test
35+
run: uv run pytest
36+
2537
- name: Get version from tag
2638
id: tag_version
2739
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[build-system]
2-
requires = ["uv-build>=0.10.2,<0.11.2"]
2+
requires = ["uv-build>=0.10.2,<0.12"]
33
build-backend = "uv_build"
44

55
[project]
66
name = "pb-spec"
7-
version = "1.0.0"
7+
version = "1.0.1"
88
description = "Plan-Build Spec (pb-spec): A CLI tool for managing AI coding assistant skills"
99
readme = "README.md"
1010
license = "Apache-2.0"

src/pb_spec/__init__.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@
22

33
from __future__ import annotations
44

5-
__version__ = "0.9.0"
5+
from importlib.metadata import version
6+
7+
__version__ = version("pb-spec")

src/pb_spec/commands/validate.py

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -148,11 +148,27 @@ def validate_plan(spec_dir: Path) -> bool:
148148
# 2. Validate design.md required sections
149149
if design_file.exists():
150150
content = design_file.read_text(encoding="utf-8")
151-
required_sections = [
152-
"Architecture Decisions",
153-
"BDD/TDD Strategy",
154-
"Verification",
155-
]
151+
152+
# Detect mode: full mode has "Executive Summary" or "Requirements & Goals"
153+
is_full_mode = "Executive Summary" in content or "Requirements & Goals" in content
154+
155+
if is_full_mode:
156+
required_sections = [
157+
"Executive Summary",
158+
"Requirements & Goals",
159+
"Architecture Overview",
160+
"Detailed Design",
161+
"Verification & Testing Strategy",
162+
"Implementation Plan",
163+
]
164+
else:
165+
# Lightweight mode (per contract §6.4)
166+
required_sections = [
167+
"Architecture Decisions",
168+
"BDD/TDD Strategy",
169+
"Verification",
170+
]
171+
156172
for sec in required_sections:
157173
if sec not in content:
158174
print_error(f"design.md is missing required section: '{sec}'")

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)