-
53c25697a6
feat(lookup): 用户前缀查找放宽至单字符——中文姓氏单字搜索(全链路)
main
浅念
2026-09-29 15:37:41 +08:00
-
b0a3515bf2
feat(api): 用户前缀查找并入 displayName——成员添加可按姓名搜人(方案 A)
浅念
2026-09-29 15:20:09 +08:00
-
8c47a88c79
fix(viewer): 环回瞬时回位强制重排——同帧恢复过渡导致可见反向长滚
浅念
2026-09-29 15:00:50 +08:00
-
38b913b429
style(viewer): 广告轮播无缝环回——首尾克隆帧 + 到位瞬时回位
浅念
2026-09-29 14:45:40 +08:00
-
048732dfef
style(viewer): 广告轮播改从右往左滑动切换(translateX 轨道,替代淡入淡出)
浅念
2026-09-29 14:26:41 +08:00
-
f88c1c170a
feat(app): 选图拦截 v2——硬封锁+仅本机判定,治点选卡顿与连点强穿
浅念
2026-09-29 14:24:53 +08:00
-
d0755aa466
style(viewer): 广告轮播去固定比例——活跃帧撑自然高度(运营上传统一高度图)
浅念
2026-09-29 14:22:46 +08:00
-
07f81ff59b
style(viewer): 广告轮播切换柔化——全帧堆叠淡入淡出
浅念
2026-09-29 14:18:39 +08:00
-
29204bc08a
docs(plan): 选图拦截 v2 设计——硬封锁+仅本机判定
浅念
2026-09-29 14:14:06 +08:00
-
a90cb9953e
style(viewer): 广告徽标/关闭钮缩小淡化 + 信息区去底部分隔线(用户调整)
浅念
2026-09-29 14:09:29 +08:00
-
3728eb93d9
feat(app): 服务端历史行首缩略图 + 上传中心空态引导至服务端历史
浅念
2026-09-29 12:04:06 +08:00
-
f1912998a8
feat(api): listUploads 会话条目内嵌照片预览(现签 thumb/browse)
浅念
2026-09-29 12:04:06 +08:00
-
3833bc3bc6
docs(plan): 服务端历史缩略图 + 上传中心空态引导设计方案
浅念
2026-09-29 11:38:23 +08:00
-
744d45cc61
fix(ads): 轮播图裂图修复——广告现签 TTL 24h + 失败节流重拉
浅念
2026-09-29 11:27:06 +08:00
-
8741bded7f
fix(app): 海报下载反馈改弹层内呈现——SnackBar 被模态弹层遮挡不可见
浅念
2026-09-29 11:25:49 +08:00
-
a02d7a5e98
feat(app): 海报弹层内中/English 切换——二维码海报支持英文版
浅念
2026-09-29 11:04:13 +08:00
-
c68e7115e4
docs(plan): 海报语言切换设计方案(弹层内中/English 切换)
浅念
2026-09-29 10:57:17 +08:00
-
0673f394d5
fix(app): picker dup gate — 2s server-check timeout, single snackbar, fileSize-throw allow
浅念
2026-09-29 10:35:04 +08:00
-
7f8cda1cd3
fix(viewer): 去除头部下方残留的旧广告位实例(位置迁移漏删)
浅念
2026-09-29 10:14:55 +08:00
-
7e5c550fb3
feat(app): block selecting already-uploaded photos at picker tap (double-tap to force)
浅念
2026-09-29 10:10:49 +08:00
-
2261b8aebc
style(viewer): 广告轮播移至宣传图与标题之间(after-banner 插槽)
浅念
2026-09-29 10:03:15 +08:00
-
328140494f
docs(plan): picker tap-time duplicate gate (option A) — incremental plan
浅念
2026-09-29 09:51:41 +08:00
-
c64db3c53a
docs: 广告位轮播验收记录与实施计划 Task 13 勾选(线上部署完成)
浅念
2026-09-29 09:35:37 +08:00
-
19d4fd143a
feat(app): banner crop ratio 3:1 -> 16:9 (output <=1920x1080, preview height aligned with cover)
浅念
2026-09-29 09:32:28 +08:00
-
bfba76b5e6
fix(ads): 终审修复——staging 前缀+运行时上限核验/失效绑定编辑/白名单去 heic/杂项
浅念
2026-09-29 02:20:21 +08:00
-
041cfc77b7
docs: 广告位实施计划 Task 5-12 勾选
浅念
2026-09-29 01:59:57 +08:00
-
b3e89f7efb
fix(admin): 广告位排序并列簇修正——create 追加 max+1/move 纯逻辑抽取/相册下拉预载
浅念
2026-09-29 01:35:09 +08:00
-
239ef5648f
feat(admin): 广告位管理页——上传/链接/绑定相册/开关/排序
浅念
2026-09-29 01:21:33 +08:00
-
7f9789eb46
polish(viewer): 广告轮播 a11y 补全——aria-current/focus-visible/touch-action/键名对齐
浅念
2026-09-29 01:08:13 +08:00
-
f1c13bff7c
feat(viewer): 相册页广告轮播——4s 自动/暂停/滑动/徽标/会话级关闭
浅念
2026-09-29 00:58:48 +08:00
-
80405cfcc1
chore(api): 公开广告端点补 enabled 投影不变量注释(Task 9 评审建议)
浅念
2026-09-29 00:50:46 +08:00
-
373f0fc533
feat(api): GET /v1/public/albums/{token}/ads 公开广告(全局+定向/现签)
浅念
2026-09-29 00:44:23 +08:00
-
9ec8226577
fix(sync): reconciler 清扫环补 ad——错过的 ad.* 推送恢复自愈通道
浅念
2026-09-29 00:26:21 +08:00
-
60b675a908
feat(sync): 对账清单 ad 实体当前态清扫
浅念
2026-09-29 00:22:13 +08:00
-
4979091d2c
feat(api): 广告位 CRUD——outbox ad.* 事件/audit/停用高优先级/版本化换图
浅念
2026-09-28 23:57:43 +08:00
-
121afadf1e
feat(api): /admin/ads/uploads 广告图 staging 预签名(2MB/白名单/admin-only)
浅念
2026-09-28 23:34:11 +08:00
-
4db90b0e9e
feat(sync): ov inbox ad 分支与 sender adId 推导(disabled/墓碑=删投影行)
浅念
2026-09-28 23:18:37 +08:00
-
d86f452bed
docs: 广告位设计 404 码 ALBUM_NOT_PUBLIC 纠正入档 + 实施计划 Task 1-4 勾选
浅念
2026-09-28 23:03:32 +08:00
-
539597e9f0
feat(storage): 广告对象键布局(staging + 版本化终键)
浅念
2026-09-28 23:01:09 +08:00
-
318f69dae7
fix(db): photos 查重索引补 schema 声明——消除 migrate dev 误提议 DROP 漂移
浅念
2026-09-28 22:49:43 +08:00
-
726f6a1be8
feat(db): ads 写权威表与 ads_ov 投影表(含迁移)
浅念
2026-09-28 22:43:25 +08:00
-
001d3aaf73
fix(contracts): 广告位 404 码对齐 NOT_FOUND/title 必填/空 PATCH 语义/上限漂移守护
浅念
2026-09-28 22:29:45 +08:00
-
ec55d5718b
feat(contracts): 广告位 openapi 端点/schema 与 AD_UPLOAD_MAX_BYTES,类型再生
浅念
2026-09-28 22:16:12 +08:00
-
af8f3b78dd
feat(contracts): ad.updated/ad.deleted 事件类型与 ad 实体映射
浅念
2026-09-28 21:58:32 +08:00
-
ac37794d43
fix(app): path-precise duplicate matching; shared file stat; union test
浅念
2026-09-28 20:22:37 +08:00
-
0fa23e015e
feat(app): server-side duplicate pre-check at enqueue moment
浅念
2026-09-28 19:17:35 +08:00
-
64e1be09d3
test(api): pin earliest-uploadedAt + uploadEnabled-agnostic pre-check; fix comment
浅念
2026-09-28 19:06:47 +08:00
-
805f77be76
feat(api): upload duplicate pre-check endpoint (checkUploadDuplicates)
浅念
2026-09-28 18:56:07 +08:00
-
7d744da56e
docs: 广告位实施计划——评审修订(inbox 依赖暂存豁免 ad 关键补丁/常量指针纠正/组件测试补齐/compose 全路径)
浅念
2026-09-28 18:41:54 +08:00
-
4b5940c0d8
test(api): 修复 uploads e2e 与服务端查重(
90dcc58)的字节数冲突
浅念
2026-09-28 18:38:36 +08:00
-
3b7d37110a
docs: 广告位设计补轮播图左上角「广告」可见小标签(合规可识别性)
浅念
2026-09-28 18:25:49 +08:00
-
678225e8b5
docs(plan): upload duplicate pre-check at enqueue moment — incremental plan
浅念
2026-09-28 18:25:24 +08:00
-
8453167b39
docs: 广告位设计补部署顺序硬约束(ov 先 cn 后,DTO IsIn 整批拒收已核实)、广告图 2MB 上限、量级假设登记
浅念
2026-09-28 18:24:00 +08:00
-
ab412a3630
docs: 广告位设计补 enabled 翻转的 sync inbox 直测用例(评审建议)
浅念
2026-09-28 18:16:15 +08:00
-
0220a9cc05
docs: 广告位设计评审修订——createdAt 进投影/载荷、inbox disabled=删行、albumId 恒空串、head 校验补 contentType
浅念
2026-09-28 18:14:00 +08:00
-
573a559e4a
docs: 广告位轮播设计方案(全局+定向投放/两步上传/outbox 同步投影/sessionStorage 关闭)
浅念
2026-09-28 18:09:35 +08:00
-
46f9d93fd3
fix(app): guard force-column migration against downgrade-then-reupgrade
浅念
2026-09-28 17:27:52 +08:00
-
29f3bde9c2
feat(app): wire server dedup - force passthrough + PHOTO_DUPLICATE classification & l10n
浅念
2026-09-28 17:06:19 +08:00
-
4f89c25bad
fix(app): lock capture page portrait; gate zoom badge on 2 pointers; drop dead getter
浅念
2026-09-28 16:33:15 +08:00
-
ac602acf47
feat(app): camera preview WYSIWYG aspect + pinch zoom with double-tap reset
浅念
2026-09-28 16:17:07 +08:00
-
65cd6849cc
docs(plan): Task 9 checklist — GIF/truncated source cases for crop
浅念
2026-09-28 16:02:57 +08:00
-
683e19bdc1
feat(app): crop cover & banner before upload (crop_your_image, 16:9 / 3:1)
浅念
2026-09-28 15:39:39 +08:00
-
97db504e25
docs(plan): fix manifest snippet (VISUAL_USER_SELECTED has no maxSdkVersion) + expand Task 9 checklist
浅念
2026-09-28 15:04:42 +08:00
-
2e5fc40636
feat(app): in-app asset picker (wechat_assets_picker) - unlimited multi-select with range selection
浅念
2026-09-28 14:43:59 +08:00
-
aea797c7c7
docs+test(app): correct okhttp version comments; harden throttle test assertions
浅念
2026-09-28 14:22:24 +08:00
-
45dbde3719
perf(app): throttle upload progress callbacks to 256KB steps
浅念
2026-09-28 14:10:29 +08:00
-
203f62e7cb
test(app): align mockwebserver with resolved okhttp 5.2.1
浅念
2026-09-28 14:10:14 +08:00
-
93e7046332
feat(app): enqueue gallery batch concurrently via Future.wait
浅念
2026-09-28 13:53:42 +08:00
-
b79edf447b
feat(app): bounded-parallel prepare (default 3) replaces serial queue
浅念
2026-09-28 13:43:07 +08:00
-
dc5ae4a24a
feat(app): raise default upload parallelism 2 -> 4
浅念
2026-09-28 13:34:48 +08:00
-
cc47278f50
docs: upload speedup plan v2 — 9 tasks after full re-review
浅念
2026-09-28 13:34:03 +08:00
-
441a24a54c
docs: upload speed optimization plan draft
浅念
2026-09-28 11:33:04 +08:00
-
90dcc58c33
feat(uploads): P0-1 batch 4 — server-side duplicate photo detection (409 + force + index)
浅念
2026-09-28 11:29:29 +08:00
-
33f347cdea
feat(app): P0 batch 3 — offline detection with engine pause/resume + UI banner
浅念
2026-09-28 11:23:51 +08:00
-
638dd9b45d
feat(app): P0 batch 2+2.5 — local upload dedup with batch dialog, album switch check, file size guard
浅念
2026-09-28 11:06:40 +08:00
-
9edcb3f2b1
feat(app): P0 batch 1 — photo viewer zoom, camera lifecycle, image memory management
浅念
2026-09-28 10:35:14 +08:00
-
98e073d8c8
docs: App potential issues v2 — full analysis with server-side dedup (confirmed, ready to execute)
浅念
2026-09-28 10:24:46 +08:00
-
984fe8981c
docs(viewer): prod verification — share sheet copy-only (native share button removed)
浅念
2026-09-28 09:15:30 +08:00
-
a5d71686ff
feat(viewer): remove native share button from share sheet (user request) — copy link only
浅念
2026-09-28 09:08:39 +08:00
-
dc8d3ff967
feat(app): launcher icon — brand logo 1024px + adaptive (blue #1A73E8 background)
浅念
2026-09-24 17:07:14 +08:00
-
2ce529dd5b
docs(viewer): prod verification — share sheet without link text
浅念
2026-09-24 16:55:07 +08:00
-
d279cefd71
feat(viewer): hide link text under QR in share sheet (user request) — QR + copy button remain
浅念
2026-09-24 16:51:36 +08:00
-
643f837bca
feat(viewer): hide view count in album header (user request) — counting/reporting unaffected
浅念
2026-09-24 16:24:05 +08:00
-
cf490c7892
feat(app): all album date displays date-only — formatAlbumDateTime drops HH:mm
浅念
2026-09-24 16:20:47 +08:00
-
07761b1b26
fix(app): camera preview distortion — swap sensor W/H for portrait
浅念
2026-09-24 16:07:44 +08:00
-
c199d0630c
feat(embed): photo click opens album page in a new tab (user decision 2026-09-24)
浅念
2026-09-24 15:25:41 +08:00
-
bd4db7b458
style(viewer): 相册 banner 限高 320px + cover 裁切(PC 端观感修正)
浅念
2026-09-24 15:00:12 +08:00
-
32eb4ceb8e
docs: 观众链接统一境外源定稿(后台分享/嵌入/App二维码均 ov 域名)
浅念
2026-09-24 14:46:54 +08:00
-
76380477a0
docs: 验收记录补嵌入组件 EMBED_ORIGIN 修正(cn 后台嵌入代码改指 ov 域名)
浅念
2026-09-24 14:01:12 +08:00
-
e5302e3929
docs: 正式环境双地域部署计划与验收记录
浅念
2026-09-24 13:41:47 +08:00
-
30a3520669
fix(deploy): formalize nginx entrypoint ipv6 script removal in web.Dockerfile
浅念
2026-09-24 11:53:11 +08:00
-
d331d55880
chore: remove temporary freeze-debug spec
浅念
2026-09-23 19:03:21 +08:00
-
17d510ccd5
fix(embed): scroll freeze final layer — Chrome fires a queued pointerenter after pointercancel when dragging outside, permanently trapping hover pause
浅念
2026-09-23 18:59:47 +08:00
-
5efb89a252
fix(deploy): remove orphaned proxy directives from template cleanup
浅念
2026-09-23 18:41:31 +08:00
-
57394387cc
fix(deploy): proxy_pass double http:// prefix — API was down
浅念
2026-09-23 18:39:12 +08:00
-
222c44c1f7
fix(deploy): disable gzip on /v1/ API paths — Flutter release AOT gzip decompression failure
浅念
2026-09-23 18:36:11 +08:00
-
fa06193a12
fix(embed): scroll freeze complete fix — remove pointer capture (broke photo clicks), keep watchdog
浅念
2026-09-23 18:25:59 +08:00
-
65581b7920
fix(android): usesCleartextTraffic=true — release APK blocked HTTP APIs (Android 9+ default)
浅念
2026-09-23 18:10:46 +08:00
-
f7f24b0a0b
build(android): release signing config — key.properties based, debug fallback
浅念
2026-09-23 17:15:51 +08:00
-
1cad7823e2
fix(embed): watchdog also clears hover + releases capture (third freeze layer — capture suspends pointerleave, lost release never frees it)
浅念
2026-09-23 17:13:49 +08:00