Releases: codevalley/sandpaper
Releases · codevalley/sandpaper
Release list
v0.3.0
Immutable
release. Only release title and notes can be modified.
Added
- Codex is now a first-class provider alongside Claude Code, with saved
codex login
authentication, diagnostics, resumable provider-scoped sessions, and native token usage. - The floating toolbar now provides provider selection, an explicit
Make defaultaction,
isolated histories, and transactionalNew sessionreset. - Installation now provisions both Claude and Codex integrations by default, with explicit
single-provider options available.
Changed
- Provider dispatch now uses one provider-neutral registry across hooks, workflows, manifests,
setup, diagnostics, lifecycle recovery, and package contracts. - Toolbar turns, transcripts, usage, edits, and resets are provider-tagged without hidden context
transfer. - Claude reports supplied cost while Codex reports supplied token totals.
Fixed
- GitHub Release creation now has the repository context required after npm publication.
- Unavailable providers fail explicitly without silent fallback.
- Provider installation, sessions, transcript restoration, and direct-edit recovery preserve
authoritative bytes across failures and races. - Legacy installations preserve existing brain counters, remove duplicate historical hooks,
safely reject concurrent counter changes, and direct populated brains toopenrather than
init.
Security
- Provider installation uses bounded, transactional, non-following filesystem operations.
- Provider preferences, sessions, mutations, and browser state validate ownership and structure.
- External-path reporting remains best-effort and never promises unverifiable undo coverage.
v0.2.1
Immutable
release. Only release title and notes can be modified.
Added
- Node 18/20/22 integration coverage, Chromium interaction coverage, shipped-JavaScript syntax
checks, and a fresh-install package smoke that exercises the installed CLI and server.
Changed
- The living brain now derives mechanical progress and counts in the browser, while
doctor
independently checks stamped fallbacks, digest state, source metadata, and repository links. - README, product/engineering specs, and brain wiki/map language now agree on the shipped
Claude-only provider boundary, Hands behavior, undo support, and current roadmap status. - CI and release automation now install prerequisites explicitly, inspect the actual tarball,
require an exact tag/lockfile/changelog match, and block publishing on every release gate.
Fixed
- Server turns now reserve one truthful lifecycle across SSE replay, terminal status, byte hashes,
bounded snapshots, undo, runner failures, and page/client-scoped reload attribution. - Directory serving falls back to closeable per-directory watchers where recursive
fs.watchis
unavailable, preserving Node 18 Linux support. - The toolbar now recovers drafts and controls after rejected requests, makes Pick and Hands
exclusive, rolls back failed direct edits exactly, and repairs search, keyboard, focus, motion,
ARIA, and host-style isolation behavior. - Release-note extraction keeps the post-
v0.2.0literalawkheading match, now fails on a
missing or empty exact version section, and never invents fallback notes after publishing.
Security
- A shared canonical repository-path policy allows intended source and
.githublinks while
denying traversal, escaping symlinks, runtime state, hidden namespaces, and secret-shaped files. - Every local mutation and SSE connection now requires a process-only token, loopback host,
same-origin browser context, valid client identity, and structured size/content validation.
v0.2.0
Immutable
release. Only release title and notes can be modified.
Added
/sandpaper:release— draft release notes and a semver bump from
brain/log.html, thennpm version+ tag + push.bin/verify-publish.js(npm run verify-publish) — tarball-safety gate:
nosite/, no secrets, size envelope..github/workflows/ci.yml— tests + verify-publish on every push/PR,
Node 18/20/22..github/workflows/release.yml— a pushed tag runs tests → verify-publish
→npm publish --provenance→ a GitHub Release..github/dependabot.yml— weekly Actions + npm dependency checks.