[RESEARCH][semantic-store] Evaluate CouchDB as an append-only replicated semantic-ledger transport for Prolog-RLM #390
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/prolog-rlm#390
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Related: #388 #392 #394 #400 #402
Downstream boundary:
lost-rob0t/symbolic-memoryResearch question
Determine whether CouchDB is a good physical transport/storage adapter for the append-oriented symbolic-knowledge architecture without treating CouchDB as the reasoner, truth oracle, or a magical CRDT database.
Target conceptual split:
This is a research/design issue only. Do not implement a CouchDB backend here.
Core questions
Research and record:
_changes, partitioned DBs, Mango/indexes, attachments, checkpoints?_changessequence/checkpoint state map to exact semantic frontiers without confusing CouchDB sequence tokens with semantic truth/time?ledger commit -> changes feed -> Prolog materialization -> checkpoint?Candidate document model
Research a model where CouchDB stores immutable records such as:
Prefer append-only lifecycle events over last-write-wins mutation of a global
truthdocument.A proposition and an assertion episode must remain distinct per #392.
CRDT-like semantics to evaluate
Evaluate whether the immutable assertion/event collection can safely use an application-level grow-only-set style merge:
and where this stops being sufficient.
Compare at least:
Do not call CouchDB itself a CRDT unless the exact property being claimed is proven.
Prolog materialization boundary
Define the required adapter contract between a durable semantic ledger and Prolog. Questions include:
Required invariant to investigate:
under a normalized semantic comparison.
Repository boundary
Preserve #402's ownership split unless research produces a strong reason to revise it:
prolog-rlm: semantic record contracts, reasoning profiles, materializer/replay semantics, conformance expectations;symbolic-memory: concrete durable storage adapters and physical CouchDB integration if adopted.Do not make
prolog-rlmdepend directly on CouchDB merely because this research evaluates it.Required outputs
Produce a durable research record containing:
adopt,adopt for limited profile, orreject;Acceptance
Non-goals
current truthdocument as canonical state;we should look into local databases too, this is more so a starintel problem not a prolog-rlm issue
or even non databases too