yakmesh 2.8.2 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +637 -0
- package/CONTRIBUTING.md +42 -0
- package/Caddyfile +77 -0
- package/README.md +119 -29
- package/adapters/adapter-mlv-bible/README.md +124 -0
- package/adapters/adapter-mlv-bible/index.js +400 -0
- package/adapters/chat-mod-adapter.js +532 -0
- package/adapters/content-adapter.js +273 -0
- package/content/api.js +50 -41
- package/content/index.js +2 -2
- package/content/store.js +355 -173
- package/dashboard/index.html +19 -3
- package/database/replication.js +117 -37
- package/docs/CRYPTO-AGILITY.md +204 -0
- package/docs/MTLS-RESEARCH.md +367 -0
- package/docs/NAMCHE-SPEC.md +681 -0
- package/docs/PEERQUANTA-YAKMESH-INTEGRATION.md +407 -0
- package/docs/PRECISION-DISCLOSURE.md +96 -0
- package/docs/README.md +76 -0
- package/docs/ROADMAP-2.4.0.md +447 -0
- package/docs/ROADMAP-2.5.0.md +244 -0
- package/docs/SECURITY-AUDIT-REPORT.md +306 -0
- package/docs/SST-INTEGRATION.md +712 -0
- package/docs/STEADYWATCH-IMPLEMENTATION.md +303 -0
- package/docs/TERNARY-AUDIT-REPORT.md +247 -0
- package/docs/TME-FAQ.md +221 -0
- package/docs/WHITEPAPER.md +623 -0
- package/docs/adapters.html +1001 -0
- package/docs/advanced-systems.html +1045 -0
- package/docs/annex.html +1046 -0
- package/docs/api.html +970 -0
- package/docs/business/response-templates.md +160 -0
- package/docs/c2c.html +1225 -0
- package/docs/cli.html +1332 -0
- package/docs/configuration.html +1248 -0
- package/docs/darshan.html +1085 -0
- package/docs/dharma.html +966 -0
- package/docs/docs-bundle.html +1075 -0
- package/docs/docs.css +3120 -0
- package/docs/docs.js +556 -0
- package/docs/doko.html +969 -0
- package/docs/geo-proof.html +858 -0
- package/docs/getting-started.html +840 -0
- package/docs/gumba-tutorial.html +1144 -0
- package/docs/gumba.html +1098 -0
- package/docs/index.html +914 -0
- package/docs/jhilke.html +1312 -0
- package/docs/karma.html +1100 -0
- package/docs/katha.html +1037 -0
- package/docs/lama.html +978 -0
- package/docs/mandala.html +1067 -0
- package/docs/mani.html +964 -0
- package/docs/mantra.html +967 -0
- package/docs/mesh.html +1409 -0
- package/docs/nakpak.html +869 -0
- package/docs/namche.html +928 -0
- package/docs/nav-order.json +53 -0
- package/docs/prahari.html +1043 -0
- package/docs/prism-bash.min.js +1 -0
- package/docs/prism-javascript.min.js +1 -0
- package/docs/prism-json.min.js +1 -0
- package/docs/prism-tomorrow.min.css +1 -0
- package/docs/prism.min.js +1 -0
- package/docs/privacy.html +699 -0
- package/docs/quick-reference.html +1181 -0
- package/docs/sakshi.html +1402 -0
- package/docs/sandboxing.md +386 -0
- package/docs/seva.html +911 -0
- package/docs/sherpa.html +871 -0
- package/docs/studio.html +860 -0
- package/docs/stupa.html +995 -0
- package/docs/tailwind.min.css +2 -0
- package/docs/tattva.html +1332 -0
- package/docs/terms.html +686 -0
- package/docs/time-server-deployment.md +166 -0
- package/docs/time-sources.html +1392 -0
- package/docs/tivra.html +1127 -0
- package/docs/trademark-policy.html +686 -0
- package/docs/tribhuj.html +1183 -0
- package/docs/trust-security.html +1029 -0
- package/docs/tutorials/backup-recovery.html +654 -0
- package/docs/tutorials/dashboard.html +604 -0
- package/docs/tutorials/domain-setup.html +605 -0
- package/docs/tutorials/host-website.html +456 -0
- package/docs/tutorials/mesh-network.html +505 -0
- package/docs/tutorials/mobile-access.html +445 -0
- package/docs/tutorials/privacy.html +467 -0
- package/docs/tutorials/raspberry-pi.html +600 -0
- package/docs/tutorials/security-basics.html +539 -0
- package/docs/tutorials/share-files.html +431 -0
- package/docs/tutorials/troubleshooting.html +637 -0
- package/docs/tutorials/trust-karma.html +419 -0
- package/docs/tutorials/yak-protocol.html +456 -0
- package/docs/tutorials.html +1034 -0
- package/docs/vani.html +1270 -0
- package/docs/webserver.html +809 -0
- package/docs/yak-protocol.html +940 -0
- package/docs/yak-timeserver-design.md +475 -0
- package/docs/yakapp.html +1015 -0
- package/docs/ypc27.html +1069 -0
- package/docs/yurt.html +1344 -0
- package/embedded-docs/bundle.js +334 -74
- package/gossip/protocol.js +247 -27
- package/identity/key-resolver.js +262 -0
- package/identity/machine-seed.js +632 -0
- package/identity/node-key.js +669 -368
- package/identity/tribhuj-ratchet.js +506 -0
- package/knowledge-base.js +37 -8
- package/launcher/yakmesh.bat +62 -0
- package/launcher/yakmesh.sh +70 -0
- package/mesh/annex.js +462 -108
- package/mesh/beacon-broadcast.js +113 -1
- package/mesh/darshan.js +1718 -0
- package/mesh/gumba.js +1567 -0
- package/mesh/jhilke.js +651 -0
- package/mesh/katha.js +1012 -0
- package/mesh/nakpak-routing.js +8 -5
- package/mesh/network.js +724 -34
- package/mesh/pulse-sync.js +4 -1
- package/mesh/rate-limiter.js +127 -15
- package/mesh/seva.js +526 -0
- package/mesh/sherpa-discovery.js +89 -8
- package/mesh/sybil-defense.js +19 -5
- package/mesh/temporal-encoder.js +4 -3
- package/mesh/vani.js +1364 -0
- package/mesh/yurt.js +1340 -0
- package/models/entropy-sentinel.onnx +0 -0
- package/models/karma-trust.onnx +0 -0
- package/models/manifest.json +43 -0
- package/models/sakshi-anomaly.onnx +0 -0
- package/oracle/code-proof-protocol.js +7 -6
- package/oracle/codebase-lock.js +257 -28
- package/oracle/index.js +74 -15
- package/oracle/ma902-snmp.js +678 -0
- package/oracle/module-sealer.js +5 -3
- package/oracle/network-identity.js +16 -0
- package/oracle/packet-checksum.js +201 -0
- package/oracle/sst.js +579 -0
- package/oracle/ternary-144t.js +714 -0
- package/oracle/ternary-ml.js +481 -0
- package/oracle/time-api.js +239 -0
- package/oracle/time-source.js +137 -47
- package/oracle/validation-oracle-hardened.js +1111 -1071
- package/oracle/validation-oracle.js +4 -2
- package/oracle/ypc27.js +211 -0
- package/package.json +20 -3
- package/protocol/yak-handler.js +35 -9
- package/protocol/yak-protocol.js +28 -13
- package/reference/cpp/yakmesh_mceliece_shard.cpp +168 -0
- package/reference/cpp/yakmesh_ypc27.cpp +179 -0
- package/sbom.json +87 -0
- package/scripts/security-audit.mjs +264 -0
- package/scripts/update-docs-nav.js +194 -0
- package/scripts/update-docs-sidebar.cjs +164 -0
- package/security/crypto-config.js +4 -3
- package/security/dharma-moderation.js +517 -0
- package/security/doko-identity.js +193 -143
- package/security/domain-consensus.js +86 -85
- package/security/fs-hardening.js +620 -0
- package/security/hardware-attestation.js +5 -3
- package/security/hybrid-trust.js +227 -87
- package/security/karma-rate-limiter.js +692 -0
- package/security/khata-protocol.js +22 -21
- package/security/khata-trust-integration.js +277 -150
- package/security/memory-safety.js +635 -0
- package/security/mesh-auth.js +11 -10
- package/security/mesh-revocation.js +373 -5
- package/security/namche-gateway.js +298 -69
- package/security/sakshi.js +460 -3
- package/security/sangha.js +770 -0
- package/security/secure-config.js +473 -0
- package/security/silicon-parity.js +13 -10
- package/security/steadywatch.js +1142 -0
- package/security/strike-system.js +32 -3
- package/security/temporal-signing.js +488 -0
- package/security/trit-commitment.js +464 -0
- package/server/crypto/annex.js +247 -0
- package/server/darshan-api.js +343 -0
- package/server/index.js +3259 -362
- package/server/komm-api.js +668 -0
- package/utils/accel.js +2273 -0
- package/utils/ternary-id.js +79 -0
- package/utils/verify-worker.js +57 -0
- package/webserver/index.js +95 -5
- package/assets/yakmesh-logo.png +0 -0
- package/assets/yakmesh-logo.svg +0 -80
- package/assets/yakmesh-logo2.png +0 -0
- package/assets/yakmesh-logo2sm.png +0 -0
- package/assets/ymsm.png +0 -0
- package/website/assets/silhouettes/adapters.svg +0 -107
- package/website/assets/silhouettes/api-endpoints.svg +0 -115
- package/website/assets/silhouettes/atomic-clock.svg +0 -83
- package/website/assets/silhouettes/base-camp.svg +0 -81
- package/website/assets/silhouettes/bridge.svg +0 -69
- package/website/assets/silhouettes/docs-bundle.svg +0 -113
- package/website/assets/silhouettes/doko-basket.svg +0 -70
- package/website/assets/silhouettes/fortress.svg +0 -93
- package/website/assets/silhouettes/gateway.svg +0 -54
- package/website/assets/silhouettes/gears.svg +0 -93
- package/website/assets/silhouettes/globe-satellite.svg +0 -67
- package/website/assets/silhouettes/karma-wheel.svg +0 -137
- package/website/assets/silhouettes/lama-council.svg +0 -141
- package/website/assets/silhouettes/mandala-network.svg +0 -169
- package/website/assets/silhouettes/mani-stones.svg +0 -149
- package/website/assets/silhouettes/mantra-wheel.svg +0 -116
- package/website/assets/silhouettes/mesh-nodes.svg +0 -113
- package/website/assets/silhouettes/nakpak.svg +0 -56
- package/website/assets/silhouettes/peak-lightning.svg +0 -73
- package/website/assets/silhouettes/sherpa.svg +0 -69
- package/website/assets/silhouettes/stupa-tower.svg +0 -119
- package/website/assets/silhouettes/tattva-eye.svg +0 -78
- package/website/assets/silhouettes/terminal.svg +0 -74
- package/website/assets/silhouettes/webserver.svg +0 -145
- package/website/assets/silhouettes/yak.svg +0 -78
- package/website/assets/yakmesh-logo.png +0 -0
- package/website/assets/yakmesh-logo.webp +0 -0
- package/website/assets/yakmesh-logo128x140.webp +0 -0
- package/website/assets/yakmesh-logo2.png +0 -0
- package/website/assets/yakmesh-logo2.svg +0 -51
- package/website/assets/yakmesh-logo40x44.webp +0 -0
- package/website/assets/yakmesh.gif +0 -0
- package/website/assets/yakmesh.ico +0 -0
- package/website/assets/yakmesh.jpg +0 -0
- package/website/assets/yakmesh.pdf +0 -0
- package/website/assets/yakmesh.png +0 -0
- package/website/assets/yakmesh.svg +0 -70
- package/website/assets/yakmesh128.webp +0 -0
- package/website/assets/yakmesh32.png +0 -0
- package/website/assets/yakmesh32.svg +0 -65
- package/website/assets/yakmesh32o.ico +0 -2
- package/website/assets/yakmesh32o.svg +0 -65
- package/website/assets/yakmesh32o.svgz +0 -0
package/CONTRIBUTING.md
CHANGED
|
@@ -47,6 +47,48 @@ Changes to the timing/oracle layer must:
|
|
|
47
47
|
|
|
48
48
|
---
|
|
49
49
|
|
|
50
|
+
## 📚 Documentation Guidelines
|
|
51
|
+
|
|
52
|
+
### Adding New Documentation Pages
|
|
53
|
+
|
|
54
|
+
When adding new pages to the `docs/` directory:
|
|
55
|
+
|
|
56
|
+
1. **Update the navigation manifest** in `docs/nav-order.json`:
|
|
57
|
+
- Add your new page at the appropriate position in the `pages` array
|
|
58
|
+
- Include: `file`, `icon`, `title`, and `description`
|
|
59
|
+
|
|
60
|
+
2. **Run the navigation update script**:
|
|
61
|
+
```bash
|
|
62
|
+
node scripts/update-docs-nav.cjs
|
|
63
|
+
```
|
|
64
|
+
This automatically updates prev/next links in all affected pages.
|
|
65
|
+
|
|
66
|
+
3. **Update the sidebar** in all doc pages:
|
|
67
|
+
- Add the new page to the sidebar nav list in every `.html` file
|
|
68
|
+
- Use consistent icon and title
|
|
69
|
+
|
|
70
|
+
### Navigation Order
|
|
71
|
+
|
|
72
|
+
The canonical page order is defined in `docs/nav-order.json`. This ensures:
|
|
73
|
+
- Consistent prev/next links across all pages
|
|
74
|
+
- Single source of truth for navigation
|
|
75
|
+
- Easy insertion of new pages without manual link updates
|
|
76
|
+
|
|
77
|
+
**Example: Adding a new page "DHARMA" between KATHA and VANI**
|
|
78
|
+
|
|
79
|
+
1. Edit `docs/nav-order.json`:
|
|
80
|
+
```json
|
|
81
|
+
{ "file": "katha.html", "icon": "💬", "title": "KATHA", "description": "Rich chat" },
|
|
82
|
+
{ "file": "dharma.html", "icon": "☸️", "title": "DHARMA", "description": "New protocol" },
|
|
83
|
+
{ "file": "vani.html", "icon": "🎙️", "title": "VANI", "description": "Voice calls" },
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
2. Run: `node scripts/update-docs-nav.cjs`
|
|
87
|
+
|
|
88
|
+
3. This updates KATHA (next→DHARMA), creates correct links in DHARMA, and updates VANI (prev→DHARMA).
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
50
92
|
## 🏷️ Branding & Trademark
|
|
51
93
|
|
|
52
94
|
**YAKMESH** is a trademark of the YAKMESH Project (PeerQuanta).
|
package/Caddyfile
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# ═══════════════════════════════════════════════════════════════
|
|
2
|
+
# Yakmesh Caddy Configuration — WSS Reverse Proxy
|
|
3
|
+
# ═══════════════════════════════════════════════════════════════
|
|
4
|
+
#
|
|
5
|
+
# Use this Caddyfile to expose your yakmesh node via WSS (HTTPS/WebSocket).
|
|
6
|
+
# Caddy handles automatic TLS via Let's Encrypt and reverse-proxies
|
|
7
|
+
# WebSocket connections to the local yakmesh WS server.
|
|
8
|
+
#
|
|
9
|
+
# SHERPA will advertise this endpoint in beacons, allowing other nodes
|
|
10
|
+
# (even those behind firewalls) to discover and OUTBOUND connect to you.
|
|
11
|
+
#
|
|
12
|
+
# Prerequisites:
|
|
13
|
+
# 1. Domain pointing to this machine (e.g., mesh.yakmesh.dev)
|
|
14
|
+
# 2. Port 443 and 80 accessible (port 80 needed for ACME challenge)
|
|
15
|
+
# 3. Caddy installed: https://caddyserver.com/docs/install
|
|
16
|
+
#
|
|
17
|
+
# Usage:
|
|
18
|
+
# caddy run --config Caddyfile
|
|
19
|
+
#
|
|
20
|
+
# Set env var so SHERPA advertises this WSS endpoint:
|
|
21
|
+
# YAKMESH_WS_ENDPOINT=wss://mesh.yakmesh.dev
|
|
22
|
+
# YAKMESH_SELF_ENDPOINT=https://mesh.yakmesh.dev
|
|
23
|
+
# ═══════════════════════════════════════════════════════════════
|
|
24
|
+
|
|
25
|
+
# Replace with your domain
|
|
26
|
+
mesh.yakmesh.dev {
|
|
27
|
+
# WebSocket reverse proxy — mesh peering
|
|
28
|
+
# Matches WebSocket upgrade requests
|
|
29
|
+
@websocket {
|
|
30
|
+
header Connection *Upgrade*
|
|
31
|
+
header Upgrade websocket
|
|
32
|
+
}
|
|
33
|
+
handle @websocket {
|
|
34
|
+
reverse_proxy localhost:9080
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
# SHERPA beacon — live peer discovery data
|
|
38
|
+
handle /.well-known/yakmesh/beacon {
|
|
39
|
+
reverse_proxy localhost:3080
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
# Mesh relay — HTTP message bridge
|
|
43
|
+
handle /mesh/relay* {
|
|
44
|
+
reverse_proxy localhost:3080
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
# Health endpoint
|
|
48
|
+
handle /mesh/health {
|
|
49
|
+
reverse_proxy localhost:3080/health
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
# Dashboard (optional — remove in production)
|
|
53
|
+
handle /dashboard* {
|
|
54
|
+
reverse_proxy localhost:3080
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
# Default: serve documentation
|
|
58
|
+
handle {
|
|
59
|
+
reverse_proxy localhost:3080
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
# Logging
|
|
63
|
+
log {
|
|
64
|
+
output file /var/log/caddy/yakmesh.log {
|
|
65
|
+
roll_size 10mb
|
|
66
|
+
roll_keep 5
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
# Security headers
|
|
71
|
+
header {
|
|
72
|
+
X-Content-Type-Options nosniff
|
|
73
|
+
X-Frame-Options DENY
|
|
74
|
+
Referrer-Policy strict-origin-when-cross-origin
|
|
75
|
+
-Server
|
|
76
|
+
}
|
|
77
|
+
}
|
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<img src="https://yakmesh.dev/assets/yakmesh-logo2.png" alt="YAKMESH" width="200">
|
|
3
3
|
|
|
4
|
-
<h1>🏔️ YAKMESH
|
|
4
|
+
<h1>🏔️ YAKMESH™ v3.0.0 — The Summit Release</h1>
|
|
5
5
|
|
|
6
6
|
<p><strong>Yielding Atomic Kernel Modular Encryption Secured Hub</strong></p>
|
|
7
7
|
|
|
@@ -10,12 +10,14 @@
|
|
|
10
10
|
<a href="https://nodejs.org"><img src="https://img.shields.io/badge/Node.js-18+-green.svg" alt="Node.js"></a>
|
|
11
11
|
<a href="https://csrc.nist.gov/projects/post-quantum-cryptography"><img src="https://img.shields.io/badge/Crypto-Post--Quantum-blue.svg" alt="Post-Quantum"></a>
|
|
12
12
|
<a href="https://www.npmjs.com/package/yakmesh"><img src="https://img.shields.io/npm/v/yakmesh.svg" alt="npm version"></a>
|
|
13
|
+
<img src="https://img.shields.io/badge/version-3.0.0-purple.svg" alt="v3.0.0">
|
|
14
|
+
<img src="https://img.shields.io/badge/Protocol_Layers-30-orange.svg" alt="30-Layer Stack">
|
|
13
15
|
</p>
|
|
14
16
|
</div>
|
|
15
17
|
|
|
16
18
|
---
|
|
17
19
|
|
|
18
|
-
YAKMESH is a
|
|
20
|
+
YAKMESH is a post-quantum secure P2P mesh network with a 30-layer protocol stack, heterogeneous GPU+NPU compute scheduling, and hardware-anchored precision timing. Built for the 2026 threat landscape with NIST FIPS 204/203 cryptography at every layer, YAKMESH provides a "sturdy" substrate for distributed systems that cannot afford to fail.
|
|
19
21
|
|
|
20
22
|
> **📚 Full documentation: [yakmesh.dev](https://yakmesh.dev)** | **[docs/](docs/)** for specifications
|
|
21
23
|
|
|
@@ -38,29 +40,66 @@ await node.start();
|
|
|
38
40
|
|
|
39
41
|
## Features
|
|
40
42
|
|
|
41
|
-
|
|
42
|
-
- 🔮 **TATTVA Oracle** - Self-verifying validation without external trust
|
|
43
|
-
- 🌐 **Mesh Networking** - P2P WebSocket communication with gossip protocol
|
|
44
|
-
- ⏱️ **Precision Timing** - Support for atomic clocks, GPS, PTP, NTP
|
|
45
|
-
- 🧭 **NAMCHE Gateway** - 7-gate mathematical identity verification
|
|
46
|
-
- 🏔️ **SHERPA Discovery** - Decentralized peer discovery
|
|
47
|
-
- 🔐 **ANNEX Channels** - ML-KEM768 encrypted P2P with forward secrecy
|
|
48
|
-
- 🌍 **Geographic Proof** - Speed-of-light exclusion zones
|
|
43
|
+
### Cryptography & Identity
|
|
49
44
|
|
|
50
|
-
|
|
45
|
+
- 🔒 **Post-Quantum Secure** — ML-DSA-65 (FIPS 204) signatures, ML-KEM-768 (FIPS 203) key encapsulation
|
|
46
|
+
- 🧬 **144-Trit Identity** — Ternary identity system with balanced-ternary encoding (YPC-27)
|
|
47
|
+
- 🔐 **ANNEX Channels** — ML-KEM-768 encrypted P2P sessions with forward secrecy (TRIBHUJ ratchet)
|
|
48
|
+
- 🧭 **NAMCHE Gateway** — 7-gate mathematical identity verification
|
|
49
|
+
|
|
50
|
+
### Networking & Discovery
|
|
51
|
+
|
|
52
|
+
- 🌐 **Mesh Networking** — P2P WebSocket mesh with epidemic gossip protocol
|
|
53
|
+
- 🏔️ **SHERPA Discovery** — Decentralized peer discovery with DNS beacon broadcast
|
|
54
|
+
- 📦 **NAKPAK Routing** — Efficient binary message routing with checksum verification
|
|
55
|
+
- 💬 **KOMM Stack** — Real-time communication layer (VANI messaging, GUMBA channels, KATHA sessions)
|
|
56
|
+
|
|
57
|
+
### Validation & Consensus
|
|
58
|
+
|
|
59
|
+
- 🔮 **TATTVA Oracle** — Self-verifying codebase validation; the code IS the network identity
|
|
60
|
+
- 📜 **DHARMA Consensus** — Multi-phase consensus engine with phase-epoch timing
|
|
61
|
+
- 👁️ **SAKSHI Witness** — Distributed witness protocol for transaction attestation
|
|
62
|
+
- 🌍 **Geographic Proof** — Speed-of-light exclusion zones for physical locality verification
|
|
63
|
+
|
|
64
|
+
### Compute & Acceleration
|
|
65
|
+
|
|
66
|
+
- ⚡ **GPU+NPU Acceleration** — Heterogeneous compute via ONNX Runtime (DirectML, CUDA, CPU fallback)
|
|
67
|
+
- 📊 **ComputeScheduler** — Priority-based task scheduling (CRITICAL → HIGH → NORMAL → LOW)
|
|
68
|
+
- 🧠 **SEVA Compute** — Distributed ML inference mesh across network peers
|
|
69
|
+
|
|
70
|
+
### Security & Monitoring
|
|
71
|
+
|
|
72
|
+
- 🛡️ **SANGHA Security** — Community-driven threat circulation and collective defense
|
|
73
|
+
- ⏱️ **Precision Timing** — GPS atomic clocks (MA-902), PTP, NTP with sub-millisecond sync
|
|
74
|
+
- 📡 **DARSHAN Telemetry** — Real-time network visibility and diagnostics
|
|
75
|
+
- 🔍 **STEADYWATCH** — Continuous uptime and integrity monitoring
|
|
76
|
+
- ⚖️ **KARMA Rate Limiter** — Behavior-based reputation rate limiting
|
|
77
|
+
|
|
78
|
+
> See [yakmesh.dev](https://yakmesh.dev) for the complete 30-layer protocol documentation
|
|
51
79
|
|
|
52
80
|
## Architecture
|
|
53
81
|
|
|
54
82
|
```
|
|
55
|
-
yakmesh/
|
|
56
|
-
├──
|
|
57
|
-
├──
|
|
58
|
-
├──
|
|
83
|
+
yakmesh-node/
|
|
84
|
+
├── server/ # HTTP/WS server (~3,300 lines), all API routes
|
|
85
|
+
├── security/ # NAMCHE gateway, SANGHA, SAKSHI, trust models, geo-proof
|
|
86
|
+
├── oracle/ # TATTVA validation, consensus engine, code-proof, phase-epoch
|
|
87
|
+
├── identity/ # PQ key management, TRIBHUJ ratchet, 144T identity
|
|
88
|
+
├── mesh/ # SHERPA discovery, NAKPAK routing, ANNEX sessions, pulse-sync
|
|
59
89
|
├── gossip/ # Epidemic-style message propagation
|
|
60
|
-
├── protocol/ # STUPA, LAMA, MANI, KARMA, MANDALA
|
|
61
|
-
├──
|
|
62
|
-
├──
|
|
63
|
-
|
|
90
|
+
├── protocol/ # STUPA, LAMA, MANI, KARMA, MANDALA protocol layers
|
|
91
|
+
├── utils/ # Hardware acceleration, ComputeScheduler (GPU+NPU)
|
|
92
|
+
├── cli/ # Command-line interface
|
|
93
|
+
├── dashboard/ # Web-based monitoring UI
|
|
94
|
+
├── database/ # SQLite persistence layer
|
|
95
|
+
├── content/ # Distributed content system
|
|
96
|
+
├── models/ # ONNX ML models for inference
|
|
97
|
+
├── embedded-docs/ # GRANTH documentation bundle (served at /docs)
|
|
98
|
+
├── adapters/ # Platform integration plugins (BYOND, etc.)
|
|
99
|
+
├── templates/ # Configuration templates
|
|
100
|
+
├── launcher/ # Process management and startup
|
|
101
|
+
├── webserver/ # Static web serving
|
|
102
|
+
└── yakbot/ # Bot integration
|
|
64
103
|
```
|
|
65
104
|
|
|
66
105
|
## Network Identity
|
|
@@ -78,16 +117,68 @@ import { deriveNetworkName, deriveVerificationPhrase } from 'yakmesh/oracle/netw
|
|
|
78
117
|
|
|
79
118
|
Full API documentation at [yakmesh.dev/docs/api](https://yakmesh.dev/docs/api)
|
|
80
119
|
|
|
120
|
+
### Core
|
|
121
|
+
|
|
122
|
+
| Endpoint | Description |
|
|
123
|
+
|----------|-------------|
|
|
124
|
+
| `GET /health` | Node health status |
|
|
125
|
+
| `GET /node` | Node identity info |
|
|
126
|
+
| `GET /peers` | Connected peers |
|
|
127
|
+
| `GET /metrics` | Prometheus-compatible metrics |
|
|
128
|
+
| `GET /dashboard` | Web monitoring UI |
|
|
129
|
+
|
|
130
|
+
### Oracle & Consensus
|
|
131
|
+
|
|
81
132
|
| Endpoint | Description |
|
|
82
133
|
|----------|-------------|
|
|
83
|
-
|
|
|
84
|
-
|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
134
|
+
| `GET /oracle/status` | Oracle integrity check |
|
|
135
|
+
| `GET /oracle/consensus` | Consensus state |
|
|
136
|
+
| `GET /oracle/peers` | Oracle peer list |
|
|
137
|
+
| `POST /oracle/challenge` | Challenge-response verification |
|
|
138
|
+
| `POST /oracle/submit` | Submit oracle data |
|
|
139
|
+
|
|
140
|
+
### Network & Mesh
|
|
141
|
+
|
|
142
|
+
| Endpoint | Description |
|
|
143
|
+
|----------|-------------|
|
|
144
|
+
| `GET /network/identity` | Network identity |
|
|
145
|
+
| `GET /network/status` | Network state |
|
|
146
|
+
| `GET /network/handshake` | Handshake data |
|
|
147
|
+
| `POST /connect` | Initiate peer connection |
|
|
148
|
+
| `POST /mesh/relay` | Relay message to peers |
|
|
149
|
+
| `GET /gossip` | Gossip state |
|
|
150
|
+
| `GET /discovered` | Discovered nodes |
|
|
151
|
+
|
|
152
|
+
### Protocol Subsystems
|
|
153
|
+
|
|
154
|
+
| Endpoint | Description |
|
|
155
|
+
|----------|-------------|
|
|
156
|
+
| `/komm/*` | KOMM real-time communication |
|
|
157
|
+
| `/darshan/*` | DARSHAN network telemetry |
|
|
158
|
+
| `GET /sherpa/status` | SHERPA peer discovery status |
|
|
159
|
+
| `GET /nakpak/status` | NAKPAK routing status |
|
|
160
|
+
| `GET /annex/status` | ANNEX encrypted channel status |
|
|
161
|
+
| `GET /sakshi/status` | SAKSHI witness protocol status |
|
|
162
|
+
| `GET /api/sangha` | SANGHA community security |
|
|
163
|
+
| `/content/*` | Content API |
|
|
164
|
+
|
|
165
|
+
### Timing & Compute
|
|
166
|
+
|
|
167
|
+
| Endpoint | Description |
|
|
168
|
+
|----------|-------------|
|
|
169
|
+
| `GET /time/status` | Time source detection |
|
|
170
|
+
| `GET /time/capabilities` | Timing hardware capabilities |
|
|
171
|
+
| `GET /api/time` | Full time data |
|
|
172
|
+
| `GET /accel` | Hardware acceleration status |
|
|
173
|
+
| `GET /accel/telemetry` | GPU/NPU telemetry |
|
|
174
|
+
| `GET /scheduler` | ComputeScheduler state |
|
|
175
|
+
| `GET /steadywatch` | Uptime monitoring |
|
|
176
|
+
|
|
177
|
+
### Security
|
|
178
|
+
|
|
179
|
+
| Endpoint | Description |
|
|
180
|
+
|----------|-------------|
|
|
181
|
+
| `GET /security/namche/gates` | Gateway verification status |
|
|
91
182
|
|
|
92
183
|
## License
|
|
93
184
|
|
|
@@ -99,7 +190,7 @@ See [TRADEMARK.md](TRADEMARK.md) for trademark usage policy.
|
|
|
99
190
|
---
|
|
100
191
|
|
|
101
192
|
<div align="center">
|
|
102
|
-
<sub>Built with quantum principles. Secured by math.</sub>
|
|
193
|
+
<sub>Built with quantum principles. Secured by math. 30 layers deep.</sub>
|
|
103
194
|
<br><br>
|
|
104
195
|
<strong><a href="https://yakmesh.dev">yakmesh.dev</a></strong>
|
|
105
196
|
<br><br>
|
|
@@ -114,4 +205,3 @@ See [TRADEMARK.md](TRADEMARK.md) for trademark usage policy.
|
|
|
114
205
|
<br>
|
|
115
206
|
<sub>YAKMESH™ is a trademark of PeerQuanta, application pending (Serial No. 99594620).</sub>
|
|
116
207
|
</div>
|
|
117
|
-
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# MLV Bible Adapter for Yakmesh
|
|
2
|
+
|
|
3
|
+
Serve the Modern Literal Version Bible via DARSHAN streaming and enable scripture lookup in KATHA chat.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This adapter demonstrates Yakmesh's **anti-censorship ethos** by enabling peer-to-peer scripture distribution without central servers or gatekeepers.
|
|
8
|
+
|
|
9
|
+
**\\For where two or three are gathered in my name, there am I among them.\\ - Matthew 18:20**
|
|
10
|
+
|
|
11
|
+
## Features
|
|
12
|
+
|
|
13
|
+
- **📖 PDF Streaming** - Serve MLV Bible PDFs via DARSHAN (view-not-copy paradigm)
|
|
14
|
+
- **🔍 Scripture Lookup** - Reference parser for all 66 books (e.g., \\John 3:16\\)
|
|
15
|
+
- **💬 Chat Commands** - \\/bible\\, \\/mlv\\, \\/verse\\, \\/scripture\\
|
|
16
|
+
- **🔐 Signed Quotes** - Verifiable scripture cards in chat
|
|
17
|
+
- **🌐 Decentralized** - Each user hosts their own copy
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
\\\javascript
|
|
22
|
+
import { MLVBibleAdapter } from '@yakmesh/adapters/adapter-mlv-bible';
|
|
23
|
+
|
|
24
|
+
// Create adapter
|
|
25
|
+
const mlv = new MLVBibleAdapter({
|
|
26
|
+
contentPath: './mlv-content', // Path to your MLV PDFs
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
// Initialize
|
|
30
|
+
await mlv.init();
|
|
31
|
+
|
|
32
|
+
// Register with DARSHAN for streaming
|
|
33
|
+
await mlv.registerWithDarshan(darshan);
|
|
34
|
+
|
|
35
|
+
// Register with KATHA for chat commands
|
|
36
|
+
mlv.registerWithKatha(katha, chatModRegistry);
|
|
37
|
+
\\\
|
|
38
|
+
|
|
39
|
+
## Content Setup
|
|
40
|
+
|
|
41
|
+
1. Download MLV Bible from [modernliteralversion.org](https://www.modernliteralversion.org)
|
|
42
|
+
2. Place PDF files in your content directory
|
|
43
|
+
3. Optionally create a \\erses.json\\ for instant lookup:
|
|
44
|
+
|
|
45
|
+
\\\json
|
|
46
|
+
{
|
|
47
|
+
\"John 3:16\": \"For God so loved the world...\",
|
|
48
|
+
\"Genesis 1:1\": \"In the beginning God created...\"
|
|
49
|
+
}
|
|
50
|
+
\\\
|
|
51
|
+
|
|
52
|
+
## Chat Commands
|
|
53
|
+
|
|
54
|
+
| Command | Example | Description |
|
|
55
|
+
|---------|---------|-------------|
|
|
56
|
+
| \\/bible\\ | \\/bible John 3:16\\ | Look up a verse |
|
|
57
|
+
| \\/mlv\\ | \\/mlv Gen 1:1-5\\ | Look up a passage |
|
|
58
|
+
| \\/verse\\ | \\/verse Ps 23:1\\ | Look up a verse |
|
|
59
|
+
| \\/scripture\\ | \\/scripture Rom 8:28\\ | Look up a verse |
|
|
60
|
+
|
|
61
|
+
## Creating Your Own Scripture Adapter
|
|
62
|
+
|
|
63
|
+
This adapter serves as a template for other religious texts:
|
|
64
|
+
|
|
65
|
+
\\\javascript
|
|
66
|
+
import { ContentAdapter, CONTENT_CAPABILITIES } from '../content-adapter.js';
|
|
67
|
+
import { ChatModAdapter, ChatModManifest, CHAT_MOD_CAPABILITIES } from '../chat-mod-adapter.js';
|
|
68
|
+
|
|
69
|
+
class MyScriptureAdapter extends ContentAdapter {
|
|
70
|
+
constructor(config) {
|
|
71
|
+
super({
|
|
72
|
+
name: 'My Scripture Name',
|
|
73
|
+
id: 'my-scripture-id',
|
|
74
|
+
capabilities: [
|
|
75
|
+
CONTENT_CAPABILITIES.SERVE_PDF,
|
|
76
|
+
CONTENT_CAPABILITIES.SEARCH_REFERENCE,
|
|
77
|
+
CONTENT_CAPABILITIES.CHAT_QUOTE,
|
|
78
|
+
],
|
|
79
|
+
...config,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
async lookupReference(reference) {
|
|
84
|
+
// Parse your reference format
|
|
85
|
+
// Return { reference, text, ... }
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
\\\
|
|
89
|
+
|
|
90
|
+
## Security Model
|
|
91
|
+
|
|
92
|
+
### Capability Declaration
|
|
93
|
+
Adapters MUST declare what they can do upfront:
|
|
94
|
+
- \\SERVE_PDF\\ - Can serve PDF content
|
|
95
|
+
- \\CHAT_QUOTE\\ - Can generate chat quotes
|
|
96
|
+
- \\CMD_SLASH\\ - Can handle slash commands
|
|
97
|
+
|
|
98
|
+
### Rate Limiting
|
|
99
|
+
Default: 30 messages per minute to prevent spam.
|
|
100
|
+
|
|
101
|
+
### Signed Responses
|
|
102
|
+
All adapter-generated content includes:
|
|
103
|
+
- Adapter ID and version
|
|
104
|
+
- Manifest hash for verification
|
|
105
|
+
- Timestamp
|
|
106
|
+
|
|
107
|
+
### No Raw Message Access
|
|
108
|
+
Chat adapters only receive sanitized context based on declared capabilities.
|
|
109
|
+
|
|
110
|
+
## Philosophy
|
|
111
|
+
|
|
112
|
+
Yakmesh rejects centralised gatekeeping of religious texts. This adapter embodies:
|
|
113
|
+
|
|
114
|
+
1. **Host Sovereignty** - You control your content
|
|
115
|
+
2. **No Central Server** - Peer-to-peer distribution
|
|
116
|
+
3. **Anti-Censorship** - No authority can block scripture
|
|
117
|
+
4. **Verification** - Mathematical proof replaces human trust
|
|
118
|
+
|
|
119
|
+
*\"Let the one who is thirsty come; and let the one who wishes take the free gift of the water of life.\"* - Revelation 22:17
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
|
|
123
|
+
This adapter code is MIT licensed.
|
|
124
|
+
The Modern Literal Version Bible is in the public domain per [modernliteralversion.org](https://www.modernliteralversion.org).
|