feat(terminus2): observability - record observed decision turns - #3362
Conversation
Signed-off-by: Giulio Lovisotto <glovisotto@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
🌿 Preview your docs: https://nvidia-preview-glovisotto-terminus-observability.docs.buildwithfern.com/nemo/gym Here are the markdown pages you've updated: |
Signed-off-by: Giulio Lovisotto <glovisotto@nvidia.com>
|
/claude review |
|
SHIP — no reliability concerns. Reviewed the scoring path first. The
The Terminus2 observability adapter is honest about its own limits — it self-reports No new HTTP paths; model calls still route through the Gym client with an added Two NOTES (author's call, non-blocking):
|
Terminus2 now records canonical turns at Harbor's actual main-agent decision boundary, before terminal commands execute. Each turn retains the selected response's exact input, answer, reasoning, observed response time, and model-server/response-ID reference. A decision can issue several commands; retries and summarization requests do not become additional task turns. Completed decisions survive parser errors, tool failures, and cancellation.
The producer supplies execution identity so collection can attach captured calls to their invocation, and records known summarization boundaries separately. Rejected responses, synthetic fallback messages, and missing or reused response IDs produce explicit gaps instead of guessed decision evidence. Step counts represent completed nonempty terminal-command batch attempts; resolution remains unset.
Seven existing turn-content and owned-call checks can evaluate this evidence. Full turn-call accounting remains unobserved because the underlying HTTP transport can retry without notifying the adapter. A narrow
turn_model_call_scope_incompletehealth gate prevents false token-reconciliation findings and false policy-call completeness without suppressing those seven checks. This does not establish full rollout health or task success.Validation:
pre-commit run --all-filespassed; Fernnpm run checkpassed (0 errors, 1 warning).Additional crafted smokes on the same source used the real Terminus/Harbor loop, HTTP model adapter, OpenSandbox, verifier, saved capture projection, and health checks. The two proactive-compaction cases used a live managed model; the six fault/command cases used explicitly scripted model responses. Independent checks compared saved turn inputs and answers with exact captured calls and checked actual terminal feedback.
Collection limitations found by the cancellation smoke remain open:
The corrected smokes validate observability, not benchmark task success; verifier rewards were 0. Initial empty-history fixture attempts were retained as diagnostics and excluded from the successful compaction claims. No production code changed during this additional verification.