docs: refresh README, ARCHITECTURE, overview for current state

Apply trivial-fix findings from the 2026-05-02 doc audit:
- README: items/ vs entries/, settings.enc + attachments/ +
  revoked.json in vault layout, full crate tree (relicario-wasm
  + relicario-server + typed-items modules), 16-char hex IDs,
  roadmap reflects shipped trains
- ARCHITECTURE.md: git-server box reflects items/ + 16-char IDs;
  relicario-core inner box lists typed-items modules
- architecture/overview.md: ID width / 128-bit AttachmentId

8 deeper findings still proposed for v0.5.0 release prep.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
adlee-was-taken
2026-05-02 16:04:02 -04:00
parent 3caa7af194
commit 900ccf1cf4
3 changed files with 64 additions and 36 deletions

View File

@@ -42,15 +42,19 @@
┌──────────────────────────────────────────────────────────────────┐
│ GIT SERVER (untrusted) │
│ │
│ relicario-vault.git/
│ ├── manifest.enc ← opaque ciphertext │
│ ├── entries/
│ ├── a1b2c3d4.enc ← opaque ciphertext
│ │ ── e5f6a7b8.enc ← opaque ciphertext
└── .relicario/
│ relicario-vault.git/ │
│ ├── manifest.enc ← opaque ciphertext
│ ├── settings.enc ← opaque ciphertext
├── items/
│ │ ── a1b2c3d4e5f6a7b8.enc ← opaque ciphertext │
│ └── …
│ ├── attachments/ │
│ │ └── <item-id>/<aid>.enc ← opaque ciphertext │
│ └── .relicario/ │
│ ├── salt ← 32 bytes (not secret) │
│ ├── params.json ← KDF params (not secret) │
── devices.json ← device public keys (not secret) │
── devices.json ← device public keys (not secret) │
│ └── revoked.json ← revoked device records (not secret) │
│ │
│ The server sees NOTHING useful. No keys, no plaintext, │
│ no metadata about what's inside. │
@@ -217,21 +221,23 @@ Input JPEG (possibly re-encoded or cropped)
│ uses
┌────────────────────────────────────────────────────────────┐
│ relicario-core
│ relicario-core │
│ Platform-agnostic: bytes in, bytes out │
│ No filesystem, no network, no git │
│ │
│ ┌──────────┐ ┌──────────┐ ┌─────────┐ ┌────────────┐ │
│ │ crypto │ │ imgsecret│ │ entry │ │ vault │ │
│ │ │ │ │ │ │ │ │ │
│ │ KDF │ │ DCT │ │ Entry │ │ encrypt_ │ │
│ │ encrypt │ │ embed │ │ Manifest│ │ entry()
│ │ decrypt │ │ extract │ │ search │ │ decrypt_ │ │
│ │ │ │ QIM │ │ │ │ manifest() │ │
└──────────┘ └──────────┘ └─────────┘ └────────────┘
│ ┌──────────┐ ┌──────────┐ ┌─────────┐ ┌────────────┐
│ │ crypto │ │ imgsecret│ │ item + │ │ vault │
│ │ │ │ │ │ types │ │ │
│ │ KDF │ │ DCT │ │ Item │ │ encrypt_ │
│ │ encrypt │ │ embed │ │ Manifest│ │ item()
│ │ decrypt │ │ extract │ │ Settings│ │ decrypt_ │
│ │ │ │ QIM │ │ Backup │ │ manifest() │
│ │ │ │ │ Device │ │ ... │
│ └──────────┘ └──────────┘ └─────────┘ └────────────┘ │
│ │
Future: relicario-wasm wraps this for browser extension
Future: JNI/Swift wrappers for Android/iOS
Consumed by: relicario-cli, relicario-wasm (extension),
relicario-server (pre-receive hook).
│ Future: JNI/Swift wrappers for Android/iOS. │
└────────────────────────────────────────────────────────────┘
```