Konfirm
Konfirm It Before Send It.
The problem Konfirm solves
Konfirm solves a two-layer problem in how misinformation spreads through Malaysian WhatsApp family groups and Facebook.
Konfirm’s judgment layer handles forwarded information (news articles, health information, etc.) that mixes English, Malay and Chinese that does not contain a source or date, A tool such as Konfirm is superior compared to existing tools, such as Sebenarnya.my which is slow and only handles information in English and Malay. One may attempt to use international fact-checkers instead, but they miss out on local context. Aside from that, using a single AI for verification is not reliable as information is coming from only one source. Konfirm is built upon these drawbacks by having five independent models judge in parallel and surface their disagreement as a Truth Score.
Meanwhile, Konfirm’s trust layer solves the issue of data integrity. This is important as even a correct verdict is worthless if it can be silently edited later. This is helpful for a young person who identifies that the rumour has no credible artifact, to convince the elder who believes it. Sui is used so if there is no public way to contest a wrong verdict. then writing each verdict as a Sui shared object with its reasoning trace on Walrus allows anyone to verify the claim, even without a wallet. This is because users can share the results as a card or as a polite refutation in their own language, see how many times the same claim was already checked. Although this does not guarantee the validity of a claim, using Sui ensures all records are appended as a public challenge that can't be deleted or modified,
Challenges we ran into
Building Konfirm required overcoming complex technical and design hurdles across model orchestration, output sanitization, and Web3 abstraction. Structuring multi-model parallel execution across DeepSeek, Kimi, and MiniMax demanded custom promise racing logic to eliminate sub-second latency while avoiding empty payload returns. We also had to engineer robust regex parsers to strip out DeepSeek <think> reasoning blocks and markdown artifacts for deterministic JSON output, design prompt frameworks that generate empathetic, non-confrontational native-language refutations, and seamlessly abstract Sui blockchain record creation using zkLogin and Enoki gas sponsorship so everyday users can verify claims on-chain without managing cryptographic wallets or seed phrases
THere were a few challenges on Sui’s side too. First, zkLogin's OAuth options are narrower than a normal web login, only a handful of providers are supported and Google was the only one practical for our users, which meant no fallback if the salt service or prover misbehaved, so we went through Enoki (which bundles salt, prover, and sponsored gas behind one key) and built a mock useKonfirmIdentity hook with a hard cutoff date so the rest of the app was never blocked on auth. Second, Sui's object model is fundamentally different from account-based chains: we had to unlearn msg.sender-style checks and understand ownership types, the key/store/copy/drop abilities, and shared-object contention before we could design the Verdict correctly. Our first draft used a shared Registry object for indexing, which would have serialised every write, and we replaced it with events indexed off-chain. Third, Walrus was the least documented piece: setting up the publisher, deploying to testnet, and working out whether we needed WAL tokens cost more time than expected, until we switched to the public HTTP publisher (unsigned PUT) which removed the token dependency entirely, with a hash-verified fetch so tampered blobs are detected on read and a Vercel Blob fallback in case testnet quota ran out on demo day.
Tracks Applied (2)
AI × SUI
Sui Foundation
AI For Society
Gonka Router
Technologies used