trustgraph / trustgraph-holochain

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[DRAFT] Create TrustGraph

harlantwood opened this issue · comments

Background Context

A TrustGraph is

  • initiated from a collection of TAs - generally to people or orgs in order to follow their webs of trust
  • [someone] rolls up the network into top level TAs for that TG (ongoing)

A TrustGraph:

  • public viewable or private viewable
  • private viewing is by invite code/cap tokent
  • has an underlying DHT
    • or two: 1 for read, one for write ? Or use validations/cap tokens for these?

Rollups

  • an agent could only roll up what is visible to them
  • trust atoms that are an amalgam value for each target / content combination
    • maybe extra store full original TA list?

Code Sketch

This is a sketch only... also important that it's similar to TrustAtom#create

let trust_graph_atoms: Vector<TrustAtom> = vec![
  // TrustAtom where target = Alice's TrustGraph
  // TrustAtom where target = Bo's TrustGraph
  // TrustAtom where target = New York Times' TrustGraph
]

// within hc_zome_trust_graph:

pub fn create_raw(
  private: bool,
  trust_atoms: Vec<TrustAtomInput>
)

// within hc_zome_trust_graph:
pub fn create_from_atoms(
  private: bool,
  trust_atoms: Vec<TrustAtomId>
)

struct TrustGraph {
  trust_atoms: Vec<TrustAtomId>
}