This commit adds the read path (Cortex) to complement the write path (Spine): ## Crates - stemedb-api: HTTP API with axum + utoipa OpenAPI - /v1/assert, /v1/query, /v1/epoch, /v1/skeptic, /v1/trace, /v1/audit - Metered endpoints with quota enforcement - Ed25519 signature verification - stemedb-lens: Truth resolution lenses - RecencyLens, ConsensusLens, ConfidenceLens - VoteAwareConsensusLens (Ballot Box pattern) - TrustAwareAuthorityLens (The Hive pattern) - SkepticLens (conflict analysis) - EpochAwareLens (paradigm-safe queries) - stemedb-query: Query engine with materialized views ## Storage Extensions - VoteStore: Vote aggregation with cached counts - TrustRankStore: Agent reputation with decay - AuditStore: Query audit trail - IndexStore: SP/P/S index structures - SupersessionStore: Epoch supersession chains ## SDKs - sdk/go/steme: Go HTTP client with Ed25519 signing - sdk/go/adk: ADK-Go tools for AI agents ## Documentation - Updated CLAUDE.md, architecture.md, roadmap.md - New ai-lookup entries for all services - Use case docs for consumer health intelligence - Arena roadmap for simulation advancement Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
39 lines
1.4 KiB
YAML
39 lines
1.4 KiB
YAML
remediation: unify-test-helpers
|
|
status: COMPLETED
|
|
phase: VERIFY
|
|
|
|
problem: 9 duplicate create_assertion/create_test_assertion factory functions across 8 files
|
|
solution: Created stemedb-core::testing module with AssertionBuilder + factory functions
|
|
|
|
audit:
|
|
instances_found: 9
|
|
files_affected: 8
|
|
patterns:
|
|
- "create_assertion(subject, timestamp)" # recency.rs
|
|
- "create_assertion(subject, value, timestamp)" # consensus.rs, vote_aware_consensus.rs
|
|
- "create_assertion(subject, confidence, timestamp)" # authority.rs
|
|
- "create_assertion(subject, confidence, agent_id, timestamp)" # trust_aware_authority.rs
|
|
- "create_test_assertion(subject, predicate, lifecycle)" # engine.rs, query.rs
|
|
- "create_assertion(subject, predicate, value, timestamp)" # materializer.rs
|
|
- "create_signed_assertion(subject, predicate)" # worker.rs (crypto)
|
|
|
|
fix:
|
|
created:
|
|
- crates/stemedb-core/src/testing.rs
|
|
modified:
|
|
- crates/stemedb-core/src/lib.rs
|
|
- crates/stemedb-lens/src/recency.rs
|
|
- crates/stemedb-lens/src/consensus.rs
|
|
- crates/stemedb-lens/src/authority.rs
|
|
- crates/stemedb-lens/src/vote_aware_consensus.rs
|
|
- crates/stemedb-lens/src/trust_aware_authority.rs
|
|
- crates/stemedb-query/src/engine.rs
|
|
- crates/stemedb-query/src/query.rs
|
|
- crates/stemedb-query/src/materializer.rs
|
|
- crates/stemedb-ingest/src/worker.rs
|
|
|
|
verify:
|
|
tests: 164 passed, 0 failed
|
|
clippy: 0 warnings (deny level)
|
|
fmt: clean
|