forked from BasedHardware/omi
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathagent-runtime-convergence-ratchet.json
More file actions
13 lines (13 loc) · 2.5 KB
/
Copy pathagent-runtime-convergence-ratchet.json
File metadata and controls
13 lines (13 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
{
"limits": {
"desktop/macos/Desktop/Sources/Chat/AgentRuntimeProcess.swift": 4404,
"desktop/macos/Desktop/Sources/Providers/ChatProvider.swift": 7404
},
"raise_justifications": {
"INV-CHAT-1": "Chat-first rich-block handling, answer submission, and task completion stay in the existing provider while its shared lifecycle extraction remains bounded.",
"INV-CHAT-1-attachment-only-send": "+10 for the attachment-only send. A file or referenced conversation staged with no words is a message in its own right, and the admission, the caption the row carries, and the model prompt that names the attachments as the subject all sit on the one send path this file owns; the helpers that build them live in ChatAttachmentOnlySend.swift, so the provider keeps only the decisions.",
"INV-CHAT-1-runtime-payload": "+8 for the bundled-runtime start refusal. A build shipped without Contents/Resources/pi-mono-extension accepted every chat turn and died four seconds later with \"pi-mono process exited (code 1)\"; the refusal has to sit beside the other start-refusal preconditions this file already owns, because a second observer would give one failure two owners. The reason and its wording were moved out to AgentRuntimePayload.StartRefusal, which is why this is +8 rather than +13 \u2014 the coordinator keeps only the decision to stop, not the explanation.",
"INV-CHAT-1-recent-frame-staging": "+16 for the recent-frame staging lifecycle. A staged screen frame is a real file the user chose to send, so the send path must wait (bounded) for an in-flight staging before it snapshots what the message carries, a failed turn must put the staged pixels back in the composer so retry re-sends them, and attachment removal, chat reset, and turn end must delete the app-owned temp file \u2014 otherwise the file outlives the conversation, a send drops a frame the user picked, or a retry asks about files that are gone. The staging helpers live in ChatProvider+RecentFrameStaging.swift and the fallback policy in ScreenContextFallbackPolicy.swift; the provider keeps only hooks on decisions it already owns, which is also why the explicit screen-evidence branch (ScreenContextTelemetry.swift) nets \u22121 here.",
"INV-CHAT-1-durable-source-evidence": "+6 for admitting selected-file evidence with its user turn through the existing single journal write path. Bounded file IO and evidence policy are extracted into ChatAttachmentEvidence; the provider only awaits that result and forwards metadata before journal acceptance."
}
}