Status: completed on August 8, 2026. Summary: - Updated the frontend workspace contract from schema v2 editing to schema v3 publishing. - Kept only `semantic_index.vector_store.collection` editable; rendered qdrant / internal Ollama semantic values as fixed read-only architecture values. - Removed external vector transport / endpoint / credential / embedding diagnostics branches from frontend draft sanitization, conflict parsing, and editor UI. - Added a migration-required banner in workspace management and blocked `migration_required` workspaces from new-session selection. - Aligned the example workspace YAML comments with the fixed internal qdrant/Ollama architecture. Files changed: - `frontend/src/api/workspaces.ts` - `frontend/src/api/workspaces.test.ts` - `frontend/src/workspaces/drafts.ts` - `frontend/src/workspaces/drafts.test.ts` - `frontend/src/shell/WorkspaceEditor.tsx` - `frontend/src/shell/WorkspaceEditor.test.tsx` - `frontend/src/shell/WorkspaceManager.tsx` - `frontend/src/shell/WorkspaceManager.test.tsx` - `frontend/src/shell/WorkspacePublishDialog.test.tsx` - `frontend/src/api/sessions.ts` - `frontend/src/shell/SteerInput.tsx` - `frontend/src/shell/SteerInput.test.tsx` - `deploy/workspaces/example.yaml` - `deploy/workspaces/psd.yaml.example` Verification: - `cd frontend && npx vitest run src/shell/SteerInput.test.tsx src/shell/WorkspaceEditor.test.tsx src/shell/WorkspaceManager.test.tsx src/shell/WorkspacePublishDialog.test.tsx src/workspaces/drafts.test.ts src/api/workspaces.test.ts` - Result: 6 files passed, 59 tests passed. - `cd frontend && npx tsc -b` - Result: passed. - `git diff --check` - Result: passed. Self-review: - The frontend now publishes the exact schema v3 semantic shape and no longer persists legacy semantic transport/credential branches. - Migration-required workspaces are visible in management with an explicit banner and are excluded from the composer workspace selector. - One dependent test file outside the original brief list (`WorkspacePublishDialog.test.tsx`) and the composer/session-selection path (`api/sessions.ts`, `SteerInput.tsx`, related test) were updated because they were directly coupled to the old v2 semantic/edit-selection behavior. Concerns: - The composer still retains backward-compatible behavior for summaries that omit `revision` entirely; only explicit `revision.state === "migration_required"` is blocked. That matches the current mixed-test environment, but once summary responses are guaranteed to include `revision`, that fallback may be removable. Fix round 1/5 — August 8, 2026 Summary: - Made missing or invalid workspace summaries fail safe in frontend session creation and composer selection instead of falling open as legacy. - Added an actionable unavailable message in workspace management for incomplete summaries with no canonical revision. - Replaced the old runtime-oriented example descriptor files with exact backend WorkspaceV3 descriptor YAML. Additional files changed: - `frontend/src/api/sessions.test.ts` - `backend/test/workspaces-schema.test.ts` Fix-round verification: - `cd frontend && npx vitest run src/api/sessions.test.ts src/shell/SteerInput.test.tsx src/shell/WorkspaceManager.test.tsx src/shell/WorkspaceEditor.test.tsx src/shell/WorkspacePublishDialog.test.tsx src/workspaces/drafts.test.ts src/api/workspaces.test.ts` - Result: 7 files passed, 73 tests passed. - `cd frontend && npx tsc -b` - Result: passed. - `cd backend && npx vitest run test/workspaces-schema.test.ts` - Result: 1 file passed, 17 tests passed. - `git diff --check` - Result: passed. Notes: - Missing `revision` in a workspace summary now fails with the same session/composer safety posture as `migration_required`, using the existing safe workspace-policy error for session creation and an explicit unavailable message in workspace management. - The committed example files now validate as actual schema-v3 descriptors instead of deployment/runtime templates with forbidden semantic endpoint fields.