Build the knowledge graph pillar with the kg package:
- Node: hierarchical notes with parent/children, C2 wiki-style naming,
shared tag/category pool with artifacts
- Cell: content units (markdown, code, plain) with ordinal ordering
- Fact: EAV tuples with transaction timestamps and retraction support
- Edge: directed graph links (child, parent, related, artifact_link)
Includes schema migration (002_knowledge_graph.sql), protobuf definitions
(kg.proto), full gRPC KnowledgeGraphService implementation, CLI commands
(node create/get), and comprehensive test coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- exod: gRPC daemon with auto-migration, graceful shutdown (SIGINT/SIGTERM),
configurable listen address and data directory via flags
- exo: CLI client with import (YAML artifacts), tag add/list, cat add/list,
search by tag commands; connects via EXO_ADDR env var
- Add bin/ to .gitignore
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Build the complete artifact pillar with five packages:
- artifacts: Artifact, Snapshot, Citation, Publisher types with Get/Store
DB methods, tag/category management, metadata ops, YAML import
- blob: content-addressable store (SHA256, hierarchical dir layout)
- proto: protobuf definitions (common.proto, artifacts.proto) with buf
linting and code generation
- server: gRPC ArtifactService implementation (create/get artifacts,
store/retrieve blobs, manage tags/categories, search by tag)
All FK insertion ordering is correct (parent rows before children).
Full test coverage across artifacts, blob, and server packages.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Inline all data type definitions (Go structs, protobuf messages), the
full SQLite schema (11 tables), CAS directory layout, and the dbObject
interface directly into ARCHITECTURE.md so it is self-contained and does
not depend on cross-references to docs/.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ARCHITECTURE.md covers the system design: exod backend, single Kotlin
desktop app (Obsidian-style), layered architecture, data flow, CAS blob
store, cross-pillar integration, and key design decisions.
PROJECT_PLAN.md defines six implementation phases from foundation through
remote access, with concrete deliverables per phase.
CLAUDE.md updated to reference both documents and reflect the single-app
UI decision with unified search.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>