Skip to content

[Linux] nemoclaw policy-add fails: missing version field in generated policy YAML #991

@zNeill

Description

@zNeill

Description

Test Plan 2- https://docs.google.com/document/d/1KkbgO4KClboR6XB52ztkOyeUsUgWTzWXwsVWM4PuCSA/edit?tab=t.0
4.2

Description

1. Issue summary

nemoclaw policy-add fails with failed to parse sandbox policy YAML — missing field 'version' because bin/lib/policies.js generates a policy YAML without the required version field that openshell policy set expects.

2. Detailed description

What were you trying to do?

Apply the outlook policy preset to sandbox my-assistant using nemoclaw my-assistant policy-add.
What happened instead?

Command failed with:

Error:   × failed to parse sandbox policy YAML
  ╰─▶ missing field `version`

  Command failed (exit 1): openshell policy set --policy "/tmp/nemoclaw-policy-1773628802112.yaml" --wait my-assistant

Steps to reproduce:

    Install nemoclaw from repo root: npm install -g .
    Have a sandbox registered (e.g. my-assistant).
    Run nemoclaw my-assistant policy-add.
    Type outlook at the preset prompt.
    Type Y at the confirmation prompt.
    Expected: Outlook preset is applied — graph.microsoft.com, login.microsoftonline.com, outlook.office365.com, outlook.office.com endpoints added. No schema errors.
    Actual: openshell policy set rejects the YAML with missing field 'version'.
Environment: openshell 0.0.4, nemoclaw 0.1.0, Node.js v22.16.0, Ubuntu (asdf). Root cause: The applyPreset() function in bin/lib/policies.js (lines 132–138) generates the merged policy YAML without a version field. When no existing policy is found, it produces:
network_policies:
  outlook_graph:
    ...
But openshell policy set requires:
version: "1.0"
network_policies:
  outlook_graph:
    ...

Log :

  Available presets:
    ○ discord — Discord API, gateway, and CDN access
    ○ docker — Docker Hub and NVIDIA container registry access
    ○ huggingface — Hugging Face Hub, LFS, and Inference API access
    ○ jira — Jira and Atlassian Cloud access
    ○ npm — npm and Yarn registry access
    ○ outlook — Microsoft Outlook and Graph API access
    ○ pypi — Python Package Index (PyPI) access
    ○ slack — Slack API and webhooks access
    ○ telegram — Telegram Bot API access

  Preset to apply: outlook
  Apply 'outlook' to sandbox 'my-assistant'? [Y/n]: Y
Error:   × failed to parse sandbox policy YAML
  ╰─▶ missing field `version`

  Command failed (exit 1): openshell policy set --policy "/tmp/nemoclaw-policy-1773628802112.yaml" --wait m
pruprakash@700d01b-lcedt:~/Documents/pruprakash/openshell-openclaw-plugin/nemoclaw$ 

Steps to reproduce

No steps provided.


[NVB# 5982764]

[NVB#5982764]

Metadata

Metadata

Assignees

Labels

NV QABugs found by the NVIDIA QA TeamPRRPRR recommendation trackingarea: cliCommand line interface, flags, terminal UX, or outputplatform: ubuntuAffects Ubuntu Linux environmentsv0.0.65Release target

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions