Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,23 @@ user-facing notes live in [`docs/updates/`](docs/updates/) (English and

## Unreleased

## 2.2.4 — 2026-10-15

### Fixed

- Editor: a failed publish is reported again on every run someone asked for — a page rerun, an
agent `sca cell` command, a change to the notebook file, a module reload, a parameter commit —
so the page's "building the model" veil lifts with the reason instead of waiting out its
fallback. The once-per-identical-message dedup stays for the parameter burst. A page that
connects after the failure is told the last error at the end of the connection handshake.

### Changed

- Editor: the header's button that opened the raw marimo editor is gone.
- Skill: the editor docs state which notebooks the workspace scan lists — subfolders of any
depth are scanned; names starting with `.` or `_` and `node_modules`, `venv`, `site-packages`,
`build`, `dist` are skipped.

## 2.2.3 — 2026-10-14

### Added
Expand Down
19 changes: 9 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,20 +149,18 @@ the full crank cycle sweeps clean in the same sim ·

---

## Update Notes (2.2.3)
## Update Notes (2.2.4)

> Validate generated definitions, assembly constraints, and manufacturing
> geometry before production use.

- **The editor takes in edits made to the notebook file.** An agent's saved change is applied
cell by cell (changed cells update and run again, no reload), and is no longer written over by
the editor. If a cell was edited in both places, the file's version is kept and your unsaved
text goes to the log. Notebooks added to the workspace appear in the list by themselves.
- **`sca cell` and `sca new`.** `sca cell ls|get|put|insert|rm|run` edits the open notebook's cells
through the running editor (the page updates live, each write prints the cell's status and
errors); `sca new NAME` creates a notebook the editor then lists.
- **The editor tells you why no model is coming.** A failed build is reported on every run you or
an agent asks for (rerun, `sca cell`, a file change, a module reload), and to a page that opens
or refreshes afterwards — the "building the model" veil lifts with the reason instead of
waiting out its fallback.
- **The header's jump-to-marimo button is gone.**

Full notes for this version: [`docs/updates/2.2.3.md`](docs/updates/2.2.3.md).
Full notes for this version: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md).
Earlier versions: the [changelog](CHANGELOG.md) and [`docs/updates/`](docs/updates/).

---
Expand All @@ -183,7 +181,7 @@ in a compact public API for creating solids, applying features, tagging semantic
intent, querying topology, exporting manufacturing files, and translating recorded
models into FreeCAD workflows.

Current release: `simplecadapi==2.2.3`.
Current release: `simplecadapi==2.2.4`.

## What It Provides

Expand Down Expand Up @@ -698,6 +696,7 @@ and the [STEP reconstruction workflow](docs/skill/references/workflows/step-reco

## Documentation

- 2.2.4 update notes: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md)
- 2.2.3 update notes: [`docs/updates/2.2.3.md`](docs/updates/2.2.3.md)
- 2.2.2 update notes: [`docs/updates/2.2.2.md`](docs/updates/2.2.2.md)
- 2.2.1 update notes: [`docs/updates/2.2.1.md`](docs/updates/2.2.1.md)
Expand Down
17 changes: 8 additions & 9 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,18 +133,16 @@ CalculiX 静力 FEM(边界面按保真的 `interface.*` 标签选取,仿真

---

## 更新日志(2.2.3)
## 更新日志(2.2.4)

> 投入生产前请验证生成的定义、装配约束和制造几何。

- **编辑器会接收对 notebook 文件的修改。** agent 保存的修改会按 cell 逐个应用(变化的 cell 更新并重新运行,
不刷新页面),不再被编辑器覆盖。同一个 cell 两边都改时,保留文件里的版本,你未保存的文字记入日志。
工作区里新增的 notebook 会自动出现在列表中。
- **`sca cell` 和 `sca new`。** `sca cell ls|get|put|insert|rm|run` 通过运行中的编辑器修改打开的
notebook 的 cell(页面实时更新,每次写入都打印该 cell 的状态和错误);`sca new NAME` 创建一个
编辑器随即列出的 notebook。
- **编辑器会告诉你模型为什么没出来。** 你或 agent 主动发起的每次运行(重跑、`sca cell`、文件变更、
模块重载)失败都会重新报告,失败后打开或刷新的页面也会立刻拿到原因——"building the model"
遮罩随原因揭开,不再等兜底超时。
- **顶栏跳转 marimo 的按钮已移除。**

本版本的完整说明:[`docs/updates/2.2.3.zh-CN.md`](docs/updates/2.2.3.zh-CN.md)。
本版本的完整说明:[`docs/updates/2.2.4.zh-CN.md`](docs/updates/2.2.4.zh-CN.md)。
更早的版本:见[更新日志](CHANGELOG.md)和 [`docs/updates/`](docs/updates/)。

---
Expand All @@ -162,7 +160,7 @@ CalculiX 静力 FEM(边界面按保真的 `interface.*` 标签选取,仿真

SimpleCADAPI 是一个基于 OCP 的 Python CAD SDK,提供清晰的函数式建模操作和可重放的模型图。它在 OpenCascade 几何内核之上提供精简的公共 API,可用于创建实体、应用特征、添加语义标签、查询拓扑、导出制造文件,以及将记录的模型转换为 FreeCAD 工作流。

当前版本:`simplecadapi==2.2.3`。
当前版本:`simplecadapi==2.2.4`。

## 核心能力

Expand Down Expand Up @@ -588,6 +586,7 @@ uv run --extra fem python examples/ap242_gmsh_volume_mesh/run_calculix.py

## 文档

- 2.2.4 更新说明:[`docs/updates/2.2.4.zh-CN.md`](docs/updates/2.2.4.zh-CN.md)
- 2.2.3 更新说明:[`docs/updates/2.2.3.zh-CN.md`](docs/updates/2.2.3.zh-CN.md)
- 2.2.2 更新说明:[`docs/updates/2.2.2.zh-CN.md`](docs/updates/2.2.2.zh-CN.md)
- 2.2.1 更新说明:[`docs/updates/2.2.1.zh-CN.md`](docs/updates/2.2.1.zh-CN.md)
Expand Down
4 changes: 2 additions & 2 deletions docs/skill/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ description: Build, assemble, inspect, reconstruct, and export parametric CAD mo
license: Apache-2.0
metadata:
project: simplecadapi
version: 2.2.3
version: 2.2.4
package-name: simplecadapi
package-version: 2.2.3
package-version: 2.2.4
---

# SimpleCAD SDK Skill
Expand Down
23 changes: 23 additions & 0 deletions docs/updates/2.2.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 2.2.4 Update Notes

The editor now tells you why no model is coming, instead of showing "building the model" until
its fallback clears.

## A failed build is reported every time you ask for one

Before, a publish error was reported once per identical message. When the same failure repeated —
you press "run all" again, an agent edits a cell, the notebook file changes on disk — the editor
stayed silent: no model arrived, no error was shown, and the page waited out its three-minute
fallback. Now every run someone asks for reports its outcome afresh, and the veil lifts with the
reason (for example, a notebook whose top-level Part does not carry the notebook id; the message
ends with the Parts and Assemblies that were found instead). Reports during a slider drag are
still collapsed to one per identical state.

A page that opens or refreshes after the failure learns the reason at once, from the end of the
connection handshake.

## The marimo button

The header's button that opened the raw marimo editor is gone.

See the [changelog](../../CHANGELOG.md) for the complete list.
19 changes: 19 additions & 0 deletions docs/updates/2.2.4.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 2.2.4 更新说明

编辑器现在会告诉你模型为什么没出来,而不是让"building the model"一直挂到兜底超时。

## 每次主动运行都会报告构建结果

以前同一条发布错误只报一次。当同样的失败再次出现时——再点一次"run all"、agent 改了一个 cell、
notebook 文件在磁盘上被修改——编辑器会保持沉默:模型不来,错误也不显示,页面只能等三分钟兜底。
现在每一次主动发起的运行都会重新报告结果,遮罩会随原因揭开(例如 notebook 顶层 Part 的 id 和
notebook id 不匹配;报错末尾会列出实际找到的 Parts and Assemblies)。拖 slider 过程中的重复
报告仍然按同状态折叠成一条。

在失败之后打开或刷新的页面,会在连接握手的末尾立刻拿到这条原因。

## marimo 按钮

顶栏里跳转到 marimo 原生编辑器的按钮已移除。

完整列表见[更新日志](../../CHANGELOG.md)。
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "simplecadapi"
version = "2.2.3"
version = "2.2.4"
description = "A simplified OCP-native CAD modeling Python API"
readme = "README.md"
license = { file = "LICENSE" }
Expand Down
2 changes: 1 addition & 1 deletion uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading