legco_ai_assistant/frontend/src
Woody 0d3e8ce0ce fix(frontend): save button always disabled on System Prompts page
Root cause: PromptEditor useEffect synced localPrompts back to match prompts after every keystroke, making isDirty() always false.

- Delegate disabled control to parent via hasChanges prop (no local sync)

- Derive currentPrompts synchronously to avoid empty-textarea flash

- Add key={selectedProfile} for clean remount on profile switch

- Update PromptEditor tests for new hasChanges prop

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-26 18:48:52 +08:00
..
components fix(frontend): save button always disabled on System Prompts page 2026-04-26 18:48:52 +08:00
lib feat(frontend): Phase 3.6 — History page with timing bars, expandable cards, and pagination 2026-04-26 13:19:52 +08:00
pages fix(frontend): save button always disabled on System Prompts page 2026-04-26 18:48:52 +08:00
test fix(frontend): save button always disabled on System Prompts page 2026-04-26 18:48:52 +08:00
types feat(frontend): Phase 3.6 — History page with timing bars, expandable cards, and pagination 2026-04-26 13:19:52 +08:00
utils feat(frontend): add citation parser utility with tests (sub-phase 2.6) 2026-04-24 17:53:10 +08:00
App.tsx feat(frontend): Phase 3.6 — History page with timing bars, expandable cards, and pagination 2026-04-26 13:19:52 +08:00
main.tsx feat(frontend): Phase 1.1 grid layout with Phase 2 pre-allocation and tests 2026-04-23 10:58:03 +08:00
styles.css feat(frontend): Phase 1.1 project scaffold with Vite, Tailwind, and API client 2026-04-23 10:57:20 +08:00