Files
Business-Management/changelog/2026-04-17_switch-penpot-to-figma.md
T
curo1305 1d01cc3b0e Add per-service system prompts with AI Settings tab view
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>
2026-04-17 15:11:40 +02:00

5.1 KiB

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.tscn() 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