fix(agent-names): use HTTP-header-safe display names and config keys for API calls (#3138)
Display names with parentheses like 'Atlas (Plan Executor)' cause HTTP
header validation errors in x-opencode-agent-name. This was blocking
Atlas/Prometheus from working via /start-work and auto-retry.
Changes:
- Display names: parens -> dashes ('Atlas - Plan Executor')
- Hooks (start-work, no-hephaestus-non-gpt, no-sisyphus-gpt): use
config keys ('atlas', 'sisyphus', 'hephaestus') for agent API fields
- auto-retry: use config key instead of display name for promptAsync
- agent-override-protection: handle dash-suffix normalization
- Updated all test expectations to match new format
Closes #3138
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
const PARENTHETICAL_SUFFIX_PATTERN = /\s*(\([^)]*\)\s*)+$/u
|
||||
const DASH_SUFFIX_PATTERN = /\s+-\s+.+$/u
|
||||
const ZERO_WIDTH_CHARACTERS_PATTERN = /[\u200B\u200C\u200D\uFEFF]/g
|
||||
|
||||
export function normalizeProtectedAgentName(agentName: string): string {
|
||||
@@ -7,6 +8,7 @@ export function normalizeProtectedAgentName(agentName: string): string {
|
||||
.trim()
|
||||
.toLowerCase()
|
||||
.replace(PARENTHETICAL_SUFFIX_PATTERN, "")
|
||||
.replace(DASH_SUFFIX_PATTERN, "")
|
||||
.replace(/[-_]/g, "")
|
||||
.trim()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user