chore: rename quicproquo → quicprochat in docs, Docker, CI, and packaging
Rename all project references from quicproquo/qpq to quicprochat/qpc across documentation, Docker configuration, CI workflows, packaging scripts, operational configs, and build tooling. - Docker: crate paths, binary names, user/group, data dirs, env vars - CI: workflow crate references, binary names, artifact names - Docs: all markdown files under docs/, SDK READMEs, book.toml - Packaging: OpenWrt Makefile, init script, UCI config (file renames) - Scripts: justfile, dev-shell, screenshot, cross-compile, ai_team - Operations: Prometheus config, alert rules, Grafana dashboard - Config: .env.example (QPQ_* → QPC_*), CODEOWNERS paths - Top-level: README, CONTRIBUTING, ROADMAP, CLAUDE.md
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Architecture Overview
|
||||
|
||||
quicproquo is an end-to-end encrypted group messaging system built in Rust.
|
||||
quicprochat is an end-to-end encrypted group messaging system built in Rust.
|
||||
This page describes the high-level architecture: the services that compose the
|
||||
system, the dual-key cryptographic model, and how the pieces fit together.
|
||||
|
||||
@@ -27,11 +27,11 @@ connection lifecycle, and push event delivery.
|
||||
|
||||
## Identity Key Model
|
||||
|
||||
Each quicproquo client holds a single Ed25519 signing keypair that serves
|
||||
Each quicprochat client holds a single Ed25519 signing keypair that serves
|
||||
as its long-term identity:
|
||||
|
||||
```text
|
||||
quicproquo Key Model
|
||||
quicprochat Key Model
|
||||
+--------------------------------------------------+
|
||||
| |
|
||||
| Ed25519 signing keypair (MLS identity) |
|
||||
@@ -71,11 +71,11 @@ For details on the cryptographic properties, see
|
||||
| (SDK) | | (SDK) |
|
||||
+--------+---------+ +--------+---------+
|
||||
| |
|
||||
| QUIC + TLS 1.3 (quinn/rustls) ALPN: "qpq" |
|
||||
| QUIC + TLS 1.3 (quinn/rustls) ALPN: "qpc" |
|
||||
| |
|
||||
v v
|
||||
+------------------------------------------------------------------------+
|
||||
| quicproquo-server (port 5001) |
|
||||
| quicprochat-server (port 5001) |
|
||||
| |
|
||||
| +---------------------------+ +--------------------------------+ |
|
||||
| | Authentication Service | | Delivery Service | |
|
||||
@@ -106,7 +106,7 @@ For details on the cryptographic properties, see
|
||||
2. KeyPackages are single-use (RFC 9420 requirement). The AS atomically removes
|
||||
a KeyPackage on fetch to enforce this invariant.
|
||||
|
||||
3. QUIC + TLS 1.3 is the sole transport layer. The ALPN identifier is `qpq`.
|
||||
3. QUIC + TLS 1.3 is the sole transport layer. The ALPN identifier is `qpc`.
|
||||
|
||||
4. Push events (new messages, typing, presence, membership changes) are
|
||||
delivered server-to-client on QUIC uni-streams using a separate push frame
|
||||
@@ -142,15 +142,15 @@ The implementation is split across nine workspace crates:
|
||||
|
||||
| Crate | Role |
|
||||
|------------------------------|-------------------------------------------------------------------|
|
||||
| `quicproquo-core` | Crypto primitives, MLS state machine, hybrid KEM |
|
||||
| `quicproquo-proto` | Cap'n Proto legacy types + Protobuf (prost) v2 generated types |
|
||||
| `quicproquo-kt` | Key transparency (append-only log, revocation) |
|
||||
| `quicproquo-plugin-api` | `#![no_std]` C-ABI plugin interface |
|
||||
| `quicproquo-rpc` | QUIC RPC framework: framing, server dispatch, client, middleware |
|
||||
| `quicproquo-sdk` | Client SDK: `QpqClient`, event broadcast, `ConversationStore` |
|
||||
| `quicproquo-server` | RPC server + domain services |
|
||||
| `quicproquo-client` | CLI/TUI client binary |
|
||||
| `quicproquo-p2p` | iroh P2P endpoint publish/resolve (feature-flagged) |
|
||||
| `quicprochat-core` | Crypto primitives, MLS state machine, hybrid KEM |
|
||||
| `quicprochat-proto` | Cap'n Proto legacy types + Protobuf (prost) v2 generated types |
|
||||
| `quicprochat-kt` | Key transparency (append-only log, revocation) |
|
||||
| `quicprochat-plugin-api` | `#![no_std]` C-ABI plugin interface |
|
||||
| `quicprochat-rpc` | QUIC RPC framework: framing, server dispatch, client, middleware |
|
||||
| `quicprochat-sdk` | Client SDK: `QpqClient`, event broadcast, `ConversationStore` |
|
||||
| `quicprochat-server` | RPC server + domain services |
|
||||
| `quicprochat-client` | CLI/TUI client binary |
|
||||
| `quicprochat-p2p` | iroh P2P endpoint publish/resolve (feature-flagged) |
|
||||
|
||||
See [Crate Responsibilities](crate-responsibilities.md) for a full breakdown
|
||||
and dependency diagram.
|
||||
|
||||
Reference in New Issue
Block a user