Changeset 0.38.1 (#234)

Co-authored-by: gobha <jasafpro@gmail.com>
Co-committed-by: gobha <jasafpro@gmail.com>
This commit is contained in:
2026-03-25 11:13:12 +00:00
committed by xcaliber
parent 10acadc9d0
commit 6943c91f40
30 changed files with 2410 additions and 10 deletions

View File

@@ -1,5 +1,42 @@
# Changelog
## [0.38.1.0] — 2026-03-25
### Summary
Extension Connections. Scoped credential management for extensions that
integrate with external services. Same scope/resolution pattern as LLM
providers (personal → team → global), sharable across packages.
### Added
- **Schema:** `ext_connections` table with `(type, scope, owner_id, name)`
unique constraint. Secret fields encrypted at rest using vault pattern.
(`server/database/migrations/022_ext_connections.sql`)
- **Store:** `ConnectionStore` interface with CRUD, scoped queries, and
resolution chain (personal → team → global).
(`server/store/interfaces.go`, `postgres/ext_connection.go`, `sqlite/ext_connection.go`)
- **Handlers:** Three scope tiers of REST endpoints:
- Personal: `GET/POST /connections`, `GET/PUT/DELETE /connections/:id`, `GET /connections/resolve`
- Team: `GET/POST /teams/:teamId/connections`, `PUT/DELETE /teams/:teamId/connections/:id`
- Admin: `GET/POST /admin/connections`, `PUT/DELETE /admin/connections/:id`
(`server/handlers/connections.go`, `team_connections.go`, `admin_connections.go`)
- **Starlark module:** `connections.get(type)`, `connections.get(type, name=)`,
`connections.list(type)` — gated by `connections.read` permission.
(`server/sandbox/connections_module.go`)
- **UI:** Connection management sections in Admin, Team Admin, and Settings
surfaces with dynamic form rendering from manifest field schemas.
(`src/js/sw/surfaces/admin/connections.js`, `team-admin/connections.js`, `settings/connections.js`)
- **SDK:** `sw.api.connections.*`, `sw.api.teams.{create,update,delete}Connection()`,
`sw.api.admin.connections.*` domain methods.
(`src/js/sw/sdk/api-domains.js`)
- **ICD:** Extension connections section with all endpoint specs.
(`docs/ICD/extensions.md`)
- **OpenAPI:** Connection endpoint schemas (personal, team, admin, resolve).
(`server/static/openapi.yaml`)
- **SDK test runner:** `connections` domain — CRUD + resolve chain tests.
(`packages/sdk-test-runner/js/domains/connections.js`)
## [0.38.0.0] — 2026-03-25
### Summary