Skip to content

feat(cli): describe an unsubmitted manifest with -f - #328

Draft
rogirun wants to merge 1 commit into
feat/cli-describe-commandfrom
feat/cli-describe-file-mode
Draft

feat(cli): describe an unsubmitted manifest with -f#328
rogirun wants to merge 1 commit into
feat/cli-describe-commandfrom
feat/cli-describe-file-mode

Conversation

@rogirun

@rogirun rogirun commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

What does this PR do?

Adds -f, building the same view from a manifest alone with no cluster and no pods. The no-definition failure is emitted as a parseable object on stdout under a machine format, because an agent's fallback there differs from its fallback for any other failure.

Part of a seven-PR stack implementing kli describe (#206). Targets feat/cli-describe-command, which must merge first.

Related issue(s)

Refs #206

Checklist

  • All commits are signed off with DCO (git commit -s)
  • New/modified files have SPDX license and copyright headers
  • Documentation updated (if applicable)
  • Tests pass (make check)
  • No proprietary or internal information included

🤖 Generated with Claude Code

@rogirun
rogirun force-pushed the feat/cli-describe-file-mode branch from a9e1563 to c17c138 Compare September 6, 2026 12:59
@rogirun
rogirun force-pushed the feat/cli-describe-command branch 2 times, most recently from 1ec50de to 8209d30 Compare September 7, 2026 10:43
@rogirun
rogirun force-pushed the feat/cli-describe-file-mode branch from c17c138 to a7e281c Compare September 7, 2026 10:43
kli describe -f jobset.yaml answers what a workload would look like before it
is submitted: the same view, built from the manifest alone, with no cluster
needed. The kind comes from the manifest, so -f accepts no TYPE/NAME and says
so when given one.

File mode and live mode share one struct rather than growing a second shape:
the structure and desired scale are real, and everything live - pods, ready
counts, phase - is left empty and marked as absent. The tree reports the
desired scale instead of a "0/9 ready" that would read as nine pods failing to
start.

The no-definition failure is emitted as a parseable object on stdout when a
machine format was asked for, and stays the plain message on stderr for a
reader. That case alone gets the treatment: an agent's fallback for a type
Karta does not cover - inspect the object raw, or author a definition - is
unlike its fallback for any other failure, so it is worth more than a distinct
exit code.

Refs #206

Signed-off-by: Roee Gil <roee.gil@run.ai>
@rogirun
rogirun force-pushed the feat/cli-describe-file-mode branch from a7e281c to e93d041 Compare September 7, 2026 12:20
@rogirun
rogirun force-pushed the feat/cli-describe-command branch from 8209d30 to 3daa6b6 Compare September 7, 2026 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant