Skip to content

Releases

dsh-boot-compass v0.4.1

Choose a tag to compare

@linshufan21 linshufan21 released this 18 Oct 05:59

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完五阶段罗盘序列再交接给主界面。纯代码,零视频资源。

0.4.1:npm 页的简介与目录对齐。 只改 package.json 的 description,让它与 awesome-dsh-plugin 目录里的中文简介一字不差 —— 桌面端全屏启动动画、4.5 秒五阶段、点按任意处跳过、从托盘重开窗口重播,以及坦白冷启动首帧可能顿一下。代码零改动。

0.4.0:对宿主版本更耐用。 动画一个像素没改,改的是"宿主改了名字之后还能不能好好收场"。① 启动卡 [data-dsh-boot] 若被改名,过去 gate 会一直冻到 12 秒上限;现在开机 2 秒内没见到卡就按"认不出的宿主"处理,照常播完并交接(state().noCard)。② webserver/index-inject 的载荷若不再是行表,只 warn 一次并回到普通启动,不会每个 index 请求都抛错。③ 桌面宿主定位 koffi 的候选路径从 2 条扩到 6 条(含 hoisted 布局)。另外 dsh.engines.dsh 补了上界(>=0.2.0-rc.1 <0.3.0),兼容性清单列出已实测的四个版本。验证:新增 _shoot/gate-logic.mjs 5/5 —— 已知宿主仍在 HOLD 冻结、卡消失即放行、认不出的宿主到 TOTAL 就交接(不再等 12 秒)、__DSH_BOOT_READY__ 仍直接开闸;重放判定 11/11、减弱动效仍零插值。

0.3.1:修掉中心罗盘的左右摇晃。 0.3.0 的相机关键帧带了 X/Y 分量(36% translateX(-6px) → 62% translateX(+5px)),1.6s→2.8s 之间整个相机层左右各偏一次;而 HUD 与侧栏是静止的,所以这点位移读起来不是"镜头在动",而是表盘自己在摇。现在相机只允许动 Z,透视原点也对齐到盘心(50% / 39.76%),推拉变成绕盘心同心缩放 —— 盘心横向/纵向漂移由 5.86px / 6.98px 降到 0.00 / 0.00,推近幅度一点没丢(仍是 1.125×)。

顺带做了全元素侧移审计(213 个元素 × 51 个采样点):往复且自身真在平移的 0 个;10 个"往复"被证明是旋转方块的 AABB 伪影(自身平移 0px),真有横向平移的 10 个变向全为 0 次(一条整屏扫描 + 侧栏 10px 入场滑入)。相机行程也收成单个旋钮 --cam-k(0 = 不推 / 1 = 默认 / 1.5 = 更强),默认值下与旧实现逐位相同。

0.3.0:编排从七拍重切成五阶段 —— 核心唤醒 → 环形展开 → 轨道汇聚 → 能量同步 → 稳定定格,默认时长 3000 → 4500 ms,就绪 gate 0.76 → 0.84,最后一拍由「穿镜头飞离」改成「稳定定格」。

画面加了真正的空间纵深:同一套透视坐标系 + 分层 Z + 相机推拉 + 两条倾斜轨道。过程里实测出一个 Chromium 行为并据此改了实现 —— 伪元素的 translateZ 会被整个丢弃(改成 0 或 ±600 画面逐位相同,而真实元素的 Z 正常:.core 给 Z=300 后投影由 360 变 491 px),所以倾斜轨道的前后关系改为靠绘制顺序表达,顺带修掉了原先「远轨压在表盘上、近轨藏在表盘后」的反向 bug。

同时修掉两处一直空转的「减弱动效」降级:.a{animation-name:none} 打不过 .wm-i.a{animation-name:wmIn} 这类复合选择器,.bg{transform:none} 又打不过 #bg 的 ID 规则 —— 修之前 114 条动画里有 105 条照跑、远场纵深也没压平。现在入场一律零插值、只在交接保留 4% 时长的淡出。

另外按 WCAG 实测修了浅色主题 6 处对比度不达标、把入场缓动换成强 ease-out、远场加了空气透视、收了雷达扫描的峰值亮度。验证:10/10 冻帧两次采集逐位相同、重放判定 11/11、深浅两套主题对比度全部达标、6× 降频下交错 A/B 四轮稳定在 59.5–59.8 fps。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

0.2.2:README 重写。 补上「首次(冷)启动起步那一下可能顿一下」的成因与实测 —— 注入行 62,259 字节,V8 冷解析 0.51–0.53 ms,所以顿挫不是脚本体积,而是挂载那一刻(建 shadow root、181 条 CSS 规则、106 条动画)与 DSH 自身启动抢主线程。同时补齐定位、时间线、兼容性表、更新路径(含 24 小时冷静期)、项目结构与常见问题。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.4.0

Choose a tag to compare

@linshufan21 linshufan21 released this 17 Oct 12:38

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完五阶段罗盘序列再交接给主界面。纯代码,零视频资源。

0.4.0:对宿主版本更耐用。 动画一个像素没改,改的是"宿主改了名字之后还能不能好好收场"。① 启动卡 [data-dsh-boot] 若被改名,过去 gate 会一直冻到 12 秒上限;现在开机 2 秒内没见到卡就按"认不出的宿主"处理,照常播完并交接(state().noCard)。② webserver/index-inject 的载荷若不再是行表,只 warn 一次并回到普通启动,不会每个 index 请求都抛错。③ 桌面宿主定位 koffi 的候选路径从 2 条扩到 6 条(含 hoisted 布局)。另外 dsh.engines.dsh 补了上界(>=0.2.0-rc.1 <0.3.0),兼容性清单列出已实测的四个版本。验证:新增 _shoot/gate-logic.mjs 5/5 —— 已知宿主仍在 HOLD 冻结、卡消失即放行、认不出的宿主到 TOTAL 就交接(不再等 12 秒)、__DSH_BOOT_READY__ 仍直接开闸;重放判定 11/11、减弱动效仍零插值。

0.3.1:修掉中心罗盘的左右摇晃。 0.3.0 的相机关键帧带了 X/Y 分量(36% translateX(-6px) → 62% translateX(+5px)),1.6s→2.8s 之间整个相机层左右各偏一次;而 HUD 与侧栏是静止的,所以这点位移读起来不是"镜头在动",而是表盘自己在摇。现在相机只允许动 Z,透视原点也对齐到盘心(50% / 39.76%),推拉变成绕盘心同心缩放 —— 盘心横向/纵向漂移由 5.86px / 6.98px 降到 0.00 / 0.00,推近幅度一点没丢(仍是 1.125×)。

顺带做了全元素侧移审计(213 个元素 × 51 个采样点):往复且自身真在平移的 0 个;10 个"往复"被证明是旋转方块的 AABB 伪影(自身平移 0px),真有横向平移的 10 个变向全为 0 次(一条整屏扫描 + 侧栏 10px 入场滑入)。相机行程也收成单个旋钮 --cam-k(0 = 不推 / 1 = 默认 / 1.5 = 更强),默认值下与旧实现逐位相同。

0.3.0:编排从七拍重切成五阶段 —— 核心唤醒 → 环形展开 → 轨道汇聚 → 能量同步 → 稳定定格,默认时长 3000 → 4500 ms,就绪 gate 0.76 → 0.84,最后一拍由「穿镜头飞离」改成「稳定定格」。

画面加了真正的空间纵深:同一套透视坐标系 + 分层 Z + 相机推拉 + 两条倾斜轨道。过程里实测出一个 Chromium 行为并据此改了实现 —— 伪元素的 translateZ 会被整个丢弃(改成 0 或 ±600 画面逐位相同,而真实元素的 Z 正常:.core 给 Z=300 后投影由 360 变 491 px),所以倾斜轨道的前后关系改为靠绘制顺序表达,顺带修掉了原先「远轨压在表盘上、近轨藏在表盘后」的反向 bug。

同时修掉两处一直空转的「减弱动效」降级:.a{animation-name:none} 打不过 .wm-i.a{animation-name:wmIn} 这类复合选择器,.bg{transform:none} 又打不过 #bg 的 ID 规则 —— 修之前 114 条动画里有 105 条照跑、远场纵深也没压平。现在入场一律零插值、只在交接保留 4% 时长的淡出。

另外按 WCAG 实测修了浅色主题 6 处对比度不达标、把入场缓动换成强 ease-out、远场加了空气透视、收了雷达扫描的峰值亮度。验证:10/10 冻帧两次采集逐位相同、重放判定 11/11、深浅两套主题对比度全部达标、6× 降频下交错 A/B 四轮稳定在 59.5–59.8 fps。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

