fix: consistent turn.completed signal and OpenCode session.idle timing (#97)

This commit is contained in:
Nathan Flurry 2026-02-06 03:01:24 -08:00 committed by GitHub
parent b74539172b
commit c0800e1a43
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 171 additions and 35 deletions

View file

@ -317,6 +317,27 @@ impl EventConversion {
}
}
pub fn turn_completed_event() -> EventConversion {
EventConversion::new(
UniversalEventType::ItemCompleted,
UniversalEventData::Item(ItemEventData {
item: UniversalItem {
item_id: String::new(),
native_item_id: None,
parent_id: None,
kind: ItemKind::Status,
role: Some(ItemRole::System),
content: vec![ContentPart::Status {
label: "turn.completed".to_string(),
detail: None,
}],
status: ItemStatus::Completed,
},
}),
)
.synthetic()
}
pub fn item_from_text(role: ItemRole, text: String) -> UniversalItem {
UniversalItem {
item_id: String::new(),