Conversation
- Add Firecrawl web search client (pkg/firecrawl) - Add CommunityAIService that generates AI answers/comments when users mention @小石光 or @koishi in posts or replies - AI reads full thread context (question + answers + comments) and searches the web for grounded responses with anti-hallucination prompts - Add web search to chat service (both authenticated and guest) - Auto-create AI user (xiaoshiguang) on startup with ai_assistant role - Graceful degradation when FIRECRAWL_API_KEY or OPENAI_API_KEY not set Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… footnotes - AI replies to every new published question by default (no @mention needed) - AI replies to comments on AI answers, replies to AI comments, or @mentions - Append source footnotes (title + URL) when AI cites [来源N] in replies Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
When AI only cites [来源3], it now gets renumbered to [来源1] in both the reply text and the footnote, so citations always start from 1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update AI system prompt to only reference [来源N] when providing factual information like medical knowledge or specific recommendations, not for everyday empathy and encouragement. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace hot tab with my collections. Add inline edit/delete controls for questions and answers (author + admin), delete for comments. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Display ai_avatar.png for AI assistant role in community panel. Remove @koishi from mention pattern, keep only @小石光. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Delete answers and their comments before deleting a question - Delete comments before deleting an answer - Rename chat persona to 小石光 - Remove community sprite, update shell/star/conque sprites Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add photo gallery backend: model, repository, service, handler, DTO, config (IMAGE_MODEL), migration, and route wiring. Support upload and AI-generated photos with wall management (up to 9 on wall). Extend OpenAI client with GenerateImage method supporting ModelScope async polling with X-ModelScope-Task-Type header. Poll interval set to 10s with 5-minute timeout for image generation.
Add cleanMemoirText helper to remove trailing JSON braces, quotes, and markdown code fences from LLM-generated memoir content. Applied to all parsing paths in parseMemoirLLMResponse.
The admin page was checking meData.role !== 'admin' but the API returns is_admin as a separate boolean field. Changed to check meData.is_admin instead.
Add photo API client, photo wall display on CarPage with suitcase modal for photo management. Update MemoryPanel to show AI-generated photo in memoir result card instead of SVG gradient.
Refactor user.ts API client, update ProfilePanel display, and improve dev-setup scripts with cross-platform support.
Previously only comments triggered AI replies when mentioning @小石光. Now answers (帖子评论) also trigger HandleNewAnswer which generates an AI comment on the answer. Also add IMAGE_MODEL and FIRECRAWL_API_KEY to .env.example and dev-setup.sh. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Conque (海螺) - Whisper/Heart Words: - Mom writes feelings/wishes, Dad reads them with AI-generated tips - AI analyzes Mom's whispers and gives Dad actionable advice Star (海星) - Daily Task System: - Dad gets 4 random daily tasks (housework, parenting, health, emotional) - Dad marks tasks complete, Mom verifies and scores (1-5) - XP accumulates from scores, level calculated automatically - 20 seed tasks across 4 categories Both features require partner binding. Includes full backend (model/dto/repo/service/handler/routes) and frontend (API modules, overlay panels, sprite click routing). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes golangci-lint unused type error in CI. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace asterisk (*) with unicode stars (★/☆) for difficulty and rating display - Add reject (未完成) button so Mom can send tasks back to pending - Add 10-second background polling when task panel is open, with in-place field mutation to avoid screen flicker - New backend endpoint POST /tasks/:id/reject with ResetUserTaskToPending
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related Issue
Summary
Change Type
Self-Check Checklist
Backend (Go):
go build ./...passesgo vet ./...passesgofmtproduces no diffFrontend (Vue):
npm run lintpassesnpm run typecheckpassesGeneral:
Test Steps