Dashboard › opencode-lore › Distillation
41638d5a-cfe5-4715-8390-e031aacc07fe["lore_tm_v1_dqkWC_yGe85s1e016buHj3hBG_HChPrSPBUeoiuZ-6U","lore_tm_v1_ySX9vGr9KV-w2_d23bBHwtk2QvDNn1nfiamn9geXzhw","lore_tm_v1_LUJf8hr3Pcmp5Y5Kx0QMMTqirxJTZVzHf_VamaMkdPA","lore_tm_v1_lIqXUNDO_cYyTcGz0DLPL30K1oI3onCLWOtzxINz9f0","lore_tm_v1_0LH7c4UmbxCp1Badh3SQIxuolFYEAQXtFyTEmW_9vVg"]
Date: Sep 16, 2026
recall tool is currently broken; when recall is needed, use lore recall or http://127.0.0.1:3207/ui/search instead.call_id/name matches in /home/byk/Code/opencode-lore-responses-projection-security/packages/gateway/test/openai-responses-recall-aware-stream.test.ts, at lines 160-161, 2369-2370, 2629-2630, 2694-2695, 2774-2775, 2845-2846, 2918-2919, 2983-2984, 3051-3052, 3100, 3175-3176, 5931-5932, and 6371."Audit and finish hidden-output security corrections with failing-first and mutation proof" was in_progress; 2. "Run affected, static, property, bundle, and exhaustive validation on exact candidate" was pending; 3. "Commit, freeze, and independently review the security correction" was pending; 4. "Rebase/update projection PR only after both reviews pass" was pending; 5. "Resume remaining focused provider, Codex, accumulation, reference, and recovery lanes" was pending. All five tasks had high priority."Always accumulate into the internal state for postResponse."packages/gateway/src/pipeline.ts:10350-10363, non-semantic Responses events are first passed to applyResponsesEvent(state, event, parsed) so reviewed metadata projections reach internal state; they are forwarded via enqueuePrincipal(encoder.encode(formatResponsesEvent(event, data)), otherToolSeen) only when both recallIndices.size === 0 and unresolvedToolIndices.size === 0, then processing continues.packages/gateway/src/pipeline.ts:10365-10403, response.output_item.added or response.output_item.done events whose item is a function_call named RECALL_TOOL_NAME set recallDetected = true; outputIndexForEvent() also records newly detected recall indexes in recallIndices and marks newlyPrivateRecallIndex = true.packages/gateway/src/pipeline.ts:10405-10421, events with an outputIndex add encoder.encode(data).byteLength to retainedStateBytes; exceeding maxRetainedStateBytes throws SSEStreamLimitError("Responses retained state exceeded byte limit"). Under opts.validation === "codex", non-added/non-done events for an implicit function_call with name === "" add that index to unresolvedToolIndices.packages/gateway/src/pipeline.ts:10424-10452, output-item events distinguish recall calls from visible or unresolved sparse function calls: recall calls set recallDetected, enter recallIndices, and set resolvingRecallTool; Codex response.output_item.added calls with an empty name enter unresolvedToolIndices; other function calls set resolvingVisibleTool.packages/gateway/src/pipeline.ts:10455-10464, semantic events are always accumulated with applyResponsesEvent(state, event, parsed) for postResponse; response.output_item.done invokes preserveStreamedReasoning(state, outputIndex); detecting a newly private recall index when recallIndices.size > 1 throws RecallContinuationFailure("parallel_recall")."never fails on conflict"—jj records conflicts in the resulting commit rather than aborting the operation..jj/ exists, use jj rather than Git for mutations; never use interactive flags; always pass -m "msg" for commit descriptions; verify squash, abandon, rebase, restore, and commit with jj st and jj log; prefer stable change IDs over commit IDs; do not rebase or describe immutable commits; use jj undo or jj op restore <op-id> for recovery.rebase, new, or squash, run jj st; resolve conflicted files manually by editing Jujutsu conflict markers rather than using interactive jj resolve; jj st reports the conflict cleared after the edits.@ is itself a commit with automatic snapshots and no staging area; bookmarks do not auto-advance; after jj commit, content is in @- and @ is a new empty change; move the bookmark with jj bookmark set <name> -r @-; jj new creates a new empty change rather than committing; :: is a DAG range while .. is set difference; recover stale working copies with jj workspace update-stale; do not use git checkout, git commit, or git reset in a colocated repository.