Algorithms Architecture Adaptation Evolution
KKmatch/KKOS AI/Architecture
Architecture

From one conversation to one match score, in seven readable layers.

Nothing in this diagram is a black box you have to take on faith. Every layer has a defined input, a defined output, and a way to be inspected after the fact.

The inference chain

From 11 traits to a match score

The five engines from the previous page, wired in order. Hover any node to see what it reads; drag a node to rearrange the graph.

The engine graph
hover a node · drag to rearrange
System layers

Five layers, each with one job

A layer is only allowed to talk to the layer above and the layer below. That constraint is what keeps a change in one place from silently altering the meaning of a score somewhere else.

Input layerLAYER 1

Camera, microphone or text. The session is captured once and turned into a normalised signal stream. Raw media is not the product here — the model is.

voice · text · video → normalised signals
Modelling engineLAYER 2

The KKOS engine reads the signal stream and proposes traits. Each proposal must come with the sentence that supports it, or it is not allowed through.

signals → traits + evidence
Trait layerLAYER 3

The 11 dimensions, each carrying evidence, a confidence value, an uncertainty statement and an alternative reading. This is the object everything else consumes.

traits + evidence + confidence → model
Adaptation layerLAYER 4

The same core model is projected into a domain: social matching, relational counselling, or organisational behaviour insight. Only the projection changes, never the underlying traits.

model → domain projection
Applied layerLAYER 5

Where a person actually feels the result: a match score, a shared challenge link, a deep report, a voice session that corrects the model again.

projection → match · challenge · report
The master data chain

One identifier holds the whole loop together

A model that cannot be traced back to its owner is a dead end. Every object in KKOS hangs off a single user identifier, which is why the same person sees the same history everywhere.

user_id model_id match_id payment_id
Anonymous work is not orphanedIf you build a model before signing in, it is migrated to your account on login rather than stranded under a temporary identifier.
Challenges are links, not exportsA challenge is a share link keyed to a model. When the other person accepts, both models already belong to accounts, so the comparison is traced on both sides.
Privacy by construction

Four decisions baked into the layers

These are not policy promises added at the end. They are consequences of where the boundaries were drawn in the first place.

Keys never reach the browserProvider credentials live on the server. The page talks to our own bridge, never to a vendor endpoint holding a secret.
Raw media is not the artefactThe delivered object is the structured model. Original audio and video are not the thing being stored and analysed later.
Deletion cascadesRemoving a model removes its evidence lines and its corrections, because they only exist as properties of that model.
Consent is per-modalityCamera and audio consent are separate from storage consent, so a session can run without either modality being retained.

The graph above is an interactive illustration of the published engine chain, not a live session.