Skip to content

clawock v0.1.7

Choose a tag to compare

@github-actions github-actions released this 17 Aug 07:06
· 4122 commits to master since this release
6e52cfc

Install from PyPI:

python -m pip install clawock==0.1.7

The Python package's code is identical to 0.1.6. This version exists to ship the
plugin: clawock-dsh is the release.

Fixed

  • clawock-dsh on npm was a different build than its version number
    claimed.
    npm's latest was 0.1.5 for a day, whose
    tarball is the pre-#708 layout — client.js at the root, no
    lib/typert.*, no ./typert or ./remote export, no zod dependency —
    so dsh plugin add clawock-dsh installed a plugin that registers and then
    shows no data. The two tag-triggered 0.1.6 publishes died inside
    npm itself (Exit handler never called!): the plugin's package-lock.json had been
    regenerated on a machine behind a mirror registry, so all 169 resolved
    URLs pointed at a host the GitHub runner cannot reach and every fetch
    stalled through npm's retry ladder. The lockfile is back on
    registry.npmjs.org and the publish job pins the npm that does the publishing
    and records which registry it used; with those in place a manual npm-only run
    did land 0.1.6 on 2026-08-17 at 06:16Z, so the registry was already correct
    before this version. What 0.1.7 adds is the part that makes that claim
    checkable rather than assumed: because "publish exited 0" was never evidence,
    publishing now downloads the registry copy back and asserts file-for-file,
    export-for-export and dependency-for-dependency that it is what was packed.
    (#732, #728)

Changed

  • The DSH plugin follows the official Harness client rules instead of a
    reverse-engineered shape.
    Styles ship as CSS Modules whose
    <style data-plugin="clawock-dsh"> tag the module loader owns and removes on
    unload, so nothing touches document while the bundle is loading; the UI
    store is a createDecisionMindStore() factory called inside apply rather
    than a module-level singleton shared across plugin reloads; the trace cache
    lives in the plugin instance and reaches the view through its props; the
    scroll container comes from an element ref instead of a global selector; and
    the browser bundle carries no business any — it consumes the same wire
    types the host declares. The generated Typert reflection is now emitted by
    the official generator running in place over the real source tree (the
    package moved to examples/dsh/packages/clawock-dsh because rc.6 discovers
    packages only under a workspace root's packages/), the build is
    reproducible, and CI rebuilds lib/ on every plugin change and fails if the
    committed artifacts differ. (#729, #730, #731)
  • Installing the plugin from a checkout goes through the official
    installer.
    ops/host/install_dsh_plugin.sh packs the package and hands the
    tarball to dsh plugin --profile web add, which installs it the way a
    registry package is installed and reconciles the profile's bundle rows
    itself. It no longer hand-copies a source directory and hand-edits the
    profile manifest — a directory spec is only linked, which is how a plugin
    dependency went uninstalled and crash-looped dsh in the first place. The
    tarball's file name carries a content hash, because pnpm keys a file:
    tarball by path and would otherwise serve the previous build from its store
    while every step reported success. (#731)

npm

clawock-dsh@0.1.7 published to npm.