Skip to content

迁移 Respo Guidebook 至 Calcit 0.32.1 并更新事件类型示例 - #19

Merged
tiye merged 2 commits into
mainfrom
migrate/respo-guidebook-0321-823
Oct 31, 2026
Merged

tiye merged 2 commits into
mainfrom
migrate/respo-guidebook-0321-823

Conversation

@tiye

@tiye tiye commented Oct 31, 2026 •

Copy link
Copy Markdown
Member

站点使用者注意:本 PR 将 Respo Guidebook 的 Calcit CLI / @calcit/procs 从 0.31.0 同步到正式 0.32.1,配对已发布 Docs Workflow 0.0.40。本地须重装完整精确依赖图并刷新,依赖 UI 样式可能变化。应用 Store/Op 合同与原存档写入、禁用启动恢复的行为保留。当前 Guide 和 DOM Events 说明已更新,其他明确标记的历史章节不承诺可直接复制为 0.32.1 应用;本轮不合并、部署或发版。

修改与风险

  • 官方格式化迁移旧类型表示及 renderer 的等价 Fn 提示;14 个本地定义完整视图与实际 main 经官方归一化后的结果完全一致,没有新增业务 schema、强转或质量预算。
  • 真正发布的八模块图:Docs Workflow 0.0.40、Respo 0.17.1、UI 0.9.0、JS-FFI 0.2.9;Reel 0.7.0-alpha.5、Markdown 0.5.0-alpha.5、Router 0.9.0-alpha.4 和传递 Alerts 0.11.0-alpha.4 仍为已发布 alpha,不冒称全图稳定版,不再链接本地候选。
  • 默认 dispatch-op 只显式对应 main 既有受检 renderer 的 Dynamic→Unit 宿主入口;Enum 拒绝、游标与 payload 解码、具名 Store/Op 保持。保留 JS hud! 页面报错与成功提示。
  • DOM Events 删除旧 case-default / JS 属性读取转换实现,改为发布库的真实 EventHandler、单参数 dispatch、异构事件 Map 与宿主事件边界。Option<String> 示例使用当前 Fn 标注与闭合 decoder,明确区分缺失、空字符串和非法类型。
  • 原类型步骤增加 pipefail,保留上游 CLI 的失败退出码;canonical diff 只静默输出。在同一步用官方 docs check-md 检查两页当前可执行示例,不另建脚本/runner或测试框架。
  • npm 一小时策略仅作用于新版本解析,已有 lock immutable 重放不重新等待,无包级豁免。项目版本仍 0.0.4。
  • 原 COS 内置 verify、校验过的 rsync/mdBook 安装、SSH 主机校验和服务器目录保持。PR 只构建并保存双前端 artifact,不读取部署凭据或执行 COS/rsync。

验证

  • Caps strict 真实发布依赖图、工具链配对、正常生成 lock 与 immutable 重放通过。
  • 全定义 243、本地公开定义 14、完整 strict diagnostics 为空;dynamic-method/deprecated-call 均为 0,默认审计未关闭。
  • Guide Counter 与 DOM Events 原生代码块通过;事件解码额外核实空字符串保留 some、已有 nil/Number 拒绝。不是 DOM 传播或所有历史片段的运行覆盖。
  • 相对路径与原生产 CDN base 的 Vite 构建、原 mdBook 0.4.14 / linkcheck 0.7.6 构建通过。
  • 实际 SPA:DOM Events、父 Guide、Ctrl+P→Community、Escape、刷新默认 Guide;实际 mdBook 入口与完整 0.32.1 搜索四结果→Guide 跳转通过。SPA warn/error 为空,mdBook 无 error。
  • 两轮独立只读评审均无阻塞;没有独立 definition-attached 测试,不把零测试当作覆盖。

已知限制

mdBook Cirru 高亮仍回退为纯文本,见 Docs Workflow #95,原 highlight.js SHA256 不变;linkcheck 不支持的片段检查与大 bundle 提示保留。历史章节仍需逐段迁移,不将本站升级等同于更新模板或所有下游。

不合并、不生产部署、不发 tag/npm;等待原 Linux CI。

Summary by CodeRabbit

  • Documentation
    • Updated the guides for Calcit 0.32.1 and clarified which examples are current and ready to use.
    • Reworked the DOM Events guide to explain event handling, conversion, and :value decoding.
    • Added guidance on reinstalling the documented release set and refreshing the project.
  • Chores
    • Updated the project’s Calcit and package versions.
    • Expanded automated checks for documentation and formatting.

@coderabbitai

coderabbitai Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Walkthrough

The PR updates the project toolchain to Calcit 0.32.1 and associated package versions, rewrites schema metadata in quoted syntax, revises setup and event-handling documentation, and adds strict shell and Markdown checks to the upload workflow.

Changes

Toolchain and documentation

Layer / File(s) Summary
Toolchain pins and schema declarations
deps.cirru, package.json, calcit.cirru, README.md, docs/guide.md, docs/beginner-guide.md, docs/home.md
Calcit and related dependencies update to the listed versions. Schema metadata uses quoted syntax while retaining the represented types. Version references and setup instructions are updated.
Setup and event-handling documentation
README.md, docs/guide.md, docs/guide/dom-events.md
The documentation updates example checks, function type guidance, Docs Workflow type descriptions, and event-handler signatures and field behavior.
CI validation and deployment notes
.github/workflows/upload.yaml, README.md
The upload workflow enables strict shell handling, checks that formatting leaves calcit.cirru unchanged, and checks two Markdown files. Deployment notes describe package-age handling and the pinned mdBook command.

Estimated code review effort: 2 (Simple) | ~12 minutes

Change: Other

Possibly related PRs

  • Respo/guidebook#17: Updates the same package pins and version references to 0.31.0, which this PR updates to 0.32.1.
Merge Risk: Minimal · up to 9dba3

No merge-blocking defect is established. The event-field wording remains unverified against Respo 0.17.1; merging remains subject to normal checks.

Pre-merge checks: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed 标题准确概括了主要变更:将 Respo Guidebook 迁移至 Calcit 0.32.1,并更新 DOM Events 示例。
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 0 files. (9 skipped: 9 unsupported.)

Finishing Touches
Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional comments: 1
docs/guide/dom-events.md-5-5: 1

5-5: Minor · Potential issue · Low value

Unverified finding
We couldn't verify this from the code. It is shown for review, not as a verified issue.

The guide says input/change events provide both :value and :checked, but that unconditional claim may not hold when the event target is a contenteditable element or another target without a checked property.

The example-derived handler reads an absent or unusable field, producing incorrect state or a decoding failure.

This can occur when: A reader handles an input event from a contenteditable element, or a change event from a target without checked, using the documented fields as present values.


Review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 76a64844-5f08-4c42-8330-73146ad37eb9
Commits

Reviewing files that changed from the base of the PR and between 5d3c4ab and 9dba38a.

Files ignored due to path filters: 1
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
Files selected for processing: 9
  • .github/workflows/upload.yaml
  • README.md
  • calcit.cirru
  • deps.cirru
  • docs/beginner-guide.md
  • docs/guide.md
  • docs/guide/dom-events.md
  • docs/home.md
  • package.json

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

@tiye
tiye merged commit 601b2cd into main Oct 31, 2026
1 check passed
@tiye
tiye deleted the migrate/respo-guidebook-0321-823 branch October 31, 2026 11:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant