chore(test): sync agent name casing in tests (#1128)
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com>
This commit is contained in:
parent
68aa913499
commit
5c7eb02d5b
@ -25,7 +25,7 @@ export const START_WORK_TEMPLATE = `You are starting a Sisyphus work session.
|
|||||||
}
|
}
|
||||||
\`\`\`
|
\`\`\`
|
||||||
|
|
||||||
5. **Read the plan file** and start executing tasks according to Orchestrator Sisyphus workflow
|
5. **Read the plan file** and start executing tasks according to atlas workflow
|
||||||
|
|
||||||
## OUTPUT FORMAT
|
## OUTPUT FORMAT
|
||||||
|
|
||||||
@ -69,4 +69,4 @@ Reading plan and beginning execution...
|
|||||||
- The session_id is injected by the hook - use it directly
|
- The session_id is injected by the hook - use it directly
|
||||||
- Always update boulder.json BEFORE starting work
|
- Always update boulder.json BEFORE starting work
|
||||||
- Read the FULL plan file before delegating any tasks
|
- Read the FULL plan file before delegating any tasks
|
||||||
- Follow Orchestrator Sisyphus delegation protocols (7-section format)`
|
- Follow atlas delegation protocols (7-section format)`
|
||||||
|
|||||||
@ -37,7 +37,7 @@ describe("claude-code-session-state", () => {
|
|||||||
setSessionAgent(sessionID, "Prometheus (Planner)")
|
setSessionAgent(sessionID, "Prometheus (Planner)")
|
||||||
|
|
||||||
// #when - try to overwrite
|
// #when - try to overwrite
|
||||||
setSessionAgent(sessionID, "Sisyphus")
|
setSessionAgent(sessionID, "sisyphus")
|
||||||
|
|
||||||
// #then - first agent preserved
|
// #then - first agent preserved
|
||||||
expect(getSessionAgent(sessionID)).toBe("Prometheus (Planner)")
|
expect(getSessionAgent(sessionID)).toBe("Prometheus (Planner)")
|
||||||
@ -58,10 +58,10 @@ describe("claude-code-session-state", () => {
|
|||||||
setSessionAgent(sessionID, "Prometheus (Planner)")
|
setSessionAgent(sessionID, "Prometheus (Planner)")
|
||||||
|
|
||||||
// #when - force update
|
// #when - force update
|
||||||
updateSessionAgent(sessionID, "Sisyphus")
|
updateSessionAgent(sessionID, "sisyphus")
|
||||||
|
|
||||||
// #then
|
// #then
|
||||||
expect(getSessionAgent(sessionID)).toBe("Sisyphus")
|
expect(getSessionAgent(sessionID)).toBe("sisyphus")
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -129,7 +129,7 @@ describe("claude-code-session-state", () => {
|
|||||||
// #given - user switches to custom agent "MyCustomAgent"
|
// #given - user switches to custom agent "MyCustomAgent"
|
||||||
const sessionID = "test-session-custom"
|
const sessionID = "test-session-custom"
|
||||||
const customAgent = "MyCustomAgent"
|
const customAgent = "MyCustomAgent"
|
||||||
const defaultAgent = "Sisyphus"
|
const defaultAgent = "sisyphus"
|
||||||
|
|
||||||
// User switches to custom agent (via UI)
|
// User switches to custom agent (via UI)
|
||||||
setSessionAgent(sessionID, customAgent)
|
setSessionAgent(sessionID, customAgent)
|
||||||
|
|||||||
@ -21,7 +21,7 @@ describe("createContextInjectorMessagesTransformHook", () => {
|
|||||||
sessionID,
|
sessionID,
|
||||||
role,
|
role,
|
||||||
time: { created: Date.now() },
|
time: { created: Date.now() },
|
||||||
agent: "Sisyphus",
|
agent: "sisyphus",
|
||||||
model: { providerID: "test", modelID: "test" },
|
model: { providerID: "test", modelID: "test" },
|
||||||
path: { cwd: "/", root: "/" },
|
path: { cwd: "/", root: "/" },
|
||||||
},
|
},
|
||||||
|
|||||||
@ -373,7 +373,7 @@ describe("atlas hook", () => {
|
|||||||
const ORCHESTRATOR_SESSION = "orchestrator-write-test"
|
const ORCHESTRATOR_SESSION = "orchestrator-write-test"
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
setupMessageStorage(ORCHESTRATOR_SESSION, "Atlas")
|
setupMessageStorage(ORCHESTRATOR_SESSION, "atlas")
|
||||||
})
|
})
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
@ -444,7 +444,7 @@ describe("atlas hook", () => {
|
|||||||
test("should NOT append reminder when non-orchestrator writes outside .sisyphus/", async () => {
|
test("should NOT append reminder when non-orchestrator writes outside .sisyphus/", async () => {
|
||||||
// #given
|
// #given
|
||||||
const nonOrchestratorSession = "non-orchestrator-session"
|
const nonOrchestratorSession = "non-orchestrator-session"
|
||||||
setupMessageStorage(nonOrchestratorSession, "Sisyphus-Junior")
|
setupMessageStorage(nonOrchestratorSession, "sisyphus-junior")
|
||||||
|
|
||||||
const hook = createAtlasHook(createMockPluginInput())
|
const hook = createAtlasHook(createMockPluginInput())
|
||||||
const originalOutput = "File written successfully"
|
const originalOutput = "File written successfully"
|
||||||
@ -601,7 +601,7 @@ describe("atlas hook", () => {
|
|||||||
getMainSessionID: () => MAIN_SESSION_ID,
|
getMainSessionID: () => MAIN_SESSION_ID,
|
||||||
subagentSessions: new Set<string>(),
|
subagentSessions: new Set<string>(),
|
||||||
}))
|
}))
|
||||||
setupMessageStorage(MAIN_SESSION_ID, "Atlas")
|
setupMessageStorage(MAIN_SESSION_ID, "atlas")
|
||||||
})
|
})
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
@ -845,7 +845,7 @@ describe("atlas hook", () => {
|
|||||||
|
|
||||||
// #given - last agent is NOT Atlas
|
// #given - last agent is NOT Atlas
|
||||||
cleanupMessageStorage(MAIN_SESSION_ID)
|
cleanupMessageStorage(MAIN_SESSION_ID)
|
||||||
setupMessageStorage(MAIN_SESSION_ID, "Sisyphus")
|
setupMessageStorage(MAIN_SESSION_ID, "sisyphus")
|
||||||
|
|
||||||
const mockInput = createMockPluginInput()
|
const mockInput = createMockPluginInput()
|
||||||
const hook = createAtlasHook(mockInput)
|
const hook = createAtlasHook(mockInput)
|
||||||
|
|||||||
@ -419,7 +419,7 @@ describe("keyword-detector agent-specific ultrawork messages", () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// #when - ultrawork keyword detected with Sisyphus agent
|
// #when - ultrawork keyword detected with Sisyphus agent
|
||||||
await hook["chat.message"]({ sessionID, agent: "Sisyphus" }, output)
|
await hook["chat.message"]({ sessionID, agent: "sisyphus" }, output)
|
||||||
|
|
||||||
// #then - should use normal ultrawork message with agent utilization instructions
|
// #then - should use normal ultrawork message with agent utilization instructions
|
||||||
const textPart = output.parts.find(p => p.type === "text")
|
const textPart = output.parts.find(p => p.type === "text")
|
||||||
@ -471,7 +471,7 @@ describe("keyword-detector agent-specific ultrawork messages", () => {
|
|||||||
message: {} as Record<string, unknown>,
|
message: {} as Record<string, unknown>,
|
||||||
parts: [{ type: "text", text: "ultrawork implement" }],
|
parts: [{ type: "text", text: "ultrawork implement" }],
|
||||||
}
|
}
|
||||||
await hook["chat.message"]({ sessionID: sisyphusSessionID, agent: "Sisyphus" }, sisyphusOutput)
|
await hook["chat.message"]({ sessionID: sisyphusSessionID, agent: "sisyphus" }, sisyphusOutput)
|
||||||
|
|
||||||
// #then - each session should have the correct message type
|
// #then - each session should have the correct message type
|
||||||
const prometheusTextPart = prometheusOutput.parts.find(p => p.type === "text")
|
const prometheusTextPart = prometheusOutput.parts.find(p => p.type === "text")
|
||||||
@ -492,7 +492,7 @@ describe("keyword-detector agent-specific ultrawork messages", () => {
|
|||||||
const sessionID = "same-session-agent-switch"
|
const sessionID = "same-session-agent-switch"
|
||||||
|
|
||||||
// Simulate: session state was updated to sisyphus (by index.ts updateSessionAgent)
|
// Simulate: session state was updated to sisyphus (by index.ts updateSessionAgent)
|
||||||
updateSessionAgent(sessionID, "Sisyphus")
|
updateSessionAgent(sessionID, "sisyphus")
|
||||||
|
|
||||||
const output = {
|
const output = {
|
||||||
message: {} as Record<string, unknown>,
|
message: {} as Record<string, unknown>,
|
||||||
|
|||||||
@ -277,7 +277,7 @@ describe("prometheus-md-only", () => {
|
|||||||
|
|
||||||
describe("with non-Prometheus agent in message storage", () => {
|
describe("with non-Prometheus agent in message storage", () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
setupMessageStorage(TEST_SESSION_ID, "Sisyphus")
|
setupMessageStorage(TEST_SESSION_ID, "sisyphus")
|
||||||
})
|
})
|
||||||
|
|
||||||
test("should not affect non-Prometheus agents", async () => {
|
test("should not affect non-Prometheus agents", async () => {
|
||||||
|
|||||||
@ -835,8 +835,8 @@ describe("todo-continuation-enforcer", () => {
|
|||||||
|
|
||||||
// OpenCode returns assistant messages with flat modelID/providerID, not nested model object
|
// OpenCode returns assistant messages with flat modelID/providerID, not nested model object
|
||||||
const mockMessagesWithAssistant = [
|
const mockMessagesWithAssistant = [
|
||||||
{ info: { id: "msg-1", role: "user", agent: "Sisyphus", model: { providerID: "openai", modelID: "gpt-5.2" } } },
|
{ info: { id: "msg-1", role: "user", agent: "sisyphus", model: { providerID: "openai", modelID: "gpt-5.2" } } },
|
||||||
{ info: { id: "msg-2", role: "assistant", agent: "Sisyphus", modelID: "gpt-5.2", providerID: "openai" } },
|
{ info: { id: "msg-2", role: "assistant", agent: "sisyphus", modelID: "gpt-5.2", providerID: "openai" } },
|
||||||
]
|
]
|
||||||
|
|
||||||
const mockInput = {
|
const mockInput = {
|
||||||
@ -886,8 +886,8 @@ describe("todo-continuation-enforcer", () => {
|
|||||||
setMainSession(sessionID)
|
setMainSession(sessionID)
|
||||||
|
|
||||||
const mockMessagesWithCompaction = [
|
const mockMessagesWithCompaction = [
|
||||||
{ info: { id: "msg-1", role: "user", agent: "Sisyphus", model: { providerID: "anthropic", modelID: "claude-sonnet-4-5" } } },
|
{ info: { id: "msg-1", role: "user", agent: "sisyphus", model: { providerID: "anthropic", modelID: "claude-sonnet-4-5" } } },
|
||||||
{ info: { id: "msg-2", role: "assistant", agent: "Sisyphus", modelID: "claude-sonnet-4-5", providerID: "anthropic" } },
|
{ info: { id: "msg-2", role: "assistant", agent: "sisyphus", modelID: "claude-sonnet-4-5", providerID: "anthropic" } },
|
||||||
{ info: { id: "msg-3", role: "assistant", agent: "compaction", modelID: "claude-sonnet-4-5", providerID: "anthropic" } },
|
{ info: { id: "msg-3", role: "assistant", agent: "compaction", modelID: "claude-sonnet-4-5", providerID: "anthropic" } },
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -923,7 +923,7 @@ describe("todo-continuation-enforcer", () => {
|
|||||||
|
|
||||||
// #then - continuation uses Sisyphus (skipped compaction agent)
|
// #then - continuation uses Sisyphus (skipped compaction agent)
|
||||||
expect(promptCalls.length).toBe(1)
|
expect(promptCalls.length).toBe(1)
|
||||||
expect(promptCalls[0].agent).toBe("Sisyphus")
|
expect(promptCalls[0].agent).toBe("sisyphus")
|
||||||
})
|
})
|
||||||
|
|
||||||
test("should skip injection when only compaction agent messages exist", async () => {
|
test("should skip injection when only compaction agent messages exist", async () => {
|
||||||
|
|||||||
@ -18,12 +18,12 @@ describe("resolveAgentVariant", () => {
|
|||||||
// #given
|
// #given
|
||||||
const config = {
|
const config = {
|
||||||
agents: {
|
agents: {
|
||||||
Sisyphus: { variant: "low" },
|
sisyphus: { variant: "low" },
|
||||||
},
|
},
|
||||||
} as OhMyOpenCodeConfig
|
} as OhMyOpenCodeConfig
|
||||||
|
|
||||||
// #when
|
// #when
|
||||||
const variant = resolveAgentVariant(config, "Sisyphus")
|
const variant = resolveAgentVariant(config, "sisyphus")
|
||||||
|
|
||||||
// #then
|
// #then
|
||||||
expect(variant).toBe("low")
|
expect(variant).toBe("low")
|
||||||
@ -33,7 +33,7 @@ describe("resolveAgentVariant", () => {
|
|||||||
// #given
|
// #given
|
||||||
const config = {
|
const config = {
|
||||||
agents: {
|
agents: {
|
||||||
Sisyphus: { category: "ultrabrain" },
|
sisyphus: { category: "ultrabrain" },
|
||||||
},
|
},
|
||||||
categories: {
|
categories: {
|
||||||
ultrabrain: { model: "openai/gpt-5.2", variant: "xhigh" },
|
ultrabrain: { model: "openai/gpt-5.2", variant: "xhigh" },
|
||||||
@ -41,7 +41,7 @@ describe("resolveAgentVariant", () => {
|
|||||||
} as OhMyOpenCodeConfig
|
} as OhMyOpenCodeConfig
|
||||||
|
|
||||||
// #when
|
// #when
|
||||||
const variant = resolveAgentVariant(config, "Sisyphus")
|
const variant = resolveAgentVariant(config, "sisyphus")
|
||||||
|
|
||||||
// #then
|
// #then
|
||||||
expect(variant).toBe("xhigh")
|
expect(variant).toBe("xhigh")
|
||||||
@ -53,13 +53,13 @@ describe("applyAgentVariant", () => {
|
|||||||
// #given
|
// #given
|
||||||
const config = {
|
const config = {
|
||||||
agents: {
|
agents: {
|
||||||
Sisyphus: { variant: "low" },
|
sisyphus: { variant: "low" },
|
||||||
},
|
},
|
||||||
} as OhMyOpenCodeConfig
|
} as OhMyOpenCodeConfig
|
||||||
const message: { variant?: string } = {}
|
const message: { variant?: string } = {}
|
||||||
|
|
||||||
// #when
|
// #when
|
||||||
applyAgentVariant(config, "Sisyphus", message)
|
applyAgentVariant(config, "sisyphus", message)
|
||||||
|
|
||||||
// #then
|
// #then
|
||||||
expect(message.variant).toBe("low")
|
expect(message.variant).toBe("low")
|
||||||
@ -69,13 +69,13 @@ describe("applyAgentVariant", () => {
|
|||||||
// #given
|
// #given
|
||||||
const config = {
|
const config = {
|
||||||
agents: {
|
agents: {
|
||||||
Sisyphus: { variant: "low" },
|
sisyphus: { variant: "low" },
|
||||||
},
|
},
|
||||||
} as OhMyOpenCodeConfig
|
} as OhMyOpenCodeConfig
|
||||||
const message = { variant: "max" }
|
const message = { variant: "max" }
|
||||||
|
|
||||||
// #when
|
// #when
|
||||||
applyAgentVariant(config, "Sisyphus", message)
|
applyAgentVariant(config, "sisyphus", message)
|
||||||
|
|
||||||
// #then
|
// #then
|
||||||
expect(message.variant).toBe("max")
|
expect(message.variant).toBe("max")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user