Files
openclaw/qa/scenarios/runtime/tools/fs-write.yaml
Dallin Romney c1c231ced9 fix(qa): reject runtime tool intent without result evidence (#113502)
* fix(qa): require runtime tool result evidence

* fix(qa): preserve meaningful tool coverage gates

* refactor(qa): colocate runtime parity projection

* fix(qa): keep passing tool totals evidence-backed
2026-07-27 11:00:59 +08:00

52 lines
1.8 KiB
YAML

title: "Runtime tool fixture — fs.write"
scenario:
id: runtime-tool-fs-write
surface: runtime-tools
runtimePairLane: core
coverage:
secondary:
- agent-runtime.tool-fs-write
objective: Verify file write behavior is tracked across OpenClaw and Codex while Codex owns write natively.
successCriteria:
- OpenClaw may expose OpenClaw write while Codex app-server mode may omit duplicate OpenClaw dynamic write.
- Mock provider write plans are reported as fixture intent, not as actual runtime tool calls.
- The row stays report-only until the fixture validates native Codex write behavior directly.
docsRefs:
- qa/scenarios/index.yaml
codeRefs:
- src/agents/agent-tools.workspace-paths.test.ts
- extensions/qa-lab/src/runtime-tool-fixture.ts
execution:
kind: flow
summary: Exercise the write runtime tool family.
config:
toolName: write
toolCoverage:
family: fs.write
actualTool: write
bucket: codex-native-workspace
expectedLayer: codex-native-workspace
required: false
tracking: "#80319"
codexDefaultImpact: P4
qaImpact: P1
action: split native write behavior from OpenClaw dynamic tool parity
reason: Codex app-server intentionally owns write natively; the fixture must not require OpenClaw dynamic write exposure.
knownHarnessGap:
issue: "#80319"
reason: QA tool-defaults currently needs native write behavior coverage instead of OpenClaw dynamic write exposure.
promptSnippet: "target=write"
failurePromptSnippet: "failure target=write"
flow:
steps:
- name: exercises fs.write happy and failure paths
actions:
- call: runRuntimeToolFixture
saveAs: result
args:
- ref: env
- ref: config
detailsExpr: result