feat: memory scope segmentation — wire context scope into perceive gate
Some checks failed
Deploy (Gitea) / deploy (push) Has been cancelled

Adds *scope-resolver* hook in core-loop-perceive that the context-manager
skill sets at load time. The perceive gate now passes the active scope
to ingest-ast, tagging all ingested objects with the current context scope.

Implementation:
- core-loop-perceive: *scope-resolver* defvar (default nil → :memex),
  two ingest-ast calls now pass (if *scope-resolver* (funcall it) :memex)
- core-defpackage: export *scope-resolver* and context-query
- system-context-manager: auto-init sets *scope-resolver* to #'current-scope

This completes the Memory Scope Segmentation feature: all three scopes
(:memex, :session, :project) are supported, scope-aware retrieval
(context-query :scope / context-scoped-query) was already implemented,
and ingested objects now correctly carry the active scope.
This commit is contained in:
2026-05-03 16:07:20 -04:00
parent a27a3d02b0
commit 5d93f201be
6 changed files with 59 additions and 26 deletions

View File

@@ -116,3 +116,6 @@ until stack is empty or :memex context is reached."
(when (> (context-stack-depth) 0)
nil))
nil))
(when (boundp '*scope-resolver*)
(setf *scope-resolver* #'current-scope))