nsmcp::CodexQuestionRun method observeItem (protected)
<instance of nsmcp::CodexQuestionRun> observeItem phase item
Defined in /usr/local/ns/tcl/nsmcp/question-backend.tcl
Retain bounded protocol metadata; item bodies and arguments stay out.
- Parameters:
- phase (required)
- item (required)
- Testcases:
- No testcase defined.
Source code: set type unknown if {[dict exists $item type] && [regexp {^[A-Za-z][A-Za-z0-9_-]{0,63}$} [dict get $item type]]} { set type [dict get $item type] } set :lastItemType $type if {$phase eq "completed"} { set :lastCompletedItemType $type } if {$type eq "mcpToolCall" && [dict exists $item id] && [dict exists $item tool]} { set id [dict get $item id] set name [dict get $item tool] # Names must come from the pinned authorized inventory. Never retain # arbitrary model-supplied strings as tool metadata. if {$id ne {} && [string length $id]<=512 && [dict exists ${:pins} $name]} { if {$phase eq "started" && ![dict exists ${:activeTools} $id] && [dict size ${:activeTools}]<32} { dict set :activeTools $id [dict create name $name at [clock milliseconds]] } elseif {$phase eq "completed" && [dict exists ${:activeTools} $id] && [dict get ${:activeTools} $id name] eq $name} { dict unset :activeTools $id } } } :emit [dict create type backendDiagnostic diagnostic [:diagnostic]]XQL Not present: Generic, PostgreSQL, Oracle
![[i]](/resources/acs-subsite/ZoomIn16.gif)