Changeset 0.37.17 (#229)

Co-authored-by: gobha <jasafpro@gmail.com>
Co-committed-by: gobha <jasafpro@gmail.com>
This commit is contained in:
2026-03-24 16:50:00 +00:00
committed by xcaliber
parent e0687d2ea6
commit 96a4f16bc5
27 changed files with 4107 additions and 107 deletions

View File

@@ -46,10 +46,18 @@ v0.9.xv0.28.7 Foundation through Platform Polish ✅
│ │ │
│ v0.37.1 Perm Audit ✅ │
│ v0.37.2 Primitives ✅ │
│ v0.37.3 SDK
│ v0.37.4 Shell
│ v0.37.514 Surfaces ✅ │
│ v0.37.1518 Surfaces │
│ v0.37.3 SDK
│ v0.37.4 Shell
│ v0.37.516 Surfaces ✅ │
│ v0.37.1719 Surfaces │
│ │ │
│ v0.38.x Workflow │
│ Product Maturity │
│ │ │
v0.39.0 │ │
v0.39.1 │ │
v0.39.2 │ │
v0.39.3 │ │
│ │ │
══════╪════════════╪═════════════════╪══════
│ MVP v0.50.0 │
@@ -185,7 +193,7 @@ Each surface rebuilt as Preact component tree. Old JS deleted per surface.
| v0.37.14 | SE IV + Pane audit ✅ | 4 JS deleted (~1,672 lines); double-unwrap cleanup (93 sites); API envelope normalization (18 Go handlers); thinking tags persistence; deleteMessage endpoint; extension surface user menu fix; 7 bug fixes |
| v0.37.15 | Workflow surfaces ✅ | Workflow ownership/lifecycle, stage CRUD, team-admin tabs, assignments queue |
| v0.37.16 | Projects surface ✅ | Card grid + detail, inline ChatPane, context menu, sidebar pickers, deep-link |
| v0.37.17 | Workspaces | File storage layer, archive upload/download (zip/tar), project file integration |
| v0.37.17 | Workspaces | Workspace-first project file storage, tree browser UI, archive upload/download |
| v0.37.18 | Debug / model surface | Debug tooling, model configuration UI; debug modal Preact rebuild (CR P2-5) |
| v0.37.19 | Tag | Light mode CSS audit, dead code hunt, all features verified; `sw.can()` RBAC gates across surfaces (CR P2-1), `__USER__`/`__PAGE_DATA__` removal (CR P2-4), `_getScale``sw.shell.getScale()` (CR P3-3) |
@@ -213,21 +221,28 @@ storage deferred to v0.37.17.
**v0.37.17 — Workspaces (File Storage):**
Workspace storage layer for project files. Archive (zip, tar, etc.)
upload/download is **required for MVP** — projects need document attachment.
Workspace-first file management for projects. Architecture: `files` table +
objStore = ephemeral message attachments; Workspace FS = persistent file
collections (tree, dirs, archive, quota, indexing). Bridge ("Save to workspace")
deferred to v0.37.18.
Schema and model FK already exist (`workspaces` table, `Project.WorkspaceID`).
Workspace backend fully implemented (FS layer, handlers, store, SDK). This
version bridges projects to workspaces and builds the file browser UI.
Git integration (clone, pull, branch tracking) is optional/post-MVP.
- [ ] Workspace CRUD endpoints wiring (create-on-demand for projects)
- [ ] File upload backend: disk storage with workspace root path
- [ ] Archive upload: zip/tar extraction + individual file indexing
- [ ] File download: single file + archive download (zip bundle)
- [ ] File browser UI in project sidebar (list, preview, delete)
- [ ] Storage quota enforcement (`max_bytes` on workspace)
- [x] Auto-create workspace for project on first file upload
- [x] Route project file uploads through workspace FS
- [x] File browser UI in project sidebar (tree, folders, download, delete)
- [x] Archive upload: zip/tar extraction into workspace
- [x] Archive download: zip bundle of project files
- [x] Storage quota enforcement (`max_bytes` on workspace)
**v0.37.18 — Debug + Model Surface:**
Debug modal Preact rebuild, model configuration UI, provider diagnostics.
Also: user default workspace, `origin=tool_output` auto-save in completion
handler, "Save to workspace" bridge action on chat files/artifacts.
**v0.37.19 — Tag ("UI Complete"):**
@@ -254,6 +269,21 @@ Visual workflow builder series. Bridges .37 plumbing to MVP gate
---
## v0.39.x — Extension Track Continuation
Resumes the extension track (v0.29v0.31 ✅) with three new platform
primitives: multi-file Starlark packages, extension connections, and library
packages. See design docs for full specifications.
| Version | Summary | Design Doc |
|---------|---------|------------|
| v0.39.0 | Multi-file Starlark | [DESIGN-MULTI-FILE-STARLARK.md](DESIGN-MULTI-FILE-STARLARK.md) — `load()` support, disk-based scripts, package-scoped loader. Prerequisite for libraries. 5 backend changesets. |
| v0.39.1 | Extension Connections | [DESIGN-EXT-CONNECTIONS-LIBRARIES.md](DESIGN-EXT-CONNECTIONS-LIBRARIES.md) Part 1 — `ext_connections` table, scoped CRUD (personal → team → global resolution), `connections` Starlark module, 3 management UIs. |
| v0.39.2 | Library Packages | Part 2 — `library` package type, `ext_dependencies` table, `lib.load()` with per-library permission context, dependency resolution, uninstall protection. |
| v0.39.3 | Full Composition | Part 3 — Libraries declare connection types for consumers, reference `gitea-client` library, migrate `git-board` to library-backed surface. |
---
## MVP v0.50.0
**Gate:** deploy for 510 teams, ~50 users, 100+ anonymous visitors