It is something we are working towards. It is not meant to be implemented now, but it is required reading, because this is part of the future. Think of it as the North Star of the scalable LINX backend: every decision we make should be made with this picture in view, so that what we build today grows cleanly into what this describes.
Where we are today. The LINX backend works — but it is static. Trust scoring runs on fixed, hand-chosen numbers. The recommender matches on similarity alone. Nothing in the system learns from what actually happens: a booking that converts, a referral that lands, a memory that gets created all pass through without making the next recommendation any smarter.
Why that's a problem. A static backend treats every assumption as permanent. Our trust weights are educated guesses frozen in code; our matching can't understand a plain-English dream; our data accumulates but never compounds into intelligence. That is fine for getting started — and fatal for a future sustainable company, because the one thing that should become our deepest moat, the data, sits inert.
The solution — and why this exists. Two systems are being designed to make the backend learn: MATRIX (the trust graph) and PROMETHEUS (the continuously-learning intelligence layer over it). These are ideas for the future scalable LINX backend — the North Star this document describes. This is the picture.
Every generic startup bolts AI onto its data as an afterthought. The model is the product, the data is exhaust. That company gets rewritten every time the AI vendors change — and they change every few months.
LINX inverts that. The data is the moat. The model is a replaceable part.
Concretely, today:
A static backend treats every guess as permanent. The future backend treats every guess as a hypothesis the system improves on its own.
Couple to the substrate. Decouple from the vendor.
The substrate = the append-only log of everything that happens (a referral, a booking, a memory, a correction) + open data formats + clean contracts. That compounds for a decade.
The vendor = whichever LLM or embedding provider is best this quarter (Anthropic, OpenAI, Google, whoever). Those are swappable config lines.
Anything coupled to a 2026 model is rewritten by 2028. Anything coupled to the substrate compounds through 2036. This is the Renaissance Technologies pattern — one event log, one data pool, survived 30+ years while competitors who fragmented their data eroded.
Matrix is the LINX Trust Graph. It is the part competitors cannot copy.
They can copy our UI, our referral links, our 10% pitch, our operator listings, even our math. What they cannot copy, because it takes years to accumulate and is verified by operators themselves:
Matrix's own doctrine says it bluntly:
"The moat is the graph, not inventory."
Two things people get wrong, that you should not:
If Matrix is the moat, Prometheus is what makes it intelligent. The clean metaphor from the framework: Prometheus gives the trust graph eyes, judgment, and forethought.
Here is how Matrix and Prometheus combine on a single recommendation. When a traveler asks for something, the system runs two rails in parallel:
Give Netflix and Instagram their due: they are two of the most sophisticated recommendation engines ever built. Billions of dollars and some of the best machine-learning talent on the planet have made them extraordinary at one thing — predicting what will hold your attention. Netflix is the number-one streaming platform in the world for a reason. We are not trying to out-taste them at their own game; Rail 1 stands on the shoulders of everything they pioneered.
What LINX adds is a dimension their model structurally does not have: Rail 2, a verified human trust rail. A LINX recommendation can say "this came to you because Doug, who you trust for polar trips, did it last season." Netflix knows what people like you watched; Instagram knows what people like you engaged with. Neither can tell you that a specific person you actually trust did this specific thing and vouched for it — because they don't have an operator-verified, consented trust graph underneath. That sentence — the verified human reason — is the product. It is why people join, and it is impossible to fake without the graph.
This is the most important idea in the document, so we give it room — and an interactive graph to make it concrete.
The trust graph is not a metaphor for the network effect. It is the network effect, written as a data structure.
This is why understanding the network effect matters for building, not just for pitching. If you build the invite graph as a plain table, it works mechanically and is strategically dead. If you build it as typed, provenanced edges in the trust graph, it compounds — and compounding is the whole game.
The single most important framing in this document: almost everything below is specified, gated, adversarially reviewed — and not yet built. See §8 for the precise "spec vs. shipped" line. Treat this as the destination, and build every decision toward it.
Prometheus is 8 layers. The substrate (bottom) is sovereign; everything above it is swappable.
| Layer | Name | What it is |
|---|---|---|
| L0 | Privacy Boundary | PII redaction, zero-data-retention (ZDR) vendor contracts, tenant isolation. Maps to Nomos consent classes. |
| L1 | Substrate | Postgres + vector (pgvector) + BM25 + cron + change-data-capture |
| L2 | Event Log | Append-only, content-hashed, 7–10yr retention. "Bedrock, sacred. If this is corrupted, the company is dead." |
| L3 | Representation | Embeddings + features (e.g. Voyage-3-large 1024-dim, swappable) |
| L4 | Judgment | LLM judge + ensemble (Haiku routine / Opus hard / a second vendor for second opinion) |
| L5 | Builder | Sandboxed autonomous agent — the overnight learner |
| L6 | Orchestration | Durable, exactly-once workflow |
| L7 | Governance | Eval gate, observability, held-out golden set |
The Ring (the self-improving loop):
Every cycle leaves the substrate measurably smarter.
"'Best practices' is what you say when you're not sure. Laws are constraints — all or none." Each law names the failure it prevents and a real example:
The binding contract is GRAPH_CONTRACT.md (Matrix owns the meaning, Poseidon owns the DDL — "Matrix does not write DDL; Poseidon does not change semantics without a Matrix ticket"). Below is the model made interactive — click any node or edge to see what it is and the rule that governs it.
marked_inferred: true until a user correction graduates it).provenance_ref that explains why it exists.supersedes pointer, never an update.The rule to tattoo on the wall: No edge materializes from system seeding, anonymous opens, or an AI guess. Anonymous opens create events, not trust edges.
INVITED_BY, REFERRED, SAVED_FROM, BOOKED_VIA, CREATED_MEMORY, TRAVELED_WITH, EXPERIENCED_WITH, TRUSTED_FOR_CONTEXT, GEO_CONTAINS, GEO_ADJACENT_TO. Each has a strict materialization rule (e.g. TRAVELED_WITH requires operator confirmation OR two memories on the same experience-date).taste × trust × context × occasion × relationship × geography × time × verified_outcome (D=16 per axis, a Phase-1 hypothesis). Storage: pgvector on Postgres through Phase 2; native graph store (Neo4j/Dgraph) is a deferred decision, only when p95 trust-path > 1.5s at scale or > 50M nodes. "Moving early is a kill."weight(t) = weight_0 × 2^(−t / half_life). Half-lives (all hypotheses to validate): view 7d, DreamSaved 90d, MemoryShared 180d, Booking 730d, verified Memory 1825d, INVITED_BY indefinite (structural). Decay is applied at query time via a canonical DSL: query(root, depth, min_confidence, valid_on, …). The valid_on param enables history replay — "what did Matrix know on April 1?" — for dispute reproduction and audit, as a parameter, not a rebuild.claim_status == production_eligible AND confidence ≥ 0.7 AND its evidence has ≥1 element at source-tier ≤ 2 (Tier 1 = operator-direct, Tier 4 = AI-inferred). Lower-tier data is display-only.pending/, pass four gates (Structural → Semantic → Cross-reference → Manifest), commit whole or discard whole, with first-class rollback. Evidence files are never deleted.When a booking happens, several people influenced it: the curator who first recommended the experience, the friend who co-signed it, the operator who delivered it. A naive system gives 100% of the credit to the last click. That is wrong, and it is how you lose curators. LINX uses two world-leading multi-touch attribution (MTA) models, both operating over the trust graph, to distribute credit fairly. Here is exactly how they work.
Model the traveler's journey as a directed graph of probabilistic states: touchpoint → touchpoint → … → conversion. The Markov property: the probability of the next state depends only on the current state.
To value a single node (say Curator B), compute the network's overall conversion probability with the full graph, then remove B's node entirely and recompute. The drop is B's value:
If removing Curator B drops network conversion from 15% to 2%, B's removal effect is enormous — credit follows how catastrophic the graph's collapse is without that node. Conversion probability of any single path is the product of its transition probabilities; total conversion is the sum over all paths into the absorbing "converted" state.
From cooperative game theory (Lloyd Shapley, 1953; Nobel 2012). Treat the touchpoints as a coalition of players that jointly produce a conversion, and distribute credit by each player's average marginal contribution across every possible ordering of the coalition:
Where:
Shapley evaluates the journey against every permutation of touchpoints (A, A+B, B+C, A+B+C, …), which is what lets it isolate synergy: it can prove a curator is weak alone but a powerful multiplier when combined with someone else's trust signal. It is the unique credit scheme that satisfies four fairness axioms simultaneously — efficiency, symmetry, null-player, and additivity.
This math is powerful and easy to misuse, so it is gated — never shipped raw:
linx_ref first-party cookie. Deterministic. Shapley/Markov are not in production.Why this is the moat in motion: LINX is, mathematically, a multi-touch attribution engine for human taste. Every booking lets us recompute the marginal contribution and removal effect of every person, place, and theme in the graph — and that calculation gets sharper with every outcome. Competitors don't have the graph to run it on.
The §5 two-rail picture has non-negotiable rules so the taste rail never erases the trust:
Build the trust composition first; layer the vector recommender on top. Never the reverse.
This is the point of the whole document. As you build the backend, every decision should be made with this vision in view. You are not just building features — you are building toward this backend. Each schema choice, each edge, each vector, each endpoint should be made knowing what it grows into.
createEdgeWithScoreEvent() in TrustGraphService.kt. That one method is where Prometheus eventually hooks in. Keep it clean.The discipline is simple: measure twice, cut once, and always know what you are building toward.
What is actually in linx-core today:
V3__create_trust_infrastructure.sql → trust_edges (typed edges, weight DECIMAL(4,2), metadata JSONB) + trust_score_events.TrustGraphService.kt enforcing 5 hard rules (no duplicate edges, no self-edges, fixed per-type weights, score clamped [0,1], max negative delta −0.30).createEdgeWithScoreEvent() as the atomic edge+score primitive. 18 edge types. 906 tests at 98% coverage. Flyway through V51.What is spec / vision (this whole document, mostly): multi-axis embeddings, confidence×claim-status duality, source-tier evidence, geography edges, read-time decay DSL, transactional 4-gate ingest, force-graph compute, the consent-class system, Shapley/Markov attribution, Matrix↔Plutus co-sign, the Wiki-Link Link Grammar, and all 8 Prometheus layers. Matrix v2 is ~4,200 lines across ~25 files, five-gate reviewed, story-certified — and never invoked in production. Prometheus v1 is a locked framework with ~22 code stubs and a 15-PR sequence — not running.
The shipped graph is a typed-edge table with hardcoded weights and a score-event log. The spec is a far richer, self-learning system. The shipped service is the starting point; the spec is the destination. Prometheus is the proposed bridge that learns the spec's weights from real outcomes over the production graph.
Two known issues an implementer resolves before writing DDL: (a) the confidence_basis enum is 3-valued in the binding GRAPH_CONTRACT (EXTRACTED / INFERRED / AMBIGUOUS) but 4-valued in the doctrine prose (EXTRACTED / INFERRED / DECLARED / VERIFIED) — the contract governs; (b) the multi-axis D=16 and all decay half-lives are hypotheses requiring Phase-1 validation against minimum sample sizes before they harden.
Prometheus is designed on an 11-Star ladder (Chesky): Year 1 → investor-grade, Year 3 → category-creator, Year 10 → an open standard ("the PROMETHEUS architecture" enters the vernacular). The moat at the top is eight stacked layers — Data, Contracts, Golden set, Relationships, Reliability, Ecosystem, Brand, Foundation. We don't need to believe the Year-10 artifact to act. We need to build Year 1 so that Year 10 becomes inevitable — and the way you do that is to build the trust graph like it lasts.
createEdgeWithScoreEvent() is the seam Prometheus hooks into — keep it clean. The trust/invite graph has to last ten years.
~/Desktop/ZEUS/intelligence/ai-ml-llm-scale/00_PROMETHEUS_FRAMEWORK_v1.0.md…/ai-ml-llm-scale/venture_application/LINX_PROMETHEUS_APPLIED_v1.0.md~/Desktop/prometheus-substrate-vault-v0.1/~/Desktop/ZEUS/backend/knowledge/god_personas/matrix.md…/matrix-linx-intelligence/…pressure-test-v2.0.md…/matrix-linx-intelligence/…/matrix-linx-intelligence/attribution_engines_10x_deep_dive.md & attribution_engines_research.md~/Desktop/ZEUS/projects/linx/DNA.mdlinx-core: V3__create_trust_infrastructure.sql, TrustGraphService.kt