Skip to content

v0.19.46

Choose a tag to compare

@TruVerifAI TruVerifAI released this 17 Sep 04:58
· 3 commits to main since this release

0.19.46 — external-feedback wave: consent-first init, complete uninstall, real line numbers

Fixes and changes from the first outside developer trial of panel-review.

Installer — consent-first

  • init now prints a full plan of everything it will write for YOUR machine and asks ONCE before touching anything. New flags: --dry-run (plan only, zero writes), --only <agents>, --skip <agents,hook,rules>, --yes (non-interactive). Declining exits with nothing written.
  • Git preflight verifies git by EXECUTION (git --version), not existence, so a broken shim can't silently disable the pre-commit gate.
  • Claude Code desktop app (no CLI): setup stages the marketplace and prints the one in-app step to finish (+ button, then Plugins).
  • doctor: the [gate endpoint] row no longer false-FAILs on a healthy install; new [git] headline row; a staged desktop install reports as STAGED (warn).

Complete uninstall — BEHAVIOR CHANGE for scripts/CI

  • uninstall now also revokes the API key server-side, clears the plugin token from the macOS Keychain (edits our leaf only), and deletes .tvai-bak backups once live files are verified clean.
  • uninstall and logout exit NONZERO when secret-bearing residue remains, with a list naming exactly what was left. Scripts that assumed unconditional exit 0 should check their handling.
  • Hardened by a pre-release adversarial review: per-file guarded removals, tri-state Keychain handling, stored-key revocation with an env-divergence warning, and --only vscode no longer strands a repo-committed Copilot gate.

Vendored gate code (ships to the other platforms via this package)

  • Gate blocks cite the REAL file line of the flagged code, not :1.
  • TRUNCATE in comments/plain strings no longer fires sql_risk; TRUNCATE TABLE still floors via migration_destructive.
  • package.json fires the dependency signal only on dependency-shaped added lines; scripts/metadata edits stay quiet.
  • The commit gate prints target_hunk_hashes, ending the confirm_floor no_binding dead-end.

Published with provenance (OIDC, no token): https://search.sigstore.dev/?logIndex=2873228457