Summary

Overview

This proposal upgrades the KinicDB backend to v0.2.6. It adds batch insert, tag listing, configurable top-k search, and explicit user role update APIs. It also fixes reset behavior so tag data is cleared together with vector, object, and index state.

Changes

  • Added insert_batch: (Vec<(Vec<f32>, String)>) -> InsertBatchResult to insert multiple items in one update call.
  • Added validation for batch insert so invalid input returns Err and no items are inserted.
  • Added list_tags: () -> Vec<String> to return all tags in a memory canister.
  • Added search_with_topk: (Vec<f32>, u64) -> Vec<(f32, String)> to search with a caller-specified result limit.
  • Added search_index_with_topk: (Vec<f32>, u64) -> Vec<(f32, u32)> for global search with a caller-specified result limit.
  • Added set_user_role: (Principal, u8) -> () so Admin users can explicitly overwrite a user role.
  • Kept add_new_user, add_new_reader, and add_new_writer for backward compatibility.
  • Updated reset to clear the tag database as well as storage, backlinks, index, object DB, and removed indices.
  • Updated instance API documentation and Candid definition.
Payload

Proposal to Upgrade an SNS Controlled Canister

Target canister: xfug4-5qaaa-aaaak-afowa-cai

Wasm info

Embedded module with 1356109 bytes and SHA256 f00606a5a27bcc12fbd2fd5d117a22bf4c7fccc55e44499e7d862c142292a84a.

Mode: Upgrade

Argument info

Upgrade argument with 16 bytes and SHA256 4449444c016b01c88ddcea0b7f010000.

Overview