Skip to content

Commit 9c88c1a

Browse files
Merge pull request #3 from open-coder-ai/docs/verifiable-provenance
docs: say where the tests are and how to reproduce this tree
2 parents 516ad59 + d1b6bec commit 9c88c1a

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,39 @@ validators disagree about that.
9393
unusual paths can evade them. See
9494
[SECURITY.md](https://github.com/open-coder-ai/chock/blob/main/SECURITY.md) and the
9595
[assurance case](https://github.com/open-coder-ai/chock/blob/main/docs/assurance-case.md).
96+
- **Tested upstream, and gated:** every policy ships an eval suite
97+
(`base/<policy>/evals/suite.yaml`) in the catalog, and the publish workflow runs
98+
`chock check` and `chock check --only evals` before packaging anything — a policy whose
99+
evals fail cannot reach this repository. The tests live in the catalog because the policy
100+
source does; this repository is compiled output.
101+
- **This README is the exception:** it is the one file the publisher never writes, so it
102+
alone sits outside the generated-only guarantee. Everything else here regenerates.
103+
104+
### Verify it yourself
105+
106+
Nothing above asks for trust that cannot be checked. This rebuilds the published tree from
107+
source and compares it with what is committed here:
108+
109+
```bash
110+
git clone https://github.com/open-coder-ai/chock-copilot-plugins dist
111+
git clone --branch v0.7.0 https://github.com/open-coder-ai/chock framework
112+
git clone https://github.com/open-coder-ai/chock-catalog catalog
113+
pip install ./framework
114+
chock plugin build --repo catalog --policies-dir base --format agent-plugins --out-dir dist
115+
chock plugin build --repo catalog --policies-dir base --format claude --out-dir dist
116+
chock plugin build --repo catalog --policies-dir base --format copilot --out-dir dist
117+
chock marketplace build --dist dist
118+
git -C dist diff --exit-code && git -C dist status --porcelain
119+
```
120+
121+
Silence from both `git` commands means this repository is byte-identical to a fresh build
122+
from the catalog. `--branch v0.7.0` is the framework release this tree was published from.
123+
`chock-market.lock` records a sha256 per published plugin directory, so one package can be
124+
checked without rebuilding the rest.
125+
126+
**If you are listing these plugins in a marketplace,** pin both a tag and the full commit
127+
SHA. The tag names the release; the SHA is what holds the reviewed bytes still.
128+
96129

97130
## Contributing
98131

0 commit comments

Comments
 (0)