codex-workflow-v2 2.0.0-beta.12.6 → 2.0.0-beta.12.8
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 +21 -3
- package/dist/src/alpha6/downstream-proof.d.ts +35 -1
- package/dist/src/alpha6/downstream-proof.js +310 -2
- package/dist/src/alpha6/downstream-proof.js.map +1 -1
- package/dist/src/alpha6/plan-risk.js +2 -2
- package/dist/src/alpha6/plan-risk.js.map +1 -1
- package/dist/src/cli.js +38 -3
- package/dist/src/cli.js.map +1 -1
- package/dist/src/contracts.d.ts +30 -1
- package/dist/src/dependency-provenance.d.ts +2 -2
- package/dist/src/dependency-provenance.js +26 -13
- package/dist/src/dependency-provenance.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/workflow.d.ts +9 -2
- package/dist/src/workflow.js +380 -33
- package/dist/src/workflow.js.map +1 -1
- package/docs/autonomy-guardrails.md +7 -0
- package/docs/development-flow.md +9 -0
- package/docs/pdf/codex-workflow-v2-architecture-ru.pdf +0 -0
- package/docs/pdf/codex-workflow-v2-chat-only-guide-ru.pdf +0 -0
- package/docs/pdf/codex-workflow-v2-technical-reference-ru.pdf +0 -0
- package/docs/pdf/sources/codex-workflow-v2-architecture-ru.md +25 -5
- package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +22 -7
- package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +33 -25
- package/docs/release.md +9 -1
- package/docs/updating-existing-project.md +24 -0
- package/docs/validation-report.md +88 -96
- package/package.json +2 -1
- package/plugins/codex-workflow-gateway/.codex-plugin/plugin.json +1 -1
- package/plugins/codex-workflow-gateway/references/protocol.md +6 -0
- package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +25 -0
- package/schemas/downstream-proof-invalidation-event.schema.json +1 -0
- package/schemas/downstream-proof-replan-recovery-event.schema.json +61 -0
- package/schemas/task.schema.json +34 -0
|
@@ -152,6 +152,13 @@ evidence, supersedes execution authority, yields C1, and routes the same Task to
|
|
|
152
152
|
The route grants no authority to change Task objective, requirements, acceptance, or Milestone
|
|
153
153
|
topology.
|
|
154
154
|
|
|
155
|
+
The beta.12.7 compatibility repair for an accidental post-invalidation Knowledge rebind is similarly
|
|
156
|
+
non-semantic. It may restore `needs_fix` and preserve an exact dirty-worktree binding, but it cannot
|
|
157
|
+
approve a replacement Plan, infer new requirements, or treat preserved bytes as completed evidence.
|
|
158
|
+
After any required Knowledge refresh, the full unfinished remainder is planned again. Carryover into
|
|
159
|
+
execution is valid only when one newly authorized Step owns every bound path and the current
|
|
160
|
+
HEAD/path/content hashes still match; checks and strict review retain their ordinary authority.
|
|
161
|
+
|
|
155
162
|
Docker permission diagnostics are classified before consuming retry authority. Sandbox `EPERM` or
|
|
156
163
|
permission denial gets one exact escalated rerun of the health probe/Plan check. It is not an infra
|
|
157
164
|
failure and cannot authorize a Docker Desktop restart or image substitution. Only an escalated
|
package/docs/development-flow.md
CHANGED
|
@@ -113,6 +113,15 @@ candidate parent, binds the active proof dirty set by content hash, and register
|
|
|
113
113
|
dependency commit. Product bytes and Step state remain unchanged; fresh `next` must then advertise
|
|
114
114
|
the ordinary `task downstream-proof-recover`. This is not a general dirty-update permission.
|
|
115
115
|
|
|
116
|
+
If beta.12.6 already performed that recovery but a subsequent Knowledge approval mechanically
|
|
117
|
+
rebound its rejected Plan, use only the beta.12.7 stranded-replan bridge advertised by fresh `next`.
|
|
118
|
+
The source preflight runs before dependency transport and binds the exact beta.12.6 Task revision,
|
|
119
|
+
HEAD, dirty paths, and content hash. After dependency-only base/Task commits and provenance recovery,
|
|
120
|
+
`task downstream-proof-replan-recover` restores `needs_fix`. Reconcile/approve stale Project Knowledge,
|
|
121
|
+
then replace the full unfinished Plan. The preserved dirty set may enter execution only through one
|
|
122
|
+
new Step whose `allowedWrites` owns every path and whose fresh `next` reports validated carryover.
|
|
123
|
+
Completing that Step still requires its checks, Core-owned commit, and any guarded strict review.
|
|
124
|
+
|
|
116
125
|
A sandboxed Docker `EPERM`, `operation not permitted`, or `permission denied` result is not a failed
|
|
117
126
|
daemon check. Re-run the exact probe/check once with sandbox escalation without consuming a retry.
|
|
118
127
|
Restart Docker Desktop only with separate authorization after the escalated call reaches Docker and
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Codex Workflow V2: архитектура beta.12.
|
|
2
|
+
title: Codex Workflow V2: архитектура beta.12.8
|
|
3
3
|
subtitle: Источники истины, lifecycle, роли, delegation, зависимости Tasks и границы доверия
|
|
4
4
|
part: Часть 1 из 3 | Архитектура
|
|
5
5
|
document_version: 2.0
|
|
6
6
|
date: 29 августа 2026
|
|
7
|
-
subject: Архитектура и границы Codex Workflow V2 beta.12.
|
|
7
|
+
subject: Архитектура и границы Codex Workflow V2 beta.12.8
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# 1. Назначение и граница системы
|
|
@@ -18,7 +18,7 @@ Codex Workflow V2 - локальный state machine поверх Codex App, Git
|
|
|
18
18
|
Система рассчитана на одного пользователя и одну машину. Она не предоставляет distributed locking,
|
|
19
19
|
криптографическую идентификацию actor string или безопасную синхронизацию state между компьютерами.
|
|
20
20
|
|
|
21
|
-
## 1.1. Что beta.12.
|
|
21
|
+
## 1.1. Что beta.12.8 гарантирует
|
|
22
22
|
|
|
23
23
|
- exact project-local npm package и совместимый handshake до lifecycle действий;
|
|
24
24
|
- Discovery до materialization Task или Milestone;
|
|
@@ -26,13 +26,17 @@ Codex Workflow V2 - локальный state machine поверх Codex App, Git
|
|
|
26
26
|
- mechanical-feasibility проверку поддерживаемых форм Plan до новой Task authorization;
|
|
27
27
|
- явный Milestone dependency DAG и один общий runnable predicate для routing, handoff, claim и start;
|
|
28
28
|
- один C1 writer lease, секретные one-time credentials и Core-owned Step commits;
|
|
29
|
+
- lease-free Human final-acceptance gate: `task result-set` проверяет и освобождает active writer
|
|
30
|
+
lease, а после acceptance merge получает новый credential только через fresh recovery route;
|
|
29
31
|
- external-sealed Step/Task review в отдельных Codex tasks;
|
|
30
32
|
- state-bound human gates либо ранее выданные bounded delegation contracts;
|
|
31
33
|
- journaled recovery для составных переходов и fail-closed поведение при drift/corruption.
|
|
32
34
|
- bounded recovery, когда downstream proof требует изменить уже завершённый predecessor Step:
|
|
33
35
|
worktree и HEAD сохраняются, stale completion authority снимается, та же Task возвращается в planning.
|
|
36
|
+
- bounded compatibility recovery, если beta.12.6 после этого recovery ошибочно rebind-нула отвергнутый
|
|
37
|
+
Plan: exact dirty bytes сохраняются до нового consolidated Step, а Knowledge refresh не отменяет `plan-set`.
|
|
34
38
|
|
|
35
|
-
## 1.2. Что beta.12.
|
|
39
|
+
## 1.2. Что beta.12.8 не гарантирует
|
|
36
40
|
|
|
37
41
|
- правильность продуктовой идеи или автоматически выбранного provider Task;
|
|
38
42
|
- semantic sufficiency Plan, если точные факты нельзя доказать поддерживаемым analyzer;
|
|
@@ -108,6 +112,11 @@ Discovery -> materialize -> Plan -> Plan Risk Audit
|
|
|
108
112
|
-> final acceptance -> merge
|
|
109
113
|
```
|
|
110
114
|
|
|
115
|
+
`task result-set` является последним execution lease-bound переходом. Он требует рекламируемый
|
|
116
|
+
writer token, освобождает lease до `awaiting_final_acceptance` и тем самым допускает неограниченную
|
|
117
|
+
по времени Human pause без stale-lock блокировки repository. После acceptance прежний token не
|
|
118
|
+
переиспользуется: fresh `next` выдаёт bounded `task writer-credential-replace` для merge.
|
|
119
|
+
|
|
111
120
|
Fresh Task authorization записывает versioned mechanical-feasibility evidence. Analyzer может
|
|
112
121
|
выдать `blocked`, `pass` или `unverified`. `unverified` не означает semantic approval; он означает,
|
|
113
122
|
что поддерживаемая точная грамматика не доказала противоречие.
|
|
@@ -263,6 +272,17 @@ leases/transactions, predecessor ownership и content hash dirty set. Перех
|
|
|
263
272
|
dependency commit, не меняет product bytes/Step и делает обычный `task downstream-proof-recover`
|
|
264
273
|
достижимым до manifest-induced Knowledge refresh. Это не общее разрешение dirty update.
|
|
265
274
|
|
|
275
|
+
beta.12.7 закрывает следующий доказанный Signal case: beta.12.6 уже выполнила downstream-proof
|
|
276
|
+
invalidation, но последующее Project Knowledge approval механически вернуло старый двух-Step Plan в
|
|
277
|
+
`awaiting_execution_authorization`. Read-only `update downstream-proof-replan-update-preflight`
|
|
278
|
+
сначала связывает exact beta.12.6 revision, HEAD, шесть dirty paths и content hash. После двух
|
|
279
|
+
dependency-only commits `update downstream-proof-replan-dependency-preflight/recover` регистрирует
|
|
280
|
+
только новый Workflow HEAD. `task downstream-proof-replan-recover` затем атомарно возвращает ту же
|
|
281
|
+
Task в `needs_fix`; stale Knowledge можно reconciliate/approve, но fresh `next` всё равно требует
|
|
282
|
+
новый `task plan-set`. Новый Plan может передать сохранённые bytes только одному Step, который владеет
|
|
283
|
+
всем dirty set. `task run` принимает carryover лишь при exact HEAD/path/hash match, после чего Step
|
|
284
|
+
проходит обычные checks, Core-owned commit и strict review.
|
|
285
|
+
|
|
266
286
|
Docker socket `EPERM` в sandbox не является доказательством сломанного daemon. Gateway один раз
|
|
267
287
|
повторяет exact health probe или Plan check с sandbox escalation без расходования remediation attempt.
|
|
268
288
|
Restart Docker Desktop требует отдельного разрешения и допустим только после escalated daemon failure.
|
|
@@ -272,7 +292,7 @@ Restart Docker Desktop требует отдельного разрешения
|
|
|
272
292
|
# 10. Operational checklist
|
|
273
293
|
|
|
274
294
|
- exact package version установлен, bundled gateway соответствует release и переустановлен;
|
|
275
|
-
- handshake подтверждает protocol 2, state schema 2 и beta.12.
|
|
295
|
+
- handshake подтверждает protocol 2, state schema 2 и beta.12.8 capabilities;
|
|
276
296
|
- каждый mutation следует свежему `status -> next` и exact option contract;
|
|
277
297
|
- Docker permission failure сначала классифицируется как sandbox boundary, а не как infra retry;
|
|
278
298
|
- semantic unknowns и human gates не маскируются delegation;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: Codex Workflow V2: delegated chat-only guide
|
|
3
|
-
subtitle: Актуальный beta.12.
|
|
3
|
+
subtitle: Актуальный beta.12.8 путь от нового Discovery до принятого Milestone без ручного CLI
|
|
4
4
|
part: Часть 2 из 3 | Практика
|
|
5
5
|
document_version: 2.0
|
|
6
6
|
date: 29 августа 2026
|
|
7
|
-
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.
|
|
7
|
+
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.8
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
# 1. Рабочая модель beta.12.
|
|
10
|
+
# 1. Рабочая модель beta.12.8
|
|
11
11
|
|
|
12
12
|
Пользователь работает в одном Codex Project и формулирует продуктовый outcome. Coordinator выполняет
|
|
13
13
|
CLI, создаёт отдельные Task/Reviewer chats и ведёт supervision loop. Workflow Core остаётся authority
|
|
@@ -40,7 +40,7 @@ Blocking unknown, scope change, grant issuance или unrecoverable integrity co
|
|
|
40
40
|
# 2. Подготовка проекта перед новым Discovery
|
|
41
41
|
|
|
42
42
|
1. Убедитесь, что checkout чистый и выбран правильный repository root.
|
|
43
|
-
2. Установите beta.12.
|
|
43
|
+
2. Установите beta.12.8 как точную devDependency после публикации release.
|
|
44
44
|
3. Обновите и переустановите bundled `codex-workflow-gateway` этого release.
|
|
45
45
|
4. Проверьте, что declared и installed package versions равны.
|
|
46
46
|
5. Запустите новый Coordinator chat, не fork старого Milestone conversation.
|
|
@@ -56,7 +56,7 @@ AGENTS.md
|
|
|
56
56
|
-> doctor только как дополнительная диагностика
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
-
Handshake beta.12.
|
|
59
|
+
Handshake beta.12.8 должен сообщать `packageVersion=2.0.0-beta.12.8`, `protocolVersion=2`,
|
|
60
60
|
`stateSchemaVersion=2`, dependency DAG, initial Plan transaction, mechanical feasibility,
|
|
61
61
|
Milestone autonomy и structural replacement disabled capabilities.
|
|
62
62
|
|
|
@@ -116,7 +116,7 @@ delegate, scope, transitions и expiry. DGR передаётся только е
|
|
|
116
116
|
```text
|
|
117
117
|
НОВЫЙ COORDINATOR CHAT
|
|
118
118
|
|
|
119
|
-
Проведи новый Milestone через Codex Workflow V2 beta.12.
|
|
119
|
+
Проведи новый Milestone через Codex Workflow V2 beta.12.8 в delegated режиме.
|
|
120
120
|
Repository: <ABSOLUTE-REPOSITORY-ROOT>.
|
|
121
121
|
Milestone ID: AUTO.
|
|
122
122
|
Delegate actor: agent:milestone-coordinator.
|
|
@@ -242,6 +242,10 @@ Credential и approval grant решают разные задачи.
|
|
|
242
242
|
4. Claim проверяет dependency binding и возвращает `writerLeaseReceipt`.
|
|
243
243
|
5. `task run` принимает active writer credential согласно `next.writerTokenContract` и обновляет lease.
|
|
244
244
|
6. `task step-complete`, review record и другие guarded mutations используют только рекламируемый option.
|
|
245
|
+
7. После passed final review `task result-set` использует active writer token и освобождает lease до
|
|
246
|
+
`awaiting_final_acceptance`; Human gate не должен удерживать credential.
|
|
247
|
+
8. После acceptance старый token не используется: fresh `next` рекламирует
|
|
248
|
+
`task writer-credential-replace`, затем разрешает merge или merge confirmation.
|
|
245
249
|
|
|
246
250
|
Нельзя искать token в later payload fields, писать его в prompt/report/evidence или заменять redacted
|
|
247
251
|
fingerprint. Потеря token не разрешает новый handoff либо lease acquisition вне fresh recovery route.
|
|
@@ -299,6 +303,7 @@ Task chat записывает его только при совпадении p
|
|
|
299
303
|
| Finding `route=replan` с exact Plan conflict | `task plan-set`, меняются только implementation Steps |
|
|
300
304
|
| `split-required` | Stop: `STRUCTURAL_REPLACEMENT_REQUIRED`, никаких replacement writes |
|
|
301
305
|
| Старая версия + active downstream proof блокируют update | Только beta.12.6 exact dependency commits и advertised `update downstream-proof-dependency-recover` |
|
|
306
|
+
| После downstream recovery beta.12.6 вернула отвергнутый Plan через Knowledge rebind | Только beta.12.7 replan update bridge, затем recovery и новый consolidated Plan той же Task |
|
|
302
307
|
| Exact beta.11 attempt-four `stop-escalate` | Только advertised prepare, затем отдельный Human-confirmed apply; исходный stop сохраняется |
|
|
303
308
|
| Любой другой explicit `stop-escalate` | Terminal user attention |
|
|
304
309
|
| Stale dependency binding | Новый handoff/claim только по fresh `next` |
|
|
@@ -318,6 +323,15 @@ beta.12.6 и требуйте от fresh `next` `update downstream-proof-depende
|
|
|
318
323
|
binding dirty set. Recover регистрирует только dependency HEAD; следующий fresh `next` должен вернуть
|
|
319
324
|
обычный `task downstream-proof-recover`. Любой иной diff/history/dirty path/lease означает stop.
|
|
320
325
|
|
|
326
|
+
Для exact stranded shape после уже выполненного beta.12.6 recovery сначала запустите новой версией
|
|
327
|
+
read-only `update downstream-proof-replan-update-preflight`. Продолжайте только при `eligible=true`,
|
|
328
|
+
source `2.0.0-beta.12.6`, exact revision/HEAD, ожидаемых dirty paths/hash и пустых blockers. Затем
|
|
329
|
+
перенесите beta.12.7 двумя dependency-only commits на base и Task branch, установите пакет и следуйте
|
|
330
|
+
fresh `next` через `update downstream-proof-replan-dependency-recover` и
|
|
331
|
+
`task downstream-proof-replan-recover`. После обязательного Knowledge reconcile/approve fresh `next`
|
|
332
|
+
должен остаться на `task plan-set`, а не resurrect старый Plan. Новый Step обязан один владеть всем
|
|
333
|
+
сохранённым dirty set; `task run` допустим только при `downstreamProofCarryover.state=validated`.
|
|
334
|
+
|
|
321
335
|
Ошибка Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied` в sandbox не считается
|
|
322
336
|
падением daemon и не расходует retry. Повторите exact read-only probe или Plan check один раз с sandbox
|
|
323
337
|
escalation. Не перезапускайте Docker Desktop и не меняйте image без отдельного разрешения и подтверждённого
|
|
@@ -353,7 +367,7 @@ Task/project DGR. `dependencyBinding` для standalone handoff равен null.
|
|
|
353
367
|
|
|
354
368
|
# 14. Итоговый checklist пользователя
|
|
355
369
|
|
|
356
|
-
- beta.12.
|
|
370
|
+
- beta.12.8 exact package и новый bundled gateway установлены;
|
|
357
371
|
- новый Coordinator chat не является fork старого Milestone;
|
|
358
372
|
- bootstrap DGR, если нужен, выдан отдельным exact human confirmation;
|
|
359
373
|
- Discovery не materialized при blocking unknowns;
|
|
@@ -365,5 +379,6 @@ Task/project DGR. `dependencyBinding` для standalone handoff равен null.
|
|
|
365
379
|
- beta.11 stop override, если рекламировался, прошёл отдельные prepare и user-confirmed apply без journal rewrite;
|
|
366
380
|
- downstream predecessor recovery, если рекламировался, сохранил worktree и завершился новым Plan authority;
|
|
367
381
|
- active-proof package bridge, если понадобился, зарегистрировал только exact dependency HEAD перед recovery;
|
|
382
|
+
- stranded-replan bridge, если понадобился, завершился новым Plan и полным Step checks/review, а не только сменой navigation;
|
|
368
383
|
- split-required остановился без replacement mutations;
|
|
369
384
|
- Milestone validation и final acceptance связаны с текущим clean base HEAD.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Codex Workflow V2: технический справочник beta.12.
|
|
2
|
+
title: Codex Workflow V2: технический справочник beta.12.8
|
|
3
3
|
subtitle: Protocol 2, state schema 2, transactions, credentials, dependency authority, review и recovery
|
|
4
4
|
part: Часть 3 из 3 | Technical reference
|
|
5
5
|
document_version: 2.0
|
|
6
6
|
date: 29 августа 2026
|
|
7
|
-
subject: Технический контракт Codex Workflow V2 beta.12.
|
|
7
|
+
subject: Технический контракт Codex Workflow V2 beta.12.8
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# 1. Runtime contract
|
|
@@ -13,9 +13,9 @@ Workflow V2 предоставляет локальные revisioned transitions
|
|
|
13
13
|
и `value` либо структурированную ошибку с `code`, `message` и `details`. Chat, PDF и gateway не создают
|
|
14
14
|
authority сами: mutating permission определяется runtime state и свежим `next`.
|
|
15
15
|
|
|
16
|
-
| Параметр beta.12.
|
|
16
|
+
| Параметр beta.12.8 | Значение |
|
|
17
17
|
|---|---|
|
|
18
|
-
| npm package | `codex-workflow-v2@2.0.0-beta.12.
|
|
18
|
+
| npm package | `codex-workflow-v2@2.0.0-beta.12.8` |
|
|
19
19
|
| protocolVersion | 2 |
|
|
20
20
|
| stateSchemaVersion | 2 |
|
|
21
21
|
| lifecycle epoch | 2 |
|
|
@@ -37,14 +37,14 @@ Gateway выполняет:
|
|
|
37
37
|
5. вызов только package-local `dist/src/cli.js --repo <root>`;
|
|
38
38
|
6. `gateway handshake` до lifecycle действий.
|
|
39
39
|
|
|
40
|
-
Ключевые beta.12.
|
|
40
|
+
Ключевые beta.12.8 capabilities:
|
|
41
41
|
|
|
42
42
|
| Группа | Capabilities |
|
|
43
43
|
|---|---|
|
|
44
44
|
| Knowledge и graph | `project-memory-v1`, `graph-binding-v1`, `task-context-refresh-v1` |
|
|
45
45
|
| Milestone | lifecycle, initial assembly navigation, autonomy, progress, dependency DAG, initial Plan transaction |
|
|
46
46
|
| Task planning | Plan Risk Audit, proof obligations, mechanical feasibility |
|
|
47
|
-
| C1 | handoff sidecar
|
|
47
|
+
| C1 | handoff sidecar/bundle, derived Worker actor, credential replacement, Human-gate lease release |
|
|
48
48
|
| Reviews | strict reviewer, Step strict review, continuable remediation, evidence-bound fix/replan routing |
|
|
49
49
|
| Recovery | Task-local dependency provenance, plan integrity, downstream-proof predecessor invalidation, remediation mode, legacy stop override, append-only stop-rebind chain, corrective yield/replan journals |
|
|
50
50
|
| Replacement | `structural-task-replacement-disabled-v1` |
|
|
@@ -235,7 +235,8 @@ Claim сверяет stored binding с current Milestone authority до lock acq
|
|
|
235
235
|
3. Exact target actor вызывает `task claim` с one-time token.
|
|
236
236
|
4. Claim выдаёт first-field `writerLeaseReceipt`.
|
|
237
237
|
5. `task run` принимает token по `next.writerTokenContract`, heartbeats lease и возвращает refreshed receipt.
|
|
238
|
-
6.
|
|
238
|
+
6. `task result-set` consumes active token и освобождает lease до Human final-acceptance gate.
|
|
239
|
+
7. После acceptance `writer-credential-replace` создаёт merge lease; terminal transitions освобождают его.
|
|
239
240
|
|
|
240
241
|
Credential нельзя логировать, сохранять в chat packet или включать в evidence. `handoff-show` возвращает
|
|
241
242
|
только safe persisted binding. Recovery использует отдельные advertised replacement actions.
|
|
@@ -249,7 +250,7 @@ Credential нельзя логировать, сохранять в chat packet
|
|
|
249
250
|
| Worker return | Изменения uncommitted и только в allowedWrites |
|
|
250
251
|
| Step complete | History, scope, checks, review gate, exact writer token |
|
|
251
252
|
| Commit | Один Core-owned commit с Task/Step metadata |
|
|
252
|
-
| Submit |
|
|
253
|
+
| Submit/Result | Exact evidence/review; Result освобождает lease до Human gate |
|
|
253
254
|
| Merge | Fresh review/acceptance, base conditions, accepted HEAD |
|
|
254
255
|
|
|
255
256
|
Local start повторно сравнивает authorized base внутри Git branch creation, закрывая TOCTOU между
|
|
@@ -316,7 +317,7 @@ fresh `next` через corrective yield и обычный Human-confirmed repla
|
|
|
316
317
|
P01-A предотвращает поддерживаемые contradictions до fresh authorization. beta.11 path остаётся для
|
|
317
318
|
pre-P01 authorizations и late/unsupported exact recovery cases.
|
|
318
319
|
|
|
319
|
-
# 13.1. beta.12.
|
|
320
|
+
# 13.1. beta.12.7 compatibility transitions
|
|
320
321
|
|
|
321
322
|
`update dependency-provenance-recover` больше не требует полного равенства Task manifest/lock с base.
|
|
322
323
|
Base остаётся version authority, а parent/HEAD candidate сравниваются без единственных Workflow
|
|
@@ -332,6 +333,18 @@ aligned runtime/declared/locked/installed/current/base versions, отсутст
|
|
|
332
333
|
`dependencyProvenanceRecoveries.activeDownstreamProof`; product work и Step state не меняются.
|
|
333
334
|
Fresh `next` затем приоритетно рекламирует `task downstream-proof-recover` до Knowledge refresh.
|
|
334
335
|
|
|
336
|
+
`update downstream-proof-replan-update-preflight` — read-only source gate для одного exact
|
|
337
|
+
beta.12.6 stranded shape после predecessor invalidation и ошибочного Knowledge rebind старого Plan.
|
|
338
|
+
Он требует точные source version surfaces, Task revision/status/rebind, preserved HEAD, dirty paths/hash
|
|
339
|
+
и отсутствие lease/transactions. После dependency-only transport
|
|
340
|
+
`update downstream-proof-replan-dependency-preflight/recover` валидирует parent на `HEAD^`, candidate
|
|
341
|
+
на `HEAD` и записывает `dependencyProvenanceRecoveries.downstreamProofReplan` без изменения product
|
|
342
|
+
bytes. `task downstream-proof-replan-recover` атомарно добавляет
|
|
343
|
+
`downstream-proof-replan-recoveries.jsonl`, supersede-ит execution authorization и возвращает Task в
|
|
344
|
+
`needs_fix`. Stale Knowledge refresh разрешён после repair, но не может заменить обязательный
|
|
345
|
+
`task plan-set`. Dirty carryover принимается `task run` только если один replacement Step владеет всем
|
|
346
|
+
set, а HEAD, paths и SHA-256 совпадают с recovery event.
|
|
347
|
+
|
|
335
348
|
`task stop-override-prepare/apply` обслуживает только exact beta.11 attempt-four policy stop. Prepare
|
|
336
349
|
не пишет state и создаёт binding по Task revision, Step, attempt-3 continue, attempt-4 stop, трём
|
|
337
350
|
remediation events, Plan, HEAD, package, human actor и reason. Apply в отдельном user turn добавляет
|
|
@@ -430,12 +443,12 @@ Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied`
|
|
|
430
443
|
После каждой successful mutation обязателен sequential `status`, затем fresh `next`. Failed status/next
|
|
431
444
|
не разрешает direct mutation. Syntax help read-only и не заменяет navigation authority.
|
|
432
445
|
|
|
433
|
-
# 18. Public command surface beta.12.
|
|
446
|
+
# 18. Public command surface beta.12.8
|
|
434
447
|
|
|
435
448
|
| Область | Actions |
|
|
436
449
|
|---|---|
|
|
437
450
|
| System | `doctor`, `status`, `next`, `gateway handshake`, `locks` |
|
|
438
|
-
| Update | `preflight`, `rescue-preflight`,
|
|
451
|
+
| Update | `preflight`, `rescue-preflight`, dependency provenance, downstream-proof dependency bridge, downstream-proof replan update/dependency bridge |
|
|
439
452
|
| Project memory | `scan`, `show`, `status`, `approve`, `reconcile` |
|
|
440
453
|
| Delegation | `prepare`, `grant`, `list`, `show`, `revoke` |
|
|
441
454
|
| Graph | `prepare`, `status`, `refresh-request`, `bind`, `fallback` |
|
|
@@ -445,7 +458,7 @@ Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied`
|
|
|
445
458
|
| Task execution | `start`, `run`, `step-complete`, `submit`, `result-set`, `accept`, `sync-base`, `merge`, `merge-confirm` |
|
|
446
459
|
| C1 | `handoff[-prepare/-replace/-show]`, `claim`, `writer-credential-replace`, `handback[-create]` |
|
|
447
460
|
| Review | review/step-review packet, launch, sealed record и record actions |
|
|
448
|
-
| Corrective | decision/recovery, plan-integrity, downstream-proof-recover, remediation-mode, stop-override prepare/apply, yield и corrective-replan actions |
|
|
461
|
+
| Corrective | decision/recovery, plan-integrity, downstream-proof-recover/replan-recover, remediation-mode, stop-override prepare/apply, yield и corrective-replan actions |
|
|
449
462
|
| Replacement | `replacement-materialize` retained, но всегда disabled в P04-A |
|
|
450
463
|
|
|
451
464
|
Exact options берутся из fresh `next`; command help используется только когда
|
|
@@ -454,16 +467,11 @@ Exact options берутся из fresh `next`; command help используе
|
|
|
454
467
|
# 19. Release и package update gates
|
|
455
468
|
|
|
456
469
|
Перед package update project-local `update preflight` должен вернуть `safe=true`: clean checkout, нет
|
|
457
|
-
running Step и active/stale writer lease. Исключения — документированный alpha.7 rescue
|
|
458
|
-
active-downstream-proof
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
4. `npm run smoke:downstream`;
|
|
466
|
-
5. `npm run plugin:check` и official plugin/skill validators;
|
|
467
|
-
6. `npm run docs:pdf:check`;
|
|
468
|
-
7. `npm run release:check` с exact release tag binding;
|
|
469
|
-
8. validation append-only real-agent lifecycle log.
|
|
470
|
+
running Step и active/stale writer lease. Исключения — документированный alpha.7 rescue, beta.12.6
|
|
471
|
+
active-downstream-proof bridge и beta.12.7 exact stranded-replan bridge; все они fail-closed и не дают
|
|
472
|
+
общего разрешения dirty update.
|
|
473
|
+
|
|
474
|
+
Перед beta.12.8 tag обязательны `npm ci`, `npm run validate`, `npm run pack:check`,
|
|
475
|
+
`npm run smoke:downstream`, `npm run plugin:check`, official plugin/skill validators,
|
|
476
|
+
`npm run docs:pdf:check`, `npm run release:check` с exact tag binding и validation
|
|
477
|
+
append-only real-agent lifecycle log.
|
package/docs/release.md
CHANGED
|
@@ -27,7 +27,7 @@ The PDF check deterministically regenerates all three Russian documents from
|
|
|
27
27
|
`docs/pdf/sources`, binds the visible package version to the root manifest, and fails when any
|
|
28
28
|
tracked PDF is stale. Source and binary PDFs are one release unit.
|
|
29
29
|
|
|
30
|
-
For beta.12.
|
|
30
|
+
For beta.12.8, the release gate also relies on `npm run release:check` to fail if:
|
|
31
31
|
|
|
32
32
|
- canonical entity schema 2 shapes drift;
|
|
33
33
|
- protocol 2 is not the active public contract, or intact protocol-1 adoption evidence stops being readable through the bounded compatibility window;
|
|
@@ -42,6 +42,8 @@ For beta.12.6, the release gate also relies on `npm run release:check` to fail i
|
|
|
42
42
|
explicit recovery, or dual-readback capabilities are absent from the packaged surface.
|
|
43
43
|
- scoped Task navigation, credential replacement recovery, or sealed external Task/Step review
|
|
44
44
|
commands are absent from the packaged surface.
|
|
45
|
+
- `task result-set` can enter the unbounded Human final-acceptance gate without consuming a live
|
|
46
|
+
writer credential and releasing its lease, or claimed Task E2E cannot reacquire a fresh merge credential.
|
|
45
47
|
- bounded dependency-provenance recovery, retained passed-review provenance, the exact Signal T04
|
|
46
48
|
revision-26 fixture, or pending/corrupt-review rejection regressions are absent.
|
|
47
49
|
- dependency recovery again requires Task-local manifest/lock fields to equal the Milestone base,
|
|
@@ -57,6 +59,12 @@ For beta.12.6, the release gate also relies on `npm run release:check` to fail i
|
|
|
57
59
|
aligned base/Task commits while preserving product bytes; or unknown history, unrelated dirty
|
|
58
60
|
scope, content drift within an observation, leases, transactions, and wider candidates do not
|
|
59
61
|
fail closed before provenance registration and ordinary downstream recovery.
|
|
62
|
+
- the exact beta.12.6 post-invalidation Knowledge-rebind shape cannot pass a read-only source gate,
|
|
63
|
+
transport beta.12.7 through dependency-only commits, register provenance, restore `needs_fix`,
|
|
64
|
+
survive required Knowledge refresh, and reach a fresh replacement Plan;
|
|
65
|
+
- preserved dirty bytes can execute without one Step owning the complete bound set, or HEAD/path/hash
|
|
66
|
+
drift is accepted; or the Signal-shaped E2E stops before checks, Core commit, strict Step review,
|
|
67
|
+
and fresh navigation to Task submission.
|
|
60
68
|
- bundled gateway guidance treats Docker socket `EPERM` as daemon failure, consumes a remediation
|
|
61
69
|
attempt before one exact escalated probe, or recommends restarting Docker Desktop without separate
|
|
62
70
|
authority.
|
|
@@ -93,6 +93,30 @@ ownership и history, а новый Plan и review оценивают текущ
|
|
|
93
93
|
version divergence, branch/Plan/Step mismatch, lease или transaction. В этом случае не правьте
|
|
94
94
|
`systemCommits` или внешний state вручную.
|
|
95
95
|
|
|
96
|
+
### Исключение beta.12.7 для stranded downstream replan
|
|
97
|
+
|
|
98
|
+
Это исключение применимо только если beta.12.6 уже записала downstream-proof invalidation, а затем
|
|
99
|
+
Project Knowledge approval ошибочно rebound-нул отвергнутый Plan и вернул Task в
|
|
100
|
+
`awaiting_execution_authorization`. До изменения dependency запустите beta.12.7 source/runtime
|
|
101
|
+
read-only `update downstream-proof-replan-update-preflight --id <TASK-ID>`. Требуются
|
|
102
|
+
`eligible=true`, source version `2.0.0-beta.12.6`, exact Task revision/branch/base/HEAD, неизменные
|
|
103
|
+
dirty paths/content hash и пустые blockers.
|
|
104
|
+
|
|
105
|
+
Затем тем же двухкоммитным способом обновите active base и Task branch только в `package.json` и
|
|
106
|
+
`package-lock.json`, установите exact beta.12.7 и следуйте fresh `next`. Допустимая цепочка:
|
|
107
|
+
`update downstream-proof-replan-dependency-preflight` ->
|
|
108
|
+
`update downstream-proof-replan-dependency-recover` ->
|
|
109
|
+
`task downstream-proof-replan-recover`. После repair manifest change обычно делает Project Knowledge
|
|
110
|
+
stale: выполните рекламируемые reconcile/approve, но не `task knowledge-rebind` старого Plan. Fresh
|
|
111
|
+
`next` обязан вернуть `task plan-set`.
|
|
112
|
+
|
|
113
|
+
Новый Plan должен заново классифицировать весь unfinished remainder. Сохранённые dirty bytes не
|
|
114
|
+
становятся completed evidence и не коммитятся административным recovery. Они могут быть приняты
|
|
115
|
+
только одним planned Step, `allowedWrites` которого точно покрывает весь dirty set. Перед `task run`
|
|
116
|
+
fresh `next` обязан показать `downstreamProofCarryover.state=validated`; после run обязательны checks,
|
|
117
|
+
Core-owned Step commit и strict review, если Step guarded. Изменение content/path/HEAD, дополнительная
|
|
118
|
+
Task revision, audit/authorization старого Plan, lease или transaction блокируют исключение.
|
|
119
|
+
|
|
96
120
|
### Исключение beta.12.1 для beta.11 attempt-four stop
|
|
97
121
|
|
|
98
122
|
Если beta.11 записал `stop-escalate` перед четвёртой попыткой только после последовательности
|