{"content":"Development journal for commit 1362c824 (feat(dsh): auto-install/upgrade OAC runtime at apply time).\n\nDSH plugin no longer waits for the Bots-page card click when the OAC runtime is missing or stale: apply() now starts the guided npm install in the background once per process (ensureRuntimeInstalled single-flight, shared with the card's retry button). The setup card becomes a progress surface — it polls runtime/check (which now carries autoInstall phase) and closes itself when the runtime turns ok; failures (EPERM, no npm) still degrade to the manual command + retry. This removes the per-release 'runtime 0.9.2 < plugin 0.9.4' nag: a plugin upgrade self-upgrades the global runtime on next DSH start. Note: shipping the runtime as a plugin dependency was evaluated and rejected — the DSH profile installs with pnpm (blockExoticSubdeps blocks our xlsx URL dep; mvc-scrypt/protobufjs postinstalls would be blocked; minimumReleaseAge=1440 gates fresh transitive deps), all DSH-side settings this repo cannot change.\n\nVerification:\ncd dsh-plugin && corepack pnpm run build && node --test tests/*.test.mjs\n\nFiles:\ndocs/hosts/dsh.md\ndsh-plugin/src/cli-bridge.ts\ndsh-plugin/src/client/BotPanel.tsx\ndsh-plugin/src/client/RuntimeSetupCard.tsx\ndsh-plugin/src/client/UserPanel.tsx\ndsh-plugin/src/client/api.ts\ndsh-plugin/src/client/locale.ts\ndsh-plugin/src/index.ts\ndsh-plugin/tests/runtime-setup.test.mjs","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}