Repository navigation
feat: add the lineage commands and studio logs - #700
Merged
Merged
Conversation
This was referenced Oct 5, 2026
Open
Merged
cristianrcv
added this pull request to stack #704
October 5, 2026 16:12
This was referenced Oct 5, 2026
Closed
cristianrcv
removed this pull request from stack #704
October 5, 2026 16:20
cristianrcv
added this pull request to stack #705
October 5, 2026 16:20
georgi-seqera
approved these changes
Oct 7, 2026
georgi-seqera
left a comment
Contributor
There was a problem hiding this comment.
Tested and verified lineage and studio logs commands and they are working fine and looking good 👍
cristianrcv
removed this pull request from stack #705
October 7, 2026 13:26
cristianrcv
force-pushed
the
feat/NOTASK-tw-api-1.190
branch
from
October 7, 2026 15:01
a1a7bf9 to
613eeda
Compare
Platform API 1.200.0 added read-only lineage endpoints (resolve, search, record, summary, upstream, downstream) that tw did not expose. tw lineage resolve turns a run (session ID) or a file path into its LID; view shows a record, or its index summary with --summary; search runs the cross-workspace query DSL with token paging; upstream and downstream walk one data-flow hop, optionally filtered by record type. LIDs are double-encoded in the path, as the web UI does, because the API decodes them twice to survive proxy path normalization. API 1.200 resolves a run by session ID alone. The run name parameter, the pipeline search qualifiers and the record's pipeline name came in later API versions, so they are not offered here. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Platform API 1.200.0 added the studio session log endpoint, but tw had no way to read it. tw studios logs prints the process log of the latest session of a studio, one page at a time: --next takes the cursor printed at the end of the previous page and --max-length caps the characters returned. SDK 1.200.0 types LogPage.entries as Object (the spec declares an Iterator) while Platform sends a JSON array, so the log entries are read as a List, as tw runs view log does. The test compares against the platform line separator, since println writes CRLF on Windows. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…pipeline API 1.211.0 made GET /lineage/resolve take runName with sessionId: a resumed run shares the session ID of its parent, so the session ID alone does not identify one run. 'lineage resolve --session-id' now requires --run-name and sends both; the SDK bump passed null until now. API 1.230.0 added the pipeline to lineage records (DisplayData pipelineName/pipelineId) and the pipeline/pipelineId search qualifiers. 'lineage view' shows a Pipeline row and 'lineage search --query' documents the new qualifiers. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
A Lineage section with examples, and 'logs' added to the studios entry in 'Other additions'. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…o logs commands Entries for the lineage and 'studios logs' commands and responses, taken from a full test run under the GraalVM tracing agent. Response classes register allDeclaredFields, since Jackson serializes every field for -o json. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
cristianrcv
force-pushed
the
feat/NOTASK-tw-api-1.200
branch
from
October 7, 2026 15:37
645c985 to
40ab2ae
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds two features, on top of
master(SDK 1.233.0):tw lineage:resolve,view(with--summary),search,upstreamanddownstream(API 1.200).resolve --run-nameand the Pipeline row inviewcome from API 1.211/1.230.tw studios logs: pages through a studio's session log with--next(API 1.200).Changes
Notes for review
--run-name: API 1.211+ requiresrunNametogether withsessionId, so--session-idrequires--run-name. This was moved here from fix(launch): stop launch --wait duplicate runs and support API 1.230 options [COMP-2645] #701.--max-cpus-per-userand--max-spot-attemptswere in this PR. They extend the Intelligent Compute options in feat: support Platform API 1.167 features (audit logs, IdP groups, SCIM, Intelligent Compute) #698, so they move there and stay with that topic.Verification
./gradlew test: 889 tests, 0 failures.🤖 Generated with Claude Code