Skip to content

升级 Calcit 0.38.0 并类型化文档导航分发 - #105

Merged
tiye merged 1 commit into
mainfrom
migrate/calcit-0380
Nov 8, 2026
Merged

tiye merged 1 commit into
mainfrom
migrate/calcit-0380

Conversation

@tiye

@tiye tiye commented Nov 8, 2026 •

Copy link
Copy Markdown
Member

使用影响

用正式 Calcit 和 @calcit/procs 0.38.0 重新安装完整依赖图并构建。文档导航、历史、快速跳转、Reel 面板和原存档行为保持。直接使用导航辅助组件的调用方需提供接收具名 docs-workflow.schema/Op 的分发回调。

实现与边界

  • 将 Respo 的 dispatch 类型槽绑定到应用 Op,导航组件与事件用具名 Op、RespoEvent 和现有 CoordKey。移除裸 Enum 和导航回调里的 Dynamic。
  • 正式 Alerts 依赖 Reel 0.10.0,因此保留一个检查旧匿名操作的渲染入口。键盘控制直接构造 Reel Control,render-with! 在受管理的 memo 帧构建面板。
  • 通过 Option 分支保留原缺省值和无子节点行为。前端 PR 沿用原双构建 artifact,部署条件和路径保持。

验证

262 个定义、完整 strict、废弃调用与动态方法门禁、原 2 项定义测试、原 Node 导航回归、Vite 与 mdBook 0.4.14 构建通过。Chrome 验证文档与子页导航、Quick Jump 及 Reel 开关。

Summary by CodeRabbit

  • Bug Fixes
    • Improved handling of navigation and control events, including validation of legacy events.
  • Documentation
    • Updated release guidance with current setup requirements and clarified navigation, keyboard shortcut, and event behavior.

@coderabbitai

coderabbitai Bot commented Nov 8, 2026 •

Copy link
Copy Markdown

Explain Change →

Caution

Review failed

The pull request is closed.

Walkthrough

The application now uses typed operations for component callbacks and separates view dispatch from Reel control handling. The release and dependency versions are updated, the navigation test passes a converted click event, and the upload workflow uses updated actions.

Changes

Application Dispatch Update

Layer / File(s) Summary
Typed operation contracts and component callbacks
calcit.cirru
Component callback schemas and hints now use docs-workflow.schema/Op and RespoEvent. Cursor and stored-state fallbacks use explicit Option matching, and child-entry rendering and missing-target results use Option values.
View dispatch and Reel control routing
calcit.cirru
dispatch-view! routes Reel controls to on-control!, validates legacy payloads, and dispatches operations. render-with! uses dispatch-view! as its action handler, and the devtools toggle uses on-control!.
Release versions, documentation, and navigation test
deps.cirru, package.json, README.md, test/navigation.test.mjs
Project and dependency versions advance to the 0.0.42 and Calcit 0.38.0 release set. The README describes the updated callback contracts, and the navigation test passes an EDN-converted click event.

Upload Workflow Action Updates

Layer / File(s) Summary
Update upload workflow actions
.github/workflows/upload.yaml
The workflow updates the Calcit setup action and both COS upload action versions.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Other

Sequence Diagram(s)

sequenceDiagram
  participant render-with!
  participant dispatch-view!
  participant dispatch!
  participant on-control!
  render-with!->>dispatch-view!: Send raw action
  dispatch-view!->>dispatch-view!: Decode operation and validate legacy payloads
  alt Reel control
    dispatch-view!->>on-control!: Apply typed control
  else Operation
    dispatch-view!->>dispatch!: Record typed Op
  end
Loading

Possibly related PRs

Merge Risk: Low · up to 6fca7

The update is mergeable with a bounded documentation follow-up: document the current navigation callback signature so consumers do not rely on the historical contract. Additional dispatch-routing and browser-event tests would improve regression protection; no production failure is established.

- [ ] 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

@tiye
tiye merged commit 243cdbd into main Nov 8, 2026
1 check passed
@tiye
tiye deleted the migrate/calcit-0380 branch November 8, 2026 17:25
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