- 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>
42 lines
1.1 KiB
Markdown
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)
|