Fix ACD turn summary loss and add /dump command
ACD (Aggressive Context Dehydration) fixes: - Fixed dehydrate_context() to extract turn summary from context window instead of using the passed-in final_response (which contained only the timing footer, not the actual LLM response) - Removed final_response parameter from dehydrate_context() since it now self-extracts the last assistant message as the summary - This ensures the actual turn summary is preserved after dehydration, not just the timing footer New /dump command: - Added /dump command to dump entire context window to tmp/ for debugging - Shows message index, role, kind, content length, and full content - Available in both console and machine modes UTF-8 safety: - Fixed truncate_to_word_boundary() to use character indices instead of byte indices, preventing panics on multi-byte UTF-8 characters - Added UTF-8 string slicing guidance to AGENTS.md Agent: g3
This commit is contained in:
@@ -85,6 +85,12 @@ pub fn get_thinned_dir(session_id: &str) -> PathBuf {
|
||||
get_session_logs_dir(session_id).join("thinned")
|
||||
}
|
||||
|
||||
/// Get the fragments directory for a session (for ACD dehydrated context).
|
||||
/// Returns .g3/sessions/<session_id>/fragments/
|
||||
pub fn get_fragments_dir(session_id: &str) -> PathBuf {
|
||||
get_session_logs_dir(session_id).join("fragments")
|
||||
}
|
||||
|
||||
/// Get the path to the session.json file for a session.
|
||||
/// Returns .g3/sessions/<session_id>/session.json
|
||||
pub fn get_session_file(session_id: &str) -> PathBuf {
|
||||
|
||||
Reference in New Issue
Block a user