H
harriswekselblatt/pocp
Proof that the right tests ran on the exact code being merged, under rules the change can't loosen
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Install & config
Client config (built from the install command this repo gives)
{
"mcpServers": {
"harriswekselblatt-pocp": {
"command": "npx",
"args": ["pocp"]
}
}
}Parsed from the README we fetched on 2026-11-05; we have not executed it.
command/args come from the install command the repository states. When it is ambiguous, the project README wins.
VS Code (.vscode/mcp.json - the key is servers)
{
"servers": {
"harriswekselblatt-pocp": {
"command": "npx",
"args": ["pocp"]
}
}
}Same server, but VS Code keeps it under <code>servers</code>.
Claude Code (command line)
claude mcp add --transport stdio harriswekselblatt-pocp -- npx pocp
Claude Code does not read a config file; add the server with this command.
Key names differ by client: Clients & CLI
- Star count
- 1 ★ · harriswekselblatt/pocp · read from the GitHub search API · (checked 2026-11-13 20:00:50)
- Source
- read directly from its GitHub page · type: open-source project
- Harvest history
- first seen 2026-11-06 · last seen 2026-11-14 · seen 9× · listed by 2 sources
- Score
- score 203 · 1 ★ · 2 sources · repo
- Install
npx pocp
FAQ (answers come from our records)
How do I install it?
The repository provides this install command:
npx pocp. It comes from the repository itself; we cannot guarantee it runs as-is in your client.Who is it for?
We filed it under these tags: 开源项目. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository
harriswekselblatt/pocp;first catalogued 2026-11-06;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.# POCP: Proof of Change Protocol
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
POCP checks that the tests a pull request was supposed to pass actually ran, on the exact code being merged, under rules the pull request can't change. When a pull request edits existing tests, it runs the old tests on the new code, and holds risky test edits for human review. An optional deep mode also compares the old and new tests against a sample of planted bugs. It works with any test command and any language, and needs only Node 20 or later and git.
It doesn't prove your code is correct. It's also early: the results below come from a scripted test suite and small pilots, not a completed evaluation. To install it, see How to try it.
## Demo
An agent edits a failing test until CI turns green. POCP runs the old test against the new code and routes the suspicious change to human review.
To run it from a clone: node examples/demo/demo.mjs. It takes a few seconds and shortens POCP's output; --keep leaves the scratch repository so you can see everything.
## Why this exists
I started building with AI coding agents without knowing much about software, and I still can't read the code they write, not at the scale they write it. That left one question I couldn't let go of: if I can't read it, how do I trust it? How do I know a change does what I meant, doesn't quietly break something, and doesn't fake its way past the tests?
POCP is my answer. Instead of trusting a sentence an agent typed ("tests pass"), it records proof: the checks that ran, on the exact code that was committed, under rules the change itself can't loosen. Then it checks that proof again in CI.
I'm testing POCP with separate benchmarks and a reference checker that shares no implementation code with POCP. So far, only pilots have run. No counted evaluation exists, and the pre-registration is unfinished. The results and their limits are linked below.
## What it does
A rule in .proof/rules.json says which files need which checks:
json
"pocp": 1,
"requirements": [
{ "id": "billing-tests", "globs": ["src/billing/"],
"obligation": { "kind": "test", "run": "node --test test/billing.test.js" } }
A check is any command, such as npm test, pytest, cargo test, go test ./... or make check.
Locally, a git hook blocks a commit that touches src/billing/ until a packet records that node --test test/billing.test.js passed on exactly the staged code. pocp fix runs the checks and writes the packet, and the commit gets a trailer that points to it:
Proof-Of-Change: p-2f007850 subject=sha256:2ad8c12023b7 policy=sha256:f21acbea749e proven=1/1 attested=0/0
In CI, pocp verify origin/main..HEAD --require-coverage --rerun (the base branch, then the pull request's head):
re-runs every required check itself, instead of trusting the packets, which are only pointers;
judges the pull request by the base branch's rules, so the pull request can't remove or loosen a rule or add its own signing key;
when the pull request edits existing tests or test setup, runs the test check once, on the pull request's net change, so a weakening split across commits or placed in a merge commit is judged the same way. It has two modes (below);
fails with a named reason, and says when only a maintainer can resolve it, for example by approving an intended test change with a label. On GitHub, a separate trusted workflow turns that into one commit status, pocp: green when verified, yellow while it waits for a maintainer or a check didn't finish, red on a real failure (docs/STATUS.md).
It doesn't prove your code is correct. It's also early: the results below come from a scripted test suite and small pilots, not a completed evaluation. To install it, see How to try it.
## Demo
An agent edits a failing test until CI turns green. POCP runs the old test against the new code and routes the suspicious change to human review.
To run it from a clone: node examples/demo/demo.mjs. It takes a few seconds and shortens POCP's output; --keep leaves the scratch repository so you can see everything.
## Why this exists
I started building with AI coding agents without knowing much about software, and I still can't read the code they write, not at the scale they write it. That left one question I couldn't let go of: if I can't read it, how do I trust it? How do I know a change does what I meant, doesn't quietly break something, and doesn't fake its way past the tests?
POCP is my answer. Instead of trusting a sentence an agent typed ("tests pass"), it records proof: the checks that ran, on the exact code that was committed, under rules the change itself can't loosen. Then it checks that proof again in CI.
I'm testing POCP with separate benchmarks and a reference checker that shares no implementation code with POCP. So far, only pilots have run. No counted evaluation exists, and the pre-registration is unfinished. The results and their limits are linked below.
## What it does
A rule in .proof/rules.json says which files need which checks:
json
"pocp": 1,
"requirements": [
{ "id": "billing-tests", "globs": ["src/billing/"],
"obligation": { "kind": "test", "run": "node --test test/billing.test.js" } }
A check is any command, such as npm test, pytest, cargo test, go test ./... or make check.
Locally, a git hook blocks a commit that touches src/billing/ until a packet records that node --test test/billing.test.js passed on exactly the staged code. pocp fix runs the checks and writes the packet, and the commit gets a trailer that points to it:
Proof-Of-Change: p-2f007850 subject=sha256:2ad8c12023b7 policy=sha256:f21acbea749e proven=1/1 attested=0/0
In CI, pocp verify origin/main..HEAD --require-coverage --rerun (the base branch, then the pull request's head):
re-runs every required check itself, instead of trusting the packets, which are only pointers;
judges the pull request by the base branch's rules, so the pull request can't remove or loosen a rule or add its own signing key;
when the pull request edits existing tests or test setup, runs the test check once, on the pull request's net change, so a weakening split across commits or placed in a merge commit is judged the same way. It has two modes (below);
fails with a named reason, and says when only a maintainer can resolve it, for example by approving an intended test change with a label. On GitHub, a separate trusted workflow turns that into one commit status, pocp: green when verified, yellow while it waits for a maintainer or a check didn't finish, red on a real failure (docs/STATUS.md).
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/harriswekselblatt-pocp/)
- Source
- github · https://github.com/harriswekselblatt/pocp
- Browse by field
- Open source
- Traction
- 1 ★
- Listed by
- 2 independent sources
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.