feat: auto-enable full_session, thinking, and tool_results for running background tasks
This commit is contained in:
@@ -77,12 +77,17 @@ export function createBackgroundOutput(manager: BackgroundOutputManager, client:
|
||||
storeToolMetadata(ctx.sessionID, callID, meta)
|
||||
}
|
||||
|
||||
if (args.full_session === true) {
|
||||
const isActive = task.status === "pending" || task.status === "running"
|
||||
const fullSession = args.full_session ?? isActive
|
||||
const includeThinking = args.include_thinking ?? isActive
|
||||
const includeToolResults = args.include_tool_results ?? isActive
|
||||
|
||||
if (fullSession) {
|
||||
return await formatFullSession(task, client, {
|
||||
includeThinking: args.include_thinking === true,
|
||||
includeThinking,
|
||||
messageLimit: args.message_limit,
|
||||
sinceMessageId: args.since_message_id,
|
||||
includeToolResults: args.include_tool_results === true,
|
||||
includeToolResults,
|
||||
thinkingMaxChars: args.thinking_max_chars,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -77,12 +77,17 @@ export function createBackgroundOutput(manager: BackgroundOutputManager, client:
|
||||
storeToolMetadata(ctx.sessionID, callID, meta)
|
||||
}
|
||||
|
||||
if (args.full_session === true) {
|
||||
const isActive = task.status === "pending" || task.status === "running"
|
||||
const fullSession = args.full_session ?? isActive
|
||||
const includeThinking = args.include_thinking ?? isActive
|
||||
const includeToolResults = args.include_tool_results ?? isActive
|
||||
|
||||
if (fullSession) {
|
||||
return await formatFullSession(task, client, {
|
||||
includeThinking: args.include_thinking === true,
|
||||
includeThinking,
|
||||
messageLimit: args.message_limit,
|
||||
sinceMessageId: args.since_message_id,
|
||||
includeToolResults: args.include_tool_results === true,
|
||||
includeToolResults,
|
||||
thinkingMaxChars: args.thinking_max_chars,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -232,7 +232,7 @@ describe("background_output full_session", () => {
|
||||
expect(output).toContain("Has more: true")
|
||||
})
|
||||
|
||||
test("keeps legacy status output when full_session is false", async () => {
|
||||
test("defaults to full_session when task is running", async () => {
|
||||
// #given
|
||||
const task = createTask({ status: "running" })
|
||||
const manager = createMockManager(task)
|
||||
@@ -242,6 +242,20 @@ describe("background_output full_session", () => {
|
||||
// #when
|
||||
const output = await tool.execute({ task_id: "task-1" }, mockContext)
|
||||
|
||||
// #then
|
||||
expect(output).toContain("# Full Session Output")
|
||||
})
|
||||
|
||||
test("keeps legacy status output when full_session is explicitly false on running task", async () => {
|
||||
// #given
|
||||
const task = createTask({ status: "running" })
|
||||
const manager = createMockManager(task)
|
||||
const client = createMockClient({})
|
||||
const tool = createBackgroundOutput(manager, client)
|
||||
|
||||
// #when
|
||||
const output = await tool.execute({ task_id: "task-1", full_session: false }, mockContext)
|
||||
|
||||
// #then
|
||||
expect(output).toContain("# Task Status")
|
||||
expect(output).toContain("Task ID")
|
||||
|
||||
Reference in New Issue
Block a user