Description
After nemoclaw {sandbox} rebuild --yes, an OpenClaw sandbox ends up in a contradictory shields state: shields status reports the config UNLOCKED (permissive, "auto-unlock for rebuild"), but the agent skills directory and the credentials directory remain LOCKED. As a result, skill install fails claiming shields are up, and OpenClaw agent turns fail with EACCES on the credentials file. shields down cannot recover the state because it believes the config is already unlocked.
Platform scope: Reproduced on DGX Station GB300 (aarch64). Other platforms not tested.
Regression: Unknown — earlier versions not tested.
Likely the same shields-lock family as #7538 (there: shields down fails from a valid mutable-default posture and rollback flips it to locked). This report is the rebuild trigger and additionally surfaces the skill-install block and the agent-turn EACCES.
Environment
Device: DGX Station GB300
OS: Ubuntu 24.04.4 LTS
Architecture: aarch64
NemoClaw: v0.0.98
Agent: OpenClaw
Steps to Reproduce
- Onboard an OpenClaw sandbox and exercise shields (e.g.
nemoclaw {sandbox} shields up then shields down).
- Rebuild the sandbox:
nemoclaw {sandbox} rebuild --yes.
- Check shields:
nemoclaw {sandbox} shields status.
- Try to install a skill:
nemoclaw {sandbox} skill install /tmp/some-skill.
- Run an agent turn:
nemoclaw {sandbox} exec -- openclaw agent --agent main --json -m "Reply OK".
- Try to lower shields:
nemoclaw {sandbox} shields down.
Expected Result
After rebuild with shields reporting unlocked, the agent skills directory and credentials are actually accessible: skill install succeeds and agent turns run normally. If any lock remains, shields down clears it.
Actual Result
Step 3 shields status: "Reason: auto-unlock for rebuild | Policy: permissive" (reports UNLOCKED)
Step 4 skill install: RC=1 -> "Skill uploads write to the agent skills directory, which is locked
while shields are up. If shields are up, run `nemoclaw {sandbox} shields down`
before installing skills."
Step 5 agent turn: "GatewayClientRequestError: Error: EACCES: permission denied, lstat
'/sandbox/.openclaw/credentials/oauth.json'" (reply text becomes
"Agent couldn't generate a response").
An `exec -- ls -ld /sandbox/.openclaw/credentials` also prints
"OpenClaw permission cleanup failed".
Step 6 shields down: "Config is already unlocked for {sandbox} (since ...). Run
`nemoclaw shields up` first, or use --extend (not yet implemented)." -> cannot recover.
So shields status and the actual filesystem lock state disagree: status says unlocked, but skills dir + credentials stay locked; installs and agent turns are broken; shields down refuses because it thinks the config is already unlocked. Only a full re-onboard clears it.
Logs
Not captured beyond the Actual Result output above.
Description
After
nemoclaw {sandbox} rebuild --yes, an OpenClaw sandbox ends up in a contradictory shields state:shields statusreports the config UNLOCKED (permissive, "auto-unlock for rebuild"), but the agent skills directory and the credentials directory remain LOCKED. As a result,skill installfails claiming shields are up, and OpenClaw agent turns fail withEACCESon the credentials file.shields downcannot recover the state because it believes the config is already unlocked.Platform scope: Reproduced on DGX Station GB300 (aarch64). Other platforms not tested.
Regression: Unknown — earlier versions not tested.
Likely the same shields-lock family as #7538 (there:
shields downfails from a valid mutable-default posture and rollback flips it to locked). This report is the rebuild trigger and additionally surfaces the skill-install block and the agent-turnEACCES.Environment
Steps to Reproduce
nemoclaw {sandbox} shields upthenshields down).nemoclaw {sandbox} rebuild --yes.nemoclaw {sandbox} shields status.nemoclaw {sandbox} skill install /tmp/some-skill.nemoclaw {sandbox} exec -- openclaw agent --agent main --json -m "Reply OK".nemoclaw {sandbox} shields down.Expected Result
After rebuild with shields reporting unlocked, the agent skills directory and credentials are actually accessible: skill install succeeds and agent turns run normally. If any lock remains,
shields downclears it.Actual Result
So
shields statusand the actual filesystem lock state disagree: status says unlocked, but skills dir + credentials stay locked; installs and agent turns are broken;shields downrefuses because it thinks the config is already unlocked. Only a full re-onboard clears it.Logs
Not captured beyond the Actual Result output above.