Skip to content

feat(cursor-vpet): sync pet database across extension windows - #7

Open
jcendal wants to merge 11 commits into
sbugallo:mainfrom
jcendal:feat/window-sync
Open

jcendal wants to merge 11 commits into
sbugallo:mainfrom
jcendal:feat/window-sync

Conversation

@jcendal

@jcendal jcendal commented Sep 11, 2026 •

Copy link
Copy Markdown

Summary

  • Sync pet database changes across extension windows
  • Add database-change-watcher to detect SQLite writes
  • Improve the sql.js driver to share state across contexts
  • Remove evolution battle debug preview

Series

PR 6/6 — merge after #5. Last in the series.

Test plan

  • Changes in one window are reflected in another window's sidebar
  • database-change-watcher and sql.js persistence tests pass
  • No evolution battle debug code remains in the extension

jcendal and others added 11 commits September 10, 2026 13:05
Extracts vpet-core as a shared package, moves the OpenCode plugin to
packages/opencode-vpet, and adds the cursor-vpet extension with its own
SQLite adapters and hooks. Updates CI/CD, workspaces, and monorepo documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
Adds walking, action, and sleep animation in the sidebar webview and copies
the root CHANGELOG.md when packing npm and VSIX artifacts, removing the local stub.

Co-authored-by: Cursor <cursoragent@cursor.com>
Calls nowMs as a function instead of passing unbound performance.now,
reorders partner sync after postMessage, and adds a regression test.

Co-authored-by: Cursor <cursoragent@cursor.com>
Converts pixel width to monospace columns based on the webview font so the
sprite fits without overflowing.

Co-authored-by: Cursor <cursoragent@cursor.com>
Rewrites the extension documentation with badges, guides, and usage sections,
and documents the author and contributor in the root README.

Co-authored-by: Cursor <cursoragent@cursor.com>
Colocates stage-changelog in each package, aligns the test fixture with the
monorepo layout, and fixes typecheck errors that blocked check.

Co-authored-by: Cursor <cursoragent@cursor.com>
…olds

Reuse the shared SQL.js runtime so the snapshot reader reloads the database
on each read instead of serving stale gauge values. Scale default evolution
thresholds 10× and document Open VSX publishing setup.

Co-authored-by: Cursor <cursoragent@cursor.com>
When a partner reaches a stage threshold, open a pending same-stage battle
instead of evolving immediately. Persist battle state in SQLite, notify via
toasts in OpenCode, and animate battles in the Cursor sidebar.

Co-authored-by: Cursor <cursoragent@cursor.com>
…nimations

Show a FIGlet BATTLE banner that blinks before combat, then play evolution or defeat animations based on the battle outcome.

Co-authored-by: Cursor <cursoragent@cursor.com>
Elimina el flag temporal, el comando de prueba y la lógica de preview automático para dejar solo el flujo real de batalla.

Co-authored-by: Cursor <cursoragent@cursor.com>
Reload sql.js state when pet.db changes on disk and watch the file so the sidebar stays fresh when multiple Cursor windows share the same ledger.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant