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
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ Demo: https://repo.calcit-lang.org/gen-code/

## 0.0.26 候选

使用者需统一 Calcit CLI 和 `@calcit/procs` **0.41.0**,配对正式
使用者需统一 Calcit CLI 和 `@calcit/procs` **0.41.1**,配对正式
UI **0.15.2**、Respo **0.19.5**、JS-FFI **0.2.13** 和传递依赖 Router **0.12.2**,
然后重新生成 JS。插件继续接收单事件派发,代码生成请求与存档行为沿用原合同。

Reel **0.11.0** 是 Demo 的开发依赖。Demo 将插件事件解码为具名 `GenCodeOp`,快捷键与面板通过独立回调接收 `Control`。流式补丁通过 `GenCodeFieldValue` union 约束为字符串或布尔值,Editor 等宿主的插件回调继续接收单个原格式操作。
内部 `call-genai-msg!` 只向回调交付补丁 Map。插件在派发边界补齐 cursor 和请求状态,生成原格式的 `:states-merge` 事件。
Meta+Enter 直接读取 Respo 提供的类型化键盘字段,快捷键条件与派发协议不变。
质量检查使用 0.41.0 的 coverage、弱类型和弃用视图,继续限制两处既有 SDK 强转。
质量检查使用 0.41.1 的 coverage、弱类型和弃用视图,继续限制两处既有 SDK 强转。
验收覆盖完整 strict、原测试、离线快捷键与流式回归和构建。

