forked from kent/consciousness
Reduce pub visibility in agent::api and user modules
api/: parsing module private, SamplingParams/StreamEvent/StreamResult/ AbortOnDrop/build_response_message/collect_stream to pub(crate). Internal types (ChatRequest, ChunkChoice, Delta, etc.) to pub(crate). StreamResult fields to pub(crate). Parsing functions to pub(super). user/: context, subconscious, unconscious, thalamus modules private (only chat needs pub(crate) for mind/ access). Co-Authored-By: Proof of Concept <poc@bcachefs.org>
This commit is contained in:
parent
f33b1767da
commit
c64295ddb2
4 changed files with 29 additions and 29 deletions
|
|
@ -17,7 +17,7 @@ use super::types::{ToolCall, FunctionCall};
|
|||
/// Looks for `<tool_call>...</tool_call>` blocks and tries both
|
||||
/// XML and JSON formats for the body.
|
||||
/// Parse a single tool call body (content between `<tool_call>` and `</tool_call>`).
|
||||
pub fn parse_tool_call_body(body: &str) -> Option<ToolCall> {
|
||||
pub(super) fn parse_tool_call_body(body: &str) -> Option<ToolCall> {
|
||||
let normalized = normalize_xml_tags(body);
|
||||
let body = normalized.trim();
|
||||
let mut counter = 0u32;
|
||||
|
|
@ -25,7 +25,7 @@ pub fn parse_tool_call_body(body: &str) -> Option<ToolCall> {
|
|||
.or_else(|| parse_json_tool_call(body, &mut counter))
|
||||
}
|
||||
|
||||
pub fn parse_leaked_tool_calls(text: &str) -> Vec<ToolCall> {
|
||||
pub(super) fn parse_leaked_tool_calls(text: &str) -> Vec<ToolCall> {
|
||||
// Normalize whitespace inside XML tags: "<\nfunction\n=\nbash\n>" → "<function=bash>"
|
||||
// This handles streaming tokenizers that split tags across tokens.
|
||||
let normalized = normalize_xml_tags(text);
|
||||
|
|
@ -147,7 +147,7 @@ fn parse_json_tool_call(body: &str, counter: &mut u32) -> Option<ToolCall> {
|
|||
/// Strip tool call XML and thinking tokens from text so the conversation
|
||||
/// history stays clean. Removes `<tool_call>...</tool_call>` blocks and
|
||||
/// `</think>` tags (thinking content before them is kept — it's useful context).
|
||||
pub fn strip_leaked_artifacts(text: &str) -> String {
|
||||
pub(super) fn strip_leaked_artifacts(text: &str) -> String {
|
||||
let normalized = normalize_xml_tags(text);
|
||||
let mut result = normalized.clone();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue