# Upgrade Notes This file summarizes major upgrades applied to DSS to support: - JSON-only, portable storage - a single MCP tool layer used by local + server + plugin - local developer usage across many projects **and** a headless server for UX/QA/Admin ## Key upgrades ### 1) Unified MCP tool layer (`dss.mcp`) Created a shared tool registry/execution layer used by: - Headless server (`apps/api/server.py` → `/api/mcp/*`) - Local MCP stdio server (`python -m dss.mcp.server`) Proxy mode is supported via `DSS_API_URL`. ### 2) JSON-only storage (removed SQLite) All state is stored as JSON under `DSS_HOME`: - Project data: `$DSS_HOME/data/projects//...` - System data: `$DSS_HOME/data/_system/...` Auth user storage is JSON-based (`dss/storage/json_store.py:Users`). ### 3) Consistent storage root (`DSS_HOME`) Storage now resolves in this order: 1. `DSS_HOME` 2. `./.dss` (project-local, if present) 3. `~/.dss` ### 4) Storybook generation reliability Story generation now: - scans component directories recursively - writes the correct story extension (`.stories.jsx` vs `.stories.tsx`) - avoids deleting user-authored stories by only clearing files with a DSS marker ### 5) Headless server serves built Admin UI When `admin-ui/dist/index.html` exists, the headless server now serves the built Admin UI bundle as static files (so teams can access the web dashboard from the server port). ### 6) CLI analysis now produces portable JSON output `./dss-cli.py analyze --project-path ` writes: - `/.dss/analysis_graph.json` This is intended to be commit-friendly and shareable across machines. ### 7) Removed deprecated `dss-setup` The deprecated Claude Code command `/dss-setup` has been removed. Use `/dss-init`. ## Migration notes - If you previously relied on `.dss/dss.db` or `DSS_DATABASE`: it is no longer used. - If you previously imported `dss_mcp` or used `dss/mcp_server/*`: use `dss/mcp/*`. - If you previously referenced `dss-claude-plugin/servers/*` for MCP: use `python -m dss.mcp.server`. - Re-run `./scripts/setup-mcp.sh` after pulling to refresh `.claude/mcp.json`. - If you used the single-port launcher on `:3456`, note `./scripts/dss` now defaults to `:6220` (override with `DSS_PORT` or update your reverse proxy).