1d01cc3b0e
Each feature service owns its system prompt in its config JSON on the shared volume. The AI Settings page now has General and System Prompts tabs — admins can view and edit any service's prompts at runtime with changes taking effect within 30 s (config cache TTL). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
81 lines
5.1 KiB
Markdown
81 lines
5.1 KiB
Markdown
# 2026-04-17 — Switch UX/UI design tool from Penpot to Figma
|
|
|
|
**Timestamp:** 2026-04-17T00:00:00
|
|
|
|
**Summary:** Replaced all references to Penpot with Figma across the project. The ux-designer agent now describes Figma REST API integration instead of the Penpot API.
|
|
|
|
**Files Modified:**
|
|
- `.claude/agents/ux-designer.md` — rewrote Penpot setup checklist and API docs to use Figma (personal access token, `X-Figma-Token` header, `api.figma.com/v1` endpoints)
|
|
- `frontend/STATUS.md` — updated Known limitations and Future work to reference Figma instead of Penpot
|
|
- `TODO.md` — replaced "UX/UI — Penpot setup" section with "UX/UI — Figma setup"
|
|
|
|
**Files Added:**
|
|
- `changelog/2026-04-17_switch-penpot-to-figma.md` — this entry
|
|
|
|
---
|
|
|
|
# 2026-04-17 — Adopt shadcn/ui + Tailwind CSS as UI layer
|
|
|
|
**Timestamp:** 2026-04-17T00:00:00
|
|
|
|
**Summary:** Confirmed shadcn/ui + Tailwind CSS as the UI component library and styling system. Updated CLAUDE.md stack table and frontend/STATUS.md to reflect this decision.
|
|
|
|
**Files Modified:**
|
|
- `CLAUDE.md` — added UI Library (shadcn/ui) and Styling (Tailwind CSS v3) rows to Stack table
|
|
- `frontend/STATUS.md` — marked shadcn/ui checklist item as done; updated Known limitations note from "evaluation pending" to "adoption in progress"
|
|
|
|
---
|
|
|
|
# 2026-04-17 — Implement shadcn/ui + Tailwind CSS UI layer
|
|
|
|
**Timestamp:** 2026-04-17T12:00:00
|
|
|
|
**Summary:** Full implementation of the shadcn/ui + Tailwind CSS UI layer: design token system, theme context, new LoginPage, AppShell + Sidebar replacing the inline Nav component.
|
|
|
|
**Files Added:**
|
|
- `frontend/tailwind.config.ts` — Tailwind config with CSS-variable-based design tokens (primary, accent, background, surface, border, foreground, muted)
|
|
- `frontend/postcss.config.js` — PostCSS config (tailwindcss + autoprefixer)
|
|
- `frontend/components.json` — shadcn/ui init config (style: default, baseColor: slate, cssVariables: true)
|
|
- `frontend/src/styles/theme.css` — Tailwind directives + full CSS custom property token set (light/dark mode)
|
|
- `frontend/src/lib/utils.ts` — `cn()` utility (clsx + tailwind-merge)
|
|
- `frontend/src/components/ui/button.tsx` — shadcn/ui Button (default, ghost, outline, destructive variants)
|
|
- `frontend/src/components/ui/input.tsx` — shadcn/ui Input
|
|
- `frontend/src/hooks/useTheme.ts` — theme hook (localStorage + OS preference detection)
|
|
- `frontend/src/components/ThemeToggle.tsx` — sun/moon ghost icon button
|
|
- `frontend/src/components/Sidebar.tsx` — collapsible left sidebar (expanded/collapsed states, NavLinks, admin-only item, user avatar, logout)
|
|
- `frontend/src/components/AppShell.tsx` — layout wrapper (Sidebar + scrollable main)
|
|
|
|
**Files Modified:**
|
|
- `frontend/package.json` — added lucide-react, clsx, tailwind-merge, class-variance-authority, @radix-ui/react-slot, tailwindcss, autoprefixer, postcss
|
|
- `frontend/vite.config.ts` — added `@/` path alias via fileURLToPath
|
|
- `frontend/src/main.tsx` — import theme.css
|
|
- `frontend/src/App.tsx` — PrivateRoute and AdminRoute now wrap children in AppShell; removed Nav import
|
|
- `frontend/src/pages/LoginPage.tsx` — full redesign: two-column grid (form panel + hero panel), shadcn Input/Button, ThemeToggle
|
|
- `frontend/src/pages/DashboardPage.tsx` — removed Nav, applied Tailwind headings
|
|
- `frontend/src/pages/AppsPage.tsx` — removed Nav
|
|
- `frontend/src/pages/ProfilePage.tsx` — removed Nav
|
|
- `frontend/src/pages/AdminPage.tsx` — removed Nav
|
|
- `frontend/src/pages/DocumentsPage.tsx` — removed Nav
|
|
- `frontend/src/pages/DocumentAdminSettingsPage.tsx` — removed Nav
|
|
- `frontend/src/pages/AIAdminSettingsPage.tsx` — removed Nav
|
|
- `frontend/STATUS.md` — added component inventory table; updated What it is; updated Future work checklist
|
|
|
|
---
|
|
|
|
# 2026-04-17 — Per-service system prompts with AI Settings tab view
|
|
|
|
**Timestamp:** 2026-04-17T12:00:00
|
|
|
|
**Summary:** Added runtime-editable system prompts per service, stored in each service's config file on the shared volume. The AI Service Settings page now has a tab view (General / System Prompts).
|
|
|
|
**Files Added / Modified / Deleted**
|
|
|
|
- `backend/app/core/app_config.py` — Added `DocServiceSystemPrompts` model, updated `DocServiceConfig`, added `load_all_system_prompts`, `save_service_system_prompts`, `SYSTEM_PROMPT_SERVICES` registry
|
|
- `backend/app/routers/settings.py` — Added `SystemPromptUpdate` schema, `GET /system-prompts` and `PATCH /system-prompts/{service_id}` endpoints
|
|
- `features/doc-service/app/services/config_reader.py` — Added `_DEFAULT_SYSTEM_PROMPT`, `_DEFAULT_USER_TEMPLATE`, and `system_prompts` key to `_DEFAULT_CONFIG`
|
|
- `features/doc-service/app/services/ai_client.py` — Loads system prompt and user template dynamically from config at runtime; falls back to defaults
|
|
- `frontend/src/api/client.ts` — Added `ServiceSystemPrompt`, `SystemPromptsData` types, `getSystemPrompts` and `updateSystemPrompt` API functions
|
|
- `frontend/src/pages/AIAdminSettingsPage.tsx` — Refactored to tab view (General | System Prompts); System Prompts tab shows per-service editable textarea cards
|
|
- `features/ai-service/STATUS.md` — Documented system prompts architecture
|
|
- `features/doc-service/STATUS.md` — Documented runtime prompt loading
|