Releases: WePwn/demo_cli
Releases · WePwn/demo_cli
Release list
v0.4.0-beta.8
Pre-release. Manual, verify-first install pinned to this tag — read the source and confirm the published SHA-256 before running anything. curl | sh remains available as convenience, not the safe path.
Highlights
- Escalate everywhere. Removed the SANDBOX low-blast exception: an unrecoverable, non-recursive mutation in a
development/test/sandbox/stagingworkspace no longer returnsSANDBOX(SAFE) and proceeds with no recovery point. It escalates like everywhere else. The invariant "recoverable or escalate" now holds without exception; theSANDBOXdisposition is gone. - Install pinned to a release tag, not the moving
betabranch.install.sh/install.ps1and every README snippet now referencev0.4.0-beta.8. - Relicensed to MIT across
LICENSE,pyproject.toml, and the README (was Apache-2.0). - Fail-open is now loud on every path. The last silent path (unparseable hook input) now writes a visible stderr warning instead of a silent allow. Decisions themselves remain fail-closed.
Honesty fixes
- Shared-receipt install command pinned to the release tag. A
receipt --sharecard's verify command still pointed at@beta; it now derives the tag from the package version viaversion.release_tag()(0.4.0b8→v0.4.0-beta.8), so a stranger verifies against exactly the code the receipt was written by. Locked by a regression test. - Fixed a self-defeating trust check in the README. The no-telemetry grep suggestion returned hits (
urllib.parse, imported twice for pure string handling). The grep now covers actual network I/O (urlopen,requests,httpx,socket,http.client) and returns nothing; the two benignurllib.parseuses are named explicitly. - Corrected the opening comparison. Claude Code and Cursor checkpointing does cover the agent's own file edits — what it doesn't cover is shell commands and databases. The README now says that.
- Corrected the recovery-demo caption. It implied the referenced incident's files were "gone for good"; file-carving recovers only a partial, luck-dependent fraction. The caption now states the honest case.
Docs & platform
- Documented two standing limitations: shell parsing is pattern-based (full AST is roadmap; ambiguous parses treated as unrecoverable), and database coverage is SQLite + Postgres only (other engines escalate).
- Added
SECURITY.mdwith a responsible-disclosure contact. - Windows drive-letter detection is now cross-platform (via
ntpath), so a multi-drive delete is recognised as having no common capture root on any host; its test runs everywhere instead of Windows-only.
Verify before you run. Download the .whl / .tar.gz and check them against SHA256SUMS.txt attached to this release:
sha256sum -c SHA256SUMS.txt