0.2.2:README 重写。 补上「首次(冷)启动起步那一下可能顿一下」的成因与实测 —— 注入行 62,259 字节,V8 冷解析 0.51–0.53 ms,所以顿挫不是脚本体积,而是挂载那一刻(建 shadow root、181 条 CSS 规则、106 条动画)与 DSH 自身启动抢主线程。同时补齐定位、时间线、兼容性表、更新路径(含 24 小时冷静期)、项目结构与常见问题。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.3.1

Choose a tag to compare

@linshufan21 linshufan21 released this 16 Oct 14:39

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完五阶段罗盘序列再交接给主界面。纯代码,零视频资源。

0.3.1:修掉中心罗盘的左右摇晃。 0.3.0 的相机关键帧带了 X/Y 分量(36% translateX(-6px) → 62% translateX(+5px)),1.6s→2.8s 之间整个相机层左右各偏一次;而 HUD 与侧栏是静止的,所以这点位移读起来不是"镜头在动",而是表盘自己在摇。现在相机只允许动 Z,透视原点也对齐到盘心(50% / 39.76%),推拉变成绕盘心同心缩放 —— 盘心横向/纵向漂移由 5.86px / 6.98px 降到 0.00 / 0.00,推近幅度一点没丢(仍是 1.125×)。

顺带做了全元素侧移审计(213 个元素 × 51 个采样点):往复且自身真在平移的 0 个;10 个"往复"被证明是旋转方块的 AABB 伪影(自身平移 0px),真有横向平移的 10 个变向全为 0 次(一条整屏扫描 + 侧栏 10px 入场滑入)。相机行程也收成单个旋钮 --cam-k(0 = 不推 / 1 = 默认 / 1.5 = 更强),默认值下与旧实现逐位相同。

0.3.0:编排从七拍重切成五阶段 —— 核心唤醒 → 环形展开 → 轨道汇聚 → 能量同步 → 稳定定格,默认时长 3000 → 4500 ms,就绪 gate 0.76 → 0.84,最后一拍由「穿镜头飞离」改成「稳定定格」。

画面加了真正的空间纵深:同一套透视坐标系 + 分层 Z + 相机推拉 + 两条倾斜轨道。过程里实测出一个 Chromium 行为并据此改了实现 —— 伪元素的 translateZ 会被整个丢弃(改成 0 或 ±600 画面逐位相同,而真实元素的 Z 正常:.core 给 Z=300 后投影由 360 变 491 px),所以倾斜轨道的前后关系改为靠绘制顺序表达,顺带修掉了原先「远轨压在表盘上、近轨藏在表盘后」的反向 bug。

同时修掉两处一直空转的「减弱动效」降级:.a{animation-name:none} 打不过 .wm-i.a{animation-name:wmIn} 这类复合选择器,.bg{transform:none} 又打不过 #bg 的 ID 规则 —— 修之前 114 条动画里有 105 条照跑、远场纵深也没压平。现在入场一律零插值、只在交接保留 4% 时长的淡出。

另外按 WCAG 实测修了浅色主题 6 处对比度不达标、把入场缓动换成强 ease-out、远场加了空气透视、收了雷达扫描的峰值亮度。验证:10/10 冻帧两次采集逐位相同、重放判定 11/11、深浅两套主题对比度全部达标、6× 降频下交错 A/B 四轮稳定在 59.5–59.8 fps。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

0.2.2:README 重写。 补上「首次(冷)启动起步那一下可能顿一下」的成因与实测 —— 注入行 62,259 字节,V8 冷解析 0.51–0.53 ms,所以顿挫不是脚本体积,而是挂载那一刻(建 shadow root、181 条 CSS 规则、106 条动画)与 DSH 自身启动抢主线程。同时补齐定位、时间线、兼容性表、更新路径(含 24 小时冷静期)、项目结构与常见问题。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.3.0

Choose a tag to compare

@linshufan21 linshufan21 released this 16 Oct 14:12

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完五阶段罗盘序列再交接给主界面。纯代码,零视频资源。

0.3.0:编排从七拍重切成五阶段 —— 核心唤醒 → 环形展开 → 轨道汇聚 → 能量同步 → 稳定定格,默认时长 3000 → 4500 ms,就绪 gate 0.76 → 0.84,最后一拍由「穿镜头飞离」改成「稳定定格」。

