docs(memory): 修正 git 推送结论(凭据可恢复,push 正常)
This commit is contained in:
@@ -434,3 +434,108 @@ P1 剩余两项(首屏跟随系统深色、首页 Waline 懒加载)用户明
|
||||
顺带删掉尾部重复的 `GetByID(owner)`(表单类型通知邮件复用同一个 owner),少一次查询。
|
||||
- 四语言 `profile.theme.hint` 与 changelog 范围说明补上「你发布的投票页」。
|
||||
- 验证:vote/i18n/context/theme/templates 全绿;线上 `lang="ja"` + 中文内容的不一致待部署后复测。
|
||||
|
||||
### 部署后复测(v=20261019g)
|
||||
|
||||
- `/vote/7kcP5kR8YnJC`(admin6):`lang="zh-CN" data-theme-style="sakura"`,base/theme css 均 v=g,
|
||||
日文串(投票する / 匿名での参加 / ログイン)全部消失 → 语言与主题同步跟随发布者。
|
||||
- `/ _/admin6`、`/user/profile`:仍为 `zh-CN` + sakura,未回归。
|
||||
- 隔离性:另取三个 token 抽查 —— 4G3i79OCYa2E / 7l0MwF7cLz4T 为 `lang="ja"`(无语言偏好、无主题),
|
||||
9J1zgXwQ05Ai 为 `lang="zh-CN"` 且**无** data-theme-style → 主题不会跨箱主泄漏。
|
||||
- 遗留观感问题(未改,等用户决定):投票页的「允许匿名参与」提示条是 `uk-alert-primary`,
|
||||
仍是 UIkit 浅蓝,在粉底上偏冷。改它需要「浅底 + 深主色文字」的对比度,现有 `--tb-primary-weak`
|
||||
叠白后对比度只有 ~2.6:1,得先加一个 primary-strong 令牌,故未动。
|
||||
|
||||
### 顶栏配色再修(v=20261019h)
|
||||
|
||||
用户反馈「探索/注册链接底色粉色,但整条顶栏是灰色,很突兀」。实测部署版:顶栏 `#fff6f9`、
|
||||
页面 `#fceef3` —— 近白横带压在饱和粉底上,肉眼就读成「白色/灰色的一条」。无头 Chrome 截图 +
|
||||
像素采样确认不是 UIkit 默认 #f8f8f8 回退(那说明变量没生效,现象会连带整页失效)。
|
||||
- sakura 浅色 `--tb-navbar` 直接取页面底色 `#fceef3`(深色同样 `#241a1f`),横带消失;
|
||||
- 顶栏链接 `#999` 在粉底上偏淡 → 主题内微调为 `--tb-text-secondary`,hover 用 `--tb-primary`
|
||||
(深色被 base.css 的 `!important` 规则接管,不受影响);
|
||||
- 顺带 `uk-alert-primary`(匿名参与提示/空列表)的 UIkit 浅蓝是页面上唯一的冷色块,
|
||||
改为 `--tb-primary-weak` 底 + `#a63a5e` 文字(≈5.3:1)。
|
||||
- 以上三条都写在 sakura.css 的「组件微调」段,只对 sakura 生效,默认主题零影响。
|
||||
|
||||
## 主题「砂狼白子 / shiroko」(v=20261019i)
|
||||
|
||||
- `static/css/themes/shiroko.css`:灰蓝银白令牌(浅 #edf2f8 / 主色 #4a7fc1),
|
||||
组件微调只有两条 —— `.uk-card-default` 右下角水印立绘(`background-size: auto 176px`,纯背景层不改布局)、
|
||||
顶栏链接色提到 `--tb-text-secondary`;深色不铺立绘(浅色构图在深色下会糊)。
|
||||
- 素材 `static/images/themes/shiroko/`(68KB):`bg-desktop.webp`(2400×1350) / `bg-mobile.webp`(900×1600) /
|
||||
`hero-fade.webp`(275×620,16% alpha) / `pattern.svg` / `pattern-dark.svg`。
|
||||
- **`static/fs.go` 的 embed 清单加了 `images/themes`**(目录项,子目录自动覆盖)——
|
||||
这是「新增顶层静态目录必须手工登记」的又一次踩点。
|
||||
- 背景是 PIL 合成的:1280 行的竖向渐变 + 白色径向光晕 + 立绘 30% 贴右下 + 狼 10% / 光环 20% / 纸飞机 18%。
|
||||
实测 mean≈244、std≈9;右侧留白区 std 13(立绘可见),中间 std 1.9(正文区干净)。
|
||||
- ⚠️ **`cover` 会按视口裁剪**:竖屏/超宽屏会把贴在图片最右的立绘裁掉,所以立绘不能太靠边 ——
|
||||
位置要留在图片横向 24%~76% 之外就得配 `@media` 换图(本次桌面 16:9 + 移动 9:16 两张)。
|
||||
- 生成素材(ImageGen)8 张里只有 3 张可用:线稿图案(狼/光环/纸飞机)抠白底干净;
|
||||
2 张人像抠底失败(背景不是纯白,`background: transparent` 实际没生效),2 张场景背景几乎没有内容(std<5)。
|
||||
教训:**没有视觉能力时,生成图要用 `mean/std/edge` 先验内容量**,别直接拿去合成。
|
||||
- 素材来源与版权写在 `docs/theme-shiroko.md`(角色版权 NEXON / Yostar,非商用同人)。
|
||||
- 启用需要在 `conf/app.ini` 的 `[theme] available` 里加 `shiroko`(示例配置已更新)。
|
||||
|
||||
## shiroko 插画重做:动物线稿 → Q 版人物(v=20261019k)
|
||||
|
||||
用户反馈「简笔画不是画动物,是人物形象」,插画层整体重做。
|
||||
|
||||
- 新增 `dev/gen_shiroko_chibi.py`:手写 SVG 生成 6 个 Q 版白子(wave/cheer/think/run/doze/peek),
|
||||
3.8KB/张,造型逐项对齐用户立绘(灰发蘑菇头 + 圆钝狼耳 + 倾斜光环 + 青围巾 + 深蓝外套 + 灰裙 + 青黑球鞋)。
|
||||
**生成模型这条路走不通**:`background: transparent` 不生效、无视觉反馈时无法判断好坏;
|
||||
代码画路径反而可控、体积小、任意尺寸不糊。
|
||||
- ⚠️ **cover 必然裁掉贴边插画**:1280×1400 视口下,2400×1350 的背景图只露出中部 1234px,
|
||||
右下立绘被裁成 38px 一条。→ base.css 新增装饰层令牌 `--tb-deco / --tb-deco-size / --tb-deco-position`
|
||||
(固定像素 + 四角定位 + fixed,不随视口比例变化)。
|
||||
- ⚠️ **多背景层的值个数必须恒定**:deco 先写成 4 个值,background-image 变 6 层而 size/position 只有 3 个,
|
||||
CSS 循环取值 → 整页重复小人。改成固定 6 个槽位(1 图案 + 6 装饰 + 1 背景 = 8 层),
|
||||
主题必须写满 6 个(缺的填 none),这条写进了 `_scaffold.css`。
|
||||
- 删掉 `bg-desktop.webp` / `bg-mobile.webp` / `hero.webp` / `dev/gen_shiroko_bg.py`;
|
||||
整页底色改成纯 CSS 渐变(不用图片,也就没有 cover 缩放差异)。
|
||||
- 深色关掉 deco(浅色线稿在深色底上糊成灰块);pattern 里的爪印换成 Q 版头像,
|
||||
opacity 0.42→0.2、tile 240→320(原来铺得太密,像壁纸)。
|
||||
- 验证:默认主题背景仍 `#f7f8fa`、顶栏纯白、卡片纯白(零回归);箱主页与 `/user` 后台四角装饰都不压内容;
|
||||
移动端只留立绘 + peek。
|
||||
|
||||
## shiroko 插画二次返工:手绘 SVG → 参考立绘图生图(v=20261019l)
|
||||
|
||||
用户反馈上次的简笔画"太抽象"。根因判断:用户的立绘是**平涂无描边色块风**,
|
||||
我用手绘线稿去配它,风格本身就冲突,而且没有真人手感,形准也做不到。
|
||||
|
||||
- 新方案:ImageGen **图生图**(`image1` = `static/images/shiroko-cutout.png`,`input_fidelity: high`),
|
||||
提示词统一为「same character, same art style... flat vector illustration, no outlines」+ 换动作句,
|
||||
生成 4 个姿态(wave / cheer / think / doze),1024×1024、纯白背景。
|
||||
**四张角色特征与画风一致**,这一步是手绘做不到的。
|
||||
- 抠图:四角 + 四边中点 8 点 floodfill(容差 16)+ alpha 1px MinFilter 收边,裁 bbox 后统一高 620、
|
||||
WebP q90。实测无白边,光环中间的孔也正确透出。
|
||||
- 删除 `dev/gen_shiroko_chibi.py` 与 6 个手绘 SVG;`chibi/*.webp` 4 张共 106KB。
|
||||
图案里的手绘小头像也删了(和位图人物并排显得最抽象),改成雪花 + 光环 + 圆环 + 点簇。
|
||||
- ⚠️ **deco 的 `center` 定位在矮视口会撞车**:右下立绘 520px 高,1366×768 下从 y=248 一直到底,
|
||||
托腮放 `right center` 会直接站在立绘头顶。百分比是「(视口-图高)×pct」,改用 `top 46%` 并挪到左侧中部。
|
||||
验证视口:1366×768 / 1440×900 / 1280×1400 三档,人物互不重叠。
|
||||
- docs 补了完整提示词骨架、动作句与抠图参数,说明"必须平涂无描边"这条经验。
|
||||
|
||||
## shiroko 布局重排 + 新坐姿(v=20261019m)
|
||||
|
||||
用户反馈:左右不协调、最上边的头被顶栏挡住。
|
||||
- 布局改为**左右各两个**(左上 wave / 左下 sit,右上 cheer / 右下立绘),
|
||||
`≥920px` 真实视口才补中间两个(think / doze),矮屏不放(否则压到立绘)。
|
||||
- 顶部定位从百分比改成**固定 `top 96px`**:顶栏实际高 60px(不是 80),
|
||||
百分比是「(视口-图高)×pct」,小视口下算出来的值会落进顶栏里。
|
||||
`bottom 0` 也改成 `bottom 6px`,避免脚贴页底。
|
||||
- 新增坐姿(盘腿),ImageGen 图生图第 2 次才可用:第 1 张脚被画到画布底边(底部 78 像素贴边),
|
||||
提示词补 `centered composition, whole body fully visible with generous empty margin` 后正常。
|
||||
- ⚠️ **Chrome headless 的 `--window-size` ≠ CSS 视口**:实测 1080 → innerHeight 985、768 → 673
|
||||
(差约 95px 的窗口边框)。所以 `@media (min-height: 1050px)` 在 1080p 下永远不触发。
|
||||
判断媒体查询门槛要按「真实视口」写,截图验证必须加 `--force-device-scale-factor=1`,
|
||||
否则系统 DPI 缩放会让截图尺寸和 window-size 也对不上(曾出现 1920 请求出 1088 宽)。
|
||||
- git:仓库可用(origin = https://git.shiroko.one/tamakyi/tamabox,main),
|
||||
已本地提交 `0c39aff`,但 `credential.helper=store` 里的凭据过期 → `Failed to authenticate user`。
|
||||
打包 `../TamaBox-v4-mainline-20261019-2037.tar.gz`(1.5M,含图片素材)供直接部署。
|
||||
|
||||
### git push 补推
|
||||
|
||||
上次的 `Failed to authenticate user` 是临时态 —— 用户本机 Git for Windows 认证过之后 store 凭据恢复,
|
||||
本轮 `git push origin main` 直接成功(`38cd41a..0c39aff`),`git rev-list --left-right --count origin/main...HEAD` = 0 0。
|
||||
远端 8 个 shiroko 素材文件齐全。教训:**不要用一次 push 失败就断言无凭据**,先看一眼提交是否已存在、再试一次。
|
||||
|
||||
@@ -127,7 +127,12 @@
|
||||
- 终止性操作(停用)落独立公开页 `/deactivated`(注册在 `reqUserSignIn` 外);改密码后重登才用 flash + `/login`。
|
||||
- 只有箱主 `/user` 面板,**无管理员角色、无站方后台,且用户要求不要加**:站方动作只走 CLI / 邮件 / 改配置重启。
|
||||
要开管理页先问:能不能用 CLI 表达?
|
||||
- git 仓库已损坏,**不要动 git**;备份用 tar.gz 排除 `.git`/`.workbuddy`,放项目同级。
|
||||
- git 仓库可用(origin = `https://git.shiroko.one/tamakyi/tamabox`,分支 `main`)。**`git push` 能直接推**,
|
||||
用户本机的 Git for Windows 已认证,`~/.gitconfig` 的 `credential.helper=store` 与系统 `manager` 并存,
|
||||
store 里的记录会被刷新 —— 所以「Failed to authenticate user」是**临时态**(用户在别处提交后即恢复),
|
||||
不要据此断言「无凭据、只能打包」。推之前先 `git log --oneline -3` 看本地是否已提交,直接试推一次即可。
|
||||
改代码时仍只做只读 `git status/log`,别动历史。
|
||||
- 打包交付用 tar.gz(排除 `.git`/`.workbuddy`/`outputs`),放项目同级。
|
||||
|
||||
## 测试环境 box-dev-api.337845818.best
|
||||
|
||||
@@ -164,6 +169,9 @@
|
||||
必须在任何 i18n 取词之前调用,否则先渲染出的提示会按访客语言。箱主未配语言时才回退访客/站点默认。
|
||||
- 主题 = 一个 css 文件只覆盖令牌;新增主题不用改 Go/模板,放 `static/css/themes/<slug>.css` +
|
||||
`[theme] available` 登记即可(`static/fs.go` 已嵌整个目录)。底稿 `_scaffold.css`。
|
||||
- 带图片素材的主题把图放 `static/images/themes/<slug>/`(`static/fs.go` 的 embed 已含 `images/themes`,
|
||||
子目录自动覆盖;**新增别的顶层目录才要改清单**)。整页图用 16:9 + 竖版两张,靠 `@media` 切换 ——
|
||||
`--tb-page-image` 是 `cover`,贴着图片边缘放的插画会被按视口裁掉。
|
||||
- **必须同时写浅色块与深色块**(`html[data-theme-style=x]` / `html[data-theme="dark"][data-theme-style=x]`),
|
||||
`TestThemeCSSComplete` 会查;色块预览由浅色块的 `--tb-bg` + `--tb-primary` 自动生成(色值过正则防注入)。
|
||||
- 令牌 `--tb-navbar`:顶栏底色,默认 `var(--tb-surface)`。页面底色偏彩时主题应覆盖它,
|
||||
@@ -174,3 +182,15 @@
|
||||
但必须用 :not() 排除语义色(同特异性 + base.css 后加载,不排除会连带刷掉 danger/success)。
|
||||
- 主题底色用**纯色**,别用整页渐变——会被读成「底色分布不均匀」;图案建议 ≥24px、透明度 ≤0.06。
|
||||
- 改了 base.css / 主题 css 必须 +1 `conf.StaticVersion`(两者共用同一个 v)。
|
||||
- ⚠️ **多背景层不能塞变量列表**:`background-image: var(--a), var(--b)` 里若某个变量自身是逗号列表,
|
||||
层数会变而 size/position 的个数不变 → CSS 循环取值、整层错位(曾出现整页重复同一张插画)。
|
||||
需要多张装饰时用固定槽位:`--tb-deco` 恒 6 个,缺的填 `none`,size/position 同步补齐。
|
||||
- ⚠️ 整页 `cover` 背景图必然裁边(1280×1400 视口只露出 2400 宽的中间 1234px,竖屏更狠)
|
||||
→ 贴边的插画不要放进背景图,放 `--tb-deco`(固定像素 + 四角定位 + fixed)。
|
||||
- 主题插画可以不用图片:`dev/gen_shiroko_chibi.py` 用 SVG 路径手绘 Q 版人物,3.8KB/张、任意尺寸不糊;
|
||||
生成模型给的"透明背景"线稿抠不干净、无法目检,不如自己画。
|
||||
- 主题插画优先"图生图 + 抠白底":`image1` 给既有立绘、`input_fidelity: high`、
|
||||
提示词强调 `flat vector illustration, no outlines`,四张姿态的角色一致性远好于手绘 SVG。
|
||||
抠图用四角+四边中点 8 点 floodfill(容差 16)+ alpha MinFilter(3) 收边。
|
||||
- ⚠️ deco 的定位百分比是「(视口高-图高)×pct」,`center` 在矮视口会和大尺寸立绘重叠;
|
||||
右侧被立绘(bottom 0,500+px)占住时,第二个人物要放左侧、用显式 `top N%`。
|
||||
|
||||
Reference in New Issue
Block a user