Skip to content

Commit 319ea26

Browse files
chore(release): DeepSQL v1.3.0 — Desktop IDE first ship
Bump backend to 1.3.0 and Desktop to 1.0.0. Document the weekly cut (CHANGELOG + RELEASE_NOTES) with Desktop as the headline, plus Agent MCP isolation, Brain/Review, and Editor fixes since v1.2.0. Co-authored-by: Venkat SF <venkatesh.sakamuri@stayflexi.com>
1 parent b99d1b2 commit 319ea26

8 files changed

Lines changed: 160 additions & 10 deletions

File tree

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,34 @@ for product tags (`vMAJOR.MINOR.PATCH`).
88

99
Product releases follow a **weekly cadence** (Saturday 09:00 America/Los_Angeles). See `docs/oss-ux/RELEASE.md`.
1010

11+
## [1.3.0] — 2026-08-24
12+
13+
### Added
14+
15+
- **DeepSQL Desktop** — first-ship Electron thin client (`desktop/`) with direct TLS and SSH-tunnel transports, connection profiles, OS keychain secrets, and native chrome (#73).
16+
- Desktop release workflow (`.github/workflows/desktop-release.yml`) for macOS / Windows / Linux installers on `desktop-v*` tags.
17+
- Enforceable Agent brain-note proposals with non-blocking save bubbles (#75).
18+
- Schema documentation dedupe / `CODE_DERIVED` compatibility initializers (`V116`) (#74, #77).
19+
20+
### Fixed
21+
22+
- Cross-user MCP credential leak in the Agent tab — provisioner no longer last-writer-wins across Hermes profiles; MCP tokens bind to declared client identity (#78).
23+
- View as Agent enforces the target user’s data policy on new Agent threads (#71).
24+
- Chat schema allowlist enumerates the whole statement (#70).
25+
- Brain endpoints require connection content authorization (#72).
26+
- Review queue approvals: stale pending counts, bulk `failures[]`, approval path unwedge (#74, #77).
27+
- Editor CSV export bounded; concurrent-run guards and cancel audit (#76).
28+
29+
### Changed
30+
31+
- Documented CORS loopback wildcards required for Desktop SSH tunnels (`CORS_ALLOWED_ORIGINS`).
32+
- `@deepsql/mcp``0.27.1`.
33+
- DeepSQL Desktop package → `1.0.0` (cut installers with `desktop-v1.0.0`).
34+
35+
### Notes
36+
37+
- Open follow-up: dashboard workspaces + custom roles (#80) intentionally not in this cut.
38+
1139
## [1.2.0] — 2026-08-19
1240

1341
### Added
@@ -82,6 +110,7 @@ First public OSS release.
82110
- Residual high-severity items tracked in `docs/oss-ux/OSS_SECURITY_REVIEW.md` (IDOR sweep, SET preamble allowlist, SSRF hardening, share-password defaults) are deferred past this cut.
83111
- Primary distribution path remains `docker compose up --build` (no pre-built container registry in this release).
84112

113+
[1.3.0]: https://github.com/DeepSQLAI/deepsql/releases/tag/v1.3.0
85114
[1.2.0]: https://github.com/DeepSQLAI/deepsql/releases/tag/v1.2.0
86115
[1.1.0]: https://github.com/DeepSQLAI/deepsql/releases/tag/v1.1.0
87116
[1.0.0]: https://github.com/DeepSQLAI/deepsql/releases/tag/v1.0.0

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ control except the prompts you send to the endpoint you chose.
1515
📄 **[Read the whitepaper](https://deepsql.ai/whitepaper)** — the architecture and the
1616
reasoning behind it.
1717

18+
📦 **Latest release: [v1.3.0](https://github.com/DeepSQLAI/deepsql/releases/tag/v1.3.0)**
19+
DeepSQL Desktop first ship + Agent/Brain/Editor hardening. Notes:
20+
[`docs/releases/RELEASE_NOTES-v1.3.0.md`](docs/releases/RELEASE_NOTES-v1.3.0.md).
21+
1822
---
1923

2024
## Quick start

backend/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
<groupId>com.dbaagent</groupId>
1616
<artifactId>dba-agent-backend</artifactId>
17-
<version>1.2.0</version>
17+
<version>1.3.0</version>
1818
<name>DBA Agent Backend</name>
1919
<description>Backend service for DBA Agent with secure credential storage and schema analysis</description>
2020

desktop/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# DeepSQL Desktop
22

3+
**Version 1.0.0** — first public Desktop cut (ships with DeepSQL product `v1.3.0`).
4+
35
A cross-platform desktop client for a self-hosted DeepSQL server. It connects to
46
the VM (or bare metal) running the DeepSQL stack either **directly over TLS** or
57
through an **SSH tunnel**, and presents the DeepSQL UI in a native window with

desktop/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

desktop/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
{
22
"name": "deepsql-desktop",
33
"productName": "DeepSQL",
4-
"version": "0.1.0",
4+
"version": "1.0.0",
55
"private": true,
6-
"description": "DeepSQL desktop client connect to a self-hosted DeepSQL VM over TLS or an SSH tunnel.",
6+
"description": "DeepSQL desktop client \u2014 connect to a self-hosted DeepSQL VM over TLS or an SSH tunnel.",
77
"license": "Apache-2.0",
88
"author": {
99
"name": "DeepSQL",
@@ -37,7 +37,7 @@
3737
"build": {
3838
"appId": "com.deepsql.desktop",
3939
"productName": "DeepSQL",
40-
"copyright": "Copyright © DeepSQL",
40+
"copyright": "Copyright \u00a9 DeepSQL",
4141
"directories": {
4242
"output": "release",
4343
"buildResources": "build"
@@ -80,7 +80,7 @@
8080
"entitlements": "build/entitlements.mac.plist",
8181
"entitlementsInherit": "build/entitlements.mac.plist",
8282
"extendInfo": {
83-
"NSHumanReadableCopyright": "Copyright © DeepSQL"
83+
"NSHumanReadableCopyright": "Copyright \u00a9 DeepSQL"
8484
}
8585
},
8686
"dmg": {

docs/oss-ux/RELEASE.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ Cron for the weekly automation: `CRON_TZ=America/Los_Angeles 0 9 * * 6`.
1919

2020
| Surface | Where | Current |
2121
|---------|-------|---------|
22-
| Product / Git tag | `vMAJOR.MINOR.PATCH` | `v1.2.0` |
23-
| Backend JAR | `backend/pom.xml` `<version>` | `1.2.0` |
22+
| Product / Git tag | `vMAJOR.MINOR.PATCH` | `v1.3.0` |
23+
| Backend JAR | `backend/pom.xml` `<version>` | `1.3.0` |
2424
| Frontend package | root `package.json` | `0.1.0` (internal) |
25-
| MCP / CLI npm | `mcp/package.json` | `0.27.0` |
25+
| MCP / CLI npm | `mcp/package.json` | `0.27.1` |
26+
| DeepSQL Desktop | `desktop/package.json` + `desktop-v*` tags | `1.0.0` |
2627

2728
Tag the **product** version (`v1.1.0`). Keep backend `pom.xml` in lockstep with the tag for the JAR filename. MCP may continue its own semver when publishing `@deepsql/mcp` to npm.
2829

@@ -102,8 +103,19 @@ gh release create v1.1.0 \
102103

103104
Docker Compose remains the primary install path (`docker compose up --build`); the JAR + frontend tarball support air-gapped / non-Compose operators.
104105

106+
### DeepSQL Desktop (optional, separate tag)
107+
108+
Desktop installers are **not** produced by the product `v*.*.*` workflow. After the product release is published:
109+
110+
1. Confirm `desktop/package.json` version matches the intended Desktop cut (e.g. `1.0.0`).
111+
2. Tag and push `desktop-v1.0.0` (annotated).
112+
3. `.github/workflows/desktop-release.yml` builds macOS / Windows / Linux on native runners and attaches installers to that GitHub Release.
113+
114+
Setup and CORS requirements: [`desktop/README.md`](../../desktop/README.md).
115+
105116
## Post-release
106117

107118
- Confirm the Release page lists every file and checksums verify.
119+
- If Desktop shipped in this cycle, confirm the `desktop-v*` Release has platform installers.
108120
- Announce with the tag URL + one-line upgrade note.
109121
- Bump versions on `main` for the next cycle only after the tag is cut (avoid tagging a commit whose pom still says the previous version).
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
# DeepSQL v1.3.0
2+
3+
**Weekly product cut** — DeepSQL Desktop (IDE) first ship, plus Agent/Brain/Editor hardening on top of `v1.2.0`.
4+
5+
## Highlights
6+
7+
### DeepSQL Desktop (headline)
8+
9+
Native Electron client for a self-hosted DeepSQL server — the biggest addition in this cut (#73).
10+
11+
- **Thin client, not a second frontend** — embeds the live DeepSQL UI from your VM origin (no bundled SPA, no version skew).
12+
- **Two transports** — direct TLS (system / pinned / custom CA / TOFU) or in-process SSH tunnel (`ssh2`, no `ssh` binary).
13+
- **Connection profiles** — per-profile sessions; secrets stored as OS keychain ciphertext when available.
14+
- **CORS requirement** — SSH tunnels use `http://127.0.0.1:<sticky-port>`, so the VM must allow loopback wildcards in `CORS_ALLOWED_ORIGINS` (`http://127.0.0.1:*,http://localhost:*`). Documented in `desktop/README.md`, `README.md`, and `docs/root/SELF_HOST_GUIDE.md`.
15+
- **Installers** — tag `desktop-v1.0.0` after this product cut to run `.github/workflows/desktop-release.yml` (macOS / Windows / Linux native runners).
16+
17+
```bash
18+
cd desktop
19+
npm install
20+
npm start # or: npm run dev
21+
# headless Linux GUI: xvfb-run npm start
22+
```
23+
24+
### Agent & security
25+
26+
- **MCP credential isolation** — Agent provisioner no longer mirrors tokens across every Hermes profile (cross-user last-writer-wins leak closed) (#78).
27+
- **MCP token identity binding** — server refuses a token whose owner does not match `X-DeepSQL-Client-Agent` when that header names a DeepSQL user.
28+
- **View as Agent** — impersonated Agent sessions enforce the *target* user’s chat/data policy (#71).
29+
- **Schema allowlist** — chat policy schema allowlist walks the whole statement, not only outer `FROM`/`JOIN` (#70).
30+
- **Brain endpoint authz** — Brain APIs require connection content access, not merely authentication (#72).
31+
32+
### Brain & Review
33+
34+
- **Review queue approvals**`CODE_DERIVED` CHECK compatibility, stale-list refresh, bulk decide surfaces `failures[]` (#74).
35+
- **Suggestion approval unwedge** — schema-doc dedupe / upsert path so approvals stick; knowledge counts refresh live (#77).
36+
- **Enforceable Agent writes** — non-blocking save bubbles; Agent only offers brain-note saves when the user can manage content (#75).
37+
38+
### Editor
39+
40+
- **CSV export bound** — export no longer re-runs unbounded / 10-minute queries that outrun the proxy (#76).
41+
- Concurrent-run guards and cancel auditing for Editor query sessions (#76).
42+
43+
## Install / upgrade
44+
45+
```bash
46+
git clone https://github.com/DeepSQLAI/deepsql.git
47+
cd deepsql
48+
git checkout v1.3.0
49+
cp .env.example .env
50+
# set SECURITY_JWT_SECRET, ENCRYPTION_KEY (or ENCRYPTION_KEYS), and DEEPSQL_CHAT_* in .env
51+
# for Desktop tunnels, include loopback wildcards in CORS_ALLOWED_ORIGINS
52+
docker compose up --build -d
53+
```
54+
55+
From `v1.2.0`: pull/checkout `v1.3.0` and rebuild Compose (or swap JAR + frontend tarball from this Release). Schema is managed by `ddl-auto=update`. Hand SQL changelog `V116` (schema documentation dedupe) is optional when not relying on `ddl-auto=update` / startup initializers.
56+
57+
Air-gapped: download artifacts below, verify `SHA256SUMS`, follow `docs/oss-ux/RELEASE.md`.
58+
59+
### Optional: DeepSQL Desktop
60+
61+
See [`desktop/README.md`](../../desktop/README.md). After the product tag is published, cut Desktop installers with:
62+
63+
```bash
64+
git tag -a desktop-v1.0.0 -m "DeepSQL Desktop v1.0.0"
65+
git push origin desktop-v1.0.0
66+
```
67+
68+
## Artifacts in this release
69+
70+
| File | Contents |
71+
|------|----------|
72+
| `deepsql-1.3.0-source.tar.gz` / `.zip` | Source tree at this tag |
73+
| `dba-agent-backend-1.3.0.jar` | Spring Boot executable |
74+
| `deepsql-frontend-1.3.0.tar.gz` | Production static UI |
75+
| `deepsql-mcp-0.27.1.tgz` | CLI + MCP server package |
76+
| `sbom-*.cdx.json` | CycloneDX SBOMs |
77+
| `SHA256SUMS` / `SHA512SUMS` | Integrity hashes |
78+
| `manifest.json` | Machine-readable inventory |
79+
80+
Desktop installers (dmg / zip / exe / AppImage / deb) attach to the separate `desktop-v1.0.0` GitHub Release when that tag is pushed.
81+
82+
```bash
83+
sha256sum -c SHA256SUMS
84+
```
85+
86+
## Verify
87+
88+
```bash
89+
python3 scripts/self-host/e2e-agent-check.py
90+
python3 scripts/self-host/e2e-multischema-check.py
91+
# Desktop (optional):
92+
cd desktop && npm run selftest:tunnel && npm run smoke -- --url https://your-deepsql-origin
93+
```
94+
95+
Expect `AGENT_OK True`, `DASH_OK True`, and `✓ Multi-schema E2E OK`.
96+
97+
## Not in this cut
98+
99+
- **Workspaces & custom roles** (#80) — still open; merge after the favorite-endpoint authorization fix and rebase onto this release.
100+
101+
## Cadence
102+
103+
Product releases are cut **weekly, Saturday 09:00 America/Los_Angeles**. See `docs/oss-ux/RELEASE.md` and `docs/oss-ux/WEEKLY_RELEASE_AUTOMATION.md`.

0 commit comments

Comments
 (0)