codex-workflow-v2 2.0.0-beta.12.13 → 2.0.0-beta.12.15
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 +4 -3
- package/dist/src/contracts.d.ts +6 -0
- package/dist/src/dependency-provenance.d.ts +5 -0
- package/dist/src/dependency-provenance.js +51 -26
- package/dist/src/dependency-provenance.js.map +1 -1
- package/dist/src/lifecycle/corrective-replan-binding-manifest.d.ts +5 -0
- package/dist/src/lifecycle/corrective-replan-binding-manifest.js +7 -0
- package/dist/src/lifecycle/corrective-replan-binding-manifest.js.map +1 -1
- package/dist/src/state/corrective-replan-transaction.js +12 -4
- package/dist/src/state/corrective-replan-transaction.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/workflow.js +42 -31
- 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 +14 -8
- package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +18 -11
- package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +24 -12
- package/docs/validation-report.md +96 -123
- 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.15
|
|
3
3
|
subtitle: Источники истины, lifecycle, роли, delegation, зависимости Tasks и границы доверия
|
|
4
4
|
part: Часть 1 из 3 | Архитектура
|
|
5
5
|
document_version: 2.0
|
|
6
6
|
date: 31 августа 2026
|
|
7
|
-
subject: Архитектура и границы Codex Workflow V2 beta.12.
|
|
7
|
+
subject: Архитектура и границы Codex Workflow V2 beta.12.15
|
|
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.15 гарантирует
|
|
22
22
|
|
|
23
23
|
- exact project-local npm package и совместимый handshake до lifecycle действий;
|
|
24
24
|
- Discovery до materialization Task или Milestone;
|
|
@@ -41,7 +41,7 @@ Codex Workflow V2 - локальный state machine поверх Codex App, Git
|
|
|
41
41
|
один additive remediation Task без нового Human gate; Core сохраняет Milestone semantics и выводит
|
|
42
42
|
authority из текущей Milestone authorization и exact audit evidence.
|
|
43
43
|
|
|
44
|
-
## 1.2. Что beta.12.
|
|
44
|
+
## 1.2. Что beta.12.15 не гарантирует
|
|
45
45
|
|
|
46
46
|
- правильность продуктовой идеи или автоматически выбранного provider Task;
|
|
47
47
|
- semantic sufficiency Plan, если точные факты нельзя доказать поддерживаемым analyzer;
|
|
@@ -323,13 +323,19 @@ manifest/runner hashes, HEAD и dirty allowlist. Exact beta.12.11 update bridge
|
|
|
323
323
|
Результат — один `replan-required` decision и обычный corrective replan с исполняемой check command;
|
|
324
324
|
повтор старой команды, ручной commit product files и state editing не допускаются.
|
|
325
325
|
|
|
326
|
-
beta.12.
|
|
326
|
+
beta.12.15 устраняет следующий доказанный разрыв этого пути. Corrective-replan credential раздельно
|
|
327
327
|
связывает исходную Knowledge revision/hash Task и целевую active Knowledge revision/hash replacement
|
|
328
328
|
Plan. Различие разрешено только при exact Plan-integrity dependency recovery: текущий system commit,
|
|
329
329
|
package version, failed Step, Plan, полная remediation history, dirty file set и их bytes должны
|
|
330
|
-
совпасть.
|
|
331
|
-
|
|
330
|
+
совпасть. Один или несколько последовательных dependency-only updates после corrective yield могут
|
|
331
|
+
перенести ту же compatibility на новый HEAD: Core идёт назад до последнего зарегистрированного system
|
|
332
|
+
commit, проверяет каждый промежуточный commit как exact manifest/lock-only Workflow pin update и
|
|
333
|
+
атомарно регистрирует всю цепочку. Любой product diff, разрыв parent chain или изменённый worktree
|
|
334
|
+
fail-closed. Completed corrective-yield journal
|
|
332
335
|
остаётся историческим prefix-доказательством и не блокирует последующие append-only handoff events.
|
|
336
|
+
Completed corrective-replan journal также остаётся читаемым после эволюции binding manifest, но только
|
|
337
|
+
если его завершённый manifest/runtime/catalog tuple есть в append-only historical registry. Pending и
|
|
338
|
+
неизвестные identity по-прежнему fail-closed, поэтому compatibility не выдаёт новую authority.
|
|
333
339
|
|
|
334
340
|
Docker socket `EPERM` в sandbox не является доказательством сломанного daemon. Gateway один раз
|
|
335
341
|
повторяет exact health probe или Plan check с sandbox escalation без расходования remediation attempt.
|
|
@@ -340,7 +346,7 @@ Restart Docker Desktop требует отдельного разрешения
|
|
|
340
346
|
# 10. Operational checklist
|
|
341
347
|
|
|
342
348
|
- exact package version установлен, bundled gateway соответствует release и переустановлен;
|
|
343
|
-
- handshake подтверждает protocol 2, state schema 2 и beta.12.
|
|
349
|
+
- handshake подтверждает protocol 2, state schema 2 и beta.12.15 capabilities;
|
|
344
350
|
- каждый mutation следует свежему `status -> next` и exact option contract;
|
|
345
351
|
- Docker permission failure сначала классифицируется как sandbox boundary, а не как infra retry;
|
|
346
352
|
- 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.15 путь от нового Discovery до принятого Milestone без ручного CLI
|
|
4
4
|
part: Часть 2 из 3 | Практика
|
|
5
5
|
document_version: 2.0
|
|
6
6
|
date: 31 августа 2026
|
|
7
|
-
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.
|
|
7
|
+
subject: Практическое руководство по delegated Discovery и Milestone в Workflow V2 beta.12.15
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
# 1. Рабочая модель beta.12.
|
|
10
|
+
# 1. Рабочая модель beta.12.15
|
|
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.15 как точную 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.15 должен сообщать `packageVersion=2.0.0-beta.12.15`, `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.15 в delegated режиме.
|
|
121
121
|
Repository: <ABSOLUTE-REPOSITORY-ROOT>.
|
|
122
122
|
Milestone ID: AUTO.
|
|
123
123
|
Delegate actor: agent:milestone-coordinator.
|
|
@@ -360,10 +360,17 @@ Knowledge refresh. Затем выполните advertised credential recovery,
|
|
|
360
360
|
`task corrective-yield`. Replacement Plan меняет только неисполняемую check на
|
|
361
361
|
`npm run validate:affected -- --files=<Step allowedWrites>` и проходит fresh Plan Risk Audit до нового run.
|
|
362
362
|
|
|
363
|
-
Если update произошёл уже после `task corrective-yield`, beta.12.
|
|
364
|
-
`update plan-integrity-dependency-recover
|
|
365
|
-
|
|
366
|
-
|
|
363
|
+
Если update произошёл уже после `task corrective-yield`, beta.12.15 допускает только advertised
|
|
364
|
+
`update plan-integrity-dependency-recover`. Между последним зарегистрированным recovery commit и HEAD
|
|
365
|
+
может быть один или несколько пропущенных package updates, но каждый обязан менять ровно
|
|
366
|
+
`package.json`/`package-lock.json`, только exact Workflow pin и образовывать непрерывную parent chain.
|
|
367
|
+
Core атомарно регистрирует всю доказанную цепочку; failed Step, Plan, remediation IDs, dirty paths и
|
|
368
|
+
dirty SHA-256 должны полностью совпадать. После recovery снова запросите `status -> next`; ожидаемый
|
|
369
|
+
route остаётся `task corrective-replan-prepare`.
|
|
370
|
+
Если новый package сначала сообщает `TASK_TRANSACTION_INTEGRITY_FAILED` только для terminal
|
|
371
|
+
corrective-replan journals предыдущего release, не repair/delete/edit state. beta.12.15 читает лишь
|
|
372
|
+
точно зарегистрированные completed manifest/runtime/catalog tuples; pending либо неизвестный tuple
|
|
373
|
+
остаётся блокером. После установки обязательно повторите handshake и последовательные `status -> next`.
|
|
367
374
|
|
|
368
375
|
Для exact beta.12.6 stranded-replan shape сначала нужен eligible read-only source preflight с exact
|
|
369
376
|
revision/HEAD/dirty hash. Затем два beta.12.7 dependency-only commits и advertised dependency/replan
|
|
@@ -397,7 +404,7 @@ Task/project DGR. `dependencyBinding` для standalone handoff равен null.
|
|
|
397
404
|
|
|
398
405
|
# 14. Итоговый checklist пользователя
|
|
399
406
|
|
|
400
|
-
- beta.12.
|
|
407
|
+
- beta.12.15 exact package и новый bundled gateway установлены;
|
|
401
408
|
- новый Coordinator chat не является fork старого Milestone;
|
|
402
409
|
- bootstrap DGR, если нужен, выдан отдельным exact human confirmation;
|
|
403
410
|
- Discovery не materialized при blocking unknowns;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Codex Workflow V2: технический справочник beta.12.
|
|
2
|
+
title: Codex Workflow V2: технический справочник beta.12.15
|
|
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: 31 августа 2026
|
|
7
|
-
subject: Технический контракт Codex Workflow V2 beta.12.
|
|
7
|
+
subject: Технический контракт Codex Workflow V2 beta.12.15
|
|
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.15 | Значение |
|
|
17
17
|
|---|---|
|
|
18
|
-
| npm package | `codex-workflow-v2@2.0.0-beta.12.
|
|
18
|
+
| npm package | `codex-workflow-v2@2.0.0-beta.12.15` |
|
|
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.15 capabilities:
|
|
41
41
|
|
|
42
42
|
| Группа | Capabilities |
|
|
43
43
|
|---|---|
|
|
@@ -468,7 +468,7 @@ corrective-derived reconcile/approval; прочий drift fail-closed. Product b
|
|
|
468
468
|
переносятся. Fresh route продолжается через credential replacement, `plan-integrity-recover`, yield и
|
|
469
469
|
corrective replan с selector-bearing check.
|
|
470
470
|
|
|
471
|
-
# 13.6. beta.12.
|
|
471
|
+
# 13.6. beta.12.15 source/target Knowledge binding
|
|
472
472
|
|
|
473
473
|
Corrective-replan receipt теперь включает две разные пары. `knowledgeRevision/knowledgeHash` связывает
|
|
474
474
|
исходное состояние Task; `targetKnowledgeRevision/targetKnowledgeHash` связывает active Project
|
|
@@ -477,15 +477,25 @@ Knowledge Map и replacement Plan. Executor проверяет source под Tas
|
|
|
477
477
|
|
|
478
478
|
Source и target могут различаться только при exact `dependencyProvenanceRecoveries.planIntegrity` для
|
|
479
479
|
текущего HEAD и package version. Record обязан совпасть по Plan, failed Step, всей remediation event ID
|
|
480
|
-
последовательности, dirty paths и повторно вычисленному dirty SHA-256.
|
|
481
|
-
|
|
482
|
-
|
|
480
|
+
последовательности, dirty paths и повторно вычисленному dirty SHA-256. После corrective yield Core может
|
|
481
|
+
восстановить один или несколько ещё не зарегистрированных package updates: он просматривает trailing
|
|
482
|
+
Git suffix от HEAD до последнего зарегистрированного system commit, проверяет каждый элемент как
|
|
483
|
+
непрерывный manifest/lock-only exact Workflow pin update и одной Core mutation добавляет каждый commit
|
|
484
|
+
и его фактическую package version в provenance history. Любое изменение product bytes, разрыв ancestry,
|
|
485
|
+
Step status, Plan, decision или C1 posture отключает route.
|
|
483
486
|
|
|
484
487
|
Completed corrective-yield transaction проверяет неизменный canonical yield event как prefix текущей
|
|
485
488
|
append-only handoff history. Это сохраняет tamper detection, но разрешает новый handoff после успешного
|
|
486
489
|
corrective replan. E2E release gate проходит prepare/confirm/execute, authorization, handoff/claim,
|
|
487
490
|
selector-bearing Step completion commit и strict Step review.
|
|
488
491
|
|
|
492
|
+
Completed corrective-replan transaction сохраняет authority identity своего release. Текущий manifest
|
|
493
|
+
обязателен для любой pending/in-flight transaction; completed journal может использовать только exact
|
|
494
|
+
tuple из append-only registry: manifest SHA-256, runtime fingerprint и catalog hash. Неизвестный tuple,
|
|
495
|
+
legacy tuple у незавершённой transaction, повреждённый intent/phase chain или owned target остаётся
|
|
496
|
+
`journal-invalid`. Это позволяет читать terminal beta.12.12 history после расширения binding manifest,
|
|
497
|
+
не превращая legacy identity в новую execution authority.
|
|
498
|
+
|
|
489
499
|
# 14. P04-A structural replacement boundary
|
|
490
500
|
|
|
491
501
|
Command shape `task replacement-materialize` retained только для compatibility diagnostics. Любая попытка
|
|
@@ -548,7 +558,7 @@ Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied`
|
|
|
548
558
|
После каждой successful mutation обязателен sequential `status`, затем fresh `next`. Failed status/next
|
|
549
559
|
не разрешает direct mutation. Syntax help read-only и не заменяет navigation authority.
|
|
550
560
|
|
|
551
|
-
# 18. Public command surface beta.12.
|
|
561
|
+
# 18. Public command surface beta.12.15
|
|
552
562
|
|
|
553
563
|
| Область | Actions |
|
|
554
564
|
|---|---|
|
|
@@ -569,15 +579,17 @@ Docker socket/CLI `EPERM`, `operation not permitted` или `permission denied`
|
|
|
569
579
|
Exact options берутся из fresh `next`; command help используется только когда
|
|
570
580
|
`exactOptionContractAvailable=false` или syntax действительно неизвестен.
|
|
571
581
|
|
|
582
|
+
<!-- pagebreak -->
|
|
583
|
+
|
|
572
584
|
# 19. Release и package update gates
|
|
573
585
|
|
|
574
586
|
Перед package update project-local `update preflight` должен вернуть `safe=true`: clean checkout, нет
|
|
575
587
|
running Step и active/stale writer lease. Исключения — документированный alpha.7 rescue, beta.12.6
|
|
576
588
|
active-downstream-proof bridge, beta.12.7 exact stranded-replan bridge, beta.12.9 historical-Step
|
|
577
|
-
dependency bridge и beta.12.
|
|
589
|
+
dependency bridge и beta.12.15 Plan-integrity bridge; все они fail-closed и не дают общего разрешения
|
|
578
590
|
dirty update.
|
|
579
591
|
|
|
580
|
-
Перед beta.12.
|
|
592
|
+
Перед beta.12.15 tag обязательны `npm ci`, `npm run validate`, `npm run test:signal-remediation-e2e`, `npm run pack:check`,
|
|
581
593
|
`npm run smoke:downstream`, `npm run plugin:check`, official plugin/skill validators,
|
|
582
594
|
`npm run docs:pdf:check`, `npm run release:check` с exact tag binding и validation
|
|
583
595
|
append-only real-agent lifecycle log.
|
|
@@ -1,134 +1,107 @@
|
|
|
1
|
-
# V2 beta.12.
|
|
1
|
+
# V2 beta.12.15 Validation Report
|
|
2
2
|
|
|
3
|
-
Release candidate `2.0.0-beta.12.
|
|
3
|
+
Release candidate `2.0.0-beta.12.15` was validated on 2026-08-31 (Europe/Moscow) with
|
|
4
4
|
Node.js 24.17.0.
|
|
5
5
|
|
|
6
6
|
## Automated release evidence
|
|
7
7
|
|
|
8
|
-
- `npm ci` completed from the exact lockfile
|
|
9
|
-
- The first full `npm run validate` passed
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
8
|
+
- A clean `npm ci` completed from the exact lockfile and reported zero vulnerabilities.
|
|
9
|
+
- The first full `npm run validate` run passed every behavioral assertion except two diagnostics
|
|
10
|
+
whose text still described the superseded one-commit boundary. The messages were corrected without
|
|
11
|
+
changing transition behavior. The second full run passed typecheck and `349/349` sequential tests
|
|
12
|
+
with no failures, skips, cancellations or todos in 2,169,018.255 ms.
|
|
13
|
+
- The focused dependency-provenance suite passed `11/11`. It covers a two-commit unregistered
|
|
14
|
+
dependency suffix, exact oldest-to-newest recovery, per-commit package-version provenance and
|
|
15
|
+
fail-closed product/payload/ancestry drift.
|
|
16
|
+
- `npm run test:signal-t04-recovery` passed `11/11`; `npm run
|
|
17
|
+
test:signal-t03-replan-e2e` passed `1/1`; and `npm run test:signal-remediation-e2e` passed `2/2`.
|
|
18
|
+
- Package dry-run passed with 281 files (approximately 1.1 MB packed and 4.3 MB unpacked).
|
|
19
|
+
- Disposable downstream installation returned `ok=true` for the exact beta.12.15 tarball. The first
|
|
20
|
+
sandboxed run failed only because registry DNS was unavailable; the exact network-enabled retry
|
|
21
|
+
passed.
|
|
22
|
+
- `npm run plugin:check` and `npm run docs:pdf:check` passed. PDF freshness reported an empty stale
|
|
23
|
+
set and exact beta.12.15 package binding.
|
|
24
|
+
|
|
25
|
+
## Live Signal reproduction
|
|
26
|
+
|
|
27
|
+
Signal Task `TASK-01M1B79C660YMNSRRZ236NTR1T` is blocked after a completed corrective yield. Its
|
|
28
|
+
three allowlisted STEP-001 product files remain uncommitted and unchanged. The repository contains
|
|
29
|
+
two consecutive Workflow dependency-only commits that Core could not register:
|
|
30
|
+
|
|
31
|
+
- beta.12.13: `51e5e61b39ff9a234dcc9ccb80d81da710570f55`;
|
|
32
|
+
- beta.12.14: `96c3bd22e818873c1de59cd42b466efde0947d23`.
|
|
33
|
+
|
|
34
|
+
Fresh beta.12.14 observation is otherwise coherent: no pending or corrupt transactions and no active
|
|
35
|
+
leases. Nevertheless, `next` advertised dependency recovery while its preflight rejected the route
|
|
36
|
+
because it expected the current update commit's parent to be an already registered system commit.
|
|
37
|
+
The beta.12.13 parent could not be registered earlier because the beta.12.13 transaction-observation
|
|
38
|
+
defect prevented all workflow commands before beta.12.14 was installed.
|
|
39
|
+
|
|
40
|
+
The beta.12.15 implementation was built locally and run read-only against this exact Signal state.
|
|
41
|
+
Preflight returned `eligible=true`, action `update plan-integrity-dependency-recover`, and the exact
|
|
42
|
+
two-commit chain above in oldest-to-newest order. No Signal state, journal, sidecar, Git history or
|
|
43
|
+
product file was modified by this reproduction.
|
|
36
44
|
|
|
37
45
|
## Root cause corrected
|
|
38
46
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
and in-flight phases retain exact-byte equality. Truncation, prefix mutation, or malformed appended
|
|
80
|
-
history still fails closed.
|
|
81
|
-
- Protocol and state schema remain `2/2`; no lifecycle-state migration is required.
|
|
82
|
-
|
|
83
|
-
## Signal-shaped and negative evidence
|
|
84
|
-
|
|
85
|
-
The new synthetic E2E reproduces the live boundary instead of testing a helper in isolation:
|
|
86
|
-
|
|
87
|
-
- an active failed guarded Step with repeated selector-contract failures and three allowlisted dirty
|
|
88
|
-
product files;
|
|
89
|
-
- an existing beta.12.12 Plan-integrity recovery and `replan-required` decision;
|
|
90
|
-
- a subsequent exact package-only beta.12.13 update while the Task source Knowledge remains older
|
|
91
|
-
than the active Project Knowledge Map;
|
|
92
|
-
- reconstruction of exact compatibility from `HEAD^` without modifying product bytes;
|
|
93
|
-
- corrective replan whose source binding remains old and whose candidate target binding is current;
|
|
94
|
-
- new execution authorization and C1 cycle;
|
|
95
|
-
- the selector-bearing `validate:affected -- --files=...` check;
|
|
96
|
-
- successful Step completion through a Workflow-owned Core commit and strict Step review.
|
|
97
|
-
|
|
98
|
-
Negative coverage rejects changed dirty bytes, wider dirty scope, the wrong parent/system commit,
|
|
99
|
-
stale Plan or Step, incomplete remediation history, a non-`replan-required` decision, active C1,
|
|
100
|
-
unregistered Knowledge drift, truncated historical handoff bytes, mutated historical bytes, and
|
|
101
|
-
malformed appended handoff history.
|
|
102
|
-
|
|
103
|
-
Live Signal mutation remains post-publication work. Installation must preserve the three current
|
|
104
|
-
Worker files, transport only package/lock through the advertised update compatibility route, use a
|
|
105
|
-
fresh repository-local handshake/status/next before each mutation, and follow only Core-advertised
|
|
106
|
-
actions. No manual Workflow-state edit, history rewrite, Task cancellation, duplicate Task, or
|
|
107
|
-
replacement Milestone is authorized by this release.
|
|
47
|
+
The beta.12.14 carried-compatibility and dependency-recovery logic assumed a single unregistered
|
|
48
|
+
Workflow update at `HEAD`, with an already registered parent at `HEAD^`. That assumption is false
|
|
49
|
+
when an earlier release was installable but its recovery route was unreachable because observation
|
|
50
|
+
itself failed. Installing the observer fix then creates a bounded consecutive suffix of two
|
|
51
|
+
unregistered dependency-only commits.
|
|
52
|
+
|
|
53
|
+
The resulting blocker was not invalid Signal product work, a stale lease or corrupt Core state. It
|
|
54
|
+
was an incomplete dependency-provenance boundary: navigation advertised a route that the route's own
|
|
55
|
+
single-hop preflight could never accept.
|
|
56
|
+
|
|
57
|
+
## Implemented compatibility contract
|
|
58
|
+
|
|
59
|
+
- Preflight discovers the complete trailing unregistered suffix after the exact recorded Task
|
|
60
|
+
history instead of assuming one commit.
|
|
61
|
+
- Every suffix element must form an uninterrupted parent chain and change exactly `package.json` and
|
|
62
|
+
`package-lock.json`, only as an exact `codex-workflow-v2` pin update. Product bytes, additional
|
|
63
|
+
dependency changes, merge ancestry and unexplained commits remain blockers.
|
|
64
|
+
- The terminal suffix commit must match the declared, locked and installed package version.
|
|
65
|
+
- Carried Plan-integrity compatibility is derived by walking through the bounded suffix to the last
|
|
66
|
+
registered system commit. The original recovery, failed Step, Plan, remediation history, dirty
|
|
67
|
+
allowlist, dirty SHA-256, C1 posture and completed corrective-yield history must still match.
|
|
68
|
+
- Recovery atomically registers the entire chain in `systemCommits` and appends one provenance record
|
|
69
|
+
per commit using that commit's actual package version. Partial registration is not permitted.
|
|
70
|
+
- A failed atomic recovery leaves all Core state unchanged. No product file, Plan, Step, lease,
|
|
71
|
+
review or Git history is edited by this route.
|
|
72
|
+
- Protocol and state schema remain `2/2`; no migration or manual state repair is required.
|
|
73
|
+
|
|
74
|
+
## Existing beta.12.14 contract retained
|
|
75
|
+
|
|
76
|
+
- Current binding manifests remain mandatory for pending and in-flight corrective-replan
|
|
77
|
+
transactions.
|
|
78
|
+
- Historical manifest/runtime/catalog identities are accepted only for exact registered completed
|
|
79
|
+
journals and cannot create new authority.
|
|
80
|
+
- Corrective-replan credentials still separate source Task Knowledge from target replacement-Plan
|
|
81
|
+
Knowledge.
|
|
82
|
+
- Completed corrective-yield journals still require their canonical event bytes to be an exact prefix
|
|
83
|
+
of the append-only handoff history.
|
|
84
|
+
- After dependency recovery, the blocked Task must still pass normal corrective-replan preparation,
|
|
85
|
+
confirmation, execution, fresh authorization/C1, selector-bearing checks, Core-owned Step commit and
|
|
86
|
+
strict external review.
|
|
108
87
|
|
|
109
88
|
## PDF release documentation evidence
|
|
110
89
|
|
|
111
|
-
- All three tracked Russian PDFs were regenerated from beta.12.
|
|
112
|
-
- Architecture
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
-
|
|
121
|
-
|
|
122
|
-
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
Confidence is high for source/target Knowledge separation, consecutive-update compatibility,
|
|
131
|
-
append-only yield continuity, Core authority closure, transaction recovery, package composition,
|
|
132
|
-
downstream installation, gateway validation and documentation. Live Signal confidence remains
|
|
133
|
-
conditional on exact publication, installation, fresh Core readback, and completion of the blocked
|
|
134
|
-
Step through the advertised route.
|
|
90
|
+
- All three tracked Russian PDFs were regenerated from beta.12.15 sources.
|
|
91
|
+
- Architecture is 9 pages, delegated chat-only guide is 10 pages, and technical reference is 14
|
|
92
|
+
pages. All 33 rendered pages were visually inspected; no clipping, overlap or unreadable content
|
|
93
|
+
was observed.
|
|
94
|
+
|
|
95
|
+
## Boundaries and non-claims
|
|
96
|
+
|
|
97
|
+
- The suffix scan is not generic history adoption. Only the contiguous, exact Workflow-pin-only
|
|
98
|
+
prefix between registered Task history and current HEAD is eligible.
|
|
99
|
+
- The patch does not weaken dirty-worktree boundaries, Plan identity, remediation evidence, C1
|
|
100
|
+
authority, checks or review gates.
|
|
101
|
+
- This report does not claim commit/tag/push, npm publication, live beta.12.15 installation,
|
|
102
|
+
dependency recovery or STEP-001 completion before each operation receives its own readback.
|
|
103
|
+
|
|
104
|
+
Confidence is high for consecutive dependency-provenance recovery because the focused tests, full
|
|
105
|
+
349-test gate and read-only real Signal reproduction agree. End-to-end confidence remains conditional
|
|
106
|
+
on publication, exact Signal installation, fresh repository-local `status -> next`, and completion of
|
|
107
|
+
the blocked STEP-001 through Core-advertised routes.
|
package/package.json
CHANGED