refactor(hermes_cli): simplify 15 small modules — dead wrappers, unified helpers, dict dispatch, compact docs
This commit is contained in:
@@ -22,35 +22,26 @@ def strip_leaked_bracketed_paste_wrappers(text: str) -> str:
|
||||
"""
|
||||
if not text:
|
||||
return text
|
||||
|
||||
text = (
|
||||
text.replace("\x1b[200~", "")
|
||||
.replace("\x1b[201~", "")
|
||||
.replace("^[[200~", "")
|
||||
.replace("^[[201~", "")
|
||||
)
|
||||
for wrapper in ("\x1b[200~", "\x1b[201~", "^[[200~", "^[[201~"):
|
||||
text = text.replace(wrapper, "")
|
||||
text = _BRACKETED_PASTE_BOUNDARY_START.sub(r"\1", text)
|
||||
text = _BRACKETED_PASTE_BOUNDARY_END.sub("", text)
|
||||
text = _BRACKETED_PASTE_DEGRADED_START.sub(r"\1", text)
|
||||
text = _BRACKETED_PASTE_DEGRADED_END.sub("", text)
|
||||
return text
|
||||
return _BRACKETED_PASTE_DEGRADED_END.sub("", text)
|
||||
|
||||
|
||||
def collapse_repeated_input_artifacts(text: str, min_repeats: int = 4) -> str:
|
||||
"""Drop a trailing run of the desktop ~[[e corruption signature (#62557)."""
|
||||
if not text:
|
||||
return text
|
||||
|
||||
marker = _DESKTOP_PASTE_ARTIFACT
|
||||
index = len(text)
|
||||
repeat_count = 0
|
||||
while index >= len(marker) and text[index - len(marker) : index] == marker:
|
||||
repeat_count += 1
|
||||
index -= len(marker)
|
||||
|
||||
if repeat_count < min_repeats:
|
||||
return text
|
||||
|
||||
start = index
|
||||
if start >= 2 and text[start - 2 : start] == "[e":
|
||||
start -= 2
|
||||
@@ -63,5 +54,4 @@ def sanitize_user_prompt_text(text: str) -> str:
|
||||
"""Normalize user-authored prompt text before persistence or model input."""
|
||||
if not isinstance(text, str) or not text:
|
||||
return text
|
||||
cleaned = strip_leaked_bracketed_paste_wrappers(text)
|
||||
return collapse_repeated_input_artifacts(cleaned)
|
||||
return collapse_repeated_input_artifacts(strip_leaked_bracketed_paste_wrappers(text))
|
||||
|
||||
Reference in New Issue
Block a user