mirror of
https://github.com/allaunthefox/Research-Stack.git
synced 2026-07-31 03:05:21 +00:00
Port conflict resolution: - Add HelmChartConfig to pin Traefik web entrypoint to NodePort 30080 (not host :80) so k3s Traefik and host Caddy do not race for the port - Add host Caddy on :80 as a minimal pass-through to Traefik :30080; carries X-Forwarded-* headers so Traefik sees the real client IP and the correct Host. No TLS, no Porkbun, no subdomain logic — all of that stays on the edge Caddy (k3s-edge.nix) - Caddy after= k3s.service so Traefik NodePort is ready before proxying Authentik port fix: - Change authentik server + worker services from NodePort 30080 to ClusterIP; Traefik reaches Authentik via the rs-auth Ingress and cluster DNS, no NodePort required New manifests (internal, no public-traffic impact): - manifests/ingress/: Traefik Ingress resources + Middleware CRDs (/apps/*, /server/* → forward_auth + strip-prefix; /api/* → strip only; / → Homer + forward_auth; auth.* → Authentik, no middleware) - manifests/hermes/: placeholder chat/orchestrator service - manifests/credential-server/: token-auth credential vault stub - manifests/control-plane/: registry-api, jobs-api, blobs-api health stubs - manifests/homer/configmap.yaml: updated dashboard links to canonical paths Deploy order: rebuild k3s-server first, verify Traefik + Ingress internally, then deploy k3s-edge (commit 3 / next step). Generated with Devin (https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| auto | ||
| bin | ||
| config | ||
| docs | ||
| drivers | ||
| exploit-infra/CATEGORY/TSM | ||
| hardware | ||
| infra | ||
| k3s-flake | ||
| kernel | ||
| nano-kernel | ||
| NoDupeLabs | ||
| packaging | ||
| rds_probe | ||
| scripts | ||
| servo-fetch | ||
| shim | ||
| shims | ||
| storage | ||
| surface | ||
| witness | ||
| AGENTS.md | ||
| README.md | ||
4-Infrastructure
Purpose: Rust/Python shims, GPU duty assignment, cloud storage, web interaction, hardware designs, drivers, and the ENE RDS Rust workspace.
Depends on: 0 through 3
Directory Layout
| Path | Purpose |
|---|---|
infra/ |
Python shims, ENE distributed node, credential server |
infra/ene-rds/ |
ENE RDS Rust workspace (8 crates — Rust replacement for Python RDS stack) |
hardware/ |
FPGA Verilog, FAMM verilator, KiCad templates |
drivers/ |
Hardware drivers |
gpu/ |
WGSL shaders, wgpu compute dispatch |
storage/ |
restic + Garage S3 + rclone storage stack |
storage/storage_agent.py |
Storage observer/optimizer agent |
shim/ |
Stack solidification probes, adversarial harnesses, gate library |
surface/ |
FastAPI/WebSocket surface (spec'd, pending implementation) |
ENE RDS Rust Workspace (infra/ene-rds/)
8-crate Rust workspace replacing the Python RDS stack. Build: cd 4-Infrastructure/infra/ene-rds && cargo build --release.
| Crate | Purpose |
|---|---|
ene-rds-core |
Shared PostgreSQL client, DSN builder, receipts |
ene-rds-wiki |
Wiki CRUD + full-text search + revision tracking |
ene-rds-ephemeral |
EphemeralNode thermal zones, tasks, receipts, scars, metrics |
ene-rds-chat |
Chat session ingestion, keyword/semantic search |
ene-api |
Axum HTTP server on :3000 |
ene-node |
Node identity and gossip primitives |
ene-storage |
S3/Garage object storage client |
ene-sync |
Polls opencode.db SQLite → upserts into RDS chat tables |
sqlx 0.8.6 (Dependabot vuln from 0.7 resolved 2026-05-19).
Storage Stack (storage/)
Three tools, non-overlapping roles. Full contract: 4-Infrastructure/AGENTS.md §Storage Stack.
| Tool | Job |
|---|---|
| restic | Deduplicated, encrypted, content-addressed snapshots |
| Garage v2.3.0 | Self-hosted S3-compatible object store (Tailscale mesh, 5 buckets) |
| rclone | Raw sync between remotes (Garage↔gdrive cold copy) |
Storage agent (storage/storage_agent.py): observe→decide→act loop, systemd timer (every 15 min), Q16_16 thresholds, JSONL hash-chain receipts.
GPU Status
- Device: NVIDIA GeForce RTX 4070
- Memory: 12.3GB total, ~10GB available
- CUDA: 13.0
- Compute dispatch: WGSL → wgpu (Vulkan GPU / lavapipe CPU / WebGPU WASM). Dispatch entry points:
5-Applications/parquet_compressor/src/gpu.rs,gpu/wasmgpu/(47 WGSL shaders)
Components
- ENE RDS — Rust workspace replacing Python RDS (see above)
- Storage Stack — restic + Garage S3 + rclone (see above)
- Lean Shim — Lean ↔ Python bidirectional interface
- ENE Shim — ENE node management from Python
- GPU Duty — WGSL/wgpu compute dispatch (Q16_16 deterministic across all substrates)
- Credential Gateway —
infra/credential_server.py, apiProvider service kind, cupfox routing - Adversarial Harnesses —
shim/adversarial_duals/: Anti-FAMM, Anti-BraidStorm, 20+ gate library entries