Skip to content

Commit c18018a

Browse files
committed
ci: add GitHub Actions (pytest + harness + build) on py3.11/3.12 (v1.1.4)
Closes the one engineering gap found in the 4-repo competitor scan — only the off-topic Master-skill shipped CI; no fortune skill did. - .github/workflows/ci.yml: push/PR runs 94-test pytest + run_checks harness + build_skill.py on Python 3.11 & 3.12, uploads the skill zip as artifact. - requirements-dev.txt: dev/CI deps. - README badges (CI / tests / license).
1 parent d0db06d commit c18018a

7 files changed

Lines changed: 80 additions & 2 deletions

File tree

.github/workflows/ci.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
workflow_dispatch:
9+
10+
permissions:
11+
contents: read
12+
13+
concurrency:
14+
group: ci-${{ github.ref }}
15+
cancel-in-progress: true
16+
17+
jobs:
18+
test:
19+
name: test (py${{ matrix.python }})
20+
runs-on: ubuntu-latest
21+
strategy:
22+
fail-fast: false
23+
matrix:
24+
python: ["3.11", "3.12"]
25+
steps:
26+
- uses: actions/checkout@v4
27+
28+
- name: Set up Python ${{ matrix.python }}
29+
uses: actions/setup-python@v5
30+
with:
31+
python-version: ${{ matrix.python }}
32+
cache: pip
33+
34+
- name: Install dependencies
35+
run: |
36+
python -m pip install --upgrade pip
37+
pip install -r requirements-dev.txt
38+
39+
- name: Unit + integration tests (pytest)
40+
run: python -m pytest tests/ -q
41+
42+
- name: Release harness (evals/run_checks.py)
43+
run: python -X utf8 evals/run_checks.py
44+
45+
- name: Build importable skill package
46+
run: python scripts/build_skill.py
47+
48+
- name: Upload package artifact
49+
if: matrix.python == '3.12'
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: chinese-fortune-skill
53+
path: dist/*.zip
54+
if-no-files-found: error

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,19 @@
22

33
All notable changes follow [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) format. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
44

5+
## [1.1.4] — 2026-05-31
6+
7+
Continuous integration — closes the last engineering gap found in a 4-repo
8+
competitor scan (only the off-topic Master-skill had CI; no fortune skill did).
9+
10+
### Added
11+
- `.github/workflows/ci.yml` — on every push / PR to main: install deps,
12+
run the 94-test pytest suite, the `run_checks.py` release harness, and
13+
`build_skill.py`, on Python 3.11 + 3.12; uploads the built skill zip as a
14+
CI artifact. Concurrency-cancelled, pip-cached, least-privilege permissions.
15+
- `requirements-dev.txt` — dev/CI deps (runtime + pytest).
16+
- CI / tests / license badges on both READMEs.
17+
518
## [1.1.3] — 2026-05-31
619

720
Packaging + bilingual-install pass — one-command distributable for Claude

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Chinese Fortune · 中国传统命理 Claude Skill
22

3+
[![CI](https://github.com/ShousenZHANG/chinese-fortune/actions/workflows/ci.yml/badge.svg)](https://github.com/ShousenZHANG/chinese-fortune/actions/workflows/ci.yml)
4+
 ![tests](https://img.shields.io/badge/tests-94%20passing-brightgreen)
5+
 ![license](https://img.shields.io/badge/license-MIT-blue)
6+
37
> 20+ traditional Chinese metaphysics methods in one Claude skill · MIT · [中文](README.zh.md)
48
59
A Claude Code / Agent SDK skill covering the Chinese metaphysical canon (五术:山医命相卜) — BaZi, Zi Wei Dou Shu, I-Ching, Liu Yao, Qi Men, Feng Shui, almanac, naming, Tarot, and more. Heavy calendrical math runs in deterministic Python scripts; Claude narrates the result from the reference docs.

README.zh.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# 中国传统命理 · Claude Skill
22

3+
[![CI](https://github.com/ShousenZHANG/chinese-fortune/actions/workflows/ci.yml/badge.svg)](https://github.com/ShousenZHANG/chinese-fortune/actions/workflows/ci.yml)
4+
 ![tests](https://img.shields.io/badge/tests-94%20passing-brightgreen)
5+
 ![license](https://img.shields.io/badge/license-MIT-blue)
6+
37
> 一个 Claude skill 集成 20+ 种中国传统命理方法 · MIT · [English](README.md)
48
59
覆盖五术(山医命相卜)的 Claude Code / Agent SDK 技能:八字、紫微斗数、周易、六爻、奇门遁甲、风水、黄历、姓名学、塔罗等。繁重的历法计算交给确定性 Python 脚本,Claude 依据参考文档解读结果。

requirements-dev.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Dev / CI dependencies. Runtime deps live in scripts/requirements.txt.
2+
-r scripts/requirements.txt
3+
pytest>=8,<10

scripts/bazi_calc.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
)
5050

5151

52-
VERSION = "1.1.3"
52+
VERSION = "1.1.4"
5353
ASSETS_DIR = Path(__file__).resolve().parents[1] / "assets"
5454

5555

scripts/ziwei_calc.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
)
4444

4545

46-
VERSION = "1.1.3"
46+
VERSION = "1.1.4"
4747

4848

4949
# --------------------------------------------------------------------------- #

0 commit comments

Comments
 (0)