(add-wrap-notification! wrap-id
{:keys [agent-id session-id project-id created-ids stats
parent-session-id depth]})Record a ling wrap for coordinator permeation.
Arguments: wrap-id - Unique identifier for this wrap notification opts - Map with keys: :agent-id - ID of the ling that wrapped :session-id - Session tag (e.g., session:2026-01-14:ling-123) :project-id - Project ID for scoping (derived from ling's directory) :created-ids - Collection of memory entry IDs created :stats - Map of stats {:notes N :decisions N :conventions N} :parent-session-id - Session of the coordinator this wrap permeates INTO. This is what lets a coordinator select its OWN lings' wraps; project-id cannot, because two coordinators share a project. :depth - Hierarchy depth of the wrapping session
Returns: Transaction report
Record a ling wrap for coordinator permeation.
Arguments:
wrap-id - Unique identifier for this wrap notification
opts - Map with keys:
:agent-id - ID of the ling that wrapped
:session-id - Session tag (e.g., session:2026-01-14:ling-123)
:project-id - Project ID for scoping (derived from ling's directory)
:created-ids - Collection of memory entry IDs created
:stats - Map of stats {:notes N :decisions N :conventions N}
:parent-session-id - Session of the coordinator this wrap
permeates INTO. This is what lets a coordinator
select its OWN lings' wraps; project-id cannot,
because two coordinators share a project.
:depth - Hierarchy depth of the wrapping session
Returns:
Transaction report(get-unprocessed-wraps)Get all wrap notifications not yet processed by coordinator.
Returns: Seq of wrap notification maps
Get all wrap notifications not yet processed by coordinator. Returns: Seq of wrap notification maps
(get-unprocessed-wraps-for-hierarchy project-id-prefix)Get unprocessed wrap notifications for project and all its children.
Uses prefix matching on project-id to support hierarchical project IDs like 'parent:child:grandchild'. A query for 'parent' will match:
Arguments: project-id-prefix - Project ID prefix to match (e.g., 'myproject' matches 'myproject', 'myproject:submodule', etc.)
Returns: Seq of wrap notification maps for matching projects
Note: If project-id-prefix is nil or 'global', returns all unprocessed wraps.
Get unprocessed wrap notifications for project and all its children.
Uses prefix matching on project-id to support hierarchical project IDs
like 'parent:child:grandchild'. A query for 'parent' will match:
- 'parent'
- 'parent:child'
- 'parent:child:grandchild'
Arguments:
project-id-prefix - Project ID prefix to match (e.g., 'myproject' matches
'myproject', 'myproject:submodule', etc.)
Returns:
Seq of wrap notification maps for matching projects
Note: If project-id-prefix is nil or 'global', returns all unprocessed wraps.(get-unprocessed-wraps-for-project project-id)Get unprocessed wrap notifications for a specific project.
Arguments: project-id - Project ID to filter by (e.g., derived from directory)
Returns: Seq of wrap notification maps matching the project
Note: If project-id is nil or 'global', returns all unprocessed wraps.
Get unprocessed wrap notifications for a specific project. Arguments: project-id - Project ID to filter by (e.g., derived from directory) Returns: Seq of wrap notification maps matching the project Note: If project-id is nil or 'global', returns all unprocessed wraps.
(get-unprocessed-wraps-for-session parent-session-id)Unprocessed wraps that permeate into parent-session-id -- the wraps of the
lings this coordinator actually owns.
This is the session-scoped counterpart of get-unprocessed-wraps-for-project. Prefer it: a project-id match cannot separate two coordinators running in the same project, and each would consume the other's lings' wraps.
Unprocessed wraps that permeate into `parent-session-id` -- the wraps of the lings this coordinator actually owns. This is the session-scoped counterpart of get-unprocessed-wraps-for-project. Prefer it: a project-id match cannot separate two coordinators running in the same project, and each would consume the other's lings' wraps.
(mark-wrap-processed! wrap-id)Mark a wrap notification as processed.
Arguments: wrap-id - ID of the wrap notification to mark
Returns: Transaction report or nil if wrap-id not found
Mark a wrap notification as processed. Arguments: wrap-id - ID of the wrap notification to mark Returns: Transaction report or nil if wrap-id not found
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |