Get started

From a clean machine to four answering endpoints in about five minutes. No credentials, no .env, no network at runtime.

1. Clone

git clone https://github.com/Nesoxy1/Governance-Impact-Verification-for-DeFi-Protocols.git
cd Governance-Impact-Verification-for-DeFi-Protocols

2. Start the API

docker compose up -d --build

First build takes 2–4 minutes; later starts are seconds. The container reads the frozen CR141-001 artifacts shipped in the image. Nothing is downloaded at request time.

3. Open the contract

http://localhost:8000/docs        # Swagger UI, four endpoints, real examples
http://localhost:8000/openapi.json

4. Ask it something

curl -s http://localhost:8000/evidence/status | head -c 400
curl -s http://localhost:8000/proposal/301 | head -c 400
curl -s -X POST http://localhost:8000/simulate \
  -H 'content-type: application/json' \
  -d '{"pid": 71, "changes": [{"ctoken": "cETH", "new_cf_wei": "0.70"}]}'

What you should see

CheckExpected
GET /evidence/statusaudit_closed: true, 28 events measured, predicted 474 = observed 474, difference 0
GET /proposal/301targets 5468, predicted flips 65, observed flips 65, exact_set_equality: true
POST /simulate (pid 71, cETH 0.70)affected 5309, potential flips 57, newly flipped 56, healed 0, invalid: false
GET /openapi.jsonOpenAPI 3.1, 4 paths, 19 schemas
Test suitepython3.13 -m api.test_api → 108 checks, 0 failed

Without Docker

python3.13 -m pip install -r requirements.txt
python3.13 -m uvicorn api.main:app --host 127.0.0.1 --port 8000

Offline transfer

If the target machine cannot reach this repository, use the bundle:

git clone cr141-v1.3.3.bundle cr141 && cd cr141
docker compose up -d --build

The bundle carries all branches and tags. Verify it with git bundle verify before copying.

What is not here

There is no hosted API to call from this page. cr141.com serves the static dashboard and the contract; execution runs on your host. See API status.

CR141 — Governance Impact Verification · v1.3.3 · source repository · OpenAPI 3.1 · API status
Static pages generated by build_pages.py from dashboard_data.json; no JavaScript, no network at read time.