reconcile: merge Will's self-review WIP (456267a) into main
Union of all ship-critical soul fixes for the Mac beta: - Keeps main's honest receipts (#100/#101), immutability arc + #199 by-id gate (#83), Track B threat routing (#76), bounded beginSession (#103), CI hardening (#85/#86), elc typo hotfix (#77), neuron-dev-setup (#84). - Brings WIP's genesis-boot SIGSEGV fix (#150/#95), safety-contact 988 truncation fix (#96), bounded-persona floor (#93), and 10 self-review commits (importance flattening, curiosity DF gating, WM/heartbeat observability, boot-counter telemetry). - Folds the multi-word ranked-search fix: api_query_param now url_decode()s the extracted value so q=foo%20bar / foo+bar tokenize as two words. Conflicts (neuron-api.el payload-bound comments, mcp-wrapper tool_forget) resolved toward the correct end state: main's verified honest-receipt read-back is kept; WIP's improved forget description is kept. Generated dist/*.c taken from main and will be regenerated from this reconciled source in the following commit.
This commit is contained in:
+23
-1
@@ -16,6 +16,7 @@ el_val_t mem_remember(el_val_t content, el_val_t tags);
|
||||
el_val_t mem_recall(el_val_t query, el_val_t depth);
|
||||
el_val_t mem_search(el_val_t query, el_val_t limit);
|
||||
el_val_t mem_strengthen(el_val_t node_id);
|
||||
el_val_t mem_tombstone(el_val_t node_id);
|
||||
el_val_t mem_forget(el_val_t node_id);
|
||||
el_val_t mem_consolidate(void);
|
||||
el_val_t mem_save(el_val_t path);
|
||||
@@ -36,7 +37,12 @@ el_val_t safety_log_bell(el_val_t level, el_val_t reason, el_val_t input_summary
|
||||
el_val_t safety_self_harm_phrases(void);
|
||||
el_val_t safety_abuse_phrases(void);
|
||||
el_val_t safety_general_hard_phrases(void);
|
||||
el_val_t safety_threat_to_others_phrases(void);
|
||||
el_val_t safety_soft_phrases(void);
|
||||
el_val_t safety_normalize(el_val_t message);
|
||||
el_val_t safety_any_match(el_val_t text, el_val_t phrases_json);
|
||||
el_val_t safety_count_match(el_val_t text, el_val_t phrases_json);
|
||||
el_val_t safety_positive_phrases(void);
|
||||
el_val_t safety_detect_positive_level(el_val_t message);
|
||||
el_val_t safety_detect_bell_level(el_val_t message);
|
||||
el_val_t safety_classify_hard_bell(el_val_t message);
|
||||
@@ -46,12 +52,13 @@ el_val_t safety_augment_system(el_val_t system, el_val_t user_msg);
|
||||
el_val_t safety_contact_path(void);
|
||||
el_val_t handle_safety_contact_get(void);
|
||||
el_val_t handle_safety_contact_post(el_val_t body);
|
||||
el_val_t steward_log_event(el_val_t kind, el_val_t detail);
|
||||
el_val_t steward_get_mission(void);
|
||||
el_val_t steward_align(el_val_t input, el_val_t imprint_id);
|
||||
el_val_t steward_validate_imprint(el_val_t imprint_id, el_val_t tool_name);
|
||||
el_val_t steward_cgi_check(el_val_t action);
|
||||
el_val_t steward_log_event(el_val_t kind, el_val_t detail);
|
||||
el_val_t steward_fingerprint_session(el_val_t input, el_val_t session_id);
|
||||
el_val_t extract_dim(el_val_t content, el_val_t key);
|
||||
el_val_t steward_build_baseline(void);
|
||||
el_val_t steward_check_continuity(el_val_t current_fingerprint, el_val_t session_id);
|
||||
el_val_t steward_session_check(el_val_t input, el_val_t session_id);
|
||||
@@ -69,6 +76,7 @@ el_val_t elapsed_ms(void);
|
||||
el_val_t elapsed_human(void);
|
||||
el_val_t embed_ok(void);
|
||||
el_val_t emit_heartbeat(void);
|
||||
el_val_t auto_term_try_slot(el_val_t slot_type, el_val_t slot_lbl);
|
||||
el_val_t proactive_curiosity(void);
|
||||
el_val_t pulse_count(void);
|
||||
el_val_t pulse_inc(void);
|
||||
@@ -103,7 +111,10 @@ el_val_t id_in_seen(el_val_t node_id, el_val_t seen);
|
||||
el_val_t add_to_seen(el_val_t seen, el_val_t node_id);
|
||||
el_val_t engram_extract_ids(el_val_t nodes_json);
|
||||
el_val_t engram_compile(el_val_t intent);
|
||||
el_val_t distill_transcript(el_val_t transcript);
|
||||
el_val_t json_safe(el_val_t s);
|
||||
el_val_t current_engine_note(el_val_t model);
|
||||
el_val_t bounded_persona_floor(void);
|
||||
el_val_t build_system_prompt(el_val_t ctx, el_val_t chat_mode);
|
||||
el_val_t hist_append(el_val_t hist, el_val_t role, el_val_t content);
|
||||
el_val_t hist_trim(el_val_t hist);
|
||||
@@ -112,10 +123,15 @@ el_val_t clean_llm_response(el_val_t s);
|
||||
el_val_t conv_history_persist(el_val_t hist);
|
||||
el_val_t conv_history_load(void);
|
||||
el_val_t session_preload_bullets(el_val_t nodes, el_val_t max_bullets, el_val_t snip_len);
|
||||
el_val_t affective_context_prefix(void);
|
||||
el_val_t handle_chat(el_val_t body);
|
||||
el_val_t handle_see(el_val_t body);
|
||||
el_val_t studio_tools_json(void);
|
||||
el_val_t agentic_api_key(void);
|
||||
el_val_t llm_base_url(void);
|
||||
el_val_t llm_wire_format(void);
|
||||
el_val_t json_escape(el_val_t s);
|
||||
el_val_t openai_chat_complete(el_val_t model, el_val_t base_url, el_val_t api_key, el_val_t safe_sys, el_val_t messages_json);
|
||||
el_val_t agentic_tools_literal(void);
|
||||
el_val_t agentic_tools_with_web(void);
|
||||
el_val_t connector_tools_json(void);
|
||||
@@ -126,6 +142,10 @@ el_val_t call_neuron_mcp(el_val_t tool_name, el_val_t args);
|
||||
el_val_t agent_workspace_root(void);
|
||||
el_val_t path_within_root(el_val_t path, el_val_t root);
|
||||
el_val_t resolve_in_root(el_val_t path, el_val_t root);
|
||||
el_val_t run_command_is_readonly(el_val_t cmd);
|
||||
el_val_t cmd_abs_escape_at(el_val_t cmd, el_val_t root, el_val_t needle);
|
||||
el_val_t run_command_guard(el_val_t cmd, el_val_t root);
|
||||
el_val_t classify_tool_risk(el_val_t tool_name, el_val_t tool_input);
|
||||
el_val_t dispatch_tool(el_val_t tool_name, el_val_t tool_input);
|
||||
el_val_t is_builtin_tool(el_val_t tool_name);
|
||||
el_val_t next_bridge_id(void);
|
||||
@@ -158,6 +178,7 @@ el_val_t elp_extract_topic(el_val_t msg);
|
||||
el_val_t elp_detect_predicate(el_val_t msg);
|
||||
el_val_t elp_parse(el_val_t msg);
|
||||
el_val_t handle_elp_chat(el_val_t body);
|
||||
el_val_t flag_true(el_val_t body, el_val_t key);
|
||||
el_val_t rate_limit_check(el_val_t ip, el_val_t path);
|
||||
el_val_t strip_query(el_val_t path);
|
||||
el_val_t err_404(el_val_t path);
|
||||
@@ -444,6 +465,7 @@ el_val_t emit_session_start_event(void) {
|
||||
el_val_t payload = el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(el_str_concat(EL_STR("{\"event\":\"session_start\""), EL_STR(",\"boot\":")), boot_num), EL_STR(",\"cgi\":\"")), eff_cgi), EL_STR("\"")), EL_STR(",\"node_count\":")), int_to_str(node_ct)), EL_STR(",\"edge_count\":")), int_to_str(edge_ct)), EL_STR(",\"identity_loaded\":")), has_identity), EL_STR(",\"prev_session_summary_loaded\":")), has_prev_sum), EL_STR(",\"ts\":")), int_to_str(ts)), EL_STR("}"));
|
||||
el_val_t tags = EL_STR("[\"internal-state\",\"session-start\",\"InternalStateEvent\"]");
|
||||
el_val_t discard = engram_node_full(payload, EL_STR("InternalStateEvent"), EL_STR("session-start"), el_from_float(0.9), el_from_float(0.9), el_from_float(1.0), EL_STR("Episodic"), tags);
|
||||
ise_post(payload);
|
||||
el_val_t keep_n = 10;
|
||||
el_val_t old_events = engram_search_json(EL_STR("session-start InternalStateEvent"), 200);
|
||||
if (!str_eq(old_events, EL_STR("")) && !str_eq(old_events, EL_STR("[]"))) {
|
||||
|
||||
Reference in New Issue
Block a user