codex-workflow-v2 2.0.0-beta.12.17 → 2.0.0-beta.12.18
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 -2
- package/dist/src/alpha6/remediation.js +7 -6
- package/dist/src/alpha6/remediation.js.map +1 -1
- package/dist/src/cli.js +1 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/contracts.d.ts +2 -0
- package/dist/src/dependency-provenance.js +11 -1
- 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 +1 -0
- package/dist/src/workflow.js +55 -8
- package/dist/src/workflow.js.map +1 -1
- 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 +16 -6
- package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +10 -9
- package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +24 -9
- package/docs/release.md +5 -1
- package/docs/updating-existing-project.md +23 -0
- package/docs/validation-report.md +87 -89
- package/package.json +1 -1
|
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.18
|
|
3
3
|
subtitle: Источники истины, lifecycle, роли, delegation, зависимости Tasks и границы доверия
|
|
4
4
|
part: Часть 1 из 3 | Архитектура
|
|
5
5
|
document_version: 2.0
|
|
6
|
-
date:
|
|
7
|
-
subject: Архитектура и границы Codex Workflow V2 beta.12.
|
|
6
|
+
date: 1 сентября 2026
|
|
7
|
+
subject: Архитектура и границы Codex Workflow V2 beta.12.18
|
|
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.18 гарантирует
|
|
22
22
|
|
|
23
23
|
- exact project-local npm package и совместимый handshake до lifecycle действий;
|
|
24
24
|
- Discovery до materialization Task или Milestone;
|
|
@@ -40,8 +40,11 @@ Codex Workflow V2 - локальный state machine поверх Codex App, Git
|
|
|
40
40
|
- pre-execution `stop-escalate`, доказавший отсутствующую upstream capability, может materialize ровно
|
|
41
41
|
один additive remediation Task без нового Human gate; Core сохраняет Milestone semantics и выводит
|
|
42
42
|
authority из текущей Milestone authorization и exact audit evidence.
|
|
43
|
+
- исторический check-support decision проверяется против собственного Plan hash, а новый Plan может
|
|
44
|
+
продолжить только после явного принятия каждого support path в `allowedWrites` и `expectedOutputs`;
|
|
45
|
+
implicit scope carry-over и Human approval для этого exact machine-proved случая отсутствуют.
|
|
43
46
|
|
|
44
|
-
## 1.2. Что beta.12.
|
|
47
|
+
## 1.2. Что beta.12.18 не гарантирует
|
|
45
48
|
|
|
46
49
|
- правильность продуктовой идеи или автоматически выбранного provider Task;
|
|
47
50
|
- semantic sufficiency Plan, если точные факты нельзя доказать поддерживаемым analyzer;
|
|
@@ -354,6 +357,13 @@ locked, installed, current Task branch и active Milestone base и допуск
|
|
|
354
357
|
версии ниже runner. Dirty scope, отсутствие lease/transaction и dependency-only Git transport
|
|
355
358
|
остаются обязательными; product bytes и Workflow state вручную не изменяются.
|
|
356
359
|
|
|
360
|
+
beta.12.18 закрывает следующий post-rebind разрыв. Исторический check-support event остаётся валиден
|
|
361
|
+
по Plan hash, при котором был создан, даже если новый Plan теперь прямо владеет derived support path.
|
|
362
|
+
External preflight допускает продолжение только при одном таком event, неизменных dirty bytes,
|
|
363
|
+
отсутствии активного Step/lease/transaction и полном explicit scope adoption в planned Step. После
|
|
364
|
+
dependency-only transport Core заново связывает Knowledge и authorization; старый event не создаёт
|
|
365
|
+
скрытой authority и не модифицируется задним числом.
|
|
366
|
+
|
|
357
367
|
Docker socket `EPERM` в sandbox не является доказательством сломанного daemon. Gateway один раз
|
|
358
368
|
повторяет exact health probe или Plan check с sandbox escalation без расходования remediation attempt.
|
|
359
369
|
Restart Docker Desktop требует отдельного разрешения и допустим только после escalated daemon failure.
|
|
@@ -363,7 +373,7 @@ Restart Docker Desktop требует отдельного разрешения
|
|
|
363
373
|
# 10. Operational checklist
|
|
364
374
|
|
|
365
375
|
- exact package version установлен, bundled gateway соответствует release и переустановлен;
|
|
366
|
-
- handshake подтверждает protocol 2, state schema 2 и beta.12.
|
|
376
|
+
- handshake подтверждает protocol 2, state schema 2 и beta.12.18 capabilities;
|
|
367
377
|
- каждый mutation следует свежему `status -> next` и exact option contract;
|
|
368
378
|
- Docker permission failure сначала классифицируется как sandbox boundary, а не как infra retry;
|
|
369
379
|
- 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.18 путь от нового Discovery до принятого Milestone без ручного CLI
|
|
4
4
|
part: Часть 2 из 3 | Практика
|
|
5
5
|
document_version: 2.0
|
|
6
|
-
date:
|
|
7
|
-
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.
|
|
6
|
+
date: 1 сентября 2026
|
|
7
|
+
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.18
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
# 1. Рабочая модель beta.12.
|
|
10
|
+
# 1. Рабочая модель beta.12.18
|
|
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.18 как точную 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.18 должен сообщать `packageVersion=2.0.0-beta.12.18`, `protocolVersion=2`,
|
|
60
60
|
`stateSchemaVersion=2`, dependency DAG, initial Plan transaction, mechanical feasibility,
|
|
61
61
|
Milestone autonomy и structural replacement disabled capabilities.
|
|
62
62
|
|
|
@@ -117,7 +117,7 @@ delegate, scope, transitions и expiry. DGR передаётся только е
|
|
|
117
117
|
```text
|
|
118
118
|
НОВЫЙ COORDINATOR CHAT
|
|
119
119
|
|
|
120
|
-
Проведи новый Milestone через Codex Workflow V2 beta.12.
|
|
120
|
+
Проведи новый Milestone через Codex Workflow V2 beta.12.18 в delegated режиме.
|
|
121
121
|
Repository: <ABSOLUTE-REPOSITORY-ROOT>.
|
|
122
122
|
Milestone ID: AUTO.
|
|
123
123
|
Delegate actor: agent:milestone-coordinator.
|
|
@@ -299,7 +299,8 @@ Task chat записывает его только при совпадении p
|
|
|
299
299
|
|---|---|
|
|
300
300
|
| First proven impossible npm check после legacy/late authorization | Только рекламируемый `task plan-integrity-recover` |
|
|
301
301
|
| Direct imported migration checksum/catalog authority вне Step scope | beta.12.16: advertised `task plan-integrity-recover`, затем тот же Step с exact derived support path; Human replan не нужен |
|
|
302
|
-
| In-flight Plan-integrity Task требует package update | beta.12.
|
|
302
|
+
| In-flight Plan-integrity Task требует package update | beta.12.18 external preflight выводит coherent exact beta.12 source из пяти version surfaces; затем только dependency-only transport и advertised recovery |
|
|
303
|
+
| Новый Plan явно принял ранее derived check-support path, но старый event выглядит corrupt | beta.12.18 external preflight требует exact post-rebind scope adoption и неизменные dirty bytes; затем dependency-only transport, Knowledge rebind, PRA и fresh authorization без Human gate |
|
|
303
304
|
| Downstream proof требует изменить completed predecessor | Только `task downstream-proof-recover`, затем новый Plan/risk audit/authorization в той же Task |
|
|
304
305
|
| Failed guarded review | Та же Task: исправление и новый strict review без attempt hard stop |
|
|
305
306
|
| Finding `route=fix` | Продолжить тот же Step; count остаётся диагностикой |
|
|
@@ -409,7 +410,7 @@ Task/project DGR. `dependencyBinding` для standalone handoff равен null.
|
|
|
409
410
|
|
|
410
411
|
# 14. Итоговый checklist пользователя
|
|
411
412
|
|
|
412
|
-
- beta.12.
|
|
413
|
+
- beta.12.18 exact package и новый bundled gateway установлены;
|
|
413
414
|
- новый Coordinator chat не является fork старого Milestone;
|
|
414
415
|
- bootstrap DGR, если нужен, выдан отдельным exact human confirmation;
|
|
415
416
|
- Discovery не materialized при blocking unknowns;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Codex Workflow V2: технический справочник beta.12.
|
|
2
|
+
title: Codex Workflow V2: технический справочник beta.12.18
|
|
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
|
-
date:
|
|
7
|
-
subject: Технический контракт Codex Workflow V2 beta.12.
|
|
6
|
+
date: 1 сентября 2026
|
|
7
|
+
subject: Технический контракт Codex Workflow V2 beta.12.18
|
|
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.18 | Значение |
|
|
17
17
|
|---|---|
|
|
18
|
-
| npm package | `codex-workflow-v2@2.0.0-beta.12.
|
|
18
|
+
| npm package | `codex-workflow-v2@2.0.0-beta.12.18` |
|
|
19
19
|
| protocolVersion | 2 |
|
|
20
20
|
| stateSchemaVersion | 2 |
|
|
21
21
|
| lifecycle epoch | 2 |
|
|
@@ -37,7 +37,7 @@ 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.18 capabilities:
|
|
41
41
|
|
|
42
42
|
| Группа | Capabilities |
|
|
43
43
|
|---|---|
|
|
@@ -46,7 +46,7 @@ Gateway выполняет:
|
|
|
46
46
|
| Task planning | Plan Risk Audit, proof obligations, mechanical feasibility |
|
|
47
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
|
-
| Recovery | Task-local dependency provenance, historical Step provenance, plan integrity, downstream-proof predecessor invalidation, remediation mode, legacy stop override, append-only stop-rebind chain, corrective yield/replan journals |
|
|
49
|
+
| Recovery | Task-local dependency provenance, historical Step provenance, plan integrity, `historical-check-support-scope-adoption-v1`, 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` |
|
|
51
51
|
|
|
52
52
|
Handshake incompatibility прекращает работу. Запуск global package, `latest`, mutable range или соседней
|
|
@@ -527,6 +527,21 @@ repository-local runner регистрирует commit только через
|
|
|
527
527
|
`update plan-integrity-dependency-recover`. Source consensus не усыновляет product history, не меняет
|
|
528
528
|
Plan/remediation evidence и не даёт generic update authority другим beta lines.
|
|
529
529
|
|
|
530
|
+
# 13.9. beta.12.18 historical check-support scope adoption
|
|
531
|
+
|
|
532
|
+
Validation v3 связывает check-support event с `event.planHash`. Если поздний Knowledge rebind и новый
|
|
533
|
+
Plan явно добавили derived support path, исторический event проверяется по собственным immutable
|
|
534
|
+
fields, hashes и conflict evidence, а не против scope нового Plan. Только event текущего Plan может
|
|
535
|
+
расширять effective Step scope; поэтому старое evidence не переносит authority неявно.
|
|
536
|
+
|
|
537
|
+
Read-only `update plan-integrity-update-preflight` может вернуть
|
|
538
|
+
`compatibilityMode=post-rebind-scope-adoption`, только если Task ожидает execution authorization, ни
|
|
539
|
+
одна Step не выполняется, существует ровно один исторический v3 `continue-fix`, его dirty paths и
|
|
540
|
+
content hash не изменились, а current planned Step напрямую владеет всеми `scopeExtensions` и
|
|
541
|
+
объявляет их outputs. Обычные coherent-version, lease, transaction, Core-operation и dependency-only
|
|
542
|
+
Git guards сохраняются. После регистрации update Knowledge rebind, PRA и authorization выполняются
|
|
543
|
+
только по fresh routes; Human approval для exact machine-proved scope не нужен.
|
|
544
|
+
|
|
530
545
|
# 14. P04-A structural replacement boundary
|
|
531
546
|
|
|
532
547
|
Command shape `task replacement-materialize` retained только для compatibility diagnostics. Любая попытка
|
|
@@ -589,7 +604,7 @@ Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied`
|
|
|
589
604
|
После каждой successful mutation обязателен sequential `status`, затем fresh `next`. Failed status/next
|
|
590
605
|
не разрешает direct mutation. Syntax help read-only и не заменяет navigation authority.
|
|
591
606
|
|
|
592
|
-
# 18. Public command surface beta.12.
|
|
607
|
+
# 18. Public command surface beta.12.18
|
|
593
608
|
|
|
594
609
|
| Область | Actions |
|
|
595
610
|
|---|---|
|
|
@@ -620,7 +635,7 @@ active-downstream-proof bridge, beta.12.7 exact stranded-replan bridge, beta.12.
|
|
|
620
635
|
dependency bridge и beta.12.15 Plan-integrity bridge; все они fail-closed и не дают общего разрешения
|
|
621
636
|
dirty update.
|
|
622
637
|
|
|
623
|
-
Перед beta.12.
|
|
638
|
+
Перед beta.12.18 tag обязательны `npm ci`, `npm run validate`, `npm run test:signal-t10-check-support-e2e`, `npm run test:signal-remediation-e2e`, `npm run pack:check`,
|
|
624
639
|
`npm run smoke:downstream`, `npm run plugin:check`, official plugin/skill validators,
|
|
625
640
|
`npm run docs:pdf:check`, `npm run release:check` с exact tag binding и validation
|
|
626
641
|
append-only real-agent lifecycle log.
|
package/docs/release.md
CHANGED
|
@@ -29,7 +29,7 @@ The PDF check deterministically regenerates all three Russian documents from
|
|
|
29
29
|
`docs/pdf/sources`, binds the visible package version to the root manifest, and fails when any
|
|
30
30
|
tracked PDF is stale. Source and binary PDFs are one release unit.
|
|
31
31
|
|
|
32
|
-
For beta.12.
|
|
32
|
+
For beta.12.18, the release gate also relies on `npm run release:check` to fail if:
|
|
33
33
|
|
|
34
34
|
- canonical entity schema 2 shapes drift;
|
|
35
35
|
- protocol 2 is not the active public contract, or intact protocol-1 adoption evidence stops being readable through the bounded compatibility window;
|
|
@@ -68,6 +68,10 @@ For beta.12.17, the release gate also relies on `npm run release:check` to fail
|
|
|
68
68
|
Step owning it; or in-flight recovery can widen beyond the exact imported support path, bypass
|
|
69
69
|
`forbiddenScope`, change the Plan hash, skip checks/Core commit/review disclosure, or require a
|
|
70
70
|
Human approval for the machine-proved scope-only correction.
|
|
71
|
+
- historical check-support evidence is reinterpreted against a later Plan instead of the Plan hash
|
|
72
|
+
recorded by the event; or a post-rebind update is accepted without one planned Step explicitly
|
|
73
|
+
owning every previously derived support path in both `allowedWrites` and `expectedOutputs`, exact
|
|
74
|
+
dirty-byte continuity, coherent versions, and an otherwise idle recovery boundary.
|
|
71
75
|
- downstream proof cannot invalidate only completed transitive-predecessor authority while
|
|
72
76
|
preserving worktree/HEAD, yielding C1, and returning the same Task to fresh planning; or unrelated
|
|
73
77
|
dirty files and damaged invalidation evidence do not fail closed.
|
|
@@ -22,6 +22,29 @@ state schema. Совпадение `stateSchemaVersion` до и после об
|
|
|
22
22
|
нужна. Для alpha.6 при `stateSchemaVersion: 2` применяется не migration, а sidecar-only
|
|
23
23
|
adoption posture.
|
|
24
24
|
|
|
25
|
+
### beta.12.18: historical check-support scope adoption after Knowledge rebind
|
|
26
|
+
|
|
27
|
+
beta.12.18 closes a bounded post-rebind deadlock. A Task may already contain a valid beta.12.16
|
|
28
|
+
`continue-fix` decision that derived one exact check-support path, then refresh Knowledge and adopt
|
|
29
|
+
that path explicitly in a new Plan. The historical event must still be validated against its own
|
|
30
|
+
Plan hash; comparing it with the new Plan incorrectly reports `STATE_CORRUPT` precisely because the
|
|
31
|
+
new Plan now owns the path.
|
|
32
|
+
|
|
33
|
+
An external exact beta.12.18 runner recognizes only this exact shape: the Task awaits execution
|
|
34
|
+
authorization, no Step is running, one historical check-support decision binds the unchanged dirty
|
|
35
|
+
worktree, and one planned Step directly lists every derived support path in both `allowedWrites` and
|
|
36
|
+
`expectedOutputs`. Read-only `update plan-integrity-update-preflight` reports
|
|
37
|
+
`compatibilityMode=post-rebind-scope-adoption` only when all ordinary version, lease, transaction,
|
|
38
|
+
Core-operation, Git-head and dirty-byte guards also pass.
|
|
39
|
+
|
|
40
|
+
After `eligible=true`, use the same dependency-only base/Task transport described below. Fresh
|
|
41
|
+
repository-local Core registers it only through advertised
|
|
42
|
+
`update plan-integrity-dependency-recover`; Knowledge rebind and Risk Audit then follow fresh
|
|
43
|
+
`status -> next`. The adopted support path comes from the current Plan, not from implicit reuse of
|
|
44
|
+
the historical event. No Human approval is required for this exact machine-proved recovery. Any
|
|
45
|
+
additional path, dirty-byte drift, missing explicit Plan ownership, multiple matching events, active
|
|
46
|
+
lease or incoherent version surface remains blocked.
|
|
47
|
+
|
|
25
48
|
### beta.12.17: coherent beta.12 Plan-integrity update transport
|
|
26
49
|
|
|
27
50
|
`update plan-integrity-update-preflight` больше не связывает совместимый transport с одним
|
|
@@ -1,105 +1,103 @@
|
|
|
1
|
-
# V2 beta.12.
|
|
1
|
+
# V2 beta.12.18 Validation Report
|
|
2
2
|
|
|
3
|
-
Release candidate `2.0.0-beta.12.
|
|
3
|
+
Release candidate `2.0.0-beta.12.18` was validated on 2026-09-01 (Europe/Moscow) with
|
|
4
4
|
Node.js 24.17.0.
|
|
5
5
|
|
|
6
6
|
## Automated release evidence
|
|
7
7
|
|
|
8
8
|
- A clean `npm ci` completed from the exact lockfile and reported zero vulnerabilities.
|
|
9
|
-
- `npm run validate` passed typecheck and `
|
|
10
|
-
cancellations or todos in 2,
|
|
11
|
-
- `npm run test:signal-t10-check-support-e2e` passed `
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
9
|
+
- `npm run validate` passed typecheck and `354/354` sequential tests with no failures, skips,
|
|
10
|
+
cancellations or todos in 2,103,253.819 ms.
|
|
11
|
+
- `npm run test:signal-t10-check-support-e2e` passed `8/8` in 148,470.477 ms. The added case
|
|
12
|
+
reproduces a historical v3 check-support decision, Knowledge rebind, explicit support-path adoption
|
|
13
|
+
by the new Plan and successful fresh navigation without `STATE_CORRUPT`.
|
|
14
|
+
- `npm run test:signal-remediation-e2e` passed `2/2`.
|
|
15
|
+
- `npm run pack:check` produced the exact `2.0.0-beta.12.18` tarball. The first sandboxed attempt
|
|
16
|
+
could not write npm cache; the identical escalated invocation passed. This was an environment
|
|
17
|
+
boundary, not a package failure.
|
|
18
|
+
- `npm run smoke:downstream` installed the packed tarball into an empty project and returned
|
|
19
|
+
`ok=true`. The first sandboxed attempt could not resolve the npm registry; the identical network-
|
|
20
|
+
enabled invocation passed.
|
|
21
|
+
- `npm run plugin:check`, `npm run docs:pdf:check` and `npm run release:check` all passed. The three
|
|
22
|
+
Russian PDFs were regenerated for beta.12.18, reported no stale outputs and were visually inspected
|
|
23
|
+
on their title and changed contract pages.
|
|
24
|
+
|
|
25
|
+
## Live Signal evidence before publication
|
|
26
|
+
|
|
27
|
+
The live repository was observed read-only at:
|
|
24
28
|
|
|
25
29
|
- Task branch `codex/task-01m1b79c66-current-formalization-commit-and-provide`;
|
|
26
|
-
- HEAD `
|
|
27
|
-
- repository-local package `codex-workflow-v2@2.0.0-beta.12.
|
|
28
|
-
- Task `TASK-01M1B79C660YMNSRRZ236NTR1T`, revision
|
|
29
|
-
`
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
failed preflight.
|
|
42
|
-
|
|
43
|
-
The beta.12.17 runner was then built locally and invoked read-only against the same Signal state. It
|
|
44
|
-
returned:
|
|
30
|
+
- HEAD `a34314d2613865767ef9adb37e7c12b4a12cd5c2`;
|
|
31
|
+
- repository-local package `codex-workflow-v2@2.0.0-beta.12.17`, protocol/schema `2/2`;
|
|
32
|
+
- Task `TASK-01M1B79C660YMNSRRZ236NTR1T`, revision 24, status
|
|
33
|
+
`awaiting_execution_authorization`;
|
|
34
|
+
- current Plan hash `94fba18b423b795fc3b276166f9dec03a34fe3d0d2db73acf3c74dbf0e35f34b`;
|
|
35
|
+
- planned `STEP-002-CURRENT-COMMIT`, which directly owns the derived check-support path;
|
|
36
|
+
- exactly eight preserved STEP-002 product paths, with no support-module edit yet.
|
|
37
|
+
|
|
38
|
+
beta.12.17 rejected fresh navigation with `STATE_CORRUPT`. Its v3 validator compared the historical
|
|
39
|
+
check-support event against the current Plan. That event was valid under its recorded earlier Plan,
|
|
40
|
+
but the current Plan now explicitly owned the same support path, so the old validation predicate
|
|
41
|
+
became self-contradictory after the intended recovery sequence.
|
|
42
|
+
|
|
43
|
+
The locally built external beta.12.18 runner then executed read-only
|
|
44
|
+
`update plan-integrity-update-preflight` against the same state and returned:
|
|
45
45
|
|
|
46
46
|
- `eligible=true` and `action=update plan-integrity-transport`;
|
|
47
|
-
-
|
|
48
|
-
-
|
|
47
|
+
- `compatibilityMode=post-rebind-scope-adoption`;
|
|
48
|
+
- source `2.0.0-beta.12.17`, target `2.0.0-beta.12.18`;
|
|
49
|
+
- Task revision 24 and `STEP-002-CURRENT-COMMIT`;
|
|
49
50
|
- the same eight dirty paths;
|
|
50
|
-
- conflict hash `
|
|
51
|
+
- conflict hash `1bb6b0f7d1817024ff9c61a55ce3eda97169780265c3eea74f21643fcd9f487e`;
|
|
51
52
|
- zero blockers.
|
|
52
53
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
The
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
-
|
|
86
|
-
`continue-fix` decision with the derived support path; Plan hash and product bytes remain stable.
|
|
87
|
-
- Worker envelope, retry boundary, Core commit, downstream proof, corrective-replan guard and sealed
|
|
88
|
-
review packet use and disclose the same effective scope.
|
|
89
|
-
- Indirect/dynamic imports, unsupported syntax, forbidden paths, unrelated dirty files or absent
|
|
90
|
-
anchors remain fail-closed. Missing scripts and selector-required checks retain their ordinary
|
|
91
|
-
`replan-required` path.
|
|
54
|
+
No Signal product byte, Git reference or Workflow-state artifact was changed by this live preflight.
|
|
55
|
+
|
|
56
|
+
## Root cause corrected
|
|
57
|
+
|
|
58
|
+
The defect was not the original migration check-support analyzer. beta.12.16 had already proved the
|
|
59
|
+
missing imported support authority, and the new Plan correctly adopted that path. The remaining root
|
|
60
|
+
cause was temporal validation: immutable evidence from Plan A was reinterpreted using Plan B's scope.
|
|
61
|
+
Because Plan B intentionally fixed the scope omission, the validator classified the valid historical
|
|
62
|
+
event as corrupt.
|
|
63
|
+
|
|
64
|
+
beta.12.18 separates two authorities:
|
|
65
|
+
|
|
66
|
+
- historical event integrity is checked against the Plan hash recorded by that event and its own
|
|
67
|
+
immutable hashes, conflicts, dirty set and remediation chain;
|
|
68
|
+
- executable current scope comes only from the current Plan or a current-Plan event. Historical
|
|
69
|
+
evidence does not implicitly widen the new Step.
|
|
70
|
+
|
|
71
|
+
## Implemented beta.12.18 contract
|
|
72
|
+
|
|
73
|
+
- v3 check-support validation applies current Step scope predicates only when
|
|
74
|
+
`event.planHash === task.planHash`.
|
|
75
|
+
- A bounded post-rebind compatibility candidate exists only while the Task awaits execution
|
|
76
|
+
authorization, no Step is running and C1 posture is empty.
|
|
77
|
+
- Exactly one historical `continue-fix` check-support event must match the current unchanged dirty
|
|
78
|
+
worktree and a registered system commit.
|
|
79
|
+
- The current planned Step must explicitly list every historical `scopeExtension` in both
|
|
80
|
+
`allowedWrites` and `expectedOutputs`.
|
|
81
|
+
- Ordinary coherent-version, dependency-only commit, lease, transaction, Core-operation and dirty-
|
|
82
|
+
byte guards remain mandatory.
|
|
83
|
+
- The route is advertised as `historical-check-support-scope-adoption-v1` and reports
|
|
84
|
+
`compatibilityMode=post-rebind-scope-adoption`.
|
|
85
|
+
- Registration, Knowledge rebind, Plan Risk Audit and execution authorization remain separate fresh
|
|
86
|
+
Core-advertised transitions. The exact machine-proved recovery requires no Human approval.
|
|
92
87
|
|
|
93
88
|
## Boundaries and non-claims
|
|
94
89
|
|
|
95
|
-
- The patch does not
|
|
96
|
-
|
|
97
|
-
- It does not
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
90
|
+
- The patch does not accept an arbitrary new Plan, extra support path, changed dirty byte, multiple
|
|
91
|
+
matching event, active lease or divergent version surface.
|
|
92
|
+
- It does not mutate or rewrite the historical event and does not carry its scope into an unrelated
|
|
93
|
+
current Plan.
|
|
94
|
+
- It does not bypass dependency-only Git transport, repository-local installation, Knowledge rebind,
|
|
95
|
+
Plan Risk Audit, checks, Core commit or external sealed review.
|
|
96
|
+
- This report does not claim beta.12.18 commit/tag/push, npm publication, live installation into
|
|
97
|
+
Signal, STEP-002 commit/review, Task merge or Milestone completion until each operation receives its
|
|
98
|
+
own readback.
|
|
99
|
+
|
|
100
|
+
Confidence is high for the defect classification and compatibility preflight: the full `354/354`
|
|
101
|
+
gate, focused `8/8` Signal suite and read-only live Signal state agree. End-to-end confidence remains
|
|
102
|
+
conditional on publication, exact dependency-only transport into Signal, fresh Core routing, the real
|
|
103
|
+
approved checks and the user-authorized new sealed reviewer chat.
|
package/package.json
CHANGED