Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 18e1ab6db1 |
@@ -6031,6 +6031,14 @@ void el_cgi_init(el_val_t name, el_val_t dharma_id, el_val_t principal,
|
||||
#define ENGRAM_LAYER_DOMAIN 2u
|
||||
#define ENGRAM_LAYER_IMPRINT 3u
|
||||
#define ENGRAM_LAYER_SUIT 4u
|
||||
#define ENGRAM_LAYER_ACCUMULATION 5u
|
||||
/* New user-facing nodes (memories, knowledge, conversations) are created in the
|
||||
* accumulation layer — the top of the consciousness stack, the engram the user
|
||||
* sees; every layer below shapes behavior but is hidden from the user (Layered
|
||||
* Consciousness architecture, app 64/064,262). ENGRAM_LAYER_DEFAULT stays
|
||||
* core-identity ON PURPOSE: it is the fallback home for LEGACY nodes loaded from
|
||||
* snapshots without a layer_id, so existing data (the originator corpus) is
|
||||
* never migrated out of its established layer. New != legacy. */
|
||||
#define ENGRAM_LAYER_DEFAULT ENGRAM_LAYER_CORE_IDENTITY
|
||||
|
||||
/* Pass 3 override floor. Layer 0 nodes that received any background
|
||||
@@ -6208,6 +6216,20 @@ static void engram_init_layers(EngramStore* g) {
|
||||
.transparent = 0,
|
||||
.injectable = 1
|
||||
};
|
||||
/* Layer 5 — accumulation. The TOP of the consciousness stack: the default
|
||||
* home for all new user-facing nodes. This is the engram the user sees;
|
||||
* every layer below shapes behavior but is hidden from the user. Not
|
||||
* injectable — it is the persistent user accumulation, not a swappable
|
||||
* overlay. transparent=0: its content is surfaced to introspection (it is
|
||||
* the user's own knowledge/memory), unlike the lower behavioral layers. */
|
||||
g->layers[g->layer_count++] = (EngramLayer){
|
||||
.layer_id = ENGRAM_LAYER_ACCUMULATION,
|
||||
.name = el_strdup_persist("accumulation"),
|
||||
.activation_priority = 50,
|
||||
.suppressible = 1,
|
||||
.transparent = 0,
|
||||
.injectable = 0
|
||||
};
|
||||
}
|
||||
|
||||
static EngramStore* engram_get(void) {
|
||||
@@ -6399,7 +6421,7 @@ el_val_t engram_node(el_val_t content, el_val_t node_type, el_val_t salience) {
|
||||
n->last_activated = now;
|
||||
n->created_at = now;
|
||||
n->updated_at = now;
|
||||
n->layer_id = ENGRAM_LAYER_DEFAULT;
|
||||
n->layer_id = ENGRAM_LAYER_ACCUMULATION; /* new user-facing node → top layer */
|
||||
g->node_count++;
|
||||
return el_wrap_str(el_strdup(n->id));
|
||||
}
|
||||
@@ -6435,7 +6457,7 @@ el_val_t engram_node_full(el_val_t content, el_val_t node_type, el_val_t label,
|
||||
n->last_activated = now;
|
||||
n->created_at = now;
|
||||
n->updated_at = now;
|
||||
n->layer_id = ENGRAM_LAYER_DEFAULT;
|
||||
n->layer_id = ENGRAM_LAYER_ACCUMULATION; /* new user-facing node → top layer */
|
||||
g->node_count++;
|
||||
return el_wrap_str(el_strdup(n->id));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user