## 历史 0.0.22 配对
Expand Down
30 changes: 15 additions & 15 deletions calcit.cirru
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@
'call-genai-msg! $ %{} 'CodeEntry (:doc |)
:code $ quote $ defn call-genai-msg! (variant prompt-text emit-patch! *text)
hint-fn $ Fn Tag String
Fn (Map Tag gen-code.schema/GenCodeFieldValue) (-> Unit)
Fn (Map Tag schema/GenCodeFieldValue) (-> Unit)
Ref String
-> Unit
:features :js-ffi
Expand Down Expand Up @@ -277,7 +277,7 @@
'send-genai-request! $ %{} 'CodeEntry
:doc "|The raw Gemini SDK call is kept as a leaf FFI adapter so its capability is lexical."
:code $ quote $ defn send-genai-request! (chat prompt-text abort)
hint-fn $ Fn gen-code.core/GenAIChatHost String gen-code.core/AbortControllerHost
hint-fn $ Fn GenAIChatHost String AbortControllerHost
-> $ JsNullish JsObject
:features :js-ffi
.!sendMessageStream chat $ js-object (:message prompt-text)
Expand All @@ -293,7 +293,7 @@
'send-genai-stream! $ %{} 'CodeEntry
:doc "|Keep the Gemini SDK method call and browser abort signal in one typed JS adapter."
:code $ quote $ defn send-genai-stream! (chat prompt-text)
hint-fn $ Fn gen-code.core/GenAIChatHost String (-> gen-code.stream/GenAIStreamHost) (:features :js-ffi) (:async)
hint-fn $ Fn GenAIChatHost String (-> GenAIStreamHost) (:features :js-ffi) (:async)
let
abort $ new-abort-controller!
pending $ send-genai-request! chat prompt-text abort
Expand Down Expand Up @@ -336,17 +336,17 @@
wire-dispatch $ fn (dispatch!)
hint-fn $ Fn
Fn AnyEnum $ -> Unit
-> $ Fn gen-code.schema/GenCodeOp $ -> Unit
-> $ Fn schema/GenCodeOp $ -> Unit
fn (op)
hint-fn $ Fn gen-code.schema/GenCodeOp $ -> Unit
hint-fn $ Fn schema/GenCodeOp $ -> Unit
dispatch! $ gen-code.schema/plugin-op-to-wire op
, &unit
patch-dispatch $ fn (request-state emit!)
hint-fn $ Fn gen-code.schema/GenCodeState
Fn gen-code.schema/GenCodeOp $ -> Unit
-> $ Fn (Map Tag gen-code.schema/GenCodeFieldValue) (-> Unit)
hint-fn $ Fn schema/GenCodeState
Fn schema/GenCodeOp $ -> Unit
-> $ Fn (Map Tag schema/GenCodeFieldValue) (-> Unit)
fn (patch)
hint-fn $ Fn (Map Tag gen-code.schema/GenCodeFieldValue) (-> Unit)
hint-fn $ Fn (Map Tag schema/GenCodeFieldValue) (-> Unit)
emit! $ gen-code.schema/GenCodeOp :states-merge cursor request-state patch
render-node $ fn ()
hint-fn $ Fn $ -> respo.schema/Element
Expand Down Expand Up @@ -537,14 +537,14 @@
(:none) &unit
render-app!
add-watch! *reel :changes $ fn (reel prev)
hint-fn $ Fn (reel.typed/State gen-code.schema/GenCodeOp gen-code.types/StoreData) (reel.typed/State gen-code.schema/GenCodeOp gen-code.types/StoreData) (-> Unit)
hint-fn $ Fn (typed/State schema/GenCodeOp gen-code.types/StoreData) (typed/State schema/GenCodeOp gen-code.types/StoreData) (-> Unit)
render-app!
listen-devtools! |k on-control!
browser/add-event-listener! |beforeunload $ fn (event)
hint-fn $ Fn js-ffi.browser/EventHost (-> Unit) (:features :js-ffi)
hint-fn $ Fn browser/EventHost (-> Unit) (:features :js-ffi)
persist-storage!
browser/add-event-listener! |visibilitychange $ fn (event)
hint-fn $ Fn js-ffi.browser/EventHost (-> Unit) (:features :js-ffi)
hint-fn $ Fn browser/EventHost (-> Unit) (:features :js-ffi)
match (browser/visibility-state)
(:hidden) (persist-storage!)
_ &unit
Expand Down Expand Up @@ -577,7 +577,7 @@
if (nil? build-errors)
do (remove-watch! *reel :changes) (clear-cache!)
add-watch! *reel :changes $ fn (reel prev)
hint-fn $ Fn (reel.typed/State gen-code.schema/GenCodeOp gen-code.types/StoreData) (reel.typed/State gen-code.schema/GenCodeOp gen-code.types/StoreData) (-> Unit)
hint-fn $ Fn (typed/State schema/GenCodeOp gen-code.types/StoreData) (typed/State schema/GenCodeOp gen-code.types/StoreData) (-> Unit)
render-app!
reset! *reel $ typed/refresh updater @*reel schema/store
hud! |ok~ |Ok
Expand Down Expand Up @@ -669,7 +669,7 @@
and (struct? state) (&struct:matches? state GenCodeState)
Some $ GenCodeOp :states-merge
decode-map-as cursor $ List respo.schema/CoordKey
assert-type state 'gen-code.schema/GenCodeState
assert-type state GenCodeState
decode-map-as changes $ Map Tag gen-code.schema/GenCodeFieldValue
, None
(:hydrate-storage data)
Expand Down Expand Up @@ -788,7 +788,7 @@
'consume-genai-stream! $ %{} 'CodeEntry
:doc "|Consume a host async iterator and normalize each nullish yield into Option before invoking application code."
:code $ quote $ defn consume-genai-stream! (stream on-chunk!)
hint-fn $ Fn gen-code.stream/GenAIStreamHost
hint-fn $ Fn GenAIStreamHost
Fn (Option JsObject) (-> Unit)
-> Unit
:features :js-ffi
Expand Down
2 changes: 1 addition & 1 deletion deps.cirru
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

{} (:calcit-version |0.41.0)
{} (:calcit-version |0.41.1)
:version |0.0.26
:dependencies $ {}
|Respo/respo-ui.calcit |0.15.2
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"dependencies": {
"@calcit/procs": "0.41.0",
"@calcit/procs": "0.41.1",
"@cirru/writer.ts": "^0.1.7",
"@google/genai": "^1.4.0",
"cirru-color": "^0.2.4",
Expand Down
10 changes: 5 additions & 5 deletions yarn.lock

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

Loading