Eidos Bootup Sprint

Summary

A multi-phase sprint (initiated March 31, 2026) to transition from the legacy Grimoire domain to the Eidos API using the Hyle type system, establish the Hermes↔Eidos MCP loop, and perform comprehensive cleanup of stale code references. Tracked via SPRINT-EIDOS-BOOTUP.md.

Details

Phase 1: Hyle Type System Implementation

Replaced legacy GraphModel, MemoryType, MemoryRole, and RelationType enums with concrete Hyle primitives in eidos/src/eidos/domain/models/concrete.py:

  • Observations: FriendUtterance, ClaudeUtterance (content, embeddings, salience, conversation IDs)
  • Entities: TopicCluster, GitRepository, CodeFile, ConfluenceSpace, ConfluencePage
  • Memory union type with node_type Literal discriminators

GenericMemoryRepository and MemoryRepository updated to use BaseNode methods (labels(), to_neo4j_properties()) instead of legacy GraphModel API. Service layer (memory_service.py, Git/Confluence connectors) refactored to resolve ghost imports.

Phase 2: API and Security Hardening

  • memory.py recall endpoint: memory_typenode_type, timestampobserved_at/created_at
  • OAuth refactored: removed import-time secret generation (invalidated tokens on restart) → deterministic secrets via sops-nix
  • ALLOWED_EMAIL_DOMAINS: wise.issokrates.is
  • Logfire namespace updated to “eidos”, CORS configured
  • System crashes on startup if jwt_secret_key missing in production

Phase 3: Hermes↔Eidos MCP Integration

Transport configured via hermes.nixhttp://localhost:8000/mcp. SOUL.md updated with Eidos tool awareness: remember, recall, health, query. Replaced aspirational curl transport with native HTTP MCP support.

Phase 4: Final Cleanup and Rebranding

Comprehensive search-and-replace across the entire repository:

  • CLI/Plugins: grimoire_urleidos_url, query-grimoire/query-eidos/
  • Environment variables: SOKRATES_GRIMOIRE_URLSOKRATES_EIDOS_URL
  • Documentation: AGENTS.md, CLAUDE.md files updated
  • Infrastructure: Watchdog containers in docker.nix, philosopher-king Dockerfile corrected
  • All 16 CLI tests passing under new naming

Deferred

GQL compilation target, hyperedge semantics, Differential Datalog evaluation, MemoryRelationship → formal BaseEdge migration.