Liking cljdoc? Tell your friends :D

hive-proximum.store

Datahike-backed IMemoryStore + IMemoryStoreTemporal for hive-proximum.

Bitemporal design:

  • Every write is a new Datahike transaction (immutable fact log)
  • Updates add new facts; old values preserved in history
  • Deletes set :entry/deleted? true (tombstone, never hard-delete)
  • Temporal queries use d/as-of and d/history for time-travel

Protocol extension uses extend (function, not macro) to avoid compile-time dependency on hive-mcp.protocols.memory.

Backend: Datahike 0.8.1667 (matches hive-mcp/hive-knowledge)

Datahike-backed IMemoryStore + IMemoryStoreTemporal for hive-proximum.

Bitemporal design:
- Every write is a new Datahike transaction (immutable fact log)
- Updates add new facts; old values preserved in history
- Deletes set :entry/deleted? true (tombstone, never hard-delete)
- Temporal queries use d/as-of and d/history for time-travel

Protocol extension uses `extend` (function, not macro) to avoid
compile-time dependency on hive-mcp.protocols.memory.

Backend: Datahike 0.8.1667 (matches hive-mcp/hive-knowledge)
raw docstring

create-storeclj

(create-store)
(create-store opts)

Create a ProximumStore instance. Does NOT connect immediately (lazy). Options: :backend - :memory (default) or :file :path - file path for :file backend (default: data/proximum/datahike) :config - raw Datahike config map (overrides :backend/:path)

Create a ProximumStore instance. Does NOT connect immediately (lazy).
Options:
  :backend  - :memory (default) or :file
  :path     - file path for :file backend (default: data/proximum/datahike)
  :config   - raw Datahike config map (overrides :backend/:path)
sourceraw docstring

create-stub-storeclj

(create-stub-store)

Create a ProximumStore. Replaces the old stub. Uses in-memory Datahike backend by default.

Create a ProximumStore. Replaces the old stub.
Uses in-memory Datahike backend by default.
sourceraw docstring

ensure-conn!clj

(ensure-conn! {:keys [conn-atom cfg]})

Ensure Datahike connection is established. Returns conn.

Ensure Datahike connection is established. Returns conn.
sourceraw docstring

entity->mapclj

(entity->map e)

Convert Datahike entity map to clean entry map.

:entry/content is stored as a JSON-encoded string by add-entry! / update-entry! (see entry->tx-data). Parse it back to a Clojure map on read so callers (e.g. kanban transitions) see structured content without round-tripping through json/read-str. Non-JSON content (legacy plain strings) is returned as-is.

Convert Datahike entity map to clean entry map.

`:entry/content` is stored as a JSON-encoded string by `add-entry!` /
`update-entry!` (see `entry->tx-data`). Parse it back to a Clojure map
on read so callers (e.g. kanban transitions) see structured content
without round-tripping through `json/read-str`. Non-JSON content
(legacy plain strings) is returned as-is.
sourceraw docstring

entry->tx-dataclj

(entry->tx-data {:keys [id type content tags content-hash source expires-at]})

Convert entry map to Datahike transaction data.

:entry/content is canonically JSON-encoded so entity->map on read can deserialize back to a Clojure map. Pre-encoded strings (e.g. JSON produced by memory-kanban) pass through untouched.

Convert entry map to Datahike transaction data.

`:entry/content` is canonically JSON-encoded so `entity->map` on read
can deserialize back to a Clojure map. Pre-encoded strings (e.g. JSON
produced by `memory-kanban`) pass through untouched.
sourceraw docstring

entry-schemaclj

source

extend-store-protocols!clj

(extend-store-protocols!)

Extend ProximumStore with IMemoryStore + IMemoryStoreTemporal. Uses extend (function) — protocol resolution is fully runtime. Safe to call multiple times (idempotent via atom guard).

Extend ProximumStore with IMemoryStore + IMemoryStoreTemporal.
Uses `extend` (function) — protocol resolution is fully runtime.
Safe to call multiple times (idempotent via atom guard).
sourceraw docstring

make-datahike-configclj

(make-datahike-config)
(make-datahike-config {:keys [backend path]
                       :or {backend :memory path "data/proximum/datahike"}})

Build Datahike config map. Supports :memory and :file backends.

Build Datahike config map. Supports :memory and :file backends.
sourceraw docstring

pull-entryclj

(pull-entry db id)

Pull an entry from db, return nil if deleted or not found.

Pull an entry from db, return nil if deleted or not found.
sourceraw docstring

pull-entry-rawclj

(pull-entry-raw db id)

Pull an entry from db, including deleted entries.

Pull an entry from db, including deleted entries.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close