A single trace record can include conversations produced by different tools. Top-level tool alone cannot represent mixed-tool records accurately.
Problem
Developers often use multiple AI tools within the same editing session. For example, a tab-autocomplete engine for quick completions alongside a chat-based agent for larger refactors. If both contributions appear in one trace record, the top-level tool can only represent one of them. The other tool's provenance is either lost or pushed into unstructured metadata, which reduces the value of a standard attribution format.
Proposal
- Add optional
conversation.tool with the same structure as top-level tool.
- Define precedence:
- If
conversation.tool is present, it applies to that conversation.
- Otherwise, use top-level
tool as the default.
Why This Should Be Added
- Preserves precise provenance in mixed-tool workflows.
- Avoids forcing a common attribution dimension into vendor-specific metadata.
- Keeps existing top-level behavior unchanged when absent.
Compatibility
Backward-compatible optional addition.
Scope
This is a data-model expressiveness change for attribution only. It does not propose protocol or UI behavior.
A single trace record can include conversations produced by different tools. Top-level
toolalone cannot represent mixed-tool records accurately.Problem
Developers often use multiple AI tools within the same editing session. For example, a tab-autocomplete engine for quick completions alongside a chat-based agent for larger refactors. If both contributions appear in one trace record, the top-level
toolcan only represent one of them. The other tool's provenance is either lost or pushed into unstructuredmetadata, which reduces the value of a standard attribution format.Proposal
conversation.toolwith the same structure as top-leveltool.conversation.toolis present, it applies to that conversation.toolas the default.Why This Should Be Added
Compatibility
Backward-compatible optional addition.
Scope
This is a data-model expressiveness change for attribution only. It does not propose protocol or UI behavior.