画面加了真正的空间纵深:同一套透视坐标系 + 分层 Z + 相机推拉 + 两条倾斜轨道。过程里实测出一个 Chromium 行为并据此改了实现 —— 伪元素的 translateZ 会被整个丢弃(改成 0 或 ±600 画面逐位相同,而真实元素的 Z 正常:.core 给 Z=300 后投影由 360 变 491 px),所以倾斜轨道的前后关系改为靠绘制顺序表达,顺带修掉了原先「远轨压在表盘上、近轨藏在表盘后」的反向 bug。

同时修掉两处一直空转的「减弱动效」降级:.a{animation-name:none} 打不过 .wm-i.a{animation-name:wmIn} 这类复合选择器,.bg{transform:none} 又打不过 #bg 的 ID 规则 —— 修之前 114 条动画里有 105 条照跑、远场纵深也没压平。现在入场一律零插值、只在交接保留 4% 时长的淡出。

另外按 WCAG 实测修了浅色主题 6 处对比度不达标、把入场缓动换成强 ease-out、远场加了空气透视、收了雷达扫描的峰值亮度。验证:10/10 冻帧两次采集逐位相同、重放判定 11/11、深浅两套主题对比度全部达标、6× 降频下交错 A/B 四轮稳定在 59.5–59.8 fps。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

0.2.2:README 重写。 补上「首次(冷)启动起步那一下可能顿一下」的成因与实测 —— 注入行 62,259 字节,V8 冷解析 0.51–0.53 ms,所以顿挫不是脚本体积,而是挂载那一刻(建 shadow root、181 条 CSS 规则、106 条动画)与 DSH 自身启动抢主线程。同时补齐定位、时间线、兼容性表、更新路径(含 24 小时冷静期)、项目结构与常见问题。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.2.2

Choose a tag to compare

@linshufan21 linshufan21 released this 15 Oct 11:40

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完七拍罗盘序列再交接给主界面。纯代码,零视频资源。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

0.2.2:README 重写。 补上「首次(冷)启动起步那一下可能顿一下」的成因与实测 —— 注入行 62,259 字节,V8 冷解析 0.51–0.53 ms,所以顿挫不是脚本体积,而是挂载那一刻(建 shadow root、181 条 CSS 规则、106 条动画)与 DSH 自身启动抢主线程。同时补齐定位、时间线、兼容性表、更新路径(含 24 小时冷静期)、项目结构与常见问题。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.2.1

Choose a tag to compare

@linshufan21 linshufan21 released this 15 Oct 10:54

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完七拍罗盘序列再交接给主界面。纯代码,零视频资源。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

0.2.1:安装说明修正。 发版 24 小时内,pnpm 的 minimumReleaseAge(新版本冷静期)会让不带版本号的安装静默落到旧版 —— exit 0、不报错,看起来就像"装上了新版"。这段时间请写死版本号(add dsh-boot-compass@<版本>),并注意 profile 的 minimumReleaseAgeExclude 里同一个包名只认第一条规则,多行要合并成一行。另外桌面的 desktop profile 被宿主 CLI 独占(dsh plugin --profile desktop 会被拒绝),只能在客户端的插件页里装。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.2.0

Choose a tag to compare

@linshufan21 linshufan21 released this 14 Oct 15:26

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完七拍罗盘序列再交接给主界面。纯代码,零视频资源。

0.2.0 起:关掉窗口再从托盘打开,动画会重播一遍。 判定不在网页里做 —— Page Visibility 分不清「窗口真被隐藏」和「只是被别的窗口盖住」,所以宿主侧用 DSH 自带的 koffi 直接问 Windows(IsWindowVisible / IsIconic)。于是 alt-tab 切回来不会重播,最小化再还原会。Windows 专属,其它平台这个功能静静地不生效。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.1.1

Choose a tag to compare

@linshufan21 linshufan21 released this 14 Oct 13:33

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完七拍罗盘序列再交接给主界面。纯代码,零视频资源。

安装:

dsh plugin --profile <profile> add dsh-boot-compass

或用本页附件里的压缩包。完整说明见 README。

dsh-boot-compass v0.1.0

Choose a tag to compare

@linshufan21 linshufan21 released this 14 Oct 12:19

首个发布。

DSH 全屏启动动画:首帧是一条纯 CSS 覆盖层,在 DSH 画出加载卡之前就接住画面,随后播完七拍罗盘序列再交接给主界面。纯代码,零视频资源。

安装:dsh plugin --profile <profile> add dsh-boot-compass —— 或直接用附件里的压缩包。