Skip to content

Commit 03fc5be

Browse files
authored
[codex] add deterministic CI and ecosystem layout (#12)
* ci: add deterministic repository gate * ci: isolate sqlite vector availability probe * ci: pin deterministic test dependencies * docs: align local gate with pinned CI
1 parent 162db5e commit 03fc5be

2 files changed

Lines changed: 75 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: ci
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
12+
concurrency:
13+
group: ci-${{ github.workflow }}-${{ github.ref }}
14+
cancel-in-progress: true
15+
16+
jobs:
17+
deterministic:
18+
name: deterministic-${{ matrix.os }}
19+
runs-on: ${{ matrix.os }}
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
os: [ubuntu-latest, macos-latest]
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@v4
27+
28+
- name: Set up uv
29+
uses: astral-sh/setup-uv@v6
30+
with:
31+
python-version: "3.13"
32+
33+
- name: Run full tests
34+
if: runner.os == 'Linux'
35+
run: >-
36+
uvx --python 3.13 --from pytest==9.1.1
37+
--with pyyaml==6.0.3 --with sqlite-vec==0.1.9 pytest -q
38+
39+
- name: Run macOS portable tests
40+
if: runner.os == 'macOS'
41+
run: >-
42+
uvx --python 3.13 --from pytest==9.1.1
43+
--with pyyaml==6.0.3 --with sqlite-vec==0.1.9
44+
pytest -q -k "not test_index_rebuild_installs_and_loads_sqlite_vec_when_available"
45+
46+
- name: Validate skill packages
47+
run: bin/work-bundle-skill validate

README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,28 @@
11
# work-bundle
22

3+
[![CI](https://github.com/Ldsystem/work-bundle/actions/workflows/ci.yml/badge.svg)](https://github.com/Ldsystem/work-bundle/actions/workflows/ci.yml)
4+
![Python 3.13](https://img.shields.io/badge/Python-3.13-3776AB?logo=python&logoColor=white)
5+
36
Toolkit source for WorkBundle skills, rules, references, and deterministic helper code.
47

8+
## Ecosystem
9+
10+
WorkBundle owns orchestration contracts, workspace authority, durable knowledge,
11+
and acceptance flow. [Execution Flow](https://github.com/Ldsystem/execution-flow)
12+
is a separate, optional TypeScript repository that supplies provider-neutral
13+
executor selection and ACP delegation without taking over WorkBundle
14+
orchestration.
15+
16+
The recommended local layout for developing both repositories is a
17+
multi-repository workspace:
18+
19+
```text
20+
work-bundle-workspace/
21+
├── .work-bundle/ # portable workspace authority and runtime artifacts
22+
├── work-bundle-main/ # this toolkit repository
23+
└── execution-flow/ # the independent Execution Flow repository
24+
```
25+
526
WorkBundle distinguishes four roots:
627

728
- `work_bundle_root` — this installed toolkit source.
@@ -43,3 +64,10 @@ bin/work-bundle-skill list
4364
bin/work-bundle-skill validate
4465
bin/install-work-bundle-skills --dry-run
4566
```
67+
68+
Run the deterministic repository gate with isolated dependencies:
69+
70+
```bash
71+
uvx --python 3.13 --from pytest==9.1.1 --with pyyaml==6.0.3 --with sqlite-vec==0.1.9 pytest -q
72+
bin/work-bundle-skill validate
73+
```

0 commit comments

Comments
 (0)