@calcit/procs 0.13.63 → 0.13.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
- ### Calcit Scripting Language
1
+ ### Calcit Programming Language
2
2
 
3
- > Semantically a dialect of ClojureScript. Built with Rust. Compiles to JavaScript ES Modules.
3
+ > A typed functional language for interactive and real-time applications. Built with Rust and compiling to JavaScript ES Modules.
4
4
 
5
5
  - Home https://calcit-lang.org/
6
6
  - API Doc https://apis.calcit-lang.org/
@@ -13,7 +13,8 @@ Core design:
13
13
  - Interpreter runs on Rust, extensible with Rust FFI
14
14
  - Persistent Data Structure
15
15
  - Indentation-based Cirru syntax, friendly to plain text editing
16
- - Lisp macros, functional style
16
+ - Code-as-data macros and functional style
17
+ - Nominal structs/enums, traits, methods, Option/Result, and static analysis
17
18
  - Compiles to JavaScript in ES Modules, JavaScript Interop
18
19
  - Hot code swapping friendly
19
20
 
@@ -22,6 +23,7 @@ Current direction:
22
23
  - `calcit.cirru` is the canonical source snapshot; retired `compact.cirru` inputs receive migration guidance
23
24
  - CLI-first development with `calcit` and `caps`, designed to work well with AI agents in terminal workflows
24
25
  - Better CLI editing and validation for CI, docs lookup, module management, and incremental updates
26
+ - Consistent support for real-time web applications: typed WebSocket messages, deterministic state updates, diff/patch synchronization, acknowledgement, and resynchronization
25
27
 
26
28
  ### Install ![GitHub Release](https://img.shields.io/github/v/release/calcit-lang/calcit)
27
29
 
