pub fn apply_verified_fact(
workspace: String,
gate_id: String,
expected_hash: String,
new_hash: String,
new_json: String,
signature: String,
issuer: String,
observed_at: Int,
expires_at: Int,
wire: String,
reason: String,
at: Int,
) -> Result(#(Bool, Int), String)
pub fn burn_wisps(
workspace: String,
rows: List(#(String, String, Int)),
action: String,
actor: String,
reason: String,
at: Int,
) -> Result(Int, String)
pub fn create_wisp(
workspace: String,
id: String,
hash: String,
task_json: String,
expiry: option.Option(Int),
) -> Result(String, String)
pub fn gate_audits(
workspace: String,
gate_id: String,
) -> Result(List(GateAudit), String)
pub fn init(workspace: String) -> Result(Nil, String)
pub fn promote_wisp(
workspace: String,
id: String,
expected_hash: String,
new_hash: String,
new_json: String,
actor: String,
reason: String,
at: Int,
) -> Result(Int, String)
pub fn reset_workspace_for_test(
workspace: String,
) -> Result(Nil, String)
pub fn resolve_gate(
workspace: String,
gate_id: String,
expected_hash: String,
new_hash: String,
new_json: String,
action: String,
actor: String,
reason: String,
at: Int,
) -> Result(Int, String)
pub fn valid_facts(
workspace: String,
gate_id: String,
now: Int,
) -> Result(List(StoredFact), String)
pub fn wisp_archives(
workspace: String,
wisp_id: String,
) -> Result(List(WispArchive), String)
pub fn wisp_expiry(
workspace: String,
wisp_id: String,
) -> Result(option.Option(Int), String)