{
  "checker": {
    "details": {
      "argv": [
        "<host-path>",
        "scripts/tools-trial.mjs"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 0,
      "scope": "product operation",
      "stderr": "",
      "stdout": "  home: /tmp/dsh-ops-probe-home\n  published: ops_copy, ops_diff, ops_edit_file, ops_glob, ops_grep, ops_inspect_local_file, ops_move, ops_remove, ops_replace, ops_stat, ops_write_file\n  ok    ops_inspect_local_file \u2014 read a real file\n  ok    ops_grep \u2014 found a match in a nested file\n  ok    ops_glob \u2014 listed the top-level glob\n  ok    ops_replace \u2014 replaced one literal match\n  skip  ops_bash \u2014 the shell row publishes nothing on a bare host; test/shells-bash-tool.test.mjs covers that contract\n  skip  ops_copy \u2014 published, no trial scenario yet\n  skip  ops_diff \u2014 published, no trial scenario yet\n  skip  ops_edit_file \u2014 published, no trial scenario yet\n  skip  ops_move \u2014 published, no trial scenario yet\n  skip  ops_remove \u2014 published, no trial scenario yet\n[excerpt truncated]",
      "working": true
    },
    "status": "PASS"
  },
  "deviations": [
    "`node bin/dsh-ops.mjs install --profile web` (docs/usage.md 'One-command npm installation') fails with: 'Initialize the target DSH application/profile first: <host-path>' and no DSH CLI is available in the guest. Prerequisite missing (DSH host application), not a repo defect; no source change made. Not retried further because the DSH host cannot be supplied from inside the guest.",
    "Default `node` (apt, v18.19.1) was too old for package.json engines; installed Node 22.20.0 tarball instead.",
    "`cargo` was absent; installed Rust 1.97.1 via rustup (sh.rustup.rs) to run build:ptc.",
    "Running `npx`-based install was replaced by the local `node bin/dsh-ops.mjs` entry point; both reach the same profile-delegation step that fails."
  ],
  "fault_owner": "prerequisite",
  "main_blocker": null,
  "operation": "Documented tools trial (docs/verify-locally.md, 'The tools trial'): `DSH_HOME=<tmp> node scripts/tools-trial.mjs` boots the plugin host harness, mounts the plugin and calls published tools against real files. Result: 4 attempted, 4 ok, 0 failed, 8 skipped (no trial scenario yet); writes tools-trial-report.md.",
  "operation_scope": "Exercises the native Rust file worker and the file tools (ops_inspect_local_file, ops_grep, ops_glob, ops_replace) through the in-repo host harness. NOT exercised: installation into a real DSH profile (`dsh-ops install --profile web|desktop|tui`), which needs an initialized DSH application profile at <host-path> and the official DSH CLI, neither present in the guest. ops_bash is not published on a bare host, so the bash shell path is not exercised here. The MCP start/list_tools path does not apply: the product is a DSH plugin, not a standalone MCP server.",
  "outcome": "working",
  "steps": [
    "Read README.md / README.en.md, docs/usage.md, docs/verify-locally.md",
    "Installed Node.js 22.20.0 (official linux-x64 tarball into <host-path>) because apt nodejs 18.19.1 does not satisfy engines ^22.19 || >=24",
    "NODE_USE_ENV_PROXY=1 npm ci --ignore-scripts --registry=https://registry.npmjs.org",
    "Installed Rust 1.97.1 minimal via rustup (cargo was absent; CI pins 1.97.1)",
    "npm run build:ptc (cargo build --release of native worker, staged to runtime/linux-x64/, closure validated)",
    "DSH_HOME=/tmp/dsh-ops-probe-home node scripts/tools-trial.mjs (probe): 4 ok, 0 failed, 8 skipped"
  ],
  "stuck_step": null,
  "suggested_fix": "To exercise profile installation, initialize a DSH host profile (web) and provide the official DSH CLI in the guest, then rerun `node bin/dsh-ops.mjs install --profile web --dsh-cli <path>`. Not required for the working tools-trial probe."
}
