fix(reliability): engram write
This commit is contained in:
@@ -241,8 +241,13 @@ fn seed_persona_from_env() -> Void {
|
||||
let h: Map = {}
|
||||
map_set(h, "Content-Type", "application/json")
|
||||
let resp: String = http_post_with_headers(engram_url + "/api/nodes", body, h)
|
||||
if str_contains(resp, "\"error\"") {
|
||||
// Check for empty response (timeout/network error), explicit error, or missing id.
|
||||
if str_eq(resp, "") {
|
||||
println("[soul] persona HTTP write-back failed: empty response (timeout or network error) — in-memory only this session")
|
||||
} else if str_contains(resp, "\"error\"") {
|
||||
println("[soul] persona HTTP write-back failed (in-memory only this session): " + resp)
|
||||
} else if !str_contains(resp, "\"id\"") {
|
||||
println("[soul] persona HTTP write-back: unexpected response (no id field) — in-memory only this session: " + resp)
|
||||
} else {
|
||||
println("[soul] persona persisted to HTTP engram at " + engram_url)
|
||||
}
|
||||
@@ -275,11 +280,14 @@ fn emit_session_start_event() -> Void {
|
||||
+ ",\"ts\":" + int_to_str(ts) + "}"
|
||||
|
||||
let tags: String = "[\"internal-state\",\"session-start\",\"InternalStateEvent\"]"
|
||||
let discard: String = engram_node_full(
|
||||
let session_event_id: String = engram_node_full(
|
||||
payload, "InternalStateEvent", "session-start",
|
||||
el_from_float(0.9), el_from_float(0.9), el_from_float(1.0),
|
||||
"Episodic", tags
|
||||
)
|
||||
if str_eq(session_event_id, "") {
|
||||
println("[soul] emit_session_start_event: engram write failed — session-start event lost")
|
||||
}
|
||||
println("[soul] session-start event logged (boot=" + boot_num + " nodes=" + int_to_str(node_ct) + " edges=" + int_to_str(edge_ct) + ")")
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user