@ckanner/flywheel 0.28.0 → 0.28.1
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.
- package/CHANGELOG.md +9 -0
- package/README.en.md +9 -1
- package/README.md +6 -2
- package/docs/en/getting-started.md +18 -3
- package/docs/getting-started.md +17 -3
- package/package.json +8 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
## 0.28.1
|
|
6
|
+
|
|
7
|
+
- 将 DSH 桌面控制界面迁入顶部原生 `conversation.view` 的 Flywheel 标签,移除遮挡对话和输入框的底部大浮层。按外部 plain-JS 插件规范只加载 React,控件、样式和快照由插件持有,通过公开 StoreHandle 与槽位接入宿主会话生命周期;使用宿主 locale 与语义颜色。配置按可换行卡片展示,桌面对话、轨迹、输入框和原生侧栏继续由 DSH 管理。
|
|
8
|
+
- 补齐界面异常恢复:单会话单个在途请求、启动/停止时锁定目标、忽略旧路径的迟到响应,显示最近确认时间;确定未派发的错误可修正后重试,执行结果未知则查询原目标确认后才允许新的变更。界面开关不自动启动、停止或探测任务。独立 SDK worker 的能力边界与桌面 UI 分开说明。
|
|
9
|
+
|
|
10
|
+
- 新增仓库内 `release:local` 交互发布入口。维护者可从已固定的 release tag 在本机构建六包,再依次完成候选安装测试、远端 tag/源码/完整性复核、候选上传、registry 安装及 `latest` 提升,无需下载外部候选归档或人工复制发布适配器。新入口位于维护工具 checkout,支持独立的已打 tag 源码 worktree;保留既有标签与 CI 流程,失败时复用原候选。
|
|
11
|
+
|
|
3
12
|
## 0.28.0
|
|
4
13
|
|
|
5
14
|
Codex Pro 默认接入。安装和迁移见 [配置指南](docs/configuration.md#codex-pro-默认与旧配置迁移);源码、测试、CI 和 registry 发布证据分别记录,不用离线通过代替用户 Mac 实测。
|
package/README.en.md
CHANGED
|
@@ -4,7 +4,7 @@ English | [简体中文](README.md)
|
|
|
4
4
|
|
|
5
5
|
Flywheel turns reviewed software requirements into bounded coding tasks with explicit acceptance criteria. A deterministic Go engine runs Plan, Execute, Review, and verification loops. Models propose plans, implement changes, and review candidates; the engine owns state, retries, budgets, workspaces, verification, local Git delivery, and stopping.
|
|
6
6
|
|
|
7
|
-
This documentation describes the **0.28.
|
|
7
|
+
This documentation describes the **0.28.1 implementation**. The desktop integration targets the interfaces checked against **DSH Mac 0.2.1-rc.5**. Source changes and GitHub releases do not establish npm availability: check the registry before installing a version. Offline test results also do not establish that a user's Mac, desktop permissions, account, or selected model works.
|
|
8
8
|
|
|
9
9
|
## Install
|
|
10
10
|
|
|
@@ -78,6 +78,12 @@ flywheel control status --cwd "$PWD" --task-dir "$PWD/docs/my-feature"
|
|
|
78
78
|
|
|
79
79
|
Packet delivery is a **local Git operation**. After evidence matches the current candidate, the engine commits the packet and fast-forwards it into the branch checked out at `cwd`. With the recommended layout, that is the task integration branch. Flywheel does not itself push, create GitHub PRs, wait for remote CI, merge remote PRs, or publish releases. Those operations belong to the authorized host or user. See [Workflow](docs/en/workflow.md) for commands, directory ownership, and merge timing.
|
|
80
80
|
|
|
81
|
+
### Desktop task controls
|
|
82
|
+
|
|
83
|
+
From `0.28.1`, the native **Flywheel** conversation view appears alongside Chat and Trajectory, preserving DSH's composer, model selector, and right sidebar. Version `0.28.0` uses the old composer popup; upgrade the CLI and desktop plugin to the same new version. Select a prepared task directory and its repository to inspect progress, intervention, effective models, and diagnostics, or explicitly start, refresh, or stop it.
|
|
84
|
+
|
|
85
|
+
The view retains session-scoped drafts while the host retains the session binding and shows snapshots with their refresh time. It does not discover tasks or poll automatically. An unconfirmed start/stop outcome requires a successful refresh of the same task before further mutations; closing or switching the view does not stop the independent engine. DSH's trajectory keeps its parent-session records, without automatically merging independent worker history. Desktop capabilities and SDK worker policy have separate scopes; see the [plugin guide](https://github.com/ckanner/flywheel/blob/main/plugins/dsh/README.en.md#use-the-desktop-controls).
|
|
86
|
+
|
|
81
87
|
## Verification and operating boundaries
|
|
82
88
|
|
|
83
89
|
L1 validates a packet; L2/L3 validate integration and user paths at milestone scope. Review examines the actual candidate and acceptance evidence independently of the executor transcript. Candidate or contract changes invalidate prior evidence. Completion requires verified Git delivery and persisted state; an agent's claim that it finished is insufficient.
|
|
@@ -122,6 +128,8 @@ npm test
|
|
|
122
128
|
|
|
123
129
|
These commands cover local code and protocol behavior. Real desktop UI, macOS permissions, account access, and model inference require separate, recorded testing in the intended environment.
|
|
124
130
|
|
|
131
|
+
Maintainers can build the six packages from a tagged source checkout and use the repository's `npm run release:local` command for interactive publication. No prebuilt archive is required. The command runs candidate and registry installation checks before promoting `latest`; see [local publication from source](https://github.com/ckanner/flywheel/blob/main/docs/en/releasing.md#local-build-and-publication-from-source) for the exact worktree and authentication steps.
|
|
132
|
+
|
|
125
133
|
## License status
|
|
126
134
|
|
|
127
135
|
The package currently declares **`UNLICENSED`**. An open-source license has not been selected; these English documents do not change the repository's visibility or licensing status.
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Flywheel 用确定性 Go 引擎驱动 Plan、Execute、Review 和分层验收,把已经明确的需求变成有边界、可验证、可持久化的软件交付。模型负责规划、实现和评审;引擎负责状态、重试、预算、工作区、验收、提交与停止。
|
|
6
6
|
|
|
7
|
-
当前 **v0.28.
|
|
7
|
+
当前 **v0.28.1 实施版**以 DSH Mac 桌面为入口:Kimi CLI 规划,DSH 原生 DeepSeek Flash 执行,DSH 原生 GPT 评审,较难的执行任务默认走 Codex Pro 插件的公开 machine API。DSH 插件提供控制面板、配置查看和安装预检;具名 model profiles 可复用于不同阶段,Go 仍是唯一状态所有者。设计依据见 [docs/design.md](docs/design.md),仓库约束见 [AGENTS.md](AGENTS.md)。
|
|
8
8
|
|
|
9
9
|
**本教程适用于 0.28.0 及以后的完整 npm 发行版。** 安装前用 `npm view @ckanner/flywheel version` 确认 registry 的 latest 已更新到所需版本;源码合并或 GitHub Release 不代表 npm 已发行。旧 0.22.1 没有本教程使用的安装与 DSH 接口,当前发行状态见[发行记录](docs/releasing.md#3-失败恢复)。
|
|
10
10
|
|
|
@@ -128,7 +128,7 @@ flywheel config inspect --cwd /repo --task-dir /repo/docs/my-task --json
|
|
|
128
128
|
|
|
129
129
|
先在目标 Git 仓库准备并审阅 `docs/<slug>/` 中的 Spec、packet 与配置:需求编号、L1/L2/L3 命令、禁止修改的验收路径和失败出口都应明确。模板可通过 `flywheel template` 查看;可选的 `flywheel-new` skill 用于辅助生成,最终仍由人确认契约。不要把 DSH 面板当成需求生成器。
|
|
130
130
|
|
|
131
|
-
|
|
131
|
+
从 `0.28.1` 开始,桌面控制面接入顶部“对话/轨迹”旁的原生 **Flywheel** 会话视图,保留 DSH 输入区、模型选择器和右侧栏。`0.28.0` 仍是旧底部弹层,需把 CLI 与桌面插件同版升级。输入仓库路径后可查看配置、检查环境或执行 SDK 无推理探测;启动、刷新和停止还需绝对任务路径。视图展示最近刷新的任务结果、完整 packet 列表与未知用量,模型配置和诊断按需查看,原始 JSON 默认折叠。也可使用人工命令:
|
|
132
132
|
|
|
133
133
|
```text
|
|
134
134
|
/flywheel {"action":"status","taskDir":"/repo/docs/my-task","cwd":"/repo"}
|
|
@@ -148,6 +148,8 @@ flywheel control doctor --task-dir /repo/docs/my-task --cwd /repo --probe
|
|
|
148
148
|
|
|
149
149
|
控制接口始终返回一个 protocol 1 JSON;`ok` 表示控制操作成功,任务是否完成应看 `state.status`。`config` 返回 `configuration`,`doctor` 返回 `diagnostic`;诊断有阻断项时保留完整报告并返回退出码 1,不能当成空白传输错误。若启动就绪超时,后台引擎可能仍在加载:先刷新状态和查看日志,不要另起重复任务。
|
|
150
150
|
|
|
151
|
+
视图草稿按 DSH 会话保留,展示的是带刷新时间的快照;不自动发现任务或轮询。启动/停止结果未确认时,先刷新同一任务再恢复操作。原生轨迹保留父会话已有记录,独立 worker 历史不会自动合并。桌面原生能力与 SDK worker 的临时策略属于不同范围,详见[桌面视图与运行边界](plugins/dsh/README.md)。
|
|
152
|
+
|
|
151
153
|
原有前台/单步 CLI 仍可使用;这些命令应在目标仓库根目录运行:
|
|
152
154
|
|
|
153
155
|
```sh
|
|
@@ -222,6 +224,8 @@ npm run build:npm
|
|
|
222
224
|
|
|
223
225
|
`build:npm` 先构建 worker,再在隔离目录打包 meta、四个平台包和 DSH 插件,输出到 `dist-npm/`。六个包版本必须一致;本地 tarball 和 Actions artifact 用于开发、验证或备用分发,不是日常用户的安装入口,也不等于已签名的 Mac 安装程序。源码构建及开发模式 skills 说明见[教程末节](docs/getting-started.md#9-开发与备用构建)。
|
|
224
226
|
|
|
227
|
+
维护者可以直接拉取源码,在本机构建后运行仓库内的 `npm run release:local` 完成交互发布,无需下载预构建归档。工具会运行候选和 registry 安装测试,再按六包依赖顺序提升 `latest`;已存在 release tag 的具体步骤见[从源码本地发布](https://github.com/ckanner/flywheel/blob/main/docs/releasing.md#5-从源码本地构建并发布)。
|
|
228
|
+
|
|
225
229
|
## 文档与代码入口
|
|
226
230
|
|
|
227
231
|
英文用户文档包括 [入门](docs/en/getting-started.md)、[配置](docs/en/configuration.md)、[工作流](docs/en/workflow.md) 和 [DSH 插件说明](https://github.com/ckanner/flywheel/blob/main/plugins/dsh/README.en.md)。贡献者从 [Contributing](https://github.com/ckanner/flywheel/blob/main/docs/contributing.md) 开始,发行维护者见 [Releasing](https://github.com/ckanner/flywheel/blob/main/docs/en/releasing.md)。
|
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
[English README](../../README.en.md) · [中文](../getting-started.md) · [Workflow](workflow.md) · [Configuration](configuration.md)
|
|
4
4
|
|
|
5
|
-
This guide covers
|
|
5
|
+
This guide covers **Flywheel 0.28.1**: npm installation, the DSH desktop and workers, configuration, preflight, a small task, and recovery. The checked desktop interface baseline is **DSH Mac 0.2.1-rc.5**. Real desktop UI, macOS permissions, authentication, and model inference still need testing on the intended machine.
|
|
6
6
|
|
|
7
7
|
Before installing, check `npm view @ckanner/flywheel version`. Continue with these instructions once the registry has the version you intend to use. A merged source change or GitHub Release does not establish npm publication, and an older installed release may not include these interfaces.
|
|
8
8
|
|
|
9
|
+
The top-level **Flywheel conversation view** below is available from `0.28.1`. Version `0.28.0` uses the composer popup; upgrade the CLI and desktop plugin to the same new version. Merging source or reloading the old version does not change that layout. CLI and task-directory interfaces remain the same.
|
|
10
|
+
|
|
9
11
|
## 1. Prepare the environment
|
|
10
12
|
|
|
11
13
|
| Requirement | Why it is needed |
|
|
@@ -73,7 +75,9 @@ The installer uses the official desktop plugin interface with exact version sele
|
|
|
73
75
|
dsh plugin --profile desktop add --save-exact --ignore-scripts @ckanner/dsh-plugin-flywheel@<installed-version>
|
|
74
76
|
```
|
|
75
77
|
|
|
76
|
-
This is the command shape used internally, not a placeholder to paste literally. An independent npm DSH CLI cannot manage the reserved `desktop` profile. Reload according to the host's instructions
|
|
78
|
+
This is the command shape used internally, not a placeholder to paste literally. An independent npm DSH CLI cannot manage the reserved `desktop` profile. Reload according to the host's instructions and select **Flywheel** in the native view bar alongside Chat and Trajectory. Check that bar's More menu if the entry is not directly visible.
|
|
79
|
+
|
|
80
|
+
This view controls and observes an already prepared task: progress, intervention, effective models, environment checks, and explicit start/refresh/stop. DSH keeps its chat, trajectory, composer, model selector, and right sidebar. Discuss requirements and prepare contracts through the original chat and skills. The view does not discover tasks started elsewhere; select the same task directory to observe one.
|
|
77
81
|
|
|
78
82
|
The worker defaults to a separate **`sdk` profile**. A desktop provider installation or login does not prove that the SDK profile has the same configuration or authorization. DeepSeek uses `deepseek-official`; native GPT routing uses the ChatGPT adapter. The checked adapter baseline can be installed with:
|
|
79
83
|
|
|
@@ -83,6 +87,8 @@ dsh plugin --profile sdk add dsh-plugin-chatgpt@0.1.17
|
|
|
83
87
|
|
|
84
88
|
That is a checked compatibility version, not a claim about the latest adapter. Follow its authorization documentation for the chosen profile and keep `DSH_HOME` consistent. Do not copy tokens into task files or Git.
|
|
85
89
|
|
|
90
|
+
The SDK worker's temporary permission and tool policy applies only to its child process. It does not edit the desktop profile or remove desktop capabilities. Worker-owned delegation, auxiliary model compaction, and currently the entire web tool are disabled. A native view does not make the worker inherit desktop plugins or merge its history. See the [plugin's lifecycle boundaries](https://github.com/ckanner/flywheel/blob/main/plugins/dsh/README.en.md#permissions-and-lifecycle-boundaries) for the capability limits and separate work needed to restore retrieval safely.
|
|
91
|
+
|
|
86
92
|
The hard route uses the installed `dsh-subagent-codex-pro@0.8.0` dependency's public machine API directly. It does not use `subagent_codex_pro` as a native LLM provider or require a parent model to delegate. Its underlying Codex app-server still needs the local Codex command and login.
|
|
87
93
|
|
|
88
94
|
### Desktop launcher
|
|
@@ -189,7 +195,13 @@ flywheel control start --cwd "$PWD" --task-dir "$PWD/docs/add"
|
|
|
189
195
|
flywheel control status --cwd "$PWD" --task-dir "$PWD/docs/add"
|
|
190
196
|
```
|
|
191
197
|
|
|
192
|
-
The
|
|
198
|
+
The top **Flywheel** view accepts the same two absolute paths. Expand its model-configuration and environment-check section when needed, then use the explicit start, refresh, or stop action. A control response's `ok` means the operation succeeded; task completion is determined by `state.status`. The view displays the last refresh time and does not poll automatically.
|
|
199
|
+
|
|
200
|
+
Draft paths and fetched snapshots are retained separately for each session across view switches while the host retains that session binding; a plugin reload or desktop restart may require selecting the paths again. Path edits discard old results and reject late replies without stopping the old task. Only one control request is pending per session, and a start or stop locks directory inputs while waiting.
|
|
201
|
+
|
|
202
|
+
After a start/stop timeout or disconnect, the background task's outcome may be unconfirmed. Keep the same task directory, refresh status, and inspect logs before deciding how to recover. The view disables further starts/stops until that task is successfully reconciled and never retries mutations automatically. A prior snapshot, closing a page, or switching sessions cannot prove the engine stopped. The native trajectory retains its parent-session records; full worker histories are not merged into it.
|
|
203
|
+
|
|
204
|
+
If the host explicitly confirms rejection before the control process started, such as a missing directory, correct the path or environment and submit again. This requires structured host evidence; error-message text alone cannot establish that a lost request was never executed.
|
|
193
205
|
|
|
194
206
|
For a foreground run that pauses before Review, use this instead of background start:
|
|
195
207
|
|
|
@@ -226,12 +238,15 @@ Existing hard-route configuration remains unchanged after upgrade. To adopt the
|
|
|
226
238
|
| Symptom | First check |
|
|
227
239
|
|---|---|
|
|
228
240
|
| Missing `install` or `control` command | Published version, `flywheel version`, PATH, and any explicit desktop `flywheelBinary` |
|
|
241
|
+
| The large composer popup is still present | Published `0.28.0` has the old layout; verify a build containing the conversation-view fix is installed, then reload as directed by DSH |
|
|
242
|
+
| Flywheel is not directly visible in the top bar | Check More, plugin enablement, and the actual installed version; `/flywheel` and CLI remain diagnostic entry points |
|
|
229
243
|
| Install succeeds but `ready:false` | Resolve the specific `diagnostic.checks` blockers |
|
|
230
244
|
| Terminal works but the desktop does not | Managed launcher, explicit override, GUI PATH/profile/environment; rerun setup and check the panel |
|
|
231
245
|
| A configuration edit has no effect | `config inspect` source and higher-priority task/project files; restart the engine |
|
|
232
246
|
| Skill or launcher conflict | Preserve customizations, compare the specific files, and resolve the reported conflict without altering ownership hashes |
|
|
233
247
|
| Worktree creation falls back in-place | Stop if isolation is required; inspect persisted mode and preserve work before recovery |
|
|
234
248
|
| Cleanup is unconfirmed | Inspect task-owned processes and receipts before retrying; elapsed time alone is not proof |
|
|
249
|
+
| Start/stop outcome is unconfirmed | Refresh the same task and inspect logs; timeout/disconnection proves neither no start nor a completed stop, and mutations are not retried automatically |
|
|
235
250
|
|
|
236
251
|
Installation is not one atomic transaction across npm, DSH, and all skills. Correct the reported cause and retry; preserve completed steps and user files. Do not delete whole configuration directories or modify integrity manifests to bypass conflicts.
|
|
237
252
|
|
package/docs/getting-started.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
本文适用于 **Flywheel 0.28.0 及以后的完整 npm 发行版**,覆盖 npm 一条命令安装 CLI、worker、DSH 插件与 skills,到配置、启动、观察、停止和恢复一个小任务。DSH 接口目标是已核对的 **Mac 桌面 0.2.1-rc.5**。真实桌面、Seatbelt 和账号调用仍需在自己的 Mac 验收,CI 不能代替这些检查。
|
|
6
6
|
|
|
7
|
+
下文的顶部 **Flywheel 会话视图**从 `0.28.1` 开始提供。`0.28.0` 仍使用底部弹层;需要把 CLI 和桌面插件升级到同一新版本,源码合并或重新载入旧版本不会带来新布局。CLI 和任务目录接口保持一致。
|
|
8
|
+
|
|
7
9
|
安装前用 `npm view @ckanner/flywheel version` 确认 registry 的 latest 已更新到所需版本;源码合并或 GitHub Release 不代表 npm 已发行。旧 0.22.1 没有本教程使用的安装与 DSH 接口,当前发行状态见[发行记录](releasing.md#3-失败恢复)。
|
|
8
10
|
|
|
9
11
|
## 目录
|
|
@@ -93,7 +95,9 @@ flywheel setup --no-global
|
|
|
93
95
|
|
|
94
96
|
## 3. 桌面入口和 SDK 配置
|
|
95
97
|
|
|
96
|
-
安装器已经调用正式接口 `dsh plugin --profile desktop add --save-exact --ignore-scripts @ckanner/dsh-plugin-flywheel@<本次精确版本>`,随后通过 `list` 核对版本。无需再分别安装 worker 或手动选择压缩包。该命令必须来自桌面安装;独立 npm DSH CLI 不能管理保留的 `desktop` profile
|
|
98
|
+
安装器已经调用正式接口 `dsh plugin --profile desktop add --save-exact --ignore-scripts @ckanner/dsh-plugin-flywheel@<本次精确版本>`,随后通过 `list` 核对版本。无需再分别安装 worker 或手动选择压缩包。该命令必须来自桌面安装;独立 npm DSH CLI 不能管理保留的 `desktop` profile。按照宿主提示重新载入,在顶部“对话/轨迹”所在的原生视图栏选择 **Flywheel**;未直接显示时检查该栏的更多入口。
|
|
99
|
+
|
|
100
|
+
这个视图用于控制和观察已经准备好的任务:看进度、人工处理项、实际模型和环境,显式启动、刷新或停止。它保留 DSH 的原生对话、轨迹、输入区、模型选择器和右侧栏;需求讨论与契约准备仍在原来的对话和 skills 中进行。视图不会自动发现别处启动的任务,需要选择相同的任务目录。
|
|
97
101
|
|
|
98
102
|
### 原生 SDK profile
|
|
99
103
|
|
|
@@ -105,6 +109,8 @@ dsh plugin --profile sdk add dsh-plugin-chatgpt@0.1.17
|
|
|
105
109
|
|
|
106
110
|
随后按该 provider 的文档在对应 profile 完成授权,并保持一致的 `DSH_HOME`。不需要把凭证复制到任务契约或 Git。此处不把 `subagent_codex_pro` 当成原生 LLM provider。困难任务通过 `codex-pro` worker 直接使用已安装插件的公开 machine API,不需要 DSH 父模型再发一次工具调用。底层 Codex app-server 仍需本机 Codex 与登录;包依赖安装不代替它们。
|
|
107
111
|
|
|
112
|
+
SDK worker 的临时权限与工具策略只用于其子进程,不改写桌面 profile 或移除桌面已有能力。它限制自主委派、辅助模型压缩等工作,当前还禁用整个 web 工具;移到原生会话视图不会让 worker 自动继承桌面插件或轨迹。能力范围及后续检索接入边界见[插件说明](../plugins/dsh/README.md#权限上下文与报告归档)。
|
|
113
|
+
|
|
108
114
|
### Mac GUI 的自动入口
|
|
109
115
|
|
|
110
116
|
安装器在 `~/.config/flywheel/` 下生成 `npm-launcher` 和 `installation.json`。launcher 使用绝对 Node/CLI 路径,记录安装时已核对的 DSH 入口,并保留工具的绝对 PATH 目录;不会把临时 npx 缓存路径当成正式工具目录。npm CLI 启动器再解析与自身版本一致的 worker。
|
|
@@ -243,7 +249,13 @@ flywheel control start --task-dir "$PWD/docs/add" --cwd "$PWD"
|
|
|
243
249
|
flywheel control status --task-dir "$PWD/docs/add" --cwd "$PWD"
|
|
244
250
|
```
|
|
245
251
|
|
|
246
|
-
`ok: true` 只表示控制操作成功;`running` 表示引擎运行状态,最终任务结果看 `state.status
|
|
252
|
+
`ok: true` 只表示控制操作成功;`running` 表示引擎运行状态,最终任务结果看 `state.status`。也可以在顶部 **Flywheel** 视图填入同样两个绝对路径,按需展开“模型配置与环境检查”,再点击“启动/刷新状态/停止”。视图区分未初始化、运行、已完成、暂停、停止和升级,标明最近刷新时间;它不会自动轮询。
|
|
253
|
+
|
|
254
|
+
宿主保留会话绑定期间,路径草稿与快照会按会话保留,切换“对话/轨迹/Flywheel”不丢失;重新载入插件或桌面后可能需要重新选择路径。修改路径清除旧结果并忽略迟到响应,不会停止旧任务。每个会话只等待一个控制请求;启动或停止等待期间锁定目录输入。
|
|
255
|
+
|
|
256
|
+
启动或停止超时、断连后,后台任务的结果可能尚未确认。保留原任务目录,先“刷新状态”和查看日志;界面在成功核对该任务前禁止继续启动/停止,也不会自动重试。已有快照只是上次结果,不能凭页面关闭、切换会话或停止按钮失去等待状态推断引擎已经结束。原生轨迹保留父会话自己的记录,worker 完整历史不自动合并到其中。
|
|
257
|
+
|
|
258
|
+
如果宿主明确报告请求在启动控制进程前已被拒绝,例如目录不存在,则修正目录或环境后可以重新提交;这与响应丢失后的结果未确认不同。界面只接受宿主的结构化确认,不通过错误文字推断任务没有执行。
|
|
247
259
|
|
|
248
260
|
需要人工在 Review 前检查结果时,使用前台监督模式;它与后台 start 二选一:
|
|
249
261
|
|
|
@@ -299,6 +311,8 @@ launcher 被手工修改时,先备份修改。希望采用自动入口,可
|
|
|
299
311
|
| 现象 | 先检查什么 |
|
|
300
312
|
|---|---|
|
|
301
313
|
| 没有 `install` 或 `control` 命令 | `npm view @ckanner/flywheel version` 与 `flywheel version`;是否仍是旧 0.22.1,PATH 或显式 `flywheelBinary` 是否指向旧版本 |
|
|
314
|
+
| 仍看到底部大弹层 | 已发布的 `0.28.0` 是旧布局;核对是否安装了包含会话视图修复的构建,再按宿主提示重新载入 |
|
|
315
|
+
| 顶部未直接显示 Flywheel | 检查视图栏更多入口、插件启用状态和实际版本;`/flywheel` 与 CLI 仍可用于诊断 |
|
|
302
316
|
| 安装 `ok:true`,但 `ready:false` | 安装已完成;按 `diagnostic.checks` 补齐当前配置需要的 CLI、目录或环境变量,再运行 doctor |
|
|
303
317
|
| npm 全局目录权限错误 | 使用自己可写的 `--prefix`,并把对应 `bin` 加入 shell PATH |
|
|
304
318
|
| desktop profile 被拒绝 | `--dsh-bin` 是否指向桌面安装的命令,而非单独 npm 安装的 DSH CLI |
|
|
@@ -312,7 +326,7 @@ launcher 被手工修改时,先备份修改。希望采用自动入口,可
|
|
|
312
326
|
| 改 channel 后账号没切换 | channel 是计量/配置别名;实际账号仍由 SDK profile/provider 的授权决定 |
|
|
313
327
|
| doctor 有 unknown 或 skipped | unknown 不等于通过,skipped 可能是非任务路由、mock 或没有请求 SDK probe |
|
|
314
328
|
| 费用显示未知 | 渠道未提供 cost/usage;unknown 不是免费,hard token budget 可能停止 |
|
|
315
|
-
|
|
|
329
|
+
| 启动/停止结果未确认 | 刷新同一任务并查看日志;超时或断连不证明任务未启动或已停止,不能自动重试变更 |
|
|
316
330
|
| L1 在 exit 0 后仍拒绝 | 检查候选漂移、输出截断、超时/取消或进程收尾错误 |
|
|
317
331
|
| 提交/合并/持久化检查失败 | 检查保留 worktree、hook 和 Git 差异,修复原因后恢复,不强制清理 |
|
|
318
332
|
| skills 安装拒绝已有目录 | 查看具体冲突;可能是用户修改、未标记目录、损坏清单或旧标记。按上面的备份恢复流程处理,`--force` 不绕过默认保护 |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ckanner/flywheel",
|
|
3
|
-
"version": "0.28.
|
|
3
|
+
"version": "0.28.1",
|
|
4
4
|
"description": "A deterministic Go orchestrator for coding-agent loops, with task contracts, verification gates, Git worktrees, and DSH desktop integration.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"flywheel": "bin/flywheel.js",
|
|
@@ -38,19 +38,20 @@
|
|
|
38
38
|
"docs/examples/create-first-task.sh"
|
|
39
39
|
],
|
|
40
40
|
"optionalDependencies": {
|
|
41
|
-
"@ckanner/flywheel-darwin-arm64": "0.28.
|
|
42
|
-
"@ckanner/flywheel-darwin-amd64": "0.28.
|
|
43
|
-
"@ckanner/flywheel-linux-arm64": "0.28.
|
|
44
|
-
"@ckanner/flywheel-linux-amd64": "0.28.
|
|
41
|
+
"@ckanner/flywheel-darwin-arm64": "0.28.1",
|
|
42
|
+
"@ckanner/flywheel-darwin-amd64": "0.28.1",
|
|
43
|
+
"@ckanner/flywheel-linux-arm64": "0.28.1",
|
|
44
|
+
"@ckanner/flywheel-linux-amd64": "0.28.1"
|
|
45
45
|
},
|
|
46
46
|
"scripts": {
|
|
47
47
|
"release:check": "node scripts/release-preflight.js",
|
|
48
|
+
"release:local": "node scripts/release-local.js",
|
|
48
49
|
"test": "node --test npm/test/*.test.js",
|
|
49
50
|
"test:install": "node --test npm/test/install.integration.js",
|
|
50
51
|
"test:registry": "node npm/test/registry-smoke.js",
|
|
51
|
-
"build:npm": "bash scripts/build-npm.sh 0.28.
|
|
52
|
+
"build:npm": "bash scripts/build-npm.sh 0.28.1 dist-npm"
|
|
52
53
|
},
|
|
53
54
|
"dependencies": {
|
|
54
|
-
"@ckanner/dsh-plugin-flywheel": "0.28.
|
|
55
|
+
"@ckanner/dsh-plugin-flywheel": "0.28.1"
|
|
55
56
|
}
|
|
56
57
|
}
|