self-review 2026-07-24: boot counter — demote to telemetry weight, restore persistence via HTTP write-back

Three stale soul:boot_count copies (salience .9, importance .9, Canonical:
+0.2 tier bias, 0.15 threshold) held the top WM slots for 23h — a boot
counter outcompeting real context. Demoted to salience .55 / importance .2 /
tier Working: plumbing, not memory.

Persistence was also broken: in HTTP-engram mode the server owns state and
nothing wrote the counter back — the log shows boot #5 on three consecutive
boots. mem_boot_count_inc now mirrors the persona write-back: delete stale
server copies (matched by content prefix — route_create_node sets
label=content), create the replacement server-side. Working tier is in the
boot seed (/api/nodes) but excluded from periodic /api/sync, so the count
survives restarts without re-importing mid-session. Verified: restart
incremented 1->2 with exactly one server-side counter node.
This commit is contained in:
2026-07-24 08:53:02 -05:00
parent 9e59c51f3c
commit fb0bb553f3
4 changed files with 123 additions and 5 deletions
+18 -1
View File
@@ -236,7 +236,24 @@ fn auto_term_try_slot(slot_type: String, slot_lbl: String) -> Void {
if !str_eq(slot_lbl, "") {
let sp: Int = str_find_chars(slot_lbl, " :([")
if sp > 3 {
state_set("cseed_auto", str_slice(slot_lbl, 0, sp))
// GENRE-WORD BLOCKLIST (2026-07-23 self-review): world-ingestor
// titles open with classifier prefixes ("Method paper ...",
// "Theory paper ..."), so the first word is a genre tag, not a
// topic. Verified live: every scan after Knowledge admission
// seeded on 'Method'. Skip these; a lower-WM slot with a
// topical first word wins instead.
let term: String = str_slice(slot_lbl, 0, sp)
state_set("_ats_gw", "0")
if str_eq(term, "Method") { state_set("_ats_gw", "1") }
if str_eq(term, "Theory") { state_set("_ats_gw", "1") }
if str_eq(term, "Finding") { state_set("_ats_gw", "1") }
if str_eq(term, "Survey") { state_set("_ats_gw", "1") }
if str_eq(term, "Paper") { state_set("_ats_gw", "1") }
if str_eq(term, "Knowledge") { state_set("_ats_gw", "1") }
if str_eq(term, "Value") { state_set("_ats_gw", "1") }
if str_eq(state_get("_ats_gw"), "0") {
state_set("cseed_auto", term)
}
}
}
}