stemedb/ai-lookup/services/assertion.md
jordan a776744889 Initial project setup with Claude Code monorepo structure
- Rust workspace with stemedb-core crate
- Full .claude/ configuration (agents, skills, commands, guides)
- ai-lookup/ for token-efficient fact storage
- Quality gates: clippy, fmt, jscpd duplication detection
- Pre-commit hook with 5-phase quality checks
- CLAUDE.md router and CODING_GUIDELINES.md standards

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 10:56:26 -07:00

42 lines
1.1 KiB
Markdown

# Assertion
**Last Updated:** 2025-01-31
**Confidence:** High
## Summary
The Assertion is the atomic unit of Episteme. It represents a signed claim about reality, not a mutable fact.
**Key Facts:**
- Immutable once written (append-only)
- Content-addressed by BLAKE3 hash
- Contains: subject, predicate, object, source, agent, timestamp
- Optionally includes vector embedding for semantic search
**File Pointer:** `crates/stemedb-core/src/assertion.rs` (planned)
## Structure
```rust
pub struct Assertion {
pub subject: EntityId, // "Tesla_Inc"
pub predicate: RelationId, // "has_revenue"
pub object: ObjectValue, // Float(96.7B), String("Musk"), Ref(EntityId)
pub source: SourceHash, // Evidence pointer (PDF/URL hash)
pub agent: AgentId, // Ed25519 public key
pub timestamp: u64, // Wall clock time
pub vector: Option<Vec<f32>>, // Semantic embedding
}
```
## Identity
Assertion ID = BLAKE3(subject || predicate || object || agent || timestamp)
Same content from same agent at same time = same hash.
## Related Topics
- [Storage Layout](./storage.md)
- [Lens Resolution](./lens.md)