Releases: NimbleBrainInc/synapse-crm
Releases · NimbleBrainInc/synapse-crm
v0.3.2
v0.3.1
What's Changed
- chore: migrate to mcpb-pack@v3 (drop server.json) by @mgoldsborough in #5
Full Changelog: v0.3.0...v0.3.1
v0.3.0 — Detail-panel rebuild, search, mobile cards
What's new
- New navigation: deal/contact details now slide in from the right with a back-stack — drill from a deal into its contact (or vice versa) and pop your way back. Click the contact name on a deal, click a deal row on a contact: both push onto the panel.
- View / edit / create modes in a single panel for both deals and contacts. The old centered modal is gone.
+ New Deal/+ New Contactin the toolbar (right of the view switcher), label switches per active view.- Contact search — case-insensitive across name, company, and email — with a clear (×) button.
- Deals column on the contacts table: count + active pipeline value, or
count · closedwhen nothing is active. - Mobile: contacts table renders as cards below 640px; panel becomes a full-screen sheet; 44px touch targets across all interactive elements.
- Map view removed — was noise; ~1000 LOC deleted.
- Theming: every color and font now reads from host theme tokens via a centralized
useStyleTokens()helper. No more hardcoded hex. - Idempotent startup linker:
link_deals_to_contactsruns once at server boot so seeded deals always carrybelongs_toedges. - Schema fields nullable:
value,probability,close_dateon the deal schema now admitnull. The UI sendsnullwhen a user clears a field in edit mode (was a silent no-op before). - Structured server errors surface as
data.error/data.message/data.detail(or JSON) instead of[object Object]. - Race-safe ContactView loads via per-load seq counters so fast drill-downs don't land contact-A's data under contact-B's header.
No breaking changes to the MCP tool surface or entity schemas.
Companion fix: nimblebrain#191 — host bridge now accepts ui/update-model-context notifications, so useVisibleState pushes are no longer dropped. This release's panel-context payload (openPanel, panelDepth) needs that fix to reach the agent.
Full PR: #4
v0.2.0
What's new
First release carrying the flat-kwarg contract and the test suite landed from the upjack 0.5.1 upgrade.
Changed
- Upgraded to upjack 0.5.1. Auto-generated CRUD tools (
create_deal,update_deal,delete_deal,create_contact, etc.) now take flat kwargs at the top level. The legacy{data: {...}}wrapper is no longer accepted. Agents will call these tools more reliably first-try.
Added
- First pytest test suite (29 tests covering contract + hand-written tools). Contract tests guard against the flat-kwarg regression; tool tests cover
find_or_create_contact,log_interaction,move_deal_stage,pipeline_summary,link_deals_to_contacts,contact_timeline.
Under the hood
- Vendored upjack updated to 0.5.1 (includes the perf fix that removed a ~4-second-per-call network fetch from
tools/listwhen activities are enabled).
v0.1.0
Initial release: Lightweight CRM with contacts, deals, pipeline, and agent-driven follow-ups