Skip to content

Commit 6c3f856

Browse files
committed
Initial agentproof library scaffold
0 parents  commit 6c3f856

41 files changed

Lines changed: 3163 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.editorconfig

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
indent_style = space
7+
indent_size = 2
8+
insert_final_newline = true
9+
trim_trailing_whitespace = true
10+
11+
[*.py]
12+
indent_size = 4
13+

.github/dependabot.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "pip"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
open-pull-requests-limit: 10
8+
9+
- package-ecosystem: "github-actions"
10+
directory: "/"
11+
schedule:
12+
interval: "weekly"
13+
open-pull-requests-limit: 10
14+

.github/workflows/ci.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
jobs:
10+
quality:
11+
name: Quality
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check out repository
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: "3.12"
21+
22+
- name: Install dependencies
23+
run: |
24+
python -m pip install --upgrade pip
25+
python -m pip install -e ".[dev,docs]"
26+
27+
- name: Run Ruff
28+
run: python -m ruff check .
29+
30+
- name: Run Mypy
31+
run: python -m mypy .
32+
33+
- name: Run tests
34+
run: python -m pytest
35+
36+
- name: Build package
37+
run: python -m build
38+
39+
- name: Build docs
40+
run: python -m mkdocs build --strict
41+
42+
test-matrix:
43+
name: Tests (${{ matrix.os }}, py${{ matrix.python-version }})
44+
runs-on: ${{ matrix.os }}
45+
strategy:
46+
fail-fast: false
47+
matrix:
48+
os: [ubuntu-latest, macos-latest, windows-latest]
49+
python-version: ["3.10", "3.11", "3.12", "3.13"]
50+
steps:
51+
- name: Check out repository
52+
uses: actions/checkout@v4
53+
54+
- name: Set up Python
55+
uses: actions/setup-python@v5
56+
with:
57+
python-version: ${{ matrix.python-version }}
58+
59+
- name: Install dependencies
60+
run: |
61+
python -m pip install --upgrade pip
62+
python -m pip install -e ".[dev]"
63+
64+
- name: Run tests
65+
run: python -m pytest
66+

.github/workflows/docs.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Docs
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
id-token: write
13+
14+
concurrency:
15+
group: pages
16+
cancel-in-progress: true
17+
18+
jobs:
19+
build:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- name: Check out repository
23+
uses: actions/checkout@v4
24+
25+
- name: Set up Python
26+
uses: actions/setup-python@v5
27+
with:
28+
python-version: "3.12"
29+
30+
- name: Install dependencies
31+
run: |
32+
python -m pip install --upgrade pip
33+
python -m pip install -e ".[docs]"
34+
35+
- name: Configure Pages
36+
uses: actions/configure-pages@v5
37+
38+
- name: Build docs
39+
run: python -m mkdocs build --strict
40+
41+
- name: Upload Pages artifact
42+
uses: actions/upload-pages-artifact@v3
43+
with:
44+
path: site/
45+
46+
deploy:
47+
environment:
48+
name: github-pages
49+
url: ${{ steps.deployment.outputs.page_url }}
50+
runs-on: ubuntu-latest
51+
needs: build
52+
steps:
53+
- name: Deploy to GitHub Pages
54+
id: deployment
55+
uses: actions/deploy-pages@v4
56+

.github/workflows/release.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
jobs:
9+
build:
10+
name: Build distributions
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: read
14+
steps:
15+
- name: Check out repository
16+
uses: actions/checkout@v4
17+
18+
- name: Set up Python
19+
uses: actions/setup-python@v5
20+
with:
21+
python-version: "3.12"
22+
23+
- name: Install build tooling
24+
run: |
25+
python -m pip install --upgrade pip
26+
python -m pip install build
27+
28+
- name: Build distributions
29+
run: python -m build
30+
31+
- name: Upload distributions
32+
uses: actions/upload-artifact@v4
33+
with:
34+
name: python-package-distributions
35+
path: dist/
36+
37+
publish:
38+
name: Publish to PyPI
39+
runs-on: ubuntu-latest
40+
needs: build
41+
permissions:
42+
id-token: write
43+
environment:
44+
name: pypi
45+
url: https://pypi.org/p/agentproof
46+
steps:
47+
- name: Download distributions
48+
uses: actions/download-artifact@v4
49+
with:
50+
name: python-package-distributions
51+
path: dist/
52+
53+
- name: Publish distributions to PyPI
54+
uses: pypa/gh-action-pypi-publish@release/v1
55+
56+
github-release:
57+
name: Create GitHub release
58+
runs-on: ubuntu-latest
59+
needs: build
60+
permissions:
61+
contents: write
62+
steps:
63+
- name: Download distributions
64+
uses: actions/download-artifact@v4
65+
with:
66+
name: python-package-distributions
67+
path: dist/
68+
69+
- name: Create release
70+
env:
71+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
72+
run: gh release create "${GITHUB_REF_NAME}" dist/*
73+

.gitignore

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.coverage
2+
.mypy_cache/
3+
.pytest_cache/
4+
.ruff_cache/
5+
.venv/
6+
build/
7+
dist/
8+
site/
9+
__pycache__/
10+
*.egg-info/
11+
coverage.xml
12+

.pre-commit-config.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
repos:
2+
- repo: https://github.com/astral-sh/ruff-pre-commit
3+
rev: v0.11.0
4+
hooks:
5+
- id: ruff-check
6+
- id: ruff-format
7+

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Changelog
2+
3+
## 0.1.0 - 2026-03-06
4+
5+
- Initial release candidate for the `agentproof` library
6+
- Added `proof_of_work` and `semantic_math_lock` challenge families
7+
- Added CLI, tests, docs, and GitHub workflows
8+

CODE_OF_CONDUCT.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Code of Conduct
2+
3+
This project follows a simple standard: be respectful, direct, and constructive.
4+
5+
Unacceptable behavior includes harassment, personal attacks, deliberate disruption,
6+
and publishing private information without consent.
7+
8+
Project maintainers may remove comments, commits, or contributions that do not meet
9+
this standard.
10+

CONTRIBUTING.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Contributing
2+
3+
## Setup
4+
5+
```bash
6+
python -m venv .venv
7+
source .venv/bin/activate
8+
pip install -e ".[dev,docs]"
9+
```
10+
11+
## Quality checks
12+
13+
```bash
14+
ruff check .
15+
ruff format .
16+
mypy .
17+
pytest
18+
python -m build
19+
```
20+
21+
## Pull requests
22+
23+
- Keep the public API typed and documented
24+
- Add tests for every behavior change
25+
- Update docs and changelog for user-facing changes
26+
- Prefer deterministic verification logic over heuristic checks
27+

0 commit comments

Comments
 (0)