Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
<!--
Banner: add docs/assets/proofkeeper-header-{dark,light}.png, then uncomment.
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/itsthelore/proofkeeper/main/docs/assets/proofkeeper-header-dark.png">
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/itsthelore/proofkeeper/main/docs/assets/proofkeeper-header-light.png">
<img alt="Proofkeeper — a bring-your-own-model agent that drives your app and leaves a re-runnable test as proof for each capability." src="https://raw.githubusercontent.com/itsthelore/proofkeeper/main/docs/assets/proofkeeper-header-light.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/asdecided/proofkeeper/main/docs/assets/proofkeeper-header-dark.png">
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/asdecided/proofkeeper/main/docs/assets/proofkeeper-header-light.png">
<img alt="Proofkeeper — a bring-your-own-model agent that drives your app and leaves a re-runnable test as proof for each capability." src="https://raw.githubusercontent.com/asdecided/proofkeeper/main/docs/assets/proofkeeper-header-light.png">
</picture>
-->

Expand All @@ -19,8 +19,8 @@ Banner: add docs/assets/proofkeeper-header-{dark,light}.png, then uncomment.
</p>

<p align="center">
<a href="https://github.com/itsthelore/proofkeeper/actions/workflows/ci.yml"><img src="https://github.com/itsthelore/proofkeeper/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
<a href="https://github.com/itsthelore/proofkeeper/actions/workflows/dogfood.yml"><img src="https://img.shields.io/github/actions/workflow/status/itsthelore/proofkeeper/dogfood.yml?branch=main&label=Dogfood&logo=githubactions&logoColor=white" alt="Dogfood: Proofkeeper verifies its own corpus"></a>
<a href="https://github.com/asdecided/proofkeeper/actions/workflows/ci.yml"><img src="https://github.com/asdecided/proofkeeper/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
<a href="https://github.com/asdecided/proofkeeper/actions/workflows/dogfood.yml"><img src="https://img.shields.io/github/actions/workflow/status/asdecided/proofkeeper/dogfood.yml?branch=main&label=Dogfood&logo=githubactions&logoColor=white" alt="Dogfood: Proofkeeper verifies its own corpus"></a>
<a href="https://www.npmjs.com/package/@itsthelore/proofkeeper"><img src="https://img.shields.io/npm/v/@itsthelore/proofkeeper" alt="npm"></a>
<img src="https://img.shields.io/badge/node-%E2%89%A520-blue" alt="Node >= 20">
<img src="https://img.shields.io/badge/types-TypeScript-blue.svg" alt="TypeScript">
Expand All @@ -29,7 +29,9 @@ Banner: add docs/assets/proofkeeper-header-{dark,light}.png, then uncomment.

> **rac-core captures what your product should do. Proofkeeper shows it does — a bring-your-own-model agent that drives your app and leaves a re-runnable test as proof for each capability.**

[Lore (rac-core)](https://github.com/itsthelore/rac-core) records what your product should do — requirements as code. Proofkeeper reads those capabilities over the published `rac export --graph` contract, drives your product to exercise each one, and compiles the run into a Playwright test it proposes back to the corpus by pull request. It produces verification evidence and nothing else — no code review, no codegen — and never touches the Lore engine's internals.
[AsDecided ecosystem](https://asdecided.com/docs/ecosystem/) · [AsDecided documentation](https://asdecided.com/docs/start-here/) · [Source](https://github.com/asdecided/proofkeeper)

[AsDecided Core](https://asdecided.com/docs/start-here/) records what your product should do — requirements as code. Proofkeeper reads those capabilities over the published `rac export --graph` contract, drives your product to exercise each one, and compiles the run into a Playwright test it proposes back to the corpus by pull request. It produces verification evidence and nothing else — no code review, no codegen — and never touches the AsDecided engine's internals.

## How it compares

Expand Down Expand Up @@ -169,7 +171,7 @@ When a drive doesn't finish or a test fails the fidelity gate, the reason is rec

## Origin

Proofkeeper is a sibling of [Lore / RAC](https://github.com/itsthelore/rac-core), split out because verification is a runtime concern, not a knowledge one — the same split that moved [Wayfinder](https://github.com/itsthelore/wayfinder-router) (prompt-complexity routing) out of the engine. Lore records what a product should do; Proofkeeper drives it to prove it does. They compose over the published `rac export --graph` contract, so neither has to change for the other.
Proofkeeper is a sibling of [AsDecided Core](https://github.com/asdecided/core), split out because verification is a runtime concern, not a knowledge one — the same split that moved [Wayfinder](https://github.com/asdecided/WayfinderRouter) (prompt-complexity routing) out of the engine. AsDecided records what a product should do; Proofkeeper drives it to prove it does. They compose over the published `rac export --graph` contract, so neither has to change for the other.

> **Naming.** The product is **Proofkeeper** (display brand **Lore Proofkeeper** where it helps). Unrelated to Epic Games' "Lore" version-control system.

Expand Down
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,9 @@
],
"repository": {
"type": "git",
"url": "https://github.com/itsthelore/proofkeeper.git"
"url": "https://github.com/asdecided/proofkeeper.git"
},
"homepage": "https://asdecided.com/docs/ecosystem/",
"publishConfig": {
"access": "public"
},
Expand Down
Loading