Browse documentation

trace_pipeline

[solution]

Runs restore, build, and test as one ordered GliderTrace session. It stops at the first stage that fails. The verdict names that stage, its first cause, and the Glider symbolKey the cause maps to.

Before you use this tool

Executes commands with your local permissions. Commands can change workspace files and contact package sources. Check the workspace and runner policy. Runs a workspace-scoped restore, build, and test. It does not run arbitrary setup steps. The native runners in GliderTrace 1.1.0 require their matching executable policies.

Try it locally in the GliderTrace playground

Parameters

NameTypeRequiredDescription
targetPathstringNoOptional solution, project, or directory path under the workspace root. Defaults to the workspace root.
configurationstringNoBuild and test configuration. Defaults to Release.
restorebooleanNoRun the restore stage first. When true, build and test skip their own restore. Defaults to true. Default: true
buildbooleanNoRun the build stage. Defaults to true. Default: true
testbooleanNoRun the test stage. Defaults to true. Default: true
restoreTimeoutMsnumberNoOptional restore-stage timeout in milliseconds.
buildTimeoutMsnumberNoOptional build-stage timeout in milliseconds.
solutionPathstringNoOptional solution or project path used to correlate the attributed cause to a Glider symbol.
labelstringNoOptional short label for the stored session, for example nightly-baseline. Use it to find the session again with trace_list_sessions. Maximum 128 characters.
profilestringNoOptional named MSBuild property profile applied to the restore and build stages, and to the test stage when build is false. Use 'worktree' to accommodate a Git worktree checkout.
restoreRunnerstringNoRestore runner: 'auto', 'dotnet', or 'nuget'. The default keeps dotnet restore. The nuget value requires its executable policy.
buildRunnerstringNoBuild runner: 'auto', 'dotnet', or 'msbuild'. The default keeps dotnet build. The msbuild value requires its executable policy.
testRunnerstringNoTest runner: 'auto', 'dotnet-test', 'vstest', or 'vstest-console'. The existing vstest value uses dotnet vstest. The new vstest-console value uses native VSTest and requires its executable policy.
testAssembliesjsonNoWorkspace-scoped prebuilt test DLLs for VSTest runners. An enabled build can create the expected outputs before testing.
testFrameworkstringNoRequested VSTest framework moniker. Requires a VSTest test runner.
testPlatformstringNoRequested VSTest architecture: x86, x64, or ARM. Requires a VSTest test runner.
testAdapterPathstringNoWorkspace-scoped adapter directory for VSTest. An enabled build can create the expected directory.
vstestConsolePathstringNoPolicy-validated native VSTest executable path. Requires testRunner vstest-console.
runSettingsPathstringNoWorkspace-scoped vetted VSTest settings. Collectors, custom loggers, and dump capture are rejected.
testFilterstringNoTest filter expression. It maps to dotnet test filter or VSTest TestCaseFilter according to testRunner.
testTimeoutMsnumberNoTest-stage deadline in milliseconds. It applies across initial execution and reruns with server limits.
nugetConfigPathstringNoWorkspace-scoped NuGet configuration for the restore stage.
packagesDirectorystringNoWorkspace-scoped package destination for the restore stage.
restoreLockedModebooleanNoEnable the restore runner's locked mode. Defaults to false. Default: false
disableParallelRestorebooleanNoDisable parallel package restore. Defaults to false. Default: false
restorePropertiesjsonNoMSBuild properties for dotnet restore. The nuget runner records a warning because it does not forward them.
restoreArgumentsjsonNoValidated dotnet restore arguments. Use dedicated parameters for managed artifact and package paths.
buildPropertiesjsonNoMSBuild properties for the build stage, for example PlatformTarget or TargetFrameworkVersion.
buildArgumentsjsonNoValidated build arguments. The server manages its binary log destination.
buildFrameworkstringNodotnet build target framework. Native MSBuild uses its existing property contract instead.

Examples

Replace sample paths and symbol keys with values from your workspace.

Run restore, build, and test as one pipeline

Arguments
{}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "trace_pipeline",
    "arguments": {}
  }
}

Run the pipeline with the worktree profile

Arguments
{
  "profile": "worktree"
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "trace_pipeline",
    "arguments": {
      "profile": "worktree"
    }
  }
}

Skip restore and run build then test

Arguments
{
  "restore": false
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "trace_pipeline",
    "arguments": {
      "restore": false
    }
  }
}

Response Notes

Returns a pipeline session id, an overall status, and a passed flag. It lists each stage with its status and child session id. The verdict names the failed stage, first cause, symbolKey, and whether that stage evidence was complete.

GliderTrace 1.0.0 returns compact JSON for every tool. Result fields appear beside success; there is no response-format parameter. success describes the tool call. Check the process or session status and exitCode separately. Scalar results and fields that conflict with reserved names appear under result.

To migrate an envelope consumer, read response.sessionId instead of response.data.sessionId. Stored sessions and exported files keep their formats. --max-response-chars limits response text to 60,000 UTF-16 characters by default. Use 0 to disable it, or at least 1,000. This limit counts text characters, not transport bytes or tokens.

outputLimit.truncated marks omitted response detail. It does not change capture completeness. Use the returned next tool and arguments when available. Do not repeat a command or feedback submission to recover omitted output. For event pages, keep the filters and cursor while reducing limit.

For session details, set includeArtifacts and includeTopFindings to false to reduce output. Check error, actionable meta, warnings, and coverage before drawing conclusions. Internal diagnostics stay in local server logs.