@zq-silk/yui 0.16.2 → 1.0.0-alpha.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/README.md +6 -4
- package/dist/agent/agent.js +4 -9
- package/dist/agent/executionComponents.js +4 -4
- package/dist/agentRun/agentRun.js +8 -8
- package/dist/artifacts/managedGit.js +3 -56
- package/dist/brief/taskBrief.js +3 -3
- package/dist/cli/updateOrchestrator.js +2 -13
- package/dist/cli/updatePorts.js +36 -69
- package/dist/cli/upgradeCommand.js +4 -8
- package/dist/cli.js +4 -7
- package/dist/commands/controllerCommands.js +1 -1
- package/dist/commands/taskCommands.js +8 -1
- package/dist/commands/taskRoleRuntimeStatus.js +1 -1
- package/dist/context/runInputContract.js +1 -1
- package/dist/controller/agentRuntimeObserver.js +4 -4
- package/dist/controller/clientRuntime.js +19 -44
- package/dist/controller/controller.js +16 -4
- package/dist/controller/fileSchedulerStoreAdapter.js +6 -6
- package/dist/controller/globalInputDelivery.js +3 -1
- package/dist/controller/jobSupervisor.js +3 -3
- package/dist/controller/providerRetryDelivery.js +128 -118
- package/dist/controller/runtime.js +1 -1
- package/dist/controller/structuredProviderObservation.js +1 -1
- package/dist/coordination/workMailbox.js +4 -4
- package/dist/core/controllerIdentity.js +25 -0
- package/dist/core/controllerProcessIdentity.js +2 -2
- package/dist/core/controllerServer.js +4 -2
- package/dist/core/protocol.js +1 -1
- package/dist/domain/validation.js +6 -0
- package/dist/event/taskEvent.js +3 -3
- package/dist/execution/workItemExecution.js +2 -2
- package/dist/executor/agentExecutor.js +6 -6
- package/dist/executor/effectiveLaunch.js +3 -3
- package/dist/grant/capabilityGrant.js +2 -2
- package/dist/input/inputRequest.js +4 -4
- package/dist/integration/changeSet.js +3 -3
- package/dist/integration/integrationAttempt.js +3 -3
- package/dist/integration/integrationSourceApplication.js +1 -1
- package/dist/job/durableJob.js +1 -1
- package/dist/job/jobRunner.js +2 -2
- package/dist/message/message.js +8 -6
- package/dist/milestone/milestone.js +3 -3
- package/dist/profile/agentProfile.js +3 -3
- package/dist/release/runtimeRelease.js +9 -7
- package/dist/repository/project.js +3 -3
- package/dist/resources/liveReferences.js +1 -1
- package/dist/resources/sqliteResourceRegistry.js +2 -2
- package/dist/review/reviewRound.js +5 -5
- package/dist/role/role.js +7 -8
- package/dist/runtime/acpProtocol.js +2 -3
- package/dist/runtime/agentDriverObservation.js +1 -1
- package/dist/runtime/agentHost.js +3 -3
- package/dist/runtime/agentHostProtocol.js +2 -2
- package/dist/runtime/codexInteractiveHost.js +1 -1
- package/dist/runtime/launchBroker.js +1 -1
- package/dist/runtime/processExitObservation.js +1 -1
- package/dist/runtime/providerContinuationReconciliationService.js +84 -75
- package/dist/runtime/providerRuntimeIdentity.js +3 -3
- package/dist/runtime/runtimeCoherence.js +7 -3
- package/dist/runtime/runtimeObservation.js +3 -3
- package/dist/runtime/sessionOwnerIdentity.js +1 -1
- package/dist/runtime/taskRuntimeIsolation.js +3 -3
- package/dist/runtime/tmuxAdapters.js +3 -3
- package/dist/scheduler/taskWake.js +1 -1
- package/dist/storage/baselineSchema.js +606 -0
- package/dist/storage/homeLayout.js +5 -16
- package/dist/storage/recordValidation.js +16 -4
- package/dist/storage/sqliteSchema.js +106 -1741
- package/dist/storage/sqliteStore.js +16 -14
- package/dist/storage/storageSchema.js +8 -7
- package/dist/storage/storageVersions.js +23 -16
- package/dist/storage/taskStore.js +3 -29
- package/dist/storage/upgrade/upgradeOrchestrator.js +14 -102
- package/dist/task/task.js +15 -7
- package/dist/task/taskActivation.js +5 -4
- package/dist/telemetry/sqliteTelemetryStore.js +2 -2
- package/dist/verification/gateArtifact.js +5 -3
- package/dist/verification/verificationPlan.js +6 -7
- package/dist/workItem/workItem.js +6 -6
- package/dist/workspace/cleanupInspection.js +1 -9
- package/dist/worktree/managedWorkspace.js +3 -3
- package/docs/managed-turn-and-session-runtime.md +26 -14
- package/docs/managed-turn-and-session-runtime.zh-CN.md +18 -10
- package/docs/release-workflow.md +60 -300
- package/docs/release-workflow.zh-CN.md +46 -234
- package/docs/sqlite-control-plane-design.md +48 -289
- package/docs/sqlite-control-plane-design.zh-CN.md +37 -53
- package/docs/storage-baseline.md +139 -0
- package/docs/storage-baseline.zh-CN.md +111 -0
- package/docs/task-delivery.md +3 -4
- package/docs/task-delivery.zh-CN.md +3 -3
- package/docs/testing/verification-levels.md +40 -180
- package/docs/testing/verification-levels.zh-CN.md +27 -131
- package/i18n/README.zh-CN.md +5 -4
- package/package.json +1 -1
- package/dist/storage/migrations/agentFailureContext.js +0 -22
- package/dist/storage/migrations/agentRunContract.js +0 -159
- package/dist/storage/migrations/artifactsToGit.js +0 -338
- package/dist/storage/migrations/collapseWorktreeLayout.js +0 -963
- package/dist/storage/migrations/currentInputContract.js +0 -86
- package/dist/storage/migrations/currentRuntimeContract.js +0 -228
- package/dist/storage/migrations/historicalVerificationPlan.js +0 -35
- package/dist/storage/migrations/integrationContinuation.js +0 -105
- package/dist/storage/migrations/narrowAgentFailureContext.js +0 -65
- package/dist/storage/migrations/notificationOnlyWakes.js +0 -74
- package/dist/storage/migrations/removeRuntimeGeneration.js +0 -207
- package/dist/storage/migrations/submitIntent.js +0 -126
- package/dist/storage/migrations/unifyHomeLayout.js +0 -925
- package/dist/storage/migrations/verificationPlanV1.js +0 -162
- package/dist/storage/migrations/verificationPolicy.js +0 -74
- package/dist/storage/migrations/workItemHistory.js +0 -46
|
@@ -2,81 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
# 获授权的发布操作
|
|
4
4
|
|
|
5
|
-
## 最后的历史桥接版:0.16.2
|
|
6
|
-
|
|
7
|
-
| 版本 | Home 存储 | 职责 |
|
|
8
|
-
| --- | --- | --- |
|
|
9
|
-
| **0.16.2** | 旧 v37,最低支持旧 v1 | 最后一次保留完整 v1→v37 历史升级链。 |
|
|
10
|
-
| **1.0.0-alpha.1**(计划) | 身份独立的新 1.0 | 独立发布严格验证后的旧 v37→新 1.0 离线转换器。 |
|
|
11
|
-
| **1.0.0**(计划) | 与最终预发布版相同的已验证 1.x 契约 | 转换器持久发布后删除其源码,不再重置存储。 |
|
|
12
|
-
|
|
13
|
-
0.16.2 承接 0.99.0 的有效改进,只替代发布编号,不回退功能或改写 Git 历史;
|
|
14
|
-
两者使用同一 v37 终点。先发布并验证替代版本,再撤下 0.99.0 的 npm 版本、
|
|
15
|
-
Release 和 tag。不自动降级本地安装或修改 Home。
|
|
16
|
-
正式版显式发布到 npm `latest`,预发布版发布到 `next`,新基线必须主动选择。
|
|
17
|
-
|
|
18
|
-
0.16.2 将旧链终点冻结在 **37**,不追加空迁移、不改写已发布 SQL 或
|
|
19
|
-
数据迁移,也不重置记录内的 schemaVersion、运行协议和审计版本。
|
|
20
|
-
新建及升级后的 Home 使用同一当前契约;普通读取不解释历史格式,
|
|
21
|
-
只有显式 `upgrade` / `update` 可以迁移。
|
|
22
|
-
|
|
23
|
-
### 明确选择桥接版本
|
|
24
|
-
|
|
25
|
-
在 0.16.2 中,`yui update --version 0.16.2` 选择精确的已发布版本;
|
|
26
|
-
无参数仍选择 `latest`。显式版本不接受标签或范围。暂存包的实际版本必须
|
|
27
|
-
等于指定版本,才可进入预检和 Controller 交接;不匹配时只清理本次暂存目录,
|
|
28
|
-
不改变当前安装和数据库。
|
|
29
|
-
|
|
30
|
-
旧 CLI 尚不支持此参数。0.16.2 发布后,可先独立暂存精确的 0.16.2 CLI,
|
|
31
|
-
再由它针对明确指定的 `YUI_HOME` 执行升级。例如用 npm 暂存 CLI,
|
|
32
|
-
而不是先覆盖全局安装:
|
|
33
|
-
|
|
34
|
-
```sh
|
|
35
|
-
YUI_HOME=/absolute/path/to/home npm exec --yes --package=@zq-silk/yui@0.16.2 -- \
|
|
36
|
-
yui update --version 0.16.2
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
不要假定未来的 `latest` 仍指向桥接版。保留目标包驱动的
|
|
40
|
-
`upgrade --update-preflight` / `--update-apply` 契约:拒绝发生在激活前,
|
|
41
|
-
并在 handover fence 内、精确 Controller 停止后重新预检。
|
|
42
|
-
若仍使用旧 updater,下文旧版本的交接恢复说明依然适用。
|
|
43
|
-
|
|
44
|
-
### 检查并保留旧链终点
|
|
45
|
-
|
|
46
|
-
用已发布的 0.16.2 CLI 和明确的 `YUI_HOME` 读取:
|
|
47
|
-
`yui --json version`、`yui --json upgrade --dry-run`、
|
|
48
|
-
`yui --json doctor`、`yui --json controller status`、
|
|
49
|
-
`yui session reconcile --report`。
|
|
50
|
-
旧链升级完成后,upgrade 报告应为存储 37 的 `already-current`;
|
|
51
|
-
`upgrade-plan` 只表示尚待执行的旧链迁移。两者都不证明运行资源静止,
|
|
52
|
-
更不表示已通过新存储 1.0 的转换预检。不新增“可进入 1.0”持久化标记
|
|
53
|
-
或第二套版本权威。
|
|
54
|
-
|
|
55
|
-
后续离线切换前,先按原契约结算正在执行的工作。
|
|
56
|
-
`yui session stop --all` 是停止空闲受管 Session 和 Controller 的显式操作,
|
|
57
|
-
不是强制停止,也不证明所有独立 Job 或未知资源已退出。必须检查精确所有权
|
|
58
|
-
和待确认效果,不能为了升级而伪造 Task 完成、确认未知工作或删除资源;
|
|
59
|
-
未来转换器仍须在 fence 内重新检查静止条件。
|
|
60
|
-
|
|
61
|
-
长期保留**精确的 0.16.2 发布包**、已有 release manifest、registry integrity、
|
|
62
|
-
tag/源码提交及本指南。现有包清单会固定编译后的迁移实现和辅助模块;
|
|
63
|
-
会过期的 CI artifact 不能作为唯一长期分发渠道。本版不新增 Home 元数据
|
|
64
|
-
或迁移注册表。
|
|
65
|
-
|
|
66
|
-
1.0.0-alpha.1 的一次性转换必须保留旧账本和审计原始内容、Home 身份、业务 ID、
|
|
67
|
-
记录、Knowledge、工作区(含未提交文件)及未确认的外部效果。
|
|
68
|
-
旧布局迁移还涉及文件系统和 Git,单独备份数据库不足以证明完整可回滚。
|
|
69
|
-
未知或损坏格式直接阻塞,不猜测修复。新存储 1.0 必须具有独立身份,
|
|
70
|
-
不能复用旧 `v0.15.0-baseline`。新 SQL/指纹及最终转换工具属于 1.0.0-alpha.1,
|
|
71
|
-
**不在本版提前实现**;它只接受已验证的旧 v37,不再携带整条旧链。
|
|
72
|
-
|
|
73
|
-
新存储采用主版本.小版本,默认只允许同主版本内显式、连续的小版本升级。
|
|
74
|
-
预发布期间如需改变持久化契约,必须声明新的小版本迁移,不能静默改写已发布基线;
|
|
75
|
-
正式版复用最终已验证契约。转换器及校验和必须作为持久的预发布附件发布后,
|
|
76
|
-
才可删除其源码。正常运行 tarball 和导入链始终不包含转换器,
|
|
77
|
-
保留当前初始化、校验、未知格式拒绝、精确运行身份和正常安全恢复。
|
|
78
|
-
跳过桥接版的用户仍需使用冻结工具,1.0.0 不解释旧格式。
|
|
79
|
-
|
|
80
5
|
发布工作流是一段被显式选择、获授权的外部发布效果序列——pull request、CI 确认、
|
|
81
6
|
合并、版本 tag、npm 发布、全新安装冒烟、CLI 更新、Controller 替换、Project 迁移和
|
|
82
7
|
后置验证。它是一个专用的外部效果设施,而不是 Yui 的 Task 规划或 Agent 执行模型。
|
|
@@ -95,161 +20,48 @@ Agent 选择一个预先声明的计划,设施从持久状态驱动该计划
|
|
|
95
20
|
(`src/release/releaseWorkflowPorts.ts`)之后。可用临时 SQLite 和确定性的外部端口测试
|
|
96
21
|
恢复逻辑,无需真实 GitHub、npm、git、Controller 或模型效果。
|
|
97
22
|
|
|
98
|
-
## 0.
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
原子工作区采用仍分开,并复用同一个现行执行边界。
|
|
141
|
-
- 删除 `task integration queue` 及其状态机。Agent 选择每个 WorkItem 结果的顺序与
|
|
142
|
-
策略,逐项调用原子 Integration;保留精确检查、目标 CAS 和完成义务。
|
|
143
|
-
|
|
144
|
-
存储 `28→29` 在删除活动队列表前,将每条旧 payload 原样保存在
|
|
145
|
-
`integration.queue-retired` Task 事件中,并保留原队列 ID。事件编号越过已有计数器
|
|
146
|
-
和历史最大 ID。此操作不验收交付、不生成 Integration、不重放工作;已有 Integration
|
|
147
|
-
与 Job 保持不变。通过 `task event list <task>` 和引用的 WorkItem/Integration
|
|
148
|
-
判断剩余工作;队列退役不代表未完成的 Integration 已结算。
|
|
149
|
-
|
|
150
|
-
存储 `29→30` 将 Run-linked wake 的完整原文移入 `wake.run-link-retired` Task 事件。
|
|
151
|
-
现有通知保留 ID、投递状态和引用,使用 wake schema 2;Run 终态不再消费通知。
|
|
152
|
-
引用待退役 wake 的活动 Run、受管重试或未决 claim 会同时阻止预检和迁移;
|
|
153
|
-
迁移不停止执行、不编造接受。Global Session 没有受控 binding 时统一显式保存
|
|
154
|
-
`providerBinding: null`。
|
|
155
|
-
|
|
156
|
-
存储 `30→31` 将 Review scope 统一为显式值:有效旧 WorkItem Review 的缺失/null
|
|
157
|
-
scope 转为 `work-item`,Task-final 候选证据和原迁移账本不变。新建和重试均显式写入 scope。
|
|
158
|
-
|
|
159
|
-
存储 `31→32` 从当前 WorkItem 移除 `historicalState`,移除前将完整原始 payload
|
|
160
|
-
原样保存在 `work-item.execution-state-retired` Task 事件。当前状态、工作范围、
|
|
161
|
-
Candidate 和执行组不变,不生成 Run 或验收。未知历史形态会报错,记录和迁移账本不前进。
|
|
162
|
-
|
|
163
|
-
存储 `32→33` 清退 Leader 过渡/预算配置以及 VerificationPlan 的模式。
|
|
164
|
-
活动计划显式补上 schema 版本,实际检查保持不变;已退役 Knowledge 原文保留。
|
|
165
|
-
Integration 显式补入 `rerunChecks: false`,缓存 Artifact 移除试运行复用计数。
|
|
166
|
-
原配置可从显式升级备份恢复。这是已确认的行为变更,不将三种旧模式声称为等价。
|
|
167
|
-
|
|
168
|
-
已接纳且仍为 `running/validating` 的计划验证会阻止预检和迁移,需先用旧版本完成
|
|
169
|
-
结算;不会把运行中的 Job 改标为新证据契约。该次切换使用 v3 验证摘要,使更早缓存不再被
|
|
170
|
-
自动复用,不重写历史 Job/Integration 结果或删除其日志。旧计划解析冻结在迁移
|
|
171
|
-
目录中,早期迁移保持原有语义。
|
|
172
|
-
|
|
173
|
-
现行干净候选证明采用 v5 L2-only 执行摘要。Job 和本地验证都在发布可复用成功前,
|
|
174
|
-
检查候选工作区的干净状态、分支和精确 HEAD;旧缓存身份不能绕过这一边界。
|
|
175
|
-
旧记录和日志保持可读,已接纳 Job 不会被改标为新摘要。应先按原契约结算旧尝试,
|
|
176
|
-
或明确放弃后再开始新操作。
|
|
177
|
-
|
|
178
|
-
L1 执行入口、选择器及当前计划/artifact 类型分支已移除。存储 `34→35` 将
|
|
179
|
-
原始 Project 计划、L1 artifact 与日志保存在 `storage_migration_archive`,
|
|
180
|
-
当前计划改为不含 L1 的 schema 2。存档只是原始审计数据,不是执行 reader 或缓存。
|
|
181
|
-
已结算的旧 ChangeSet-source Integration 转为完整 payload 的 Task 事件;
|
|
182
|
-
仍有工作区、未结算 Job 或 adoption 引用时阻止退休。旧迁移账本不变。
|
|
183
|
-
|
|
184
|
-
Session 归属统一使用 SQLite。旧 `launch-env` owner 行或 `runtime/session-owners`
|
|
185
|
-
中的文件会阻止切换:先使用旧版本检查并释放精确资源,再明确将旧文件归档到
|
|
186
|
-
活动 Home 之外。迁移不杀进程、不推断归属、不修复损坏数据,也不重写不可变 Manifest。
|
|
187
|
-
|
|
188
|
-
存储 `35→36` 保留历史 Agent 错误,并将缺失的失败配置明确标为不可用。
|
|
189
|
-
存储 `36→37` 将已记录的失败上下文缩小为原生元数据查询所需输入,原始快照和
|
|
190
|
-
空的可选身份占位值保存在迁移审计中。当前错误读取不依赖执行快照协议,也不
|
|
191
|
-
重建缺失历史。配置拒绝保留原始输入但不自动重试;有权限的 Agent 可查询该次
|
|
192
|
-
失败的模型能力、修正原本要求的配置,再显式重试被拒绝的通知。
|
|
193
|
-
|
|
194
|
-
不再支持 `task turn` 和 `yui-dev` 补全身份。上线前应替换仍依赖 `task turn`
|
|
195
|
-
Manifest 的 Session;明确卸载/归档旧 `yui-dev` 补全块后,再安装现行 `yui` 补全。
|
|
196
|
-
存储迁移不会修改用户 shell 文件。当前 Host 控制/事件校验与 updater 交接安全检查继续生效。
|
|
197
|
-
|
|
198
|
-
存储 `33→34` 从当前记录移除 Message `wakePolicy` 与激活 `origin`,原始表达
|
|
199
|
-
保存在审计事件。旧的仅记录消息转换为 `intent: record`,其他缺少意图的
|
|
200
|
-
user/operator 消息转换为 `discuss`;运行时不再解释缺失的持久化意图。
|
|
201
|
-
编辑仅记录内容不会唤醒 Leader。完成检查读取实际待投递消息引用,也涵盖显式交接
|
|
202
|
-
此前仅保存的内容。
|
|
203
|
-
|
|
204
|
-
Draft 编辑同时保护请求身份:已经绑定 submission、queue/steer 或交接请求的消息
|
|
205
|
-
不能原地改正文,需新建消息并使用新请求 ID;相同正文更新为无操作。未绑定请求
|
|
206
|
-
身份的讨论编辑仍遵守 pending/failed 激活状态,develop 编辑不启动规划或创建/
|
|
207
|
-
重试激活。这是操作边界修复,不改变存储格式,也不猜测修复过去已被编辑的原文。
|
|
208
|
-
|
|
209
|
-
Draft 中缺少 origin 且仍 pending 的旧 immediate 激活请求会阻止预检和迁移,即使 Task
|
|
210
|
-
已停止执行。必须先用旧版本显式激活或取消;升级不替用户做这个决定。当前已接纳
|
|
211
|
-
请求不再经过第二次来源门槛,但取消、planning 延后、执行状态与精确 Session 权限
|
|
212
|
-
仍需检查。旧来源及 settled 请求历史保留在 `task.activation-origin-retired` 事件。
|
|
213
|
-
|
|
214
|
-
新 `job start` 必须带 `--request-id`;RPC 必须提供 `requestId`,capability
|
|
215
|
-
入口使用 invocation 身份。不再从命令内容隐式生成请求,也不再构造匿名 Job。
|
|
216
|
-
已有 Job 的操作证据和按 ID 读取保持不变;相同请求重试防重、不同输入冲突,
|
|
217
|
-
Integration 在 Session 替换后仍找回原 Job。新 request ID 表示明确的新操作,
|
|
218
|
-
不是对旧未知结果的自动重放。
|
|
219
|
-
|
|
220
|
-
Scheduler 核心读取和持久化操作成为必需接口,缺少 Session/Event 读取不再被当作
|
|
221
|
-
空证据,也不能跳过错误持久化。执行及 Web 投影直接读取当前 Store;
|
|
222
|
-
消息入队必须读取 Task 生命周期。精确投递结算仍独立,不增加会丢失迟到证据的归档门槛。
|
|
223
|
-
Observer、配置、Knowledge 与工作区清理所需 Store 读取也成为必需接口;
|
|
224
|
-
测试替身实现现行合同,不再令生产代码降级。
|
|
225
|
-
|
|
226
|
-
Task 列表及 `/api/dashboard` 只保留有界目录;调用方去掉 `--view compact`,
|
|
227
|
-
详情使用单 Task 读取。Scheduler 目录索引是必需接口,不再兼容缺失时的全量扫描。
|
|
228
|
-
额外 `schema.json`/`state.json` 不覆盖 SQLite 版本,也不用于开发 Home reset;
|
|
229
|
-
升级保留无关文件。非空 Home 缺少数据库时仍拒绝初始化。
|
|
230
|
-
不认识的 writer lease 明确诊断,不接管、不删除。
|
|
231
|
-
|
|
232
|
-
`controller status` 固定输出身份信息,存储矛盾仍返回非零健康退出码;
|
|
233
|
-
`YUI_STATUS_IDENTITY` 不再选择另一套契约。升级侧直接复用资源采集器读取生命周期,
|
|
234
|
-
无需让旧 Home 先通过当前 schema 的健康校验。
|
|
235
|
-
|
|
236
|
-
现行边界进一步收敛:
|
|
237
|
-
|
|
238
|
-
- Project/Artifact 文件锁及 handover lock 要求精确进程代际证据。owner 缺失、
|
|
239
|
-
格式不完整或 OS 身份不可读时保持围栏;仅凭年龄不能证明创建者退出,不再用
|
|
240
|
-
PID-only 存活判断代替身份确认。
|
|
241
|
-
- PR head 查询只调用 `gh pr list --head ... --state open`。仅有效空数组证明不存在;
|
|
242
|
-
传输失败、身份格式错误和多个匹配都不允许继续创建。
|
|
243
|
-
- 已有 Git 操作缺少原 Integration 进度回执时不再被接管。保留文件并明确诊断;
|
|
244
|
-
有精确回执的正常冲突/Job 续作仍受支持。
|
|
245
|
-
|
|
246
|
-
发布前应先收敛旧执行,对不受支持的锁、链接和隔离资源做显式清理。归属与处置尚未
|
|
247
|
-
确定时保留原记录,运行时不替 Agent 选择恢复方案。
|
|
248
|
-
|
|
249
|
-
后续基线切换必须先验证到目标格式的桥接或导出,再用一个干净基线替换旧初始化和迁移链,
|
|
250
|
-
之后才能删除基线之前的迁移及历史夹具。存储基线只重置一次,不在发布 `1.0.0` 时再次
|
|
251
|
-
重置。未知版本拒绝、精确进程/Host 身份检查与持久审计证据仍应保留。版本 tag、真实
|
|
252
|
-
Home 迁移和发布效果需要各自的发布授权。
|
|
23
|
+
## 纯净基线版本:1.0.0-alpha
|
|
24
|
+
|
|
25
|
+
`1.0.0-alpha.1` 修复独立转换器对 `home_meta` 等价缩进的误判,保留原 DDL,
|
|
26
|
+
按目标定义重建该表并验证所有行不变。运行时存储 1.0 定义及校验和不变,
|
|
27
|
+
已转换的 Home 无需再次转换。alpha 系列每次使用新的不可变版本/标签和
|
|
28
|
+
独立转换器附件,继续发布到 npm `next`,不覆盖已发布版本、标签或附件。
|
|
29
|
+
|
|
30
|
+
0.16.2 保留为冻结历史桥接版。1.0.0-alpha 运行包启用独立的存储 **1.0**,
|
|
31
|
+
不携带旧迁移链或一次性转换工具;之后的 1.0.0 复用最终已验证的预发布存储契约,
|
|
32
|
+
不再重置。
|
|
33
|
+
|
|
34
|
+
存储采用主版本、小版本两级编号,默认更新只允许同主版本内连续的小版本升级。
|
|
35
|
+
指定软件版本不代表授权跨存储主版本。当前 Yui 自有格式和协议从 1 开始,
|
|
36
|
+
但不重置业务 revision、epoch 或审计证据。
|
|
37
|
+
alpha 发布后如需改变持久化契约,必须声明新的小版本迁移,不能静默改写
|
|
38
|
+
已发布基线。有界自动恢复、锁等待、事务、重放保护和精确身份匹配的有效缓存
|
|
39
|
+
都是当前运行能力,不作为历史兼容删除。
|
|
40
|
+
|
|
41
|
+
使用精确软件版本 `1.0.0-alpha.1` 主动选择新基线。正式版使用 npm `latest`,
|
|
42
|
+
预发布版使用 `next`,不能覆盖默认稳定版本。
|
|
43
|
+
|
|
44
|
+
恢复 Controller 时,status 和 live identity 都必须匹配此前捕获的执行文件、
|
|
45
|
+
参数、软件版本、Controller 协议和存储版本上下界。缺少字段直接报错,
|
|
46
|
+
不再为较早的 Controller 放宽校验。
|
|
47
|
+
|
|
48
|
+
旧 v37 转换器独立分发;来源与目标校验、离线边界、完整备份、原始负载审计、
|
|
49
|
+
冷启动和回滚见[存储基线 1.0](./storage-baseline.zh-CN.md)。
|
|
50
|
+
发布时将转换包及校验和作为每个 alpha 版本的长期附件,与确切测试过的运行包一同保留;
|
|
51
|
+
不能只依赖会过期的 CI artifact。运行 tarball 不得包含 tools/ 或旧迁移目录。
|
|
52
|
+
alpha 专用 `baseline-release` 在 npm 发布成功后向草稿上传缺少的附件,不覆盖
|
|
53
|
+
已有文件;逐个下载并与经过测试的产物比较后,才公开预发布 Release。
|
|
54
|
+
重试只接受字节一致的已有附件;字节不同或已公开 Release 缺少附件都明确失败,
|
|
55
|
+
不自动覆盖发布证据。若 npm 已发布而此步骤失败,只用同一批保留产物重跑该
|
|
56
|
+
job,不重新构建或再次发布 npm 包。
|
|
57
|
+
|
|
58
|
+
转换器源码、冻结终点样本及专用测试只服务于 alpha 系列的独立交付。
|
|
59
|
+
必须先确认最终修正版 alpha 的长期发布附件和校验和可取得且验证通过,才能在 1.0.0
|
|
60
|
+
开发线上移除它们;不能在发布前删掉唯一转换入口。
|
|
61
|
+
|
|
62
|
+
`yui update --version <exact-version>` 选择精确发布包,实际暂存版本必须匹配。
|
|
63
|
+
激活前及维护锁内分别执行目标包的存储预检。不支持的 Home 保持不变,应使用
|
|
64
|
+
独立转换工具,不能先覆盖全局 CLI。当前交接子进程必须显式提供锁持有者身份。
|
|
253
65
|
|
|
254
66
|
## 授权模型
|
|
255
67
|
|
|
@@ -301,8 +113,8 @@ ACK 不会重放用户输入或模型工作。
|
|
|
301
113
|
环境。即使冻结的 Run 工作区不同于 Role 默认值,登记前的证据也能保留;后续活动和
|
|
302
114
|
终态仍只按各自的原生输入身份解析归属。
|
|
303
115
|
|
|
304
|
-
当前边界为控制协议 `yui-agent-host/
|
|
305
|
-
Controller RPC 版本
|
|
116
|
+
当前边界为控制协议 `yui-agent-host-control/v1`、事件来源协议 `yui-agent-host-events/v1`、
|
|
117
|
+
Controller RPC 版本 1。Host 不打开 Home 数据库,包括进程归属、原生账号位置和
|
|
306
118
|
执行环境校验。只有 Controller 拥有存储并解析持久事实;非法当前输入在正常协议
|
|
307
119
|
边界得到明确错误。
|
|
308
120
|
|
|
@@ -311,8 +123,8 @@ Controller RPC 版本 4。Host 不打开 Home 数据库,包括进程归属、
|
|
|
311
123
|
这不授权丢弃未决工作或终止归属不确定的资源。当前 Controller 正常重启、准确进程
|
|
312
124
|
代际校验、交接锁、Session 权限与事件防重放继续生效。
|
|
313
125
|
|
|
314
|
-
|
|
315
|
-
|
|
126
|
+
存储升级仅包含同主版本内明确的小版本步骤。跨主版本转换独立授权,
|
|
127
|
+
不构成运行时回退。
|
|
316
128
|
Session CLI 刷新只重定位有效 Manifest 指向的当前双参数引号 wrapper,不转换
|
|
317
129
|
退役形态。运行时诊断不解释 `schema.json`、`state.json` 或整表 release 幂等文件;
|
|
318
130
|
当前 SQLite 与逐 key release 回执仍是权威,无关文件保持原样。
|