Structured trust assessments, gating, and transitive trust for entity interactions
The trust layer enables SIs to evaluate and track trust in other entities — people, other SIs, data sources, and organizations. Trust assessments gate what actions external entities can perform on an SI’s memory.
Not all information sources are equally reliable. An SI that blindly accepts input from any source risks corrupted beliefs, manipulated values, and degraded identity coherence. The trust layer provides:
Source gating: Block or allow memory operations based on source trust
Domain-specific trust: Trust an entity for coding advice but not medical information
Transitive chains: Compute trust through intermediaries (A trusts B, B trusts C)
Temporal decay: Trust decays toward neutral without ongoing interaction
Evidence-based computation: Derive trust scores from episode history
# Set general trustkernle -s my-project trust set collaborator-agent 0.7# Set domain-specific trustkernle -s my-project trust set collaborator-agent 0.9 --domain coding
# Trust a web API for factual data but not for value judgmentskernle -s my-project trust set external-api 0.7 --domain factualkernle -s my-project trust set external-api 0.2 --domain values# Trust a colleague highly for code but less for architecturekernle -s my-project trust set senior-dev 0.9 --domain codingkernle -s my-project trust set senior-dev 0.6 --domain architecture# Gating checks the domain-specific score when availablekernle -s my-project trust gate external-api suggest_value_change# → DENIED: uses 'values' domain score (0.20)
Trust scores affect how provenance chains are evaluated. When a memory’s source entity has low trust, downstream memories derived from it carry that context:
Copy
# 1. A belief arrives from a low-trust sourcekernle -s my-project belief add "Redis is faster than Postgres for all queries" \ --source-entity web-forum --source-type hearsay# 2. Check trust for that sourcekernle -s my-project trust show web-forum# → General: 35%# 3. The belief is accepted (35% > suggest_belief threshold of 30%)# but gated from higher-trust operations# 4. If the belief tries to change a value, it's blockedkernle -s my-project trust gate web-forum suggest_value_change# → DENIED (0.35 < 0.80)
When a source entity’s trust drops, you can weaken memories derived from that source:
Copy
# 1. Discover a source was unreliablekernle -s my-project trust set unreliable-source 0.1# 2. Find memories from that sourcekernle -s my-project search "unreliable-source" --type belief# 3. Weaken those beliefs (strength cascade propagates)kernle -s my-project forget weaken <belief-id> --reason "Source trust dropped"# Cascade flag propagates weakness to any memories derived from this belief
# List all trust assessments with scoreskernle -s my-project trust list# Simulate what happens after 60 days of no interactionkernle -s my-project trust decay collaborator-agent 60# → general: 43% (was 72%)# → coding: 58% (was 90%)# Re-seed defaults if trust assessments were deletedkernle -s my-project trust seed