@ckanner/flywheel 0.31.0 → 0.32.0
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 +122 -5
- package/CONTRIBUTING.md +19 -0
- package/LICENSE +21 -0
- package/README.en.md +4 -171
- package/README.md +152 -269
- package/README.zh-CN.md +116 -0
- package/bin/flywheel-claude-code-pro-worker.js +1 -1
- package/bin/flywheel-codex-pro-worker.js +1 -1
- package/bin/flywheel-dsh-worker.js +1 -1
- package/bin/flywheel.js +1 -1
- package/bin/runtime.js +1 -1
- package/docs/README.md +86 -0
- package/docs/README.zh-CN.md +64 -0
- package/docs/archive/README.md +13 -0
- package/docs/archive/codex-pro-adapter-handoff.md +197 -0
- package/docs/archive/design-v0.24.md +540 -0
- package/docs/design.md +812 -0
- package/docs/en/claude-code-pro.md +25 -16
- package/docs/en/configuration.md +405 -145
- package/docs/en/contributing.md +303 -0
- package/docs/en/flow-console.md +142 -24
- package/docs/en/getting-started.md +232 -126
- package/docs/en/investigation.md +263 -0
- package/docs/en/jev-shadow.md +5 -0
- package/docs/en/jev.md +240 -0
- package/docs/en/model-policy.md +154 -62
- package/docs/en/releasing.md +207 -0
- package/docs/en/session-evaluation.md +4 -2
- package/docs/en/session-recovery.md +88 -6
- package/docs/en/workflow.md +241 -114
- package/docs/evaluation/README.md +12 -0
- package/docs/evaluation/jev-historical-provisional.json +138 -0
- package/docs/evaluation/jev-historical-result-2026-11-10.json +174 -0
- package/docs/plans/2026-11-01-dsh-integration.md +67 -0
- package/docs/plans/2026-11-01-model-profiles-preflight.md +29 -0
- package/docs/plans/2026-11-01-npm-installation.md +19 -0
- package/docs/plans/2026-11-03-codex-pro-default.md +28 -0
- package/docs/plans/2026-11-06-adaptive-workflow.md +365 -0
- package/docs/plans/2026-11-07-session-lifecycle.en.md +424 -0
- package/docs/plans/2026-11-07-session-lifecycle.md +337 -0
- package/docs/plans/2026-11-08-flow-console.md +271 -0
- package/docs/plans/2026-11-10-jev-shadow.md +32 -0
- package/docs/plans/2026-11-10-task-discovery.md +17 -0
- package/docs/plans/2026-11-10-workbench-redesign.md +19 -0
- package/docs/plans/2026-11-12-feedback-driven-workflows.md +739 -0
- package/docs/plans/2026-11-12-unified-jev-decisions.md +89 -0
- package/docs/plans/2026-11-13-jev-execution-decisions.md +110 -0
- package/docs/plans/2026-11-13-p5-ready-queue-prewarm.md +178 -0
- package/docs/plans/README.md +25 -0
- package/docs/reviews/2026-08-24-v0.18-review-fixplan.md +265 -0
- package/docs/reviews/2026-09-12-pr4-pr5-review.md +70 -0
- package/docs/reviews/README.md +12 -0
- package/docs/validation/2026-11-01-npm-installation.md +105 -0
- package/docs/validation/2026-11-01-profiles-preflight.md +67 -0
- package/docs/validation/2026-11-01-results.md +114 -0
- package/docs/validation/2026-11-03-codex-pro-default.md +90 -0
- package/docs/validation/2026-11-04-dsh-native-view.md +85 -0
- package/docs/validation/2026-11-04-release-0.28.1.md +33 -0
- package/docs/validation/2026-11-04-release-0.28.2.md +35 -0
- package/docs/validation/2026-11-05-dsh-0.2.2-compatibility.md +26 -0
- package/docs/validation/2026-11-05-registry-smoke-recovery.md +26 -0
- package/docs/validation/2026-11-05-release-0.28.3.md +32 -0
- package/docs/validation/2026-11-05-subscription-model-access.md +60 -0
- package/docs/validation/2026-11-05-view-order.md +14 -0
- package/docs/validation/2026-11-07-adaptive-workflow.md +79 -0
- package/docs/validation/2026-11-07-claude-code-pro.md +144 -0
- package/docs/validation/2026-11-07-session-lifecycle.md +136 -0
- package/docs/validation/2026-11-08-session-p3-p4.md +99 -0
- package/docs/validation/2026-11-09-flow-console.md +81 -0
- package/docs/validation/2026-11-10-jev-shadow.md +50 -0
- package/docs/validation/2026-11-10-task-discovery.md +45 -0
- package/docs/validation/2026-11-10-workbench-redesign.md +54 -0
- package/docs/validation/2026-11-11-release-0.30.2.md +65 -0
- package/docs/validation/2026-11-11-release-0.31.0.md +46 -0
- package/docs/validation/2026-11-12-dsh-0.2.2-rc.2.md +58 -0
- package/docs/validation/2026-11-12-feedback-driven-workflows.md +187 -0
- package/docs/validation/2026-11-12-release-0.31.1.md +58 -0
- package/docs/validation/2026-11-12-session-console-ux.md +46 -0
- package/docs/validation/2026-11-12-unified-jev-decisions.md +93 -0
- package/docs/validation/2026-11-13-dsh-settings-controls.md +104 -0
- package/docs/validation/2026-11-13-jev-execution-decisions.md +140 -0
- package/docs/validation/2026-11-13-p5-ready-queue-prewarm.md +138 -0
- package/docs/validation/2026-11-13-p5-review-closure.md +114 -0
- package/docs/validation/2026-11-13-p5-tracked-runtime-fixes.md +108 -0
- package/docs/validation/2026-11-13-prewarm-receipts-and-expiry-tests.md +92 -0
- package/docs/validation/2026-11-13-workspace-redesign.md +66 -0
- package/docs/validation/README.md +51 -0
- package/docs/validation/evidence/2026-11-08-session-p3-p4.json +5430 -0
- package/docs/validation/evidence/2026-11-13-p5-npm-candidate.json +54 -0
- package/docs/validation/evidence/claude-node-bridges.txt +118 -0
- package/docs/validation/evidence/claude-npm-build.txt +15 -0
- package/docs/validation/evidence/claude-npm-candidate.json +54 -0
- package/docs/validation/evidence/claude-npm-install.txt +21 -0
- package/docs/validation/evidence/claude-npm-tests.txt +145 -0
- package/docs/validation/evidence/claude-plugin-tests.txt +205 -0
- package/docs/validation/evidence/claude-quality-gate.txt +29 -0
- package/docs/validation/evidence/claude-race.txt +7 -0
- package/docs/validation/evidence/codex-pro-070-probes.txt +4 -0
- package/docs/validation/evidence/dsh-bridge.txt +4 -0
- package/docs/validation/evidence/dsh-native-view-bridge-tests.txt +1 -0
- package/docs/validation/evidence/dsh-native-view-build.txt +15 -0
- package/docs/validation/evidence/dsh-native-view-candidate.json +54 -0
- package/docs/validation/evidence/dsh-native-view-inspect.txt +27 -0
- package/docs/validation/evidence/dsh-native-view-install-tests.txt +19 -0
- package/docs/validation/evidence/dsh-native-view-npm-tests.txt +143 -0
- package/docs/validation/evidence/dsh-native-view-plugin-tests.txt +99 -0
- package/docs/validation/evidence/dsh-native-view-quality-gate.txt +29 -0
- package/docs/validation/evidence/dsh-plugin-tests.txt +48 -0
- package/docs/validation/evidence/function-coverage.txt +378 -0
- package/docs/validation/evidence/npm-build.txt +13 -0
- package/docs/validation/evidence/npm-contract-tests.txt +65 -0
- package/docs/validation/evidence/npm-dsh-bridge.txt +18 -0
- package/docs/validation/evidence/npm-dsh-plugin-tests.txt +62 -0
- package/docs/validation/evidence/npm-function-coverage.txt +420 -0
- package/docs/validation/evidence/npm-install-tests.txt +20 -0
- package/docs/validation/evidence/npm-quality-gate.txt +29 -0
- package/docs/validation/evidence/npm-race.txt +7 -0
- package/docs/validation/evidence/pr-dsh-bridge.txt +4 -0
- package/docs/validation/evidence/pr-dsh-plugin-tests.txt +48 -0
- package/docs/validation/evidence/pr-function-coverage.txt +379 -0
- package/docs/validation/evidence/pr-quality-gate.txt +28 -0
- package/docs/validation/evidence/pr-race.txt +6 -0
- package/docs/validation/evidence/profiles-control-smoke.json +1 -0
- package/docs/validation/evidence/profiles-dsh-bridge.txt +18 -0
- package/docs/validation/evidence/profiles-dsh-plugin-tests.txt +59 -0
- package/docs/validation/evidence/profiles-function-coverage.txt +411 -0
- package/docs/validation/evidence/profiles-quality-gate.txt +29 -0
- package/docs/validation/evidence/profiles-race.txt +7 -0
- package/docs/validation/evidence/quality-gate.txt +28 -0
- package/docs/validation/evidence/race.txt +6 -0
- package/docs/validation/evidence/watchdog-startup-after.txt +2 -0
- package/docs/validation/evidence/watchdog-startup-before.txt +6 -0
- package/docs/validation/evidence/watchdog-startup-quality-gate.txt +29 -0
- package/docs/validation/evidence/watchdog-startup-race.txt +7 -0
- package/docs/{claude-code-pro.md → zh-CN/claude-code-pro.md} +23 -17
- package/docs/{configuration.md → zh-CN/configuration.md} +397 -142
- package/docs/zh-CN/contributing.md +240 -0
- package/docs/zh-CN/flow-console.md +216 -0
- package/docs/zh-CN/getting-started.md +352 -0
- package/docs/zh-CN/investigation.md +213 -0
- package/docs/zh-CN/jev-shadow.md +5 -0
- package/docs/zh-CN/jev.md +192 -0
- package/docs/zh-CN/model-policy.md +128 -0
- package/docs/zh-CN/releasing.md +120 -0
- package/docs/{session-evaluation.md → zh-CN/session-evaluation.md} +4 -2
- package/docs/{session-recovery.md → zh-CN/session-recovery.md} +75 -12
- package/docs/zh-CN/workflow.md +284 -0
- package/npm/install.js +1 -1
- package/package.json +12 -25
- package/docs/flow-console.md +0 -122
- package/docs/getting-started.md +0 -418
- package/docs/model-policy.md +0 -65
- package/docs/workflow.md +0 -314
package/docs/en/workflow.md
CHANGED
|
@@ -1,54 +1,111 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Workflow: from a goal to a pull request
|
|
2
2
|
|
|
3
|
-
[
|
|
3
|
+
[Documentation](../README.md) · English · [简体中文](../zh-CN/workflow.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Flywheel turns a reviewed task contract into verified local Git changes. The host
|
|
6
|
+
assistant prepares the task; the Go engine owns scheduling, verification, recovery,
|
|
7
|
+
and delivery. The workflow console can also create and merge a PR when those remote
|
|
8
|
+
operations are explicitly authorized.
|
|
9
|
+
|
|
10
|
+
Use this guide for an existing repository. For installation and a disposable first
|
|
11
|
+
run, start with [Getting started](getting-started.md).
|
|
6
12
|
|
|
7
13
|
## 0. Normal entry: describe a goal and launch
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
In DSH Chat, describe the requirement with the task skill:
|
|
10
16
|
|
|
11
17
|
```text
|
|
12
|
-
/flywheel-task Fix the identified
|
|
18
|
+
/flywheel-task Fix the identified issue, add regression coverage, and complete verification. mode=auto
|
|
13
19
|
```
|
|
14
20
|
|
|
15
|
-
The
|
|
21
|
+
The host researches the code, selects or reuses the task execution directory,
|
|
22
|
+
prepares the Spec, packets, executable acceptance checks, and workflow evidence,
|
|
23
|
+
then calls `flywheel_launch` within the authorized scope. The plugin associates the
|
|
24
|
+
actual task with the conversation. Loading a skill or receiving a proposal alone
|
|
25
|
+
does not mean the engine started; check the launch result and task status.
|
|
16
26
|
|
|
17
|
-
|
|
|
27
|
+
| Mode | Selection and execution |
|
|
18
28
|
|---|---|
|
|
19
|
-
| Auto, the
|
|
20
|
-
| Quick | One milestone and packet
|
|
21
|
-
| Full | Plan, packet execution
|
|
22
|
-
|
|
23
|
-
Quick
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
29
|
+
| Auto, the default | Go selects Quick when recorded qualification facts are sufficient; otherwise Full |
|
|
30
|
+
| Quick, also labelled ultraWork in the console | One milestone and packet; Execute, required checks, independent final Review, and Git delivery |
|
|
31
|
+
| Full | Plan, packet execution and review, integrated L2/L3 checks, and Judge |
|
|
32
|
+
|
|
33
|
+
Quick needs clear scope, a known implementation approach, complete requirement
|
|
34
|
+
coverage, and a final review that can assess the whole task. Missing L2/L3 checks
|
|
35
|
+
need explicit reasons. Authentication, permissions, payments, migrations,
|
|
36
|
+
concurrency, or unresolved design risks select Full. An explicit Quick request
|
|
37
|
+
still has to qualify; file count alone is not a risk assessment.
|
|
38
|
+
|
|
39
|
+
A first-success Quick run has two stage-agent calls: Execute and final Review.
|
|
40
|
+
Preparation, internal tool turns, retries, and upgrades are additional work. Required
|
|
41
|
+
tests, coverage, applicable L2/L3, defect sampling, budgets, and cleanup remain in
|
|
42
|
+
force. Plan/Judge are marked not applicable with reasons. A newly discovered risk or
|
|
43
|
+
verification gap saves a one-way Quick → Full upgrade, preserving work and budgets.
|
|
44
|
+
|
|
45
|
+
Use `/flywheel-new <goal>` for preparation without launching, and
|
|
46
|
+
`/flywheel-run <absolute-task-directory>` for an existing task. Kimi uses
|
|
47
|
+
`/skill:flywheel-task` and the corresponding `/skill:` names.
|
|
48
|
+
|
|
49
|
+
## 0.1 Investigation and direct controls
|
|
50
|
+
|
|
51
|
+
Task can accept “diagnose this and explain the cause” directly, prepare its contract
|
|
52
|
+
and enter the Go-owned investigation. Calling New first is not required. Report-only
|
|
53
|
+
goals stop at the report; authorized repair continues within the original scope
|
|
54
|
+
when the evidence supports a conclusion. See [Investigation](investigation.md) for
|
|
55
|
+
contracts, evidence, JEV and recovery. New → review → Run remains appropriate when
|
|
56
|
+
proposal review is requested. Plan / Exec / Verify / Review / Status / Stop remain.
|
|
57
|
+
|
|
58
|
+
Full reuses a confirmed, persisted Plan checkpoint when its inputs and baseline stay
|
|
59
|
+
valid. Explicit Plan, verification gaps, changed contracts or untrusted baselines
|
|
60
|
+
still replan. Targeted executor checks complement the complete Go gate and independent
|
|
61
|
+
Review. Default model bindings remain; execution allowlists and verified incremental
|
|
62
|
+
context are independent opt-ins described in [Configuration](configuration.md).
|
|
63
|
+
|
|
64
|
+
Authorized investigations can include exact reproduction commands in private
|
|
65
|
+
input copies and explicit GET/HEAD requests. Their real execution boundary,
|
|
66
|
+
deadline, output limits and receipts belong to the investigation contract.
|
|
67
|
+
Enabling JEV also permits bounded choices after confirmed implementation failures:
|
|
68
|
+
repair, an approved feedback check, replanning, or an already allowed execution
|
|
69
|
+
binding. Go retains workflow eligibility and the complete final gates; a successful
|
|
70
|
+
feedback experiment does not complete the implementation.
|
|
28
71
|
|
|
29
72
|
## 1. Choose a model for preparation
|
|
30
73
|
|
|
31
|
-
|
|
74
|
+
`flywheel-task` and `flywheel-new` run in the host's current conversation. The
|
|
75
|
+
`loops.plan` binding controls planning **after the engine starts**; it does not
|
|
76
|
+
change that host conversation's model.
|
|
32
77
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
| Requirement | Preparation model and effort | Reason for the recommendation |
|
|
78
|
+
| Preparation work | Suggested DSH provider / model | Effort |
|
|
36
79
|
|---|---|---|
|
|
37
|
-
|
|
|
38
|
-
| A
|
|
39
|
-
|
|
|
80
|
+
| Architecture, protocols, lifecycle, or uncertain acceptance | `chatgpt` / `gpt-6-astra` | `high` |
|
|
81
|
+
| A bounded feature with established implementation patterns | `chatgpt` / `gpt-6.1-sol` | `high` |
|
|
82
|
+
| An explicit small fix or documentation update | `deepseek-account` / `deepseek-flash` | `high` |
|
|
40
83
|
|
|
41
|
-
These are engineering
|
|
84
|
+
These are engineering starting points, not project benchmark results. Check exact
|
|
85
|
+
model IDs and supported effort in the selected account. Raising effort does not
|
|
86
|
+
repair missing requirements or an invalid test oracle. Runtime defaults and the
|
|
87
|
+
separate account channels are described in [Model policy](model-policy.md) and
|
|
88
|
+
[Configuration](configuration.md).
|
|
42
89
|
|
|
43
|
-
|
|
90
|
+
## 2. Choose the task execution directory
|
|
44
91
|
|
|
45
|
-
|
|
92
|
+
Keep these locations distinct:
|
|
46
93
|
|
|
47
|
-
|
|
94
|
+
| Location | Purpose |
|
|
95
|
+
|---|---|
|
|
96
|
+
| Project workspace | Stable repository identity for Provider sessions; normally the original checkout |
|
|
97
|
+
| Task integration directory | Checkout and branch where contracts are prepared and verified packets are integrated |
|
|
98
|
+
| Task files directory | `docs/<slug>` inside that checkout; contains Spec, packets, state, and reports |
|
|
99
|
+
| Packet execution directory | Candidate checkout used by Execute, verification, and Review; usually an engine-managed worktree |
|
|
48
100
|
|
|
49
|
-
|
|
101
|
+
The project workspace and execution directory may differ. Provider project
|
|
102
|
+
membership does not redirect file operations: prompts and evidence identify the
|
|
103
|
+
actual execution directory. A backend that cannot represent the selected split
|
|
104
|
+
`workspace-write` sandbox rejects that combination before dispatch.
|
|
50
105
|
|
|
51
|
-
For
|
|
106
|
+
For a repository using the default worktree policy, create or deliberately reuse a
|
|
107
|
+
task branch and worktree before preparation. Inspect existing changes first, use
|
|
108
|
+
unused names, and substitute the repository's actual base branch:
|
|
52
109
|
|
|
53
110
|
```sh
|
|
54
111
|
git status --short
|
|
@@ -58,50 +115,63 @@ cd ../repo-my-feature
|
|
|
58
115
|
git branch --show-current
|
|
59
116
|
```
|
|
60
117
|
|
|
61
|
-
|
|
118
|
+
Keep this task's files at `docs/my-feature` inside the selected checkout. The
|
|
119
|
+
integration branch is the branch checked out in the supplied `cwd`; it is not
|
|
120
|
+
hardcoded to `main`. Do not pair task files from one checkout with another
|
|
121
|
+
checkout's `cwd`, or switch its branch during a run.
|
|
62
122
|
|
|
63
|
-
|
|
123
|
+
`worktree.enabled` controls automatic **packet** worktree management, independently
|
|
124
|
+
of scheduling. With it disabled, the selected task checkout can be shared or an
|
|
125
|
+
external worktree can be registered before implementation. External directories
|
|
126
|
+
must satisfy the engine's baseline, branch, cleanliness, and ownership checks; see
|
|
127
|
+
[Parallel execution](flow-console.md#parallel-execution).
|
|
64
128
|
|
|
65
|
-
|
|
129
|
+
### Isolation and failure behavior
|
|
66
130
|
|
|
67
|
-
|
|
131
|
+
Worktrees separate working directories and indexes; they are not security sandboxes.
|
|
132
|
+
The legacy serial path can record a worktree-creation failure and fall back to
|
|
133
|
+
in-place execution. Parallel execution with automatic worktree management requires
|
|
134
|
+
isolated directories and fails if they cannot be created. Disabling automatic
|
|
135
|
+
management explicitly permits shared-checkout execution, with different validation
|
|
136
|
+
and batch-delivery rules.
|
|
68
137
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
138
|
+
If isolation is required, inspect the recorded workspace mode and stop on an
|
|
139
|
+
unexpected fallback. Preserve existing work and resolve the failure; do not edit
|
|
140
|
+
`state.json` or force-reset a branch to manufacture an isolated state.
|
|
72
141
|
|
|
73
142
|
## 3. Prepare and review the contracts
|
|
74
143
|
|
|
75
|
-
|
|
144
|
+
From the task integration directory, use the preparation skill or inspect the
|
|
145
|
+
bundled templates:
|
|
76
146
|
|
|
77
147
|
```sh
|
|
78
148
|
flywheel template --list
|
|
79
149
|
flywheel skills read flywheel-new
|
|
80
150
|
```
|
|
81
151
|
|
|
82
|
-
In DSH's conversation input, select the skill from the `/` menu or send:
|
|
83
|
-
|
|
84
152
|
```text
|
|
85
|
-
/flywheel-new Prepare docs/my-feature for this requirement.
|
|
153
|
+
/flywheel-new Prepare docs/my-feature for this requirement. Inspect the code, define bounded packets and executable acceptance checks, run the baseline checks, and present the contracts for review.
|
|
86
154
|
```
|
|
87
155
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
A runnable task needs a reviewed `spec.md` and at least one legal `task-packet-*.md`, using the bundled schemas. The preparation should establish:
|
|
156
|
+
No initial console form is required. Preparation should report the actual task
|
|
157
|
+
execution root and task files path, while retaining the original project identity.
|
|
158
|
+
A repository can contain several tasks; a repository path alone does not select one.
|
|
93
159
|
|
|
94
|
-
|
|
95
|
-
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
160
|
+
A runnable task needs a reviewed `spec.md` and at least one legal
|
|
161
|
+
`task-packet-*.md`. Establish requirement IDs, exclusions, routes, editable and
|
|
162
|
+
protected paths, L1 commands, milestone L2/L3 commands, and actual baseline results.
|
|
163
|
+
Keep frozen acceptance separate from implementation tests. Executors may add normal
|
|
164
|
+
unit/regression tests; they may not weaken protected acceptance to obtain a pass.
|
|
99
165
|
|
|
100
|
-
The
|
|
166
|
+
The Spec's `workflow` records qualification facts, risks, and reasons for inapplicable
|
|
167
|
+
checks. Parallel packets also need explicit `schedule.after` and `schedule.writes`.
|
|
168
|
+
See [Workflow policy](configuration.md#workflow-policy-and-recovery) and
|
|
169
|
+
[Scheduling and worktrees](configuration.md#scheduling-and-worktrees) for field
|
|
170
|
+
examples. Contracts without workflow remain Full; packets without scheduling
|
|
171
|
+
independence remain serial.
|
|
101
172
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
Review the files, then commit the substantive initial contracts so packet worktrees can obtain them from Git. The following assumes the index has been checked for unrelated staged work:
|
|
173
|
+
Commit the reviewed contracts so packet worktrees can obtain them from Git. Inspect
|
|
174
|
+
the index for unrelated changes first:
|
|
105
175
|
|
|
106
176
|
```sh
|
|
107
177
|
git diff -- docs/my-feature
|
|
@@ -111,77 +181,122 @@ git diff --cached
|
|
|
111
181
|
git commit -m "docs: prepare my-feature contracts"
|
|
112
182
|
```
|
|
113
183
|
|
|
114
|
-
Stage any additional acceptance fixtures separately after review.
|
|
184
|
+
Stage any additional acceptance fixtures separately after review. The engine creates
|
|
185
|
+
and maintains `state.json`; neither preparation skills nor models write it.
|
|
115
186
|
|
|
116
|
-
## 4.
|
|
187
|
+
## 4. Use a task-level Draft PR when useful
|
|
117
188
|
|
|
118
|
-
|
|
189
|
+
A Draft PR can provide a review location once the initial contracts are committed.
|
|
190
|
+
The authorized host or user can open it before execution:
|
|
119
191
|
|
|
120
192
|
```sh
|
|
121
193
|
git push -u origin task/my-feature
|
|
122
194
|
gh pr create --draft --base main --head task/my-feature
|
|
123
195
|
```
|
|
124
196
|
|
|
125
|
-
Describe the problem, expected outcome, acceptance
|
|
126
|
-
|
|
127
|
-
|
|
197
|
+
Describe the problem, expected outcome, acceptance, and remaining work. Usually one
|
|
198
|
+
independently deliverable requirement or milestone belongs in one PR. Packets are
|
|
199
|
+
internal execution units, not automatically separate PRs. An early Draft PR does not
|
|
200
|
+
authorize merge. The console's later PR operation re-queries an existing PR after
|
|
201
|
+
push, avoiding duplicate creation.
|
|
128
202
|
|
|
129
|
-
## 5. Run from the same task
|
|
203
|
+
## 5. Run from the same task execution directory
|
|
130
204
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
```text
|
|
134
|
-
/flywheel-run /absolute/path/to/repo-my-feature/docs/my-feature
|
|
135
|
-
/flywheel-status /absolute/path/to/repo-my-feature/docs/my-feature
|
|
136
|
-
/flywheel-stop /absolute/path/to/repo-my-feature/docs/my-feature
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
The skills resolve the project root from that existing task directory and invoke the CLI. They do not require opening or filling in the view. For direct terminal use, keep the current directory at the same task worktree root:
|
|
205
|
+
For an existing prepared task, run these commands from its integration checkout:
|
|
140
206
|
|
|
141
207
|
```sh
|
|
142
208
|
flywheel config inspect --cwd "$PWD" --task-dir "$PWD/docs/my-feature" --json
|
|
143
209
|
flywheel doctor --cwd "$PWD" --task-dir "$PWD/docs/my-feature" --probe --json
|
|
144
|
-
flywheel control
|
|
210
|
+
flywheel control launch --cwd "$PWD" --task-dir "$PWD/docs/my-feature" --mode auto
|
|
145
211
|
flywheel control status --cwd "$PWD" --task-dir "$PWD/docs/my-feature"
|
|
146
212
|
```
|
|
147
213
|
|
|
148
|
-
Preflight
|
|
214
|
+
Preflight sends no inference prompt and runs no acceptance command. Starting the
|
|
215
|
+
real task invokes the configured models. A control response's `ok` describes that
|
|
216
|
+
operation; overall completion is reported by `state.status`.
|
|
149
217
|
|
|
150
|
-
|
|
218
|
+
`launch` defaults to Auto. `start` and foreground `run` accept
|
|
219
|
+
`--mode auto|quick|full`; omission preserves the contract or persisted selection.
|
|
220
|
+
Status/stop never switch modes. Restarting or selecting Auto cannot downgrade an
|
|
221
|
+
established Full task.
|
|
151
222
|
|
|
152
|
-
DSH
|
|
223
|
+
DSH equivalents are `/flywheel-run <absolute-task-directory>` and
|
|
224
|
+
`/flywheel-status <same-path>`. Starts and read-only status association make the task
|
|
225
|
+
available in the console. The console selects registered tasks and has no editable
|
|
226
|
+
task/project path fields. CLI runs with a DSH host ID can be matched to that session;
|
|
227
|
+
other runs remain selectable in Recent tasks. Discovery does not scan directories.
|
|
153
228
|
|
|
154
229
|
### Working directory by stage
|
|
155
230
|
|
|
156
|
-
| Stage
|
|
157
|
-
|
|
158
|
-
|
|
|
159
|
-
|
|
|
160
|
-
|
|
|
161
|
-
|
|
|
162
|
-
|
|
|
163
|
-
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
231
|
+
| Stage | Execution directory |
|
|
232
|
+
|---|---|
|
|
233
|
+
| Preparation; Full Plan and permitted contract revision | Task integration checkout |
|
|
234
|
+
| Execute, L1, independent Review | Current packet candidate directory |
|
|
235
|
+
| Quick's applicable L2/L3 | The same packet candidate, before final Review |
|
|
236
|
+
| Full L2/L3 and Judge | Task integration checkout after packet delivery |
|
|
237
|
+
| Intake and Garden | Selected task execution root |
|
|
238
|
+
| Status and Stop | Original task files and execution root; no new branch or worktree required |
|
|
239
|
+
|
|
240
|
+
These are execution locations. Provider sessions retain the separately recorded
|
|
241
|
+
project workspace. The task checkout spans the deliverable; each packet directory
|
|
242
|
+
spans implementation, checks, review, and delivery. A new loop does not imply a new
|
|
243
|
+
worktree or a permanently running parent model.
|
|
244
|
+
|
|
245
|
+
### Scheduling and role history
|
|
246
|
+
|
|
247
|
+
The embedded installation default selects `scheduler.mode=parallel` with a maximum of two.
|
|
248
|
+
Existing complete configuration files that omit `scheduler` remain serial, as do
|
|
249
|
+
explicit serial settings. Only ready packets with explicit dependencies and
|
|
250
|
+
nonoverlapping declared write scopes qualify. Independent worktrees permit
|
|
251
|
+
concurrent Execute/L1. Shared-checkout batches run Execute concurrently, then
|
|
252
|
+
validate and review the combined candidate. Review, integration, and final gates
|
|
253
|
+
remain serial. Hard budgets allow one model call in flight until its accounting is
|
|
254
|
+
durable. See the [console guide](flow-console.md#parallel-execution).
|
|
255
|
+
|
|
256
|
+
The optional `scheduler.dispatch="ready-queue"` fills free Execute/L1 slots among
|
|
257
|
+
already independent Full packets with automatic Worktrees. Review, Plan revisions
|
|
258
|
+
and integration still wait for started workers to settle. `scheduler.prewarm=true`
|
|
259
|
+
can prepare one DSH Review runtime alongside a serial packet's deterministic
|
|
260
|
+
checks, without sending a model prompt early. Parallel execution lanes and shared
|
|
261
|
+
candidates do not prewarm; after an independent cohort settles, its serial Review
|
|
262
|
+
path may start preparation. The useful overlap is mainly serial post-Execute L1
|
|
263
|
+
and applicable Quick checks. Defaults remain batch dispatch and no prewarming;
|
|
264
|
+
these settings do not change Task/New/Run or Auto/Quick/Full. Details and limits are
|
|
265
|
+
in [Configuration](configuration.md#ready-queues-and-runtime-preparation).
|
|
266
|
+
|
|
267
|
+
`scoped` history can reuse an eligible packet Executor session for repairs. Review
|
|
268
|
+
uses its own independent history and always evaluates the complete current candidate.
|
|
269
|
+
Plan is task/milestone scoped; Judge and second opinions remain separate. Old
|
|
270
|
+
configuration without `sessions` retains fresh behavior. Both modes preserve
|
|
271
|
+
invocation-safety records and block on unknown dispatch, outcome, or cleanup.
|
|
272
|
+
[Recovery](session-recovery.md) explains trusted receipts, durable checkpoints, and
|
|
273
|
+
bounded context rebuilding.
|
|
274
|
+
|
|
275
|
+
### Partial stages and permissions
|
|
276
|
+
|
|
277
|
+
`flywheel-verify` runs deterministic acceptance without Review/Judge or Git delivery.
|
|
278
|
+
`--only execute` is a bounded Execute/L1 loop. Quick's `--only review` performs final
|
|
279
|
+
Review without delivery and saves a required Full upgrade without starting Plan.
|
|
280
|
+
`--only plan` requires Full. Resume the complete run for remaining stages and delivery.
|
|
281
|
+
The console offers the same managed stage operations with revision checks.
|
|
282
|
+
|
|
283
|
+
Model permissions follow the effective global policy and per-binding overrides.
|
|
284
|
+
Full access does not remove frozen boundaries or reviewer candidate checks. Kimi
|
|
285
|
+
print does not provide an OS sandbox guarantee. Skills also check the chosen task
|
|
286
|
+
location before development; direct CLI/GUI calls do not execute `SKILL.md` or create
|
|
287
|
+
the outer task branch. Read-only status and stopping remain available independently.
|
|
179
288
|
|
|
180
289
|
## 6. Understand local completion before merging the PR
|
|
181
290
|
|
|
182
|
-
|
|
291
|
+
Local delivery requires current checks, independent Review, and verified Git
|
|
292
|
+
persistence of the same candidate. Packet worktrees are integrated into the task
|
|
293
|
+
checkout; failed delivery preserves work. Shared-checkout batches complete only
|
|
294
|
+
after every member passes on the combined candidate and the batch is durably saved.
|
|
295
|
+
Full also requires integrated L2/L3 and Judge. Quick requires a final Review covering
|
|
296
|
+
all requirements, acceptance sufficiency, and continued eligibility.
|
|
183
297
|
|
|
184
|
-
|
|
298
|
+
Remote delivery is a separate operation. You can inspect and push the task branch
|
|
299
|
+
manually:
|
|
185
300
|
|
|
186
301
|
```sh
|
|
187
302
|
git status --short
|
|
@@ -191,9 +306,17 @@ gh pr ready
|
|
|
191
306
|
gh pr checks
|
|
192
307
|
```
|
|
193
308
|
|
|
194
|
-
|
|
309
|
+
Or use the console's PR/Merge nodes after explicitly authorizing the repository,
|
|
310
|
+
source HEAD, task branch, and target branch. These operations require normal GitHub
|
|
311
|
+
CLI authentication and current local acceptance. Merge rechecks PR/head/base/checks
|
|
312
|
+
and binds the request to the approved head; it does not use admin bypass or enable
|
|
313
|
+
auto-merge implicitly. An accepted merge-queue request is not a confirmed merge.
|
|
314
|
+
See [PR and Merge](flow-console.md#pr-and-merge).
|
|
195
315
|
|
|
196
|
-
|
|
316
|
+
Review the current diff, required CI, and current base branch before merging. Changes
|
|
317
|
+
after a green run may require renewed evidence. An unavailable check must be recorded
|
|
318
|
+
as unavailable and handled through the repository's authorized process. Publication
|
|
319
|
+
or deployment has its own validation and is not triggered merely by clicking Merge.
|
|
197
320
|
|
|
198
321
|
## 7. Stop and recover without losing evidence
|
|
199
322
|
|
|
@@ -201,20 +324,24 @@ Manual merge after those gates is the recommended default. Auto-merge can be app
|
|
|
201
324
|
flywheel control stop --cwd "$PWD" --task-dir "$PWD/docs/my-feature"
|
|
202
325
|
```
|
|
203
326
|
|
|
204
|
-
Check the stop
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
For a delivery conflict, preserve the packet worktree, inspect Git state, resolve the conflict deliberately, then resume and let the engine revalidate evidence. Do not use forced cleanup or manual state edits as a recovery shortcut. Configuration changes require restarting the engine.
|
|
209
|
-
|
|
210
|
-
## Reference boundaries
|
|
211
|
-
|
|
212
|
-
The engine owns local state, bounded loops, verification, and Git delivery. The authorized host/user owns task-branch setup, GitHub pushes and PRs, remote CI policy, PR merge, and publication. Repository visibility and licensing are separate decisions.
|
|
327
|
+
Check the stop receipt and actual failure before resuming from the same paths with
|
|
328
|
+
`control start` or `/flywheel-run`. A readiness timeout or disconnected request calls
|
|
329
|
+
for reconciliation, not a duplicate launch. Closing a view does not stop the engine.
|
|
213
330
|
|
|
214
|
-
|
|
331
|
+
Unknown dispatch, model outcome, or cleanup blocks further execution in both session
|
|
332
|
+
modes. Process exit alone does not prove a known model result. Go must reconcile a
|
|
333
|
+
trusted receipt against its original identity and evidence; switching to fresh,
|
|
334
|
+
changing backends, or resetting state cannot bypass an unresolved invocation.
|
|
215
335
|
|
|
216
|
-
|
|
336
|
+
Preserve worktrees and reports when delivery conflicts. Resolve the actual Git
|
|
337
|
+
conflict and let the engine revalidate. Configuration changes require an engine
|
|
338
|
+
restart. Controlled human interaction with an eligible existing session is described
|
|
339
|
+
in [Provider session interaction](flow-console.md#controlled-provider-session-interaction).
|
|
217
340
|
|
|
218
|
-
|
|
341
|
+
## Related guides
|
|
219
342
|
|
|
220
|
-
|
|
343
|
+
- [Configuration](configuration.md): model bindings, permissions, budgets, and policies.
|
|
344
|
+
- [Workflow console](flow-console.md): tasks, stages, sessions, run comparison, and remote delivery.
|
|
345
|
+
- [Recovery and context quality](session-recovery.md): interrupted calls and safe continuation.
|
|
346
|
+
- [JEV decisions](jev.md): one default-off switch for investigation and bounded failure decisions; Go retains workflow eligibility and acceptance.
|
|
347
|
+
- [System design](../design.md): authoritative implementation contracts, in Chinese.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Evaluation data
|
|
2
|
+
|
|
3
|
+
[Documentation](../README.md) · [中文文档](../README.zh-CN.md)
|
|
4
|
+
|
|
5
|
+
These files are fixed experiment inputs and recorded outputs, not live
|
|
6
|
+
benchmarks. Read the [session evaluation guide](../en/session-evaluation.md)
|
|
7
|
+
or [JEV shadow guide](../en/jev-shadow.md) before interpreting them.
|
|
8
|
+
|
|
9
|
+
| File | Purpose |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| [jev-historical-provisional.json](jev-historical-provisional.json) | Provisional historical inputs; not a production routing policy. |
|
|
12
|
+
| [jev-historical-result-2026-11-10.json](jev-historical-result-2026-11-10.json) | Recorded results for the named experiment. |
|