Skip to content

Fleet board requires node agent options the CLI no longer defines (set-model --json, headless spawn options) #1844

Description

@agent-relay-code

Problem

Four Daytona board operations require node agent options that the built CLI no longer defines, so they fail with commander's unknown option error on a live campaign:

Operation Required option(s) Leaf
node-agent-set-model --json node agent set-model
node-agent-set-model-app-server-a --endpoint, --protocol, --session-id, --release node agent spawn
node-agent-set-model-app-server-b --endpoint, --protocol, --session-id, --release node agent spawn
node-agent-new-reject-headless --release (plus --runtime headless) node agent new

Confirmed against the built CLI:

$ node packages/cli/dist/cli/index.js node agent set-model foo bar --json
error: unknown option '--json'
$ node packages/cli/dist/cli/index.js node agent spawn --help | grep -E -- '--protocol|--endpoint|--session-id|--release'
(no output)

node agent set-model takes no options at all and prints a best-effort text line (packages/cli/src/cli/commands/local-agent.ts:934-944), but the harness parses a rich JSON receipt from it (scripts/verify-features/fleet-daytona.mjs nodeAgentControls, and the public AppServer proof). node agent spawn --runtime accepts auto | native | pty only, so the headless AppServer path the two app-server operations prove has no CLI surface either.

Root cause

Pre-existing CLI drift: the options were removed (or never landed) while the board kept requiring them. matrix.optionCoverage can only describe options that exist in the regenerated inventory, so the drift left no signal there — regenerating the inventory just drops the coverage entry.

PR #1842 added matrix.optionDrift to tests/relayflows/cleanroom/fleet-daytona.matrix.json plus validateFleetOptionDrift in scripts/verify-features/fleet-daytona.mjs, which now validates argvMustContain → inventory in both directions and fails at matrix load if a required option is neither defined by the CLI nor declared as known drift. The four entries there point at this issue.

Expected

Either:

  • restore the CLI surfaces the board proves (node agent set-model --json receipt from relay#1658, headless AppServer spawn options), or
  • rewrite the four operations/harness assertions against the surfaces that exist today.

Then delete the matching matrix.optionDrift entries — validateFleetOptionDrift fails if an entry names an option the CLI defines again, so the declaration is self-retiring.

Acceptance

  • No matrix.optionDrift entries remain for node agent set-model, node agent spawn, or node agent new.
  • A live Daytona campaign runs the four operations without an unknown option failure.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions