Commit Graph

  • 8dbe564ca2 fix(write): 骨架屏与实际页面结构对齐 master xfy 2026-06-11 18:12:35 +08:00
  • 75e0659cb2 fix(admin): 后台管理页改为 CSR 避免闪烁 xfy 2026-06-11 18:04:07 +08:00
  • ea440cd61c fix(admin): 评论管理页改为 CSR 避免按钮点击闪烁 xfy 2026-06-11 17:34:39 +08:00
  • 569eec5bf8 fix(admin): 评论管理页多项修复 xfy 2026-06-11 16:10:42 +08:00
  • b55409d421 fix(comments): remove admin action buttons from public comment item xfy 2026-06-11 15:47:46 +08:00
  • 3e95353cc5 fix(comments): nest pending replies under parent comments xfy 2026-06-11 15:35:14 +08:00
  • 44a738a940 fix(comments): migrate from use_server_future to use_resource xfy 2026-06-11 15:19:37 +08:00
  • 2b36a7c669 fix: resolve WASM compilation errors xfy 2026-06-11 14:55:10 +08:00
  • aa68dc4c55 fix(comments): address code quality issues in CommentForm xfy 2026-06-11 14:49:48 +08:00
  • f855a9a6cd fix(comments): fix compilation errors in list.rs and pending_item.rs xfy 2026-06-11 14:45:48 +08:00
  • 792b06a2eb fix(comments): address code quality issues in list and pending_item xfy 2026-06-11 14:42:03 +08:00
  • 8ae3299b3e feat(comments): add PendingCommentItem component xfy 2026-06-11 14:36:05 +08:00
  • 12a91e3b8e feat(comments): merge approved and pending comments in CommentList xfy 2026-06-11 14:34:36 +08:00
  • 9e658662cb fix(comments): add error logging for check_pending_status failure xfy 2026-06-11 14:33:13 +08:00
  • 40cfd44d3a feat(comments): add pending_comments to CommentContext and sync on mount xfy 2026-06-11 14:30:49 +08:00
  • 0f3d9fc25c fix(hooks): address code quality issues in comment_storage xfy 2026-06-11 14:28:27 +08:00
  • fccd4c05ff feat(hooks): add comment_storage module for localStorage persistence xfy 2026-06-11 14:23:27 +08:00
  • 7b3d894e96 feat(api): add CheckPendingStatus server function xfy 2026-06-11 14:18:49 +08:00
  • d63cee58c2 feat(api): return comment_id, avatar_url, depth from create_comment xfy 2026-06-11 14:13:14 +08:00
  • 03054d83e8 docs: add implementation plan for comment localStorage feature xfy 2026-06-11 14:07:58 +08:00
  • fbda6373cc docs: add comment localStorage persistence + pending visibility design spec xfy 2026-06-11 13:52:28 +08:00
  • 880c53d2a4 fix(comments): show name/email/url fields in reply form xfy 2026-06-11 13:30:54 +08:00
  • ec2f3e313e refactor(comments): remove consented_at column from migration and model xfy 2026-06-11 13:24:00 +08:00
  • 59d5b9222a refactor(comments): remove privacy consent checkbox and consented param xfy 2026-06-11 13:22:57 +08:00
  • 358dff152d fix(error): use Debug formatting in AppError logs for full error chain visibility xfy 2026-06-11 13:19:18 +08:00
  • c10134c32e fix(comments): convert confirm_with_message Result to Option for WASM compatibility xfy 2026-06-11 13:15:17 +08:00
  • 04737300e6 feat(comments): add complete comment system with guest commenting, moderation, and admin UI xfy 2026-06-11 12:34:26 +08:00
  • efa41b42c2 feat(auth): add loading state to login/register forms and update AGENTS.md xfy 2026-06-11 10:44:27 +08:00
  • f9d23d1eed refactor(ui): redesign with warm palette, sage accent, and consistent theme vars xfy 2026-06-11 10:29:11 +08:00
  • fce16288b5 chore: symlink CLAUDE.md to AGENTS.md xfy 2026-06-11 10:01:01 +08:00
  • fcb5a127d4 feat(skills): add multi-style design skills from taste-skill repo xfy 2026-06-11 09:53:15 +08:00
  • ccd564312b feat: hash session tokens and enforce configurable session limit per user xfy 2026-06-11 09:45:56 +08:00
  • 5be0cab525 feat: add hash_token function for SHA-256 session token hashing xfy 2026-06-11 09:44:01 +08:00
  • 81555d920e refactor: sessions table stores token hash instead of plaintext xfy 2026-06-11 09:42:32 +08:00
  • 1fa379fe4a chore: add sha2 and hex dependencies for session token hashing xfy 2026-06-11 09:42:08 +08:00
  • 9cf6a7e4e6 fix(admin): replace use_delayed_loading with DelayedSkeleton for posts page xfy 2026-06-10 18:15:46 +08:00
  • 265eb15887 feat(admin): add pagination to posts management page xfy 2026-06-10 18:03:36 +08:00
  • 373d4f09ed refactor: clean up write page formatting and remove separator line xfy 2026-06-10 17:50:07 +08:00
  • d3c5653808 feat: redesign admin write page with fixed-height editor layout xfy 2026-06-10 17:29:41 +08:00
  • 24f00184a5 删除 public/tiptap/editor.css 构建产物 xfy 2026-06-10 16:51:51 +08:00
  • b1a5fdcb6e chore: release v0.2.0 v0.2.0 xfy 2026-06-10 15:46:11 +08:00
  • 2f433e8f11 feat: add 404 Not Found page xfy 2026-06-10 15:43:05 +08:00
  • a59a58b41d Add frontend-design skill, remove design-taste-frontend xfy 2026-06-10 15:24:33 +08:00
  • 5e2487a067 fix: gate helper imports with #[cfg(feature = "server")] in posts API xfy 2026-06-10 14:49:54 +08:00
  • 311ddbe204 perf(cache): cache COUNT(*) result separately to avoid redundant queries xfy 2026-06-10 14:44:53 +08:00
  • bd9053132b refactor(admin): use explicit field ignores and separate error/loading arms xfy 2026-06-10 14:38:52 +08:00
  • 7df69be5e8 feat(skills): replace frontend-design with design-taste-frontend xfy 2026-06-10 14:36:30 +08:00
  • 31b83cd449 chore: adapt admin pages to new PostListResponse shape xfy 2026-06-10 14:32:59 +08:00
  • a2ec043c59 chore: adapt search page to new PostListResponse shape xfy 2026-06-10 14:29:17 +08:00
  • 4015412b41 feat: display accurate total in tag detail page xfy 2026-06-10 14:25:54 +08:00
  • 2ade51bd0f feat: display accurate total in archives page xfy 2026-06-10 14:22:18 +08:00
  • a2b0c759af feat: use total count for accurate home page pagination xfy 2026-06-10 14:18:22 +08:00
  • 44eba24121 feat: return total count from post list server functions xfy 2026-06-10 14:14:04 +08:00
  • 116f3281a4 feat: update post list cache to store total count xfy 2026-06-10 13:59:41 +08:00
  • 72c1efa566 feat: add total field to PostListResponse xfy 2026-06-10 13:57:06 +08:00
  • b1385efd5e refactor(api): split posts.rs into module directory xfy 2026-06-10 13:45:21 +08:00
  • 2574e1e315 fix(api): gate AppError helper methods behind server feature xfy 2026-06-10 13:21:37 +08:00
  • bf401e4916 fix(api): correct AppError variant semantics for transaction/query errors xfy 2026-06-10 13:19:57 +08:00
  • a3fa602df2 refactor(api): unify error handling with AppError enum xfy 2026-06-10 13:16:06 +08:00
  • b7220c28ef Fix WebpError trait impls missing #[cfg(feature = "server")] xfy 2026-06-09 18:30:10 +08:00
  • 263771e403 test(cache): fix invalidation test isolation xfy 2026-06-09 17:24:14 +08:00
  • 73b4d28135 test(cache): use unique key in roundtrip test to avoid parallelism conflict xfy 2026-06-09 17:20:03 +08:00
  • 3041535cf7 test(cache): add cache key and roundtrip tests xfy 2026-06-09 17:18:39 +08:00
  • 4c534eeb4c fix(posts): invalidate tag and old slug caches on create/update xfy 2026-06-09 17:15:29 +08:00
  • 91caf3f8bd feat(posts): invalidate caches on write operations xfy 2026-06-09 17:09:17 +08:00
  • 887aacb5f1 fix(posts): check cache before auth, skip caching None slugs xfy 2026-06-09 17:06:53 +08:00
  • 4c44b62e3d feat(posts): add caching to read operations xfy 2026-06-09 17:01:12 +08:00
  • 0b594ff719 refactor(cache): use CacheKey directly, remove unnecessary async xfy 2026-06-09 16:56:41 +08:00
  • 62e2045b35 feat: add cache module with moka-backed post/tag/stats caching xfy 2026-06-09 16:47:17 +08:00
  • 9452c196fa docs: document why image crate excludes WebP decoder xfy 2026-06-09 16:14:28 +08:00
  • c08d35856e test: add WebP config parsing and clamping tests xfy 2026-06-09 16:04:26 +08:00
  • 05cf2f79ea refactor: extract WebP encode helper to reduce duplication xfy 2026-06-09 15:59:02 +08:00
  • 7d9c4b9e0f refactor: simplify TraceLayer setup and reformat route definitions xfy 2026-06-09 15:58:18 +08:00
  • 035d11e39b fix: log warning when WebP env vars are clamped xfy 2026-06-09 15:53:39 +08:00
  • db3379364f fix: limit WebP decode buffer size to prevent malicious allocations xfy 2026-06-09 15:48:34 +08:00
  • 7c6bab8019 fix: preserve f32 precision for WebP quality xfy 2026-06-09 15:43:16 +08:00
  • 2e2be7b16d feat: add WebP encoding support with zenwebp xfy 2026-06-09 15:30:06 +08:00
  • 5ecd8a9b86 feat: add disk-level cache for processed image variants xfy 2026-06-09 13:45:49 +08:00
  • 0319c927c6 chore: format code xfy 2026-06-09 13:40:49 +08:00
  • b26094835f feat: convert uploaded images to WebP for storage savings xfy 2026-06-09 13:39:36 +08:00
  • 281da208f5 fix: remove stray space in upload filename format string xfy 2026-06-09 13:37:11 +08:00
  • 44c1358da5 refactor: extract post content JS into standalone script xfy 2026-06-09 13:18:40 +08:00
  • 0345fa70f2 fix: add click handler for code block copy button xfy 2026-06-09 11:33:26 +08:00
  • 1c492545c3 chore: add release skill for version publishing workflow xfy 2026-06-09 11:24:39 +08:00
  • 6ab101b053 chore: add CHANGELOG.md for v0.1.0 v0.1.0 xfy 2026-06-09 11:17:59 +08:00
  • 28d3ed998a chore: optimize release profile for fullstack and add linux static build target xfy 2026-06-09 10:30:36 +08:00
  • 4595d1c8e7 chore: remove unused dependencies and slim down features xfy 2026-06-09 10:21:27 +08:00
  • 42b39266a6 fix: preserve data URI in img src during markdown rendering xfy 2026-06-09 10:06:34 +08:00
  • 3974856f3d fix: resolve image/upload 500 errors and refactor rate limiting xfy 2026-06-09 09:48:51 +08:00
  • 4f368e6fb8 test: add 122 unit tests across 12 modules xfy 2026-06-09 09:25:44 +08:00
  • 959d813630 feat: pg_trgm full-text search for posts (#2) Sonetto 2026-06-08 18:26:35 +08:00
  • e74b9f3c39 feat: apply rate limiting to Register, Login, and upload endpoints xfy 2026-06-08 17:30:26 +08:00
  • dd8477c7a3 chore: sync Cargo.lock and remove unused seed script xfy 2026-06-08 17:05:46 +08:00
  • db33d02154 feat: apply rate limiting middleware to axum router xfy 2026-06-08 16:59:26 +08:00
  • 76f1b8dd53 feat: add rate limiting configurations xfy 2026-06-08 16:57:48 +08:00
  • 771b155a88 refactor: split posts.rs and fix N+1 with JOIN+array_agg xfy 2026-06-08 16:53:31 +08:00
  • 32131377c3 refactor: integrate tags module into posts.rs and mod.rs xfy 2026-06-08 16:45:20 +08:00
  • 441060e7c2 refactor: extract tag operations into api/tags.rs xfy 2026-06-08 16:44:38 +08:00
  • 6e4e72b232 refactor: extract markdown rendering into api/markdown.rs xfy 2026-06-08 16:42:55 +08:00
  • 4c88d5e2bb refactor: extract slug utilities into api/slug.rs xfy 2026-06-08 16:40:44 +08:00