Dashboard › opencode-lore › Distillation
6637bace-1bb2-44dc-882e-3073ecd1da79["lore_tm_v1_JzC2bq-g_m95oaNWiFy4r2bdoX0wVMyBO8D0-YcWdnU","lore_tm_v1_LC_Fqq8fTnKmBTAYtnCn4kTx0T2ASWy47MrjxM6ys4M","lore_tm_v1_ozFXt0lWb1YpdE9wcmya8p5d0kAI2UtrWHEmTLZ1D4I","lore_tm_v1_b5Nix4-7KopHZFwV4e1mLZznI0CL_ZNgsa4247yQ8lI","lore_tm_v1_nnfSImY9PF1zJSvY_vGdAn_VuIiIcGOar4-uHEBoDDc"]
Date: Sep 16, 2026
streamResponsesRecallAware never forwards response-side item_reference lifecycle events; neither streamed output nor the rebuilt response.completed.response may contain item_reference.packages/gateway/src/stream/openai-responses.ts showed ResponsesAccState stores terminal metadata, codexRateLimits, original rawItems, strict identity indexes (itemIndexById, callIndexById, effectiveToolIndexById), active/unbound/done item sets, and accumulated text or tool_use items keyed by output_index.SUPPORTED_RESPONSES_OUTPUT_ITEM_TYPES in packages/gateway/src/stream/openai-responses.ts includes 32 types: message, function_call, function_call_output, reasoning, item_reference, web_search_call, file_search_call, computer_call, computer_call_output, computer_tool_call, computer_tool_call_output, code_interpreter_call, image_generation_call, local_shell_call, local_shell_call_output, shell_call, shell_call_output, mcp_call, mcp_list_tools, mcp_approval_request, mcp_approval_response, custom_tool_call, custom_tool_call_output, apply_patch_call, apply_patch_call_output, program, program_output, tool_search_call, tool_search_output, additional_tools, compaction.isSupportedResponsesOutputItemType() accepts only string values present in RESPONSES_OUTPUT_ITEM_TYPES; isValidResponsesOutputItemStatus() permits omitted status but otherwise validates type/status against the phase-specific OUTPUT_ITEM_STATUSES_BY_TYPE matrix for added, done, or terminal.terminalValueExtends() recursively requires exact array lengths, recursively compatible record fields, and isDeepStrictEqual() for scalar values; sparseValueExtends() permits established undefined/null, treats an established empty string as compatible with any string, and permits actual arrays to extend established arrays.packages/gateway/test/openai-responses-recall-aware-stream.test.ts documents the regression motivating streamResponsesRecallAware: buffered accumulateResponsesSSEStream withheld all bytes during slow reasoning-heavy responses, causing opencode’s 10-second ProviderHeaderTimeoutError; the true-streaming path forwards events live, intercepts recall function calls, emits a marker, runs a follow-up, and rebuilds terminal response.completed.expectVisibleOutputIndicesToMatchTerminal(), which verifies every visible event carrying an output_index and item identity maps to the same item ID at that index in terminal response.completed.response.output.packages/gateway/test/openai-responses-recall-aware-stream.test.ts verifies an item_reference added/done lifecycle and terminal snapshot are sanitized from client output; a separate test rejects an item_reference missing response.output_item.done.summary_index are accepted and response.reasoning_summary_text.delta remains visible, and that completed reasoning ciphertext is used in a recall continuation.