notes_integrity/
incremental_changes.rsuse hdi::prelude::*;
pub fn validate_create_link_incremental_changes(
_action: CreateLink,
base_address: AnyLinkableHash,
_target_address: AnyLinkableHash,
_tag: LinkTag,
) -> ExternResult<ValidateCallbackResult> {
let action_hash = base_address
.into_action_hash()
.ok_or(wasm_error!(WasmErrorInner::Guest(
"No action hash associated with link".to_string()
)))?;
let record = must_get_valid_record(action_hash)?;
let _note: crate::Note = record
.entry()
.to_app_option()
.map_err(|e| wasm_error!(e))?
.ok_or(wasm_error!(WasmErrorInner::Guest(
"Linked action must reference an entry".to_string()
)))?;
Ok(ValidateCallbackResult::Valid)
}
pub fn validate_delete_link_incremental_changes(
_action: DeleteLink,
_original_action: CreateLink,
_base: AnyLinkableHash,
_target: AnyLinkableHash,
_tag: LinkTag,
) -> ExternResult<ValidateCallbackResult> {
Ok(ValidateCallbackResult::Invalid(
"IncrementalChanges links cannot be deleted".to_string(),
))
}