@@ -0,0 +1,22 @@
1
+ # Calcit design narrative and real-time application model / Calcit 设计叙事与实时应用模型
2
+
3
+ ## Summary / 概要
4
+
5
+ - Repositioned Calcit as its own typed functional language rather than a ClojureScript dialect.
6
+ - 将 Calcit 重新定位为独立的 typed functional language,不再以 ClojureScript dialect 作为主要身份。
7
+ - Rewrote the README, introduction, overview, and feature hub around nominal structs/enums, traits and methods, Option/Result, static analysis, typed FFI, canonical Cirru source, and deterministic state updates.
8
+ - README、introduction、overview 与 feature hub 改为围绕 nominal struct/enum、trait/method、Option/Result、静态分析、typed FFI、canonical Cirru source 与确定性状态更新组织。
9
+ - Converted the former Clojure comparison page into a historical influence and migration aid. Comparisons remain only where they prevent a concrete migration mistake.
10
+ - 原 Clojure 对比页改为历史影响与迁移提示;仅在防止具体迁移误判时保留比较。
11
+ - Added a real-time application model centered on Calcium Workflow, Respo, Recollect, typed WebSocket envelopes, revision/ack/resync, bounded async work, observability, and convergence testing.
12
+ - 新增以 Calcium Workflow、Respo、Recollect、typed WebSocket envelope、revision/ack/resync、有界异步、可观测性与收敛测试为中心的实时应用模型。
13
+ - Updated agent, syntax, Tag, macro, bundle, and structural-source wording so supporting docs follow the same design vocabulary.
14
+ - 更新 agent、syntax、Tag、macro、bundle 与 structural-source 文案,使辅助文档采用一致的设计词汇。
15
+ - Added the same language-positioning, Calcium architecture, method-first API, cross-project validation, and bilingual tracking policy to `AGENTS.md` so future work keeps the direction.
16
+ - 将语言定位、Calcium architecture、method-first API、跨项目验证及双语追踪规则写入 `AGENTS.md`,使后续工作持续遵循该方向。
17
+
18
+ ## Policy / 约束
19
+
20
+ Future documentation should explain Calcit concepts on their own terms. Historical comparisons are migration aids, not design authorities. Language and ecosystem changes for web applications should preserve one coherent Calcium-style model: typed boundaries, serial deterministic business updates, pure projections, revisioned incremental synchronization, bounded effects, and observable convergence.
21
+
22
+ 后续文档应直接解释 Calcit 自身概念;历史比较只用于迁移,不作为设计依据。面向 Web 应用的语言和生态改动应保持一致的 Calcium 模型:typed boundary、串行确定性业务更新、纯 projection、revisioned incremental synchronization、有界 effect 与可观测收敛。
@@ -0,0 +1,33 @@
1
+ # Direct named data constructors in JS codegen
2
+
3
+ ## Context / 背景
4
+
5
+ Direct named enum calls such as `schema/Op :effect/ping` were lowered with an
6
+ embedded compiler-only definition value. The native evaluator accepted that
7
+ value, but JS codegen panicked because no runtime module reference remained.
8
+
9
+ 直接调用具名枚举(例如 `schema/Op :effect/ping`)时,预处理曾把编译期类型定义嵌入
10
+ 运行时代码。Native evaluator 可以处理该值,但 JS codegen 因缺少模块引用而 panic。
11
+
12
+ ## Change / 修改
13
+
14
+ - Preserve the `(namespace, definition)` path from a preprocessed `Import`
15
+ when lowering direct Struct and Enum constructor calls.
16
+ - Emit a regular codegen error for leaked compiler-only values instead of
17
+ reaching an `unreachable!` panic.
18
+ - Cover import-path preservation and the non-panicking diagnostic with unit
19
+ tests.
20
+
21
+ - 直接 Struct/Enum 构造器降级时保留预处理后 `Import` 的命名空间与定义路径。
22
+ - 编译期专用值意外进入 codegen 时返回普通诊断,不再触发 `unreachable!`。
23
+ - 增加引用路径保留及无 panic 错误路径的单元测试。
24
+
25
+ ## Verification / 验证
26
+
27
+ - Targeted Rust tests pass.
28
+ - A Calcium Workflow copy using direct cross-namespace `schema/Op` construction
29
+ completes full server-side JS emission with the patched release compiler.
30
+
31
+ - Rust 定向测试通过。
32
+ - 使用跨命名空间 `schema/Op` 直接构造的 Calcium Workflow 副本,已用修复后的
33
+ release 编译器完整完成 server JS 输出。
@@ -0,0 +1,31 @@
1
+ # Calcit-centered operational documentation
2
+
3
+ ## Context / 背景
4
+
5
+ The primary documentation was already repositioned around Calcit's nominal
6
+ types, traits/methods, typed boundaries, and Calcium Workflow. A few syntax and
7
+ agent guides still explained ordinary Calcit rules through repeated external
8
+ language comparisons.
9
+
10
+ 入口文档已经围绕 Calcit 的 nominal types、traits/methods、typed boundaries 与
11
+ Calcium Workflow 重整,但部分语法及 Agent 指南仍通过反复对比其他语言来解释普通规则。
12
+
13
+ ## Change / 修改
14
+
15
+ - Describe collection constructors, schemas, and collection-first argument
16
+ order directly as Calcit semantics.
17
+ - Replace the broad migration-comparison section in the advanced Agent guide
18
+ with Calcit semantic checkpoints based on CLI evidence.
19
+ - Keep historical language references only in the dedicated migration page,
20
+ standard provenance notes, and historical source links.
21
+
22
+ - 直接以 Calcit 语义说明集合构造器、schema 与集合优先的参数顺序。
23
+ - 将高级 Agent 指南中的大段迁移对照改为基于 CLI 证据的 Calcit 语义检查点。
24
+ - 仅在专门迁移页、标准来源说明和历史资料链接中保留外部语言引用。
25
+
26
+ ## Verification / 验证
27
+
28
+ `bash scripts/check-docs-md.sh` passes all 60 documentation files and all
29
+ 325 checked Cirru blocks.
30
+
31
+ `bash scripts/check-docs-md.sh` 已通过全部 60 个文档文件及 325 个 Cirru 代码块。
@@ -0,0 +1,17 @@
1
+ # Release 0.13.64
2
+
3
+ ## 中文
4
+
5
+ 发布 0.13.64,包含直接具名 Enum/Struct 构造器的 JS codegen 修复,以及以 Calcit
6
+ 自身语义为中心的第二批操作文档整理。
7
+
8
+ 该版本用于后续在 Calcium Workflow 中升级工具链,并验证跨命名空间直接构造
9
+ `schema/Op` 的完整前后端工作流。
10
+
11
+ ## English
12
+
13
+ Release 0.13.64 with the JavaScript codegen fix for direct named Enum/Struct
14
+ constructors and the second Calcit-centered operational documentation cleanup.
15
+
16
+ This version unblocks the Calcium Workflow toolchain upgrade and full-stack
17
+ validation of direct cross-namespace `schema/Op` construction.
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.13.63",
3
+ "version": "0.13.64",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
6
  "@types/node": "^25.7.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.13.63",
3
+ "version": "0.13.64",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
6
  "@types/node": "^25.7.0",