You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: stop the bleeding — README honesty pass + ROADMAP.md
Resets reader expectations to match reality. The repo's source IS what
runs production at jecp.dev, but `cargo run` from a fresh clone needs 6
external services (Postgres, Stripe, Anthropic, AWS KMS, Sentry/Better
Stack, Cloudflare DNS). The previous README said "production" + listed
a `cp .env.example .env && cargo run` quickstart that does not
actually boot. That's the misleading state that gets cited in HN
comments — fixed now, before broader indexing picks it up.
Changes:
- Status badge: production → alpha.
- Spec badge: v1.0-draft → v1.1.1 (current spec lock).
- New section "⚠️ Alpha readiness notice (2026-05-16)" enumerating the
6 required external services and explicitly stating cargo-run is not
supported from a fresh clone yet.
- Quick start section replaced (was the misleading
cp .env.example / cargo run / localhost:8080 procedure).
- Architecture section renamed "Architecture (for readers, not
runners)" — same content, honest framing.
- Performance section: dropped the per-metric table (not reproducible
by cloners); kept one production reference number with the explicit
"not reproducible from a fresh clone" caveat + link to ROADMAP v0.2.
- "Running your own Hub" rewritten to acknowledge today's reality
(use the hosted Hub at jecp.dev; full self-host ships in v0.2).
New file ROADMAP.md:
- v0.1 (this release): spec-conforming reference, cargo-run NOT
supported yet.
- v0.2 (Q3): docker-compose dev profile, demo-mode feature flag,
benchmark methodology doc.
- v0.3 (Q4): examples/minimal-hub/ (8-endpoint MVH profile for indie
devs), federation registry alpha.
- After B-4 audit clean: x402 mainnet, threshold-signing keeper,
Python + Go SDKs.
No source code changes. Strategic decision on MVH vs full-Hub-with-
docker-compose deferred to after B-4 audit per admiral; reflected in
the ROADMAP v0.3 framing rather than forced today.
A Rust + Axum Hub implementation. Powers https://jecp.dev in production.
10
+
A Rust + Axum Hub. Reference implementation of the JECP spec; the production Hub at https://jecp.dev runs on this exact source.
11
+
12
+
**Indie operators**: see the **alpha readiness notice** below before attempting `cargo run`.
11
13
12
14
---
13
15
@@ -20,42 +22,26 @@ A Rust + Axum Hub implementation. Powers https://jecp.dev in production.
20
22
-**Discovery** — `/v1/capabilities` (live catalog, includes both built-in and third-party)
21
23
-**Forwarding** — HMAC-SHA256 signed requests to Provider endpoints with replay window
22
24
23
-
## Quick start (developers)
24
-
25
-
### Prerequisites
26
-
27
-
- Rust 1.75+
28
-
- PostgreSQL 15+ (Supabase or self-hosted)
29
-
- Stripe account (test mode is fine for dev)
25
+
## ⚠️ Alpha readiness notice (2026-05-16)
30
26
31
-
### Local development
27
+
The production Hub at jecp.dev runs on this exact source, but `cargo run` from a fresh clone is **not yet supported**. The binary boots only with all of:
- a Supabase-schema Postgres (51 migrations applied)
30
+
- Stripe Connect platform account + test mode
31
+
- Anthropic API key
32
+
- AWS KMS asymmetric key (ECDSA secp256k1) for the keeper
33
+
- Sentry + Better Stack credentials
34
+
- Cloudflare DNS zone for Provider DNS verification
40
35
41
-
Server starts on `localhost:8080`.
36
+
We have **not yet** packaged this into a one-shot `docker-compose`; that's the v0.2 priority. See [ROADMAP.md](./ROADMAP.md).
42
37
43
-
### Health check
38
+
**Until then, this repo is best used as a specification-conforming reference**:
44
39
45
-
```bash
46
-
curl http://localhost:8080/health
47
-
curl http://localhost:8080/v1/capabilities | jq
48
-
```
40
+
- Read the Rust to see how the spec is implemented (`src/routes/`, `src/auth/`, `src/protocol/`).
41
+
- Point a JECP SDK / CLI at the live Hub at `https://jecp.dev` instead of running your own.
42
+
- Use [@jecpdev/sdk](https://www.npmjs.com/package/@jecpdev/sdk) or [@jecpdev/cli](https://www.npmjs.com/package/@jecpdev/cli) for the agent / Provider integration path.
49
43
50
-
### Production deployment
51
-
52
-
```bash
53
-
flyctl deploy
54
-
```
55
-
56
-
The production Hub at jecp.dev runs on Fly.io (Tokyo region, NRT).
| Idempotency window | 24h | 24h on `(agent_id, request_id)`|
90
-
| Concurrent RPS | 100+ | tested 200 |
70
+
Production numbers (p50 ~127ms on `/v1/invoke` cached path) hold on the Tufe-operated Hub at jecp.dev under live load.
71
+
72
+
**These are not reproducible from a fresh clone** — they depend on the Postgres schema, Stripe Connect accounts, and KMS keeper key that the Hub is provisioned against. A reproducible benchmark methodology + a self-hosted-friendly profile ship in v0.2 — see [ROADMAP.md](./ROADMAP.md).
Public roadmap for the `jecp-server` reference Hub. Tracks what's runnable from a fresh clone — not the production Hub's roadmap at jecp.dev (which is operated separately).
0 commit comments