Commit Graph

10 Commits

Author SHA1 Message Date
2b3a3f08ef Fix user default surface by reading JWT from cookie
The GET / route has no auth middleware, so user_id was always
empty. Add UserIDFromCookie helper that opportunistically reads
the sb_token cookie and extracts user_id without requiring auth.
Now user preference correctly overrides the global default.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 14:00:09 +00:00
6e7177f27b Fix default surface resolution for type:full packages
resolveDefaultSurface was using ListEnabledByType("surface") which
missed extension packages with type "full". Switch to List() and
filter by source != core/builtin + type surface/full.

Also make welcome surface smarter: detect when extensions exist
but no default is set vs truly empty install, show appropriate
messaging and CTA (Set Default Surface vs Go to Packages).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:53:30 +00:00
e97bbbb601 Add welcome surface and user default surface preference
- Create welcome surface: topbar + getting-started card shown when
  no extension surfaces are installed. Admins see a link to Packages,
  non-admins see a message to contact their administrator.
- Update resolveDefaultSurface priority chain:
  user preference → global config → first extension → /welcome
- Register welcome as a core surface with authenticated auth
- Final fallback is now /welcome instead of /admin, breaking the
  infinite back-button loop

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:45:11 +00:00
57c981d52d Clean up dead Go code in handlers, pages, and stores
- Remove "chat" from surface disable guard (only admin needs it)
- Remove "chat" from IsSurfaceEnabled always-on check
- Remove unused fmt.Sprintf references in team stores
- Update stale comments referencing personas and chat surfaces

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:06:07 +00:00
f4512071db Feat default surface routing (#4)
Some checks failed
CI/CD / detect-changes (push) Successful in 3s
CI/CD / test-frontend (push) Successful in 5s
CI/CD / test-go-pg (push) Failing after 2m17s
CI/CD / test-sqlite (push) Successful in 2m44s
CI/CD / build-and-deploy (push) Has been skipped
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com>
Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
2026-03-26 19:56:14 +00:00
45291860c5 steps 5-8: deep gut — purge chat/notes/projects/providers from code
Some checks failed
CI/CD / detect-changes (push) Successful in 4s
CI/CD / test-frontend (push) Failing after 6s
CI/CD / test-sqlite (push) Failing after 25s
CI/CD / test-go-pg (push) Failing after 26s
CI/CD / build-and-deploy (push) Has been skipped
main.go: remove ~300 lines of stale routes referencing deleted handlers
  (channels, messages, folders, personas, notes, projects, memories,
   models, providers, tasks, roles, usage, routing, capabilities, etc.)
  Fix branding: "Chat Switchboard" → "Switchboard Core"

pages: remove chat/notes/projects surface manifests and templates
  Keep: admin, settings, team-admin, workflow, workflow-landing

frontend: delete chat/, notes/, projects/ surface directories (19 files)
  Delete 5 CSS files (4,144 lines): sw-chat-*, sw-notes-*, sw-projects-*
  SDK: strip gutted API domains (594→287 lines), remove chatPane/notesPane

tests: remove integration_test.go (5,194 lines, broken imports to deleted
  packages) and perm_enforcement_test.go (551 lines, depended on deleted
  test helpers). Fix testmain_test.go (remove providers import).

openapi.yaml: replace 12,491-line stale spec with kernel auth stub.
  Full ICD rebuild is Step 8 proper.

Auth (builtin, mTLS, OIDC) untouched throughout.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 09:47:32 +00:00
071dea8904 Changeset 0.31.0 (#203)
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com>
Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
2026-03-19 00:06:16 +00:00
3237d55e0c Changeset 0.28.7 (#193) 2026-03-15 15:45:00 +00:00
400f7dd176 Changeset 0.26.0 (#165) 2026-03-10 13:38:01 +00:00
2b01d540d6 Changeset 0.25.0 (#160) 2026-03-08 16:54:17 +00:00