SnipVault 1.3.1
A focused bugfix release cleaning up the rough edges from the Projects rollout in 1.3, plus a few UI polish items.
🐛 Fixed: Projects & Imports
The biggest fixes here are around project assignment on import — a few different paths were writing snippets to disk without properly linking them into your project-scoped list:
GitHub Library imports weren't assigning a project — imported snippets (including drafts) existed on disk but wouldn't show up in your project's snippet list. Imports now use your active project (or Default), and re-importing the same GitHub path updates the existing snippet instead of creating a duplicate.
Cloud Library and JSON file imports were landing in Default instead of whatever project you had selected. Fixed.
Added
snippet_projectto the GitHub.snipvault.jsonsidecar metadata so same-site sync can correctly restore project assignment.Fixed the agent's
import_from_librarytool sending a singlepathinstead of the requiredpathsarray — imports now also pass status and project_id correctly.Ran a migration (projects v2) to backfill any snippets/folders that were missing valid project meta, moving them to Default.
🎨 UI & Polish
Monaco editor's dark theme now uses zinc-900 (
#18181b) to match the rest of the app's dark palette — no more mismatched editor background.Redesigned the settings page with a grouped card layout — clearer section hierarchy, more breathing room, readable
text-smdescriptions throughout.Fixed layout issues on the snippet settings and PHP error log screens.
Added ThinkingOrb canvas animations for agent working/thinking states — the header status and inline loading indicator now map activity labels to orbit, globe, wave, or ribbon modes depending on what the agent's doing.
🔐 Licence Key Storage
Licence keys now live in their own dedicated snipvault_license option instead of being bundled into snipvault_settings. Activation and removal go through new snipvault/v1/license/* endpoints, so an unrelated settings save can no longer wipe your key. Existing keys migrate automatically — no action needed.
⚡ Performance
Fixed an intermittent critical error when opening the PHP Error Log — large log files no longer load fully into memory (now a tail-capped read), path resolution falls back to
wp-content/debug.log, source lookups are cached, and the dashboard now uses a single error-log request instead of two parallel full parses.
Also Fixed
Frontend live reload script 404 on some installs — the script is now copied into
app/distduring the Vite build and enqueued from there instead ofapp/src.