Feat v0.2.5 ui polish dead code #9

Merged
xcaliber merged 20 commits from feat/v0.2.5-ui-polish-dead-code into main 2026-03-27 14:16:36 +00:00

20 Commits

Author SHA1 Message Date
d9eada07f5 Final CHANGELOG update for v0.2.5
Some checks failed
CI/CD / detect-changes (pull_request) Successful in 5s
CI/CD / test-frontend (pull_request) Failing after 6s
CI/CD / test-go-pg (pull_request) Failing after 2m43s
CI/CD / test-sqlite (pull_request) Successful in 2m51s
CI/CD / build-and-deploy (pull_request) Has been skipped
Add entries for default surface fixes (type:full resolution,
JWT cookie extraction), welcome surface smart messaging,
and roadmap restructure.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 14:12:25 +00:00
e60cf86a05 Add settings audit milestones to roadmap (v0.2.7-v0.2.9)
- v0.2.7: Admin settings E2E audit + packages surface verification
- v0.2.8: User settings E2E audit + visibility gating
- v0.2.9: Team admin audit pass 1 (pre-workflow baseline)
- v0.3.x: Settings audit pass 2 (focused on workflow/team-role changes)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 14:10:59 +00:00
242709526b Restructure roadmap: workflows → v0.3.x, notes shifts to v0.4.0
Workflows are big enough for their own minor series. v0.3.x now
includes workflow architecture, team roles (role-based stage
assignment, multi-party sign-off), and trigger composition.
Notes moves from v0.3.0 to v0.4.0. MVP becomes v0.5.0.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 14:02:55 +00:00
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
7c5998b6ce Fix surface filtering in user settings and welcome surface
The /api/v1/surfaces endpoint doesn't return source field, so
filter by route pattern (/s/ prefix) instead of source !== 'core'.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:56:50 +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
8486761274 Update ROADMAP and CHANGELOG for v0.2.5 additional work
Add entries for welcome surface, user default surface preference,
admin UserMenu, dead settings removal, and default surface routing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:48:40 +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
497251cf59 Replace admin Back button with UserMenu
Remove the Back button and its sessionStorage return-URL stash
logic. Add UserMenu to the right side of the admin topbar,
providing consistent navigation to all surfaces and eliminating
the infinite-loop problem (Back → / → admin → Back → ...).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:34:11 +00:00
3760fb1d96 Remove dead chat settings from admin Settings section
Remove System Prompt, Default Model, Policies (BYOK/personas/KB),
Web Search, Auto-Compaction, and Memory Extraction sections — all
chat/AI features gutted in Phase 0. Surviving admin settings:
Default Surface, Registration, Banner, Message Bar, Footer, Vault,
Email.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:33:25 +00:00
b7cae62d27 Replace dead chat settings with user default surface preference
Remove all chat-era fields from user settings General section
(Default Model, System Prompt, Max Tokens, Temperature, Show
Thinking). Replace with a Default Surface dropdown that lets
users override the global admin-configured landing page.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:31:58 +00:00
139f593698 Update ROADMAP.md and CHANGELOG.md for v0.2.5
Mark all v0.2.5 items as complete. Add changelog entry covering
dead code removal, template cleanup, UI fixes, and PoC docs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:14:47 +00:00
82edc15129 UI bug pass: fix settings crash and rename dead heading
- Rename "Chat Defaults" heading to "Defaults" in settings general
- Guard sw.api.models.enabled() call (crashes when no providers
  are configured since models API returns undefined)
- Verified: admin, settings, login surfaces render correctly in
  both light and dark themes at desktop viewport

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:13:56 +00:00
806979fcfe Add missing manifest icons and PoC documentation
- Add emoji icon field to hello-dashboard, icd-test-runner,
  sdk-test-runner, and team-activity-log manifests
- Create README.md for tasks and schedules packages marking them
  as Proof of Concept with documented graduation criteria

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:07:29 +00:00
8e40f04445 Delete dead test helpers and rename vestigial test paths
- Remove seed_helpers.go (SeedTestMessage, SeedTestMessages,
  SeedTestCursor — all unused, channel/message features gutted)
- Rename channel- prefixed test paths to test- in storage tests

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:06:40 +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
3aaf8dd2c0 Remove dead Go types and event code
- Delete unused Grant struct (persona-era, zero references)
- Delete CompositeModelKey (never called)
- Remove dead comment-only type stubs (NoteGraph, ProjectChannel, etc.)
- Remove empty Chat/Channel event sections from route table
- Remove dead chat.typing/channel.typing condition in WS subscriber
- Update bus doc examples and test labels to use real event names

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:04:50 +00:00
23aa457a01 Remove orphaned CSS classes from layout.css and surfaces.css
Delete ~300 lines of dead CSS for gutted chat, channel, project,
notes, and editor-chat features. Also remove router-picker,
sb-folder, and sidebar-bottom classes with zero HTML references.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 13:02:12 +00:00
43d6768685 Delete orphaned chat-pane component template
Remove chat-pane.html (defined but never invoked by any surface).
Update doc comments in pages.go to reflect current surfaces.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 12:58:14 +00:00
e925f32777 Remove stale CSS link tags from templates
Delete references to sw-chat-pane.css, sw-notes-pane.css (base.html)
and chat.css (workflow.html) — none of these files exist on disk.
Remove misleading "removed in v0.37.10" comments.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 12:57:13 +00:00