refactor: unify shared utility normalization helpers

This commit is contained in:
Peter Steinberger
2026-03-07 20:10:54 +00:00
parent 30d091b2fb
commit 3ec81709d7
12 changed files with 115 additions and 53 deletions

View File

@@ -31,7 +31,7 @@ export const ACP_INSTALL_USAGE = "Usage: /acp install";
export const ACP_DOCTOR_USAGE = "Usage: /acp doctor";
export const ACP_SESSIONS_USAGE = "Usage: /acp sessions";
export const ACP_STEER_OUTPUT_LIMIT = 800;
export const SESSION_ID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
export { SESSION_ID_RE } from "../../../sessions/session-id.js";
export type AcpAction =
| "spawn"

View File

@@ -18,6 +18,7 @@ import { parseDiscordTarget } from "../../../discord/targets.js";
import { callGateway } from "../../../gateway/call.js";
import { formatTimeAgo } from "../../../infra/format-time/format-relative.ts";
import { parseAgentSessionKey } from "../../../routing/session-key.js";
import { looksLikeSessionId } from "../../../sessions/session-id.js";
import { extractTextFromChatContent } from "../../../shared/chat-content.js";
import {
formatDurationCompact,
@@ -75,8 +76,6 @@ export const RECENT_WINDOW_MINUTES = 30;
const SUBAGENT_TASK_PREVIEW_MAX = 110;
export const STEER_ABORT_SETTLE_TIMEOUT_MS = 5_000;
const SESSION_ID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
function compactLine(value: string) {
return value.replace(/\s+/g, " ").trim();
}
@@ -345,7 +344,7 @@ export async function resolveFocusTargetSession(params: {
const attempts: Array<Record<string, string>> = [];
attempts.push({ key: token });
if (SESSION_ID_RE.test(token)) {
if (looksLikeSessionId(token)) {
attempts.push({ sessionId: token });
}
attempts.push({ label: token });