From 369e6f35f9f73756f120fa4e8cb83a02f43668ed Mon Sep 17 00:00:00 2001 From: Story Crater Bot <19826264+Riotpiaole@users.noreply.github.com> Date: Thu, 10 Sep 2026 08:04:28 +0900 Subject: [PATCH] feat: add Poimen Memory deep dive page at /poimen/memory - Architecture, dataflow, and sequence diagrams (700px iframes) - Three-tier retrieval section (signature match, graph-boosted, Obsidian) - Technology stack grid (Rust, pgvector, TEI, Authentik, etc.) - Wire deepDive link from Memory project card - Add Poimen timeline card to ExperienceTimeline --- app/page.tsx | 4 +- app/poimen/memory/page.tsx | 292 + lib/translations.json | 12 +- public/poimen-memory/architecture.html | 14935 ++++++++++++++++++++++ public/poimen-memory/architecture.json | 35 + public/poimen-memory/dataflow.html | 14933 ++++++++++++++++++++++ public/poimen-memory/dataflow.json | 36 + public/poimen-memory/sequence.html | 15025 +++++++++++++++++++++++ public/poimen-memory/sequence.json | 51 + 9 files changed, 45320 insertions(+), 3 deletions(-) create mode 100644 app/poimen/memory/page.tsx create mode 100644 public/poimen-memory/architecture.html create mode 100644 public/poimen-memory/architecture.json create mode 100644 public/poimen-memory/dataflow.html create mode 100644 public/poimen-memory/dataflow.json create mode 100644 public/poimen-memory/sequence.html create mode 100644 public/poimen-memory/sequence.json diff --git a/app/page.tsx b/app/page.tsx index 576742d..d7625c8 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -29,7 +29,9 @@ export default function Home() { : undefined, videoUrl: '#', articleUrl: index === 4 ? 'https://lnkd.in/p/gm2PZkWw' : '#', - deepDive: index === 2 ? { url: '/homelab', label: 'Explore the Architecture →' } : undefined, + deepDive: index === 2 ? { url: '/homelab', label: 'Explore the Architecture →' } + : index === 1 ? { url: '/poimen/memory', label: 'Explore the Memory System →' } + : undefined, ciRepos: index === 0 ? [ { label: 'poimen-wf', repo: 'riotpiao-poimen/poimen-workflows', forgejoBase: 'https://forgejo.riotpiao.com/riotpiao-poimen/poimen-workflows' }, ] : index === 1 ? [ diff --git a/app/poimen/memory/page.tsx b/app/poimen/memory/page.tsx new file mode 100644 index 0000000..0cb2e00 --- /dev/null +++ b/app/poimen/memory/page.tsx @@ -0,0 +1,292 @@ +'use client' + +import Link from 'next/link' +import { ArrowLeft } from 'lucide-react' +import { motion } from 'framer-motion' + +const skillCategories = [ + { + title: 'Core Runtime', + skills: ['Rust', 'actix-web', 'tokio', 'serde'], + }, + { + title: 'Storage & Search', + skills: ['PostgreSQL (CloudNativePG)', 'pgvector (HNSW)', 'Cosine Similarity', 'BFS Graph Traversal'], + }, + { + title: 'LLM & Embeddings', + skills: ['Ollama (ornith:35b)', 'TEI (nomic-embed)', '768-dim Embeddings'], + }, + { + title: 'Identity & Security', + skills: ['Authentik OIDC', 'JWT Verification', 'SOPS Encrypted Secrets', 'RBAC'], + }, + { + title: 'Data Pipeline', + skills: ['Fixed-Window Chunking', 'Entity Extraction', 'Fact Extraction', 'Reflection Filtering'], + }, + { + title: 'Infrastructure', + skills: ['Kubernetes', 'ArgoCD', 'Kustomize', 'cert-manager'], + }, +] + +const sectionVariants = { + hidden: { opacity: 0, y: 40 }, + visible: { opacity: 1, y: 0, transition: { duration: 0.6 } }, +} + +export default function PoimenMemoryPage() { + return ( +
+
+ + + Back to Projects + + + {/* Hero */} + +
+ Poimen (Ποιμήν) · Memory System +
+

+ Teaching the Shepherd to Remember +

+

+ A Graph-RAG memory system that gives AI agents long-term recall, semantic search, and self-compacting knowledge. +

+

+ Agents forget. Every conversation starts from zero unless you build memory into the system. + Poimen Memory is a Rust-based Graph-RAG service that ingests conversations, + extracts entities and relationships via LLM, stores them in a temporal knowledge graph backed + by pgvector, and serves them back through three-tier retrieval — signature + match at 50ms, graph-boosted hybrid search, and Obsidian fallback. The cache self-compacts: + stale embeddings are evicted, frequently-accessed chunks are promoted, and the graph auto-reconciles + on every write. +

+
+ + {/* Section 1: Architecture Overview */} + +
+
+ System Design +
+

+ Architecture Overview +

+
+ +
+

+ The memory system runs as a Rust microservice inside the Kubernetes poimen namespace. + An actix-web API server handles HTTP requests, authenticates via Authentik OIDC JWT, + and routes to either the search path (direct pgvector query) or the ingest path (async + pipeline through an internal queue → LLM extraction → graph persistence). All data lives in a + CloudNativePG cluster with HNSW indexes for vector similarity. +

+
+ + {/* Architecture Diagram */} +
+

+ 🏗️ System Architecture +

+
+