diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md index 6d871ac..9f9e10f 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md @@ -1,6 +1,6 @@ -# P28-02-OPT 仕様(r03。原本の加算は whole-unit final の後だけ) +# P28-02-OPT 仕様(r04。原本の加算は whole-unit final の後だけ) -- 状態: 登録のための固定版です(候補 r01 と r02 を Root の照合で直したもの。r01・r02 は Root 制御フォルダの `opt-registration-proposal-r01/`・`-r02/` にそのまま保持)。`docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md` として main に固定し、その実 SHA を base にして、Root が通常の新規登録をします。§3 の決定 D1(案 B)を含みます。 +- 状態: 登録のための固定版です(r04。候補 r01〜r03 と r04 の候補は Root 制御フォルダの `opt-registration-proposal-r01/`〜`-r04/` にそのまま保持)。`docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md` として main に固定し、その実 SHA を base にして、Root が新しい継続登録(project `the-tree-p28-02-opt-r04`、task `P28-02-OPT-R04`)をします(Root の決定: 案 1。既存のユーザーの「対象受入に必要な不具合を優先」の範囲、Opus への実装の委任、main の更新の許可を適用した Root の実装判断で、新たな人間の発言を主張する承認ではありません)。r03 で登録した `the-tree-p28-02-opt` の task `P28-02-OPT` は、repair_pending と失敗の履歴のまま残します。r03(main `a916841` に固定、SHA `6441437c…`)で登録した task P28-02-OPT の S `f651ce1` は、正式の validation で失敗しました(`opt/verify_opt.py` の after の既存の不具合が R・O で各1件: E3/load_from_path/out_of_range の K に、移行の試行の save の標本が残った。§3 (iii))。r04 は、その原因の箇所だけを §2・§3・§4・§7 に限定して足し、固定表を before の記録だけから導き直したものです。§3 の決定 D1(案 B)は、失敗した load の移行の試行の save の標本まで同じ扱いに広げます。全ての E の合格、固定表との完全一致、後の版の既存の不具合 0 件、§5 の3指標の規則、全 roster(192 suite)、独立レビュー、原本の 30/88 の分母は変えません。 - 前提: - P28-02-DIAG は正式に完了しています(Q `fdb309f3bc81529135915429d2432a6644696311`、`execution/p28-02/DIAG_FORMAL_COMPLETION_FDB309F.json`)。T1 の選定の根拠です。 - P28-02-EQ は正式に完了しています(S `9adbbee334548ac36cd49d68efc021abb7acd003`、Q `4e34e5209706e3e16a4860e65e52b90287722c36`、`execution/p28-02/EQ_FORMAL_COMPLETION_4E34E52.json`)。凍結した EQ(`execution/p28-02/eq/**`)が、この task の同等性の比較器です。 @@ -24,7 +24,7 @@ |---|---|---| | `autoload/simulation_runtime.gd` | `create_snapshot`、`_publish_snapshot`、`latest_snapshot` と `latest_digest`(宣言と getter、`:148-156`) | T1 と E5 の所有権 | | 同上 | `_restore_snapshot_internal` のうち `domain_events` を検証する文(`restored_domain_events`、`:788-790`)と確定する文(`:1346`)だけ | E4(§3) | -| 同上 | `load_from_path` の pause の扱い(`:4225-4226`)と、`_finish_load_operation` の失敗の分岐のうち `operation == &"load"` の pause の復元と、同じ失敗の分岐の `_record_runtime_performance(&"load", …)`(記録しない。決定 D1) | E3(§3) | +| 同上 | `load_from_path` の pause の扱い(`:4225-4226`)と、`load_from_path` の移行の試行の `_record_runtime_performance(&"save", …)`(`:4235`。移行の時間を変数に保持し、受け入れた load だけ `_finish_load_operation` の後に記録する。決定 D1、r04)と、`_finish_load_operation` の失敗の分岐のうち `operation == &"load"` の pause の復元と、同じ失敗の分岐の `_record_runtime_performance(&"load", …)`(記録しない。決定 D1) | E3(§3) | | `scripts/world/path_service.gd` | `create_snapshot` だけ | T1 | | `scripts/core/command_queue.gd` | `create_snapshot` だけ | T1 | | `scripts/world/world_service.gd` | `create_snapshot` と `_create_geometry_snapshot` だけ | T1 | @@ -43,11 +43,12 @@ before の記録(EQ の S_eq native `native-9adbbee-r01`。R-A と O-A の sto |---|---|---|---| | E5 outside_in の aliasing | 27、29、31、33、35、37(latest_snapshot / snapshot_published / state_updated × dict / array。defect: external_mutation_latest、cached_digest_aliasing、computed_latest_digest_changed) | `_publish_snapshot`(`simulation_runtime.gd:12616-12621`)が同じ dict を `latest_snapshot` と2つの signal に渡し、`latest_digest` を遅延で計算する(`:151-156`) | T1 の対象の箇所そのもの。OPT で直す | | E4 restore/load の event stream の差し替え | 20 `E4/restore_snapshot`、21 `E4/load_from_path`(defect: event_stream_replaced_subscribers_not_carried) | `_restore_snapshot_internal` が新しい `DomainEventStream` で置き換え、購読を引き継がない(`:788`、`:1346`) | 最小の原因の修正: 検証は従来どおり一時のインスタンスで行い、確定の時に、今の `domain_events` のインスタンスへ同じ内容を `restore_snapshot` で入れる(`DomainEventStream.restore_snapshot` は購読に触れない)。確定の前に、今のインスタンスで restore が失敗しない条件(配送中でない、保留の配送が無い)を確かめ、原子性を保つ | -| E3 load の失敗で K が変わる | R: 12〜17、O: 12〜15、17(E3/load_from_path の各入力。defect: K_changes。O の 16 は NA) | (i) `load_from_path` が既に paused でも `_clock.set_paused(true)` を呼び(`:4226`)、失敗の分岐が `_clock.set_paused(previous_paused)` で同じ値に戻す(`_finish_load_operation`)ので、kernel の `_pause_request_serial` が失敗ごとに +2 される(kernel 側は `simulation_kernel.gd:172-178`)。(ii) 同じ失敗の分岐が `_record_runtime_performance(&"load", …)` で `performance_budget` に標本を1つ足す(`_sample_counts.load` +1、`_samples`・`_totals` の load) | 最小の原因の修正: `load_from_path` の失敗の経路でだけ、(i) kernel の `paused` と `_pause_request_serial` を load の前の値に戻し、(ii) その失敗の試行の performance telemetry を記録しない(決定 D1)。成功の経路(`set_paused(true)` とその serial の +1、成功した load の状態・event・telemetry)と、他の load 系の操作は変えない。kernel のファイルは変えない | +| E3 load の失敗で K が変わる | R: 12〜17、O: 12〜15、17(E3/load_from_path の各入力。defect: K_changes。O の 16 は NA) | (i) `load_from_path` が既に paused でも `_clock.set_paused(true)` を呼び(`:4226`)、失敗の分岐が `_clock.set_paused(previous_paused)` で同じ値に戻す(`_finish_load_operation`)ので、kernel の `_pause_request_serial` が失敗ごとに +2 される(kernel 側は `simulation_kernel.gd:172-178`)。(ii) 同じ失敗の分岐が `_record_runtime_performance(&"load", …)` で `performance_budget` に標本を1つ足す(`_sample_counts.load` +1、`_samples`・`_totals` の load)。(iii) out_of_range の入力では、`load_from_path` が UNSUPPORTED_FORMAT を受けて自動の移行を試み(`:4228-4242`。移行は `MIGRATION_DOWNGRADE_UNSUPPORTED` で失敗し、ファイルは書かない)、移行の結果にかかわらず `_record_runtime_performance(&"save", …)`(`:4235`)で save の標本を1つ足す(`_sample_counts.save` +1、`_samples`・`_totals` の save。R・O とも scenario 14) | 最小の原因の修正: `load_from_path` の失敗の経路でだけ、(i) kernel の `paused` と `_pause_request_serial` を load の前の値に戻し、(ii) その失敗の試行の performance telemetry(load の標本と、(iii) 移行を試みた場合の save の標本)を記録しない(決定 D1)。成功の経路(`set_paused(true)` とその serial の +1、成功した load の状態・event・telemetry)と、他の load 系の操作は変えない。移行を伴って受け入れた load の save の標本は保つ(記録の位置が `_finish_load_operation` の後になる。指標ごとの値は同じ)。kernel のファイルは変えない | - 決定 D1(案 B): Root が、既存のユーザーの「対象受入に必要な不具合を優先」の範囲、Opus への実装の委任、main の更新の許可を適用した実装判断です(新たな人間の発言を主張する承認ではありません)。 - - before の E3 の K_changes は (i) と (ii) の2つからなり、凍結した EQ の E3 の判定は、拒否の前後の K の層の全体(telemetry を含む全ての欄の bytes)を比べます。(i) だけでは後の版の「全ての E の合格」(OPT_CONTRACT_T1 §3)に届かないので、(ii) も同じ失敗の経路でだけ止めます。 - - 凍結 E3 の基準(失敗の前後で S/K/C が不変)は変えません。止めるのは、`load_from_path` の失敗の分岐の performance telemetry の記録だけです。成功した load と他の操作の telemetry は維持します。E3 の K から telemetry を除くという基準の除外(案 A)は採用しません。 + - before の E3 の K_changes は (i) と (ii)、out_of_range ではさらに (iii) からなり、凍結した EQ の E3 の判定は、拒否の前後の K の層の全体(telemetry を含む全ての欄の bytes)を比べます。(i) だけでは後の版の「全ての E の合格」(OPT_CONTRACT_T1 §3)に届かないので、(ii) と (iii) も同じ失敗の経路でだけ止めます。 + - 凍結 E3 の基準(失敗の前後で S/K/C が不変)は変えません。止めるのは、`load_from_path` の失敗した試行の performance telemetry の記録(load の標本と、移行の試行の save の標本)だけです。成功した load(移行を伴う場合の save の標本を含む)と他の操作(`migrate_save_path` を含む)の telemetry は維持します。E3 の K から telemetry を除くという基準の除外(案 A)は採用しません。失敗の標本を除外して通すことはしません。 + - r04 の補正の経緯: r03 の §3・D1・固定表は (iii) を見落としていました(r02 の表の導出が、失敗した load の K の変化のうち load の標本だけを確かめていたため)。S `f651ce1` の正式の validation で見つかりました(Root 制御フォルダの `FORMAL_VALIDATE_F651CE1_SUMMARY.json`、`OPT_F651CE1_E3_MIGRATION_TELEMETRY_FINDING.json`、`opt-registration-proposal-r04/OUT_OF_RANGE_ACTUAL_VALUES.json`)。 - 失敗の記録と通知は残します: `_complete_save_operation` による SAVE_LOAD_FAILED の event、`latest_save_operation_result`、`save_operation_completed` の signal、戻り値と payload の `duration_us`・`runtime_duration_us`・`message`・`save_path`。凍結 E3 は、この event の形、payload と `latest_save_operation_result` の一致、戻り値と payload の一致、`preload_pause_restored` と `loaded_clock_paused` を検査します。 - 修正は、その不具合の原因だけを変えます。他の挙動(公開の順序と回数、event の ID と counter と全欄、成功した restore/load の状態)は、§4 の固定表の外で前の版と一致しなければなりません。 @@ -55,12 +56,12 @@ before の記録(EQ の S_eq native `native-9adbbee-r01`。R-A と O-A の sto - 後の版の EQ の記録は、OPT の提出 S で、凍結した `eq/run_eq.py --run <共通> --opt-changed <実際に変更した OPT ファイル>… --output …/eq-after--r01` で取ります(7 phase、version after、measured_source `S_opt-native-not-Q`)。その束は、凍結した `eq/verify_eq.py`(native-verify と同じ規則)で検証します。R-A と R-B、O-A と O-B の差 0(決定性)と、before と同じ全範囲(各 39 シナリオ)が必要です。 - 版の間の比較は、凍結した `verify_eq.compare_bundles(before, after)` の結果の全体を使います(その `ok` は差が1件でもあれば false。EQ の設計どおり)。 -- **許容する差は、before の記録だけから事前に導いて固定した表 `opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json`(SHA `3bd40d64dfacfa1cd81a130e67b278673b4621b9f5face8e71d63042faf2403d`、role ごとに 196 行)だけです。** 表は `derive_opt_allowed_differences.py`(Root 制御フォルダ、SHA `fe35d945…`)が、before の bundle(`4c54b665…`)の R-A/O-A の joined report・stored checker と、正式の native-verify の比較の結果(digest の方式)から作った r02 の表(`6b057c18…`)に、決定 D1 の行を同じ集合として含めたものです。後の版の観測は使っていません。 +- **許容する差は、before の記録だけから事前に導いて固定した表 `opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json`(SHA `a763f0110284326afa5f9001a72261dcd1b9c729c5dd97f9cd82598b841ac9de`、role ごとに 196 行)だけです。** 表は `opt-registration-proposal-r04/derive_opt_allowed_differences_r04.py`(Root 制御フォルダ、SHA `3f569d94…`)が、before の bundle(`4c54b665…`)の R-A/O-A の joined report・stored checker と、正式の native-verify の比較の結果(digest の方式)から導いたものです。失敗した load ごとに K の変化の全体を取り、serial と、その試行が記録した指標の標本(load、移行を試みた行では save)以外の変化があれば導出を止めます。r03 の表(`3bd40d64…`)との違いは、role ごとに `_sample_counts` の 83 行(scenario 14 の checkpoint 1 以降)の after の値だけで、path の集合・行数・before の値は同じです。後の版の観測は使っていません。 - 表の各行は、比較の path(`compare_reports` の path の形そのもの)、before の値、after の値(または K の差の量)、原因です。内訳は role ごとに次のとおりです。 - E5 の6行: 操作の直後の観測(checkpoint 2)で、`latest` の木の、before の defect に記録された mutation の path(dict は `systems/runtime/id_generator/counters/__p28_eq_probe`、array は `systems/runtime/domain_events/published_ids` の実際の index)。`digest_self_consistent`(false → true)。before の比較がその checkpoint で記録した digest の欄(R は product の `computed_latest_digest`、O は `harness_normalized_digest`。after の値は同じ行の checkpoint 1 の値)。 - E4 の2行: `result.facts.event_stream` の `keys`(3つ → `replaced` だけ)と `replaced`(true → false)。 - E3 の修正による K の差: 失敗した load の行の最後の checkpoint 以降の全ての scenario の checkpoint で、`K._pause_request_serial` の before と after の差が、before の実行の順序で、それまでに通った失敗した load の行の実際の増分(before の defect に記録された値、各 +2)の合計とちょうど等しいこと(R は最後に 12、O は 10)。成功した E4/load_from_path の +1 は両版で同じ。 - - 決定 D1 による K の差: 同じ checkpoint の `K.performance_budget._sample_counts` で、`load` の件数だけが、before の実行の順序で、それまでに通った失敗した load の行の数(before の defect に記録された各 +1)だけ少ないこと(R は最後に 6、O は 5)。他の metric の件数は同じ。`_samples`・`_totals` は EQ の SPEC §3.2 の除外(実時間)のまま、両版の値つきで記録します。 + - 決定 D1 による K の差: 同じ checkpoint の `K.performance_budget._sample_counts` で、before の実行の順序で、`load` の件数がそれまでに通った失敗した load の行の数(before の defect に記録された各 +1)だけ、`save` の件数がそれまでに通った移行を試みた失敗した load の行の数(out_of_range、before の defect に記録された各 +1)だけ少ないこと(R は最後に load 6・save 1、O は load 5・save 1)。他の metric の件数は同じ。`_samples`・`_totals` は EQ の SPEC §3.2 の除外(実時間)のまま、両版の値つきで記録します。 - 判定(`opt/check_opt.py`)。どれか1つでも満たさなければ不合格です。 1. `compare_bundles` の差の集合が、表の行の集合(path・before の値・after の値)と**完全に一致**すること。表に無い差があっても、表の行の差が出なくても不合格です。仮の定数、path の前方一致での包括の許容、後の版の観測から許容を足すことはしません。 2. 主の 31 checkpoint(B1 と 30 分)の S・latest・latest_digest・K・C と、全イベント(E2)は差 0 件(表に行が無い)。 @@ -102,7 +103,7 @@ before の記録(EQ の S_eq native `native-9adbbee-r01`。R-A と O-A の sto | `opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json` | §4 の固定表(登録の時に固定。SHA を §4 に記載) | | `opt/check_opt.py` | §4 の差の判定、§5 の改善の分類、§2 の変更の箇所の検査(base と S の差分の hunk が、§2 の表の箇所と、そこから呼ぶ新しい private 関数の中だけにあること)、各束の結合(engine を使わない) | | `opt/verify_opt.py` | `$BUILD_OUTPUT_DIR/p28-02-opt-evidence/` の束(EQ の before/after、DIAG の after、frame の after 3回と before 2回、RESTART、全 roster)を結合して判定します。束が無ければ失敗します | -| `opt/test_opt.py` | engine を使わない unittest(§2・§4・§5 の正負、束の欠落、偽の合格の拒否。凍結 E3 の判定が K の全体を比べ、telemetry だけの変化も K_changes にすること、失敗の SAVE_LOAD_FAILED の event と payload を消すと E3 が不合格になることを含む) | +| `opt/test_opt.py` | engine を使わない unittest(§2・§4・§5 の正負、束の欠落、偽の合格の拒否。凍結 E3 の判定が K の全体を比べ、telemetry だけの変化も K_changes にすること(移行の save の標本だけが残る場合を含む)、失敗の SAVE_LOAD_FAILED の event と payload を消すと E3 が不合格になることを含む) | | `opt/PROGRESS.md`、`opt/IMPLEMENTATION.md` | 経緯と実装の判断 | ## 8. 順序 @@ -116,3 +117,6 @@ before の記録(EQ の S_eq native `native-9adbbee-r01`。R-A と O-A の sto ## 9. 全ての失敗の保持 - native・validation・review の失敗は、raw と SHA とともに保全し、成功に書き換えません。修正は、通常の repair で、同じ W で行います。E1〜E5 が1つでも崩れた変更は採用しません。 +- r03 の S `f651ce1` の記録(EQ・DIAG・collector 3回・RESTART の native、全 roster の r01(容量で停止)と r02(192 suite PASS)、正式の validation の失敗)は、その S の記録として保持します。r04 では製品の source が変わるので、§6 の後の版の全て(EQ、(a)、(b) の3回、(c)、(d))を r04 の S でやり直し、`f651ce1` の結果を流用しません。前の版の記録(EQ の before、DIAG `d6ce6dd`、frame の before 3回)は、§5・§6 の条件の一致を確かめて再利用します。 +- r04 の実装は、新しい W に `f651ce1` の成果(製品の T1・E3・E4・E5 の変更と OPT の道具)を SHA の一致で引き継ぎ(Root 制御フォルダの引き継ぎの manifest)、§2・§3 の r04 の差分と、固定表・規則の更新だけを足します。全てを作り直すことはしません。 +- r04 の S では、局所の確認と必要な native で、次も確かめます: 移行が成功した後に load(または restore)が失敗する分岐で、K が不変で save の標本が残らないこと。移行を伴って受け入れた load で、save の標本が1件、移行の `duration_us` の値で記録されること。通常の save の標本と、SAVE_LOADED・`save_operation_completed` の通知の順序と値が変わらないこと。受入の規則に合わなければ、失敗として保持します。後の版を見て固定表の許容を足すことはしません。 diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md index 6e1e8de..d84a362 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md @@ -8,7 +8,7 @@ - 前の版の既存の不具合(SPEC §3)は、その原因の箇所だけで直します。 - E5: `latest_snapshot` と signal の引数を、受け手が入れ子の dict や配列を変えても、内部・`latest_snapshot`・`latest_digest` に影響しない形にします。公開の回数・順序・内容は変えません。複製の費用で T1 の改善を打ち消さないこと(SPEC §5 の (a) が「改善」でなければ採用しない)。 - E4: 検証は従来どおり一時の `DomainEventStream` で行い、確定の時に、今の `domain_events` のインスタンスへ同じ内容を `restore_snapshot` で入れます(購読をそのまま保つ)。確定の前に、今のインスタンスで restore が失敗しない条件を確かめ、原子性を保ちます。インスタンスを差し替えて購読を写す方法は使いません(同じ ID の再購読が失敗するため)。 - - E3: `load_from_path` の失敗の経路でだけ、kernel の `paused` と `_pause_request_serial` を load の前の値に戻し、その失敗の試行の performance telemetry(`_record_runtime_performance(&"load", …)`)を記録しません(SPEC §3 の決定 D1)。成功の経路(状態・event・telemetry)と、他の load 系の操作は変えません。失敗の記録と通知(SAVE_LOAD_FAILED の event、`latest_save_operation_result`、`save_operation_completed`、戻り値と payload の時間・message・save_path)は残します。kernel のファイルは変えません。 + - E3: `load_from_path` の失敗の経路でだけ、kernel の `paused` と `_pause_request_serial` を load の前の値に戻し、その失敗の試行の performance telemetry(`_finish_load_operation` の `_record_runtime_performance(&"load", …)` と、移行を試みた場合の `load_from_path` の `_record_runtime_performance(&"save", …)`)を記録しません(SPEC §3 の決定 D1、r04)。移行を伴って受け入れた load の save の標本は、`_finish_load_operation` の後に記録して保ちます。移行が成功した後に load(または restore)が失敗する分岐でも、save の標本を残しません。この分岐、移行を伴う成功の load の save の標本(件数と値)、通常の save の標本と通知(SAVE_LOADED・`save_operation_completed`)の順序と値を、局所の確認(engine を使う診断は正式の証拠に数えない)で確かめ、結果を `opt/IMPLEMENTATION.md` に記録します。成功の経路(状態・event・telemetry)と、他の load 系の操作は変えません。失敗の記録と通知(SAVE_LOAD_FAILED の event、`latest_save_operation_result`、`save_operation_completed`、戻り値と payload の時間・message・save_path)は残します。kernel のファイルは変えません。 - 既に分かっている落とし穴を避けること: - autoload の script の class_name を静的に参照しない。Variant から `:=` で型を推論しない。StringName の key は文字の比較で並べる。一時ディレクトリは `BUILD_OUTPUT_DIR` か `tempfile.gettempdir()` の下に作る。 - `opt/check_opt.py` には、少なくとも次の拒否試験を置く: @@ -19,7 +19,7 @@ - §2 の表の外の箇所を変えた S を通すこと(新しい private 関数を表の外から呼ぶことを含む) - SPEC §5 で (a) が「改善」でないのに採用すること、(b) の「悪化」を見落とすこと、「差は確認できない」の指標を「改善した」と書くこと - `opt/test_opt.py` には、凍結 EQ の E3 の判定(`check_eq.check_e3`)について、少なくとも次の確認を置く(本物の判定の関数を、合成の E3 の記録で呼ぶ): - - 拒否の前後で K の telemetry だけ(`performance_budget` の load の件数・標本・合計)が変わっても K_changes になること、`_pause_request_serial` だけが変わっても K_changes になること + - 拒否の前後で K の telemetry だけ(`performance_budget` の load の件数・標本・合計)が変わっても K_changes になること、移行の save の標本だけが変わっても K_changes になること、`_pause_request_serial` だけが変わっても K_changes になること - K・S・C が不変で、SAVE_LOAD_FAILED の event と一致する payload があれば、load の失敗の行に不具合が無いこと - SAVE_LOAD_FAILED の event を消すと、または payload と `latest_save_operation_result` を食い違わせると、不具合として報告されること - しないこと: git への書込み(commit を含む)、全回帰、§6 の native と比較の実行(Root が行います)。 diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json index a4a53a0..0e99018 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json @@ -21,7 +21,7 @@ { "id": "P28-02-OPT3", "requirement_id": "P28-02", - "text": "原 acceptance(全状態・全イベント一致): 凍結 EQ を --opt-changed で OPT の S に実行した後の版の記録が verify_eq の検証に通り、compare_bundles の差の集合が、before の記録だけから事前に導いた固定表 opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json(SHA 3bd40d64…)の行の集合(path・before の値・after の値。E3 の K の差は、before の実行順の失敗した load の実際の増分の合計の _pause_request_serial と、決定 D1 による performance_budget の load の件数)と完全に一致する。主の31 checkpoint と全イベントの差は0。仮の定数・前方一致の包括の許容・after の観測からの許容の追加は無い。", + "text": "原 acceptance(全状態・全イベント一致): 凍結 EQ を --opt-changed で OPT の S に実行した後の版の記録が verify_eq の検証に通り、compare_bundles の差の集合が、before の記録だけから事前に導いた固定表 opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json(SHA a763f011…)の行の集合(path・before の値・after の値。E3 の K の差は、before の実行順の失敗した load の実際の増分の合計の _pause_request_serial と、決定 D1 による performance_budget の load の件数と、移行を試みた失敗の load の save の件数)と完全に一致する。主の31 checkpoint と全イベントの差は0。仮の定数・前方一致の包括の許容・after の観測からの許容の追加は無い。", "validation_ids": [ "p28-02-opt-unit", "p28-02-opt-eq-native-verify", @@ -31,7 +31,7 @@ { "id": "P28-02-OPT4", "requirement_id": "P28-02", - "text": "原 acceptance(キャッシュの古さ・所有権・不正入力): 後の版で E3(restore_snapshot・validate・load_from_path の全ての不正入力の原子的な拒否。凍結 E3 の判定は拒否の前後の S/K/C の全体を比べる)、E4(全ての無効化の経路)、E5(双方向の非干渉)が R と O の両方で既存の不具合 0 件(after_all_e_pass true)。前の版の不具合(E5 aliasing、E4 stream の差し替え、E3 load の K の変化)は SPEC §2・§3 の最小の原因の修正だけで直る。E3 の load の失敗の経路では pause の状態と serial を戻し、その失敗の試行の performance telemetry を記録しない(決定 D1。成功した load と他の操作の telemetry、失敗の SAVE_LOAD_FAILED の event・latest_save_operation_result・save_operation_completed は維持)。", + "text": "原 acceptance(キャッシュの古さ・所有権・不正入力): 後の版で E3(restore_snapshot・validate・load_from_path の全ての不正入力の原子的な拒否。凍結 E3 の判定は拒否の前後の S/K/C の全体を比べる)、E4(全ての無効化の経路)、E5(双方向の非干渉)が R と O の両方で既存の不具合 0 件(after_all_e_pass true)。前の版の不具合(E5 aliasing、E4 stream の差し替え、E3 load の K の変化)は SPEC §2・§3 の最小の原因の修正だけで直る。E3 の load の失敗の経路では pause の状態と serial を戻し、その失敗の試行の performance telemetry(load の標本と、移行を試みた場合の save の標本)を記録しない(決定 D1。成功した load(移行を伴う場合の save の標本を含む)と他の操作の telemetry、失敗の SAVE_LOAD_FAILED の event・latest_save_operation_result・save_operation_completed は維持)。", "validation_ids": [ "p28-02-opt-unit", "p28-02-opt-eq-native-verify", diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json index 53259fc..86c68cb 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json @@ -8,11 +8,11 @@ "formal_native_verify_stdout_sha256": "832815c72df0ac3c5a5849a3cb392ea64fcf6cba5847cf2bacbbc83d31ac23f1" }, "derivation": { - "script": "derive_opt_allowed_differences.py (Root control folder, SHA fe35d945f500587ed667fac7e66c5ec48df193ecb35df1366c1885480a889fbf)", - "r02_table_sha256": "6b057c18cd5ee1eb7e81e5bd7a6f88962f3e5b2321aafaeb56b97e1bad2469d3", - "r03_merge": "decision D1 = option B: the r02 rows allowed_only_with_option_B_failed_load_telemetry are part of the allowed set; no other change; no after observation used" + "script": "opt-registration-proposal-r04/derive_opt_allowed_differences_r04.py (Root control folder)", + "r03_table_sha256": "3bd40d64dfacfa1cd81a130e67b278673b4621b9f5face8e71d63042faf2403d", + "r04_change": "the whole K change of each failed before load is taken; the save sample of the migration attempt joins the load sample (decision D1 extended); no after observation used" }, - "decision_D1": "option B (load_from_path failure path does not record its performance telemetry sample; success load and other operations keep theirs; frozen E3 S/K/C unchanged rule kept)", + "decision_D1": "option B (load_from_path failure path does not record its performance telemetry sample; success load and other operations keep theirs; frozen E3 S/K/C unchanged rule kept); r04 candidate: the migration attempt of a rejected load_from_path records no save sample either (an accepted load keeps it, recorded after _finish_load_operation)", "rule": "Every cross-version difference returned by the frozen verify_eq.compare_bundles(before, after) must equal exactly one entry here (path, before value and after value or K offset); any other difference, a missing expected difference, or an after-version existing defect fails. Main checkpoints and all events have none.", "roles": { "R": { @@ -142,18 +142,6 @@ ] } ], - "failed_load_rows": [ - 12, - 13, - 14, - 15, - 16, - 17 - ], - "final_offsets": { - "_pause_request_serial": 12, - "load_sample_count": 6 - }, "allowed": [ { "path": [ @@ -1916,8 +1904,10 @@ 54329 ] ], - "offset": 1, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -1945,8 +1935,10 @@ 54329 ] ], - "offset": 1, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -1974,8 +1966,10 @@ 54329 ] ], - "offset": 2, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 2 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2003,8 +1997,10 @@ 54329 ] ], - "offset": 2, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 2 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2034,14 +2030,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 3, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 3, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2071,14 +2066,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 3, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 3, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2108,14 +2102,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2145,14 +2138,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2182,14 +2174,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2219,14 +2210,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2256,14 +2246,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2293,14 +2282,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2330,14 +2318,13 @@ [ "path_query", 54329 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2367,14 +2354,13 @@ [ "path_query", 54379 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2404,14 +2390,13 @@ [ "path_query", 54379 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2441,14 +2426,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2478,14 +2462,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2515,14 +2498,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2552,14 +2534,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2593,14 +2574,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2634,14 +2614,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2675,14 +2654,13 @@ [ "path_query", 54429 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2716,14 +2694,13 @@ [ "path_query", 54515 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2757,14 +2734,13 @@ [ "path_query", 54515 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2798,14 +2774,13 @@ [ "path_query", 54589 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2839,14 +2814,13 @@ [ "path_query", 54589 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2880,14 +2854,13 @@ [ "path_query", 54639 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2921,14 +2894,13 @@ [ "path_query", 54639 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -2962,14 +2934,13 @@ [ "path_query", 54761 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3003,14 +2974,13 @@ [ "path_query", 54823 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3044,14 +3014,13 @@ [ "path_query", 54897 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3085,14 +3054,13 @@ [ "path_query", 54897 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3126,14 +3094,13 @@ [ "path_query", 54947 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3167,14 +3134,13 @@ [ "path_query", 54947 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3208,14 +3174,13 @@ [ "path_query", 55021 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3249,14 +3214,13 @@ [ "path_query", 55021 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3290,14 +3254,13 @@ [ "path_query", 55107 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3331,14 +3294,13 @@ [ "path_query", 55193 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3372,14 +3334,13 @@ [ "path_query", 55411 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3413,14 +3374,13 @@ [ "path_query", 55411 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3454,14 +3414,13 @@ [ "path_query", 55473 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3495,14 +3454,13 @@ [ "path_query", 55473 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3536,14 +3494,13 @@ [ "path_query", 55523 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3577,14 +3534,13 @@ [ "path_query", 55523 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3618,14 +3574,13 @@ [ "path_query", 55609 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3659,14 +3614,13 @@ [ "path_query", 55659 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3700,14 +3654,13 @@ [ "path_query", 55781 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3741,14 +3694,13 @@ [ "path_query", 55781 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3782,14 +3734,13 @@ [ "path_query", 55867 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3823,14 +3774,13 @@ [ "path_query", 55867 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3864,14 +3814,13 @@ [ "path_query", 55941 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3905,14 +3854,13 @@ [ "path_query", 55941 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3946,14 +3894,13 @@ [ "path_query", 56015 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -3987,14 +3934,13 @@ [ "path_query", 56089 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4028,14 +3974,13 @@ [ "path_query", 56139 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4069,14 +4014,13 @@ [ "path_query", 56139 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4110,14 +4054,13 @@ [ "path_query", 56201 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4151,14 +4094,13 @@ [ "path_query", 56201 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4192,14 +4134,13 @@ [ "path_query", 56263 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4233,14 +4174,13 @@ [ "path_query", 56263 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4274,14 +4214,13 @@ [ "path_query", 56313 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4315,14 +4254,13 @@ [ "path_query", 56447 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4356,14 +4294,13 @@ [ "path_query", 56497 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4397,14 +4334,13 @@ [ "path_query", 56497 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4438,14 +4374,13 @@ [ "path_query", 56571 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4479,14 +4414,13 @@ [ "path_query", 56571 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4520,14 +4454,13 @@ [ "path_query", 56765 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4561,14 +4494,13 @@ [ "path_query", 56765 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4602,14 +4534,13 @@ [ "path_query", 57079 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4643,14 +4574,13 @@ [ "path_query", 107153 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4684,14 +4614,13 @@ [ "path_query", 107203 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4725,14 +4654,13 @@ [ "path_query", 107203 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4766,14 +4694,13 @@ [ "path_query", 107253 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4807,14 +4734,13 @@ [ "path_query", 107253 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4848,14 +4774,13 @@ [ "path_query", 107303 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4889,14 +4814,13 @@ [ "path_query", 107303 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4930,14 +4854,13 @@ [ "path_query", 107365 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -4971,14 +4894,13 @@ [ "path_query", 107427 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5012,14 +4934,13 @@ [ "path_query", 107489 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5053,14 +4974,13 @@ [ "path_query", 107489 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5094,14 +5014,13 @@ [ "path_query", 107539 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5135,14 +5054,13 @@ [ "path_query", 107539 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5176,14 +5094,13 @@ [ "path_query", 107649 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5217,14 +5134,13 @@ [ "path_query", 107649 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5258,14 +5174,13 @@ [ "path_query", 107699 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5299,14 +5214,13 @@ [ "path_query", 107749 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -5340,16 +5254,91 @@ [ "path_query", 107823 - ], - [ - "save", - 1 ] ], - "offset": 6, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 6, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" } - ] + ], + "failed_load_rows": [ + 12, + 13, + 14, + 15, + 16, + 17 + ], + "failed_load_attempts": [ + { + "index": 12, + "id": "E3/load_from_path/missing_key", + "code": "INVALID_MANIFEST", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 13, + "id": "E3/load_from_path/wrong_type", + "code": "INVALID_MANIFEST", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 14, + "id": "E3/load_from_path/out_of_range", + "code": "MIGRATION_DOWNGRADE_UNSUPPORTED", + "migration_attempted": true, + "serial_increment": 2, + "samples": [ + "load", + "save" + ] + }, + { + "index": 15, + "id": "E3/load_from_path/duplicate_published_ids", + "code": "RESTORE_FAILED", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 16, + "id": "E3/load_from_path/duplicate_facility", + "code": "RESTORE_FAILED", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 17, + "id": "E3/load_from_path/tampered_world", + "code": "CHECKSUM_MISMATCH", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + } + ], + "final_offsets": { + "_pause_request_serial": 12, + "load_sample_count": 6, + "save_sample_count": 1 + } }, "O": { "before_existing_defect_rows": [ @@ -5470,17 +5459,6 @@ ] } ], - "failed_load_rows": [ - 12, - 13, - 14, - 15, - 17 - ], - "final_offsets": { - "_pause_request_serial": 10, - "load_sample_count": 5 - }, "allowed": [ { "path": [ @@ -7234,8 +7212,10 @@ ] ], "after": [], - "offset": 1, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7254,8 +7234,10 @@ ] ], "after": [], - "offset": 1, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7274,8 +7256,10 @@ ] ], "after": [], - "offset": 2, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 2 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7294,8 +7278,10 @@ ] ], "after": [], - "offset": 2, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 2 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7317,14 +7303,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 3, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 3, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7346,14 +7330,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 3, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 3, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7375,14 +7357,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7404,14 +7384,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7433,14 +7411,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7462,14 +7438,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 4, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 4, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7491,14 +7465,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7520,14 +7492,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7549,14 +7519,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7578,14 +7546,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7607,14 +7573,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7636,14 +7600,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7665,14 +7627,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7694,14 +7654,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7723,14 +7681,12 @@ 1 ] ], - "after": [ - [ - "save", - 1 - ] - ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "after": [], + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7756,14 +7712,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7789,14 +7744,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7822,14 +7776,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7855,14 +7808,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7888,14 +7840,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7921,14 +7872,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7954,14 +7904,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -7987,14 +7936,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8020,14 +7968,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8053,14 +8000,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8086,14 +8032,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8119,14 +8064,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8152,14 +8096,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8185,14 +8128,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8218,14 +8160,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8251,14 +8192,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8284,14 +8224,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8317,14 +8256,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8350,14 +8288,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8383,14 +8320,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8416,14 +8352,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8449,14 +8384,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8482,14 +8416,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8515,14 +8448,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8548,14 +8480,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8581,14 +8512,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8614,14 +8544,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8647,14 +8576,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8680,14 +8608,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8713,14 +8640,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8746,14 +8672,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8779,14 +8704,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8812,14 +8736,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8845,14 +8768,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8878,14 +8800,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8911,14 +8832,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8944,14 +8864,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -8977,14 +8896,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9010,14 +8928,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9043,14 +8960,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9076,14 +8992,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9109,14 +9024,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9142,14 +9056,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9175,14 +9088,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9208,14 +9120,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9241,14 +9152,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9274,14 +9184,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9307,14 +9216,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9340,14 +9248,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9373,14 +9280,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9406,14 +9312,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9439,14 +9344,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9472,14 +9376,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9505,14 +9408,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9538,14 +9440,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9571,14 +9472,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9604,14 +9504,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9637,14 +9536,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9670,14 +9568,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9703,14 +9600,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9736,14 +9632,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9769,14 +9664,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9802,14 +9696,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9835,14 +9728,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9868,14 +9760,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9901,14 +9792,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9934,14 +9824,13 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" }, { "path": [ @@ -9967,16 +9856,80 @@ [ "load", 1 - ], - [ - "save", - 1 ] ], - "offset": 5, - "cause": "E3 failed-load telemetry sample (option B only; cumulative, before order)" + "offset": { + "load": 5, + "save": 1 + }, + "cause": "E3 failed-load telemetry samples, decision D1 (r04 candidate): the load sample of each failed load and the save sample of its migration attempt (cumulative, before order)" } - ] + ], + "failed_load_rows": [ + 12, + 13, + 14, + 15, + 17 + ], + "failed_load_attempts": [ + { + "index": 12, + "id": "E3/load_from_path/missing_key", + "code": "INVALID_MANIFEST", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 13, + "id": "E3/load_from_path/wrong_type", + "code": "INVALID_MANIFEST", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 14, + "id": "E3/load_from_path/out_of_range", + "code": "MIGRATION_DOWNGRADE_UNSUPPORTED", + "migration_attempted": true, + "serial_increment": 2, + "samples": [ + "load", + "save" + ] + }, + { + "index": 15, + "id": "E3/load_from_path/duplicate_published_ids", + "code": "RESTORE_FAILED", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + }, + { + "index": 17, + "id": "E3/load_from_path/tampered_world", + "code": "CHECKSUM_MISMATCH", + "migration_attempted": false, + "serial_increment": 2, + "samples": [ + "load" + ] + } + ], + "final_offsets": { + "_pause_request_serial": 10, + "load_sample_count": 5, + "save_sample_count": 1 + } } } } diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json index 5146fae..712fa88 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json @@ -1,5 +1,5 @@ { - "project": "the-tree-p28-02-opt", + "project": "the-tree-p28-02-opt-r04", "models": { "implementer": "Claude Opus 5.5 Desktop governor under the user delegation; registered worker field codex is not the actual actor and no new Codex implementation is started", "reviewer": "claude-opus-5-5 (fresh, separate Desktop session, async delivery)" diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json index bc0f401..5dac268 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json @@ -1,128 +1,139 @@ { - "status": "r03 for registration (candidates r01 and r02 kept unchanged in opt-registration-proposal-r01/ and -r02/); decision D1 = option B recorded in opt/SPEC.md §3. The tracked paths below are fixed to main by a docs-only commit; that actual SHA is the base_commit of the Root registration.", - "prepared_by": "Claude Opus 5.5 Desktop governor (local_a7f85421-3eed-4482-8030-c0dca669573a) under the user's delegation; registration is the owner's (Root's) action", - "tracked_paths_to_commit": { - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md": "opt-registration-proposal-r03/SPEC.md", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md": "opt-registration-proposal-r03/TASK_INSTRUCTIONS.md", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json": "opt-registration-proposal-r03/ACCEPTANCE_BASELINE.json", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json": "opt-registration-proposal-r03/REGISTRATION_PROPOSAL.json", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json": "opt-registration-proposal-r03/CONFIG_PROPOSAL.json", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json": "opt-registration-proposal-r03/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json (byte-identical, SHA 3bd40d64dfacfa1cd81a130e67b278673b4621b9f5face8e71d63042faf2403d)" + "status": "r04 for registration (r01-r03 and the r04 candidate kept unchanged in opt-registration-proposal-r01/ .. -r04/). Root decision: option 1, a new continuing registration (project the-tree-p28-02-opt-r04, task P28-02-OPT-R04) so that the registered spec_sha256 and baseline match the r04 documents and the r03 task keeps its formal failure (repair_pending). Decision D1 extended in opt/SPEC.md §3: a rejected load_from_path records neither its load sample nor the save sample of its migration attempt; an accepted load keeps the save sample (recorded after _finish_load_operation). The tracked paths below are fixed to main by a docs-only commit; that actual SHA is the base_commit of the Root registration.", + "prepared_by": "Claude Opus 5.5 Desktop governor (local_a7f85421-3eed-4482-8030-c0dca669573a) under the user's delegation; registration is the owner's (Root's) action", + "tracked_paths_to_commit": { + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md": "opt-registration-proposal-r04-final/SPEC.md", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md": "opt-registration-proposal-r04-final/TASK_INSTRUCTIONS.md", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json": "opt-registration-proposal-r04-final/ACCEPTANCE_BASELINE.json", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json": "opt-registration-proposal-r04-final/REGISTRATION_PROPOSAL.json", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json": "opt-registration-proposal-r04-final/CONFIG_PROPOSAL.json", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json": "opt-registration-proposal-r04-final/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json (byte-identical to the r04 candidate, SHA a763f0110284326afa5f9001a72261dcd1b9c729c5dd97f9cd82598b841ac9de)" + }, + "register_project": { + "project": "the-tree-p28-02-opt-r04", + "repo": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部", + "worktrees": "/Users/korizatou114/Projects/TheTree-managed-worktrees/p28-02-opt-r04", + "baseline_file": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json", + "validations": { + "p28-02-opt-unit": { + "argv": [ + "{python}", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/test_opt.py" + ] + }, + "p28-02-opt-eq-native-verify": { + "argv": [ + "{python}", + "docs/plans/original-completion-2026-10-02/execution/p28-02/eq/verify_eq.py", + "--project-root", + "." + ] + }, + "p28-02-opt-diag-native-verify": { + "argv": [ + "{python}", + "docs/plans/original-completion-2026-10-02/execution/p28-02/diag/verify_diag.py", + "--project-root", + "." + ] + }, + "p28-02-opt-native-verify": { + "argv": [ + "{python}", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/verify_opt.py", + "--project-root", + "." + ] + } }, - "register_project": { - "project": "the-tree-p28-02-opt", - "repo": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部", - "worktrees": "/Users/korizatou114/Projects/TheTree-managed-worktrees/p28-02-opt", - "baseline_file": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json", - "validations": { - "p28-02-opt-unit": { - "argv": [ - "{python}", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/test_opt.py" - ] - }, - "p28-02-opt-eq-native-verify": { - "argv": [ - "{python}", - "docs/plans/original-completion-2026-10-02/execution/p28-02/eq/verify_eq.py", - "--project-root", - "." - ] - }, - "p28-02-opt-diag-native-verify": { - "argv": [ - "{python}", - "docs/plans/original-completion-2026-10-02/execution/p28-02/diag/verify_diag.py", - "--project-root", - "." - ] - }, - "p28-02-opt-native-verify": { - "argv": [ - "{python}", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/verify_opt.py", - "--project-root", - "." - ] - } - }, - "validation_note": "The frozen EQ and DIAG verifiers run unchanged on the OPT S checkout and read the Root-placed after bundles at $BUILD_OUTPUT_DIR/p28-02-eq-evidence and $BUILD_OUTPUT_DIR/p28-02-diag-evidence. opt/verify_opt.py reads $BUILD_OUTPUT_DIR/p28-02-opt-evidence (EQ before/after copies for compare_bundles and the SPEC §4 rule, frame before/after, RESTART, full roster) and fails when any bundle is absent; unit PASS alone never accepts. Each check runs under the default validation limit; a measured need for a longer limit goes back to the owner as a normal policy decision, not a silent change." + "validation_note": "The frozen EQ and DIAG verifiers run unchanged on the OPT S checkout and read the Root-placed after bundles at $BUILD_OUTPUT_DIR/p28-02-eq-evidence and $BUILD_OUTPUT_DIR/p28-02-diag-evidence. opt/verify_opt.py reads $BUILD_OUTPUT_DIR/p28-02-opt-evidence (EQ before/after copies for compare_bundles and the SPEC §4 rule, frame before/after, RESTART, full roster) and fails when any bundle is absent; unit PASS alone never accepts. Each check runs under the default validation limit; a measured need for a longer limit goes back to the owner as a normal policy decision, not a silent change." + }, + "register_task_contract": { + "id": "P28-02-OPT-R04", + "title": "意味を保つ軽量化:T1 snapshot の変換・コピーの改善(原 P28-02 の完了の条件)(r04 継続登録)", + "requirement_ids": [ + "P28-02", + "P28" + ], + "acceptance_ids": [ + "P28-02-OPT1", + "P28-02-OPT2", + "P28-02-OPT3", + "P28-02-OPT4", + "P28-02-OPT5", + "P28-02-OPT6", + "P28-02-OPT7", + "P28-02-OPT8", + "P28-02-OPT9", + "P28-02-OPT10", + "P28-02-OPT11", + "P28-02-OPT12" + ], + "spec_ref": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md", + "base_commit": "TBD: actual main SHA that adds the r04 opt/SPEC.md, opt/TASK_INSTRUCTIONS.md and opt/registration/**", + "worker": "codex", + "worker_note": "The registered worker field codex is not the actual actor: the Runner implementer services do not include Claude, so the field is kept as for EQ S5/S6. No new Codex (or Astra) implementation run will be started. The actual implementer is the Claude Opus 5.5 Desktop governor under the user delegation, recorded honestly in each owner submit receipt; Runner submit makes the commits.", + "allowed_paths": [ + "autoload/simulation_runtime.gd", + "scripts/core/simulation_snapshot.gd", + "scripts/world/world_service.gd", + "scripts/world/route_subslot_path_adapter.gd", + "scripts/world/path_service.gd", + "scripts/core/command_queue.gd", + "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/**" + ], + "depends_on": [], + "resource_locks": [ + "p28-02-opt-r04" + ], + "validation_ids": [ + "p28-02-opt-unit", + "p28-02-opt-eq-native-verify", + "p28-02-opt-diag-native-verify", + "p28-02-opt-native-verify" + ], + "max_repair_attempts": null, + "allowed_paths_note": "Runner allowed_paths are file-level. The allowed sites inside each file are fixed by opt/SPEC.md §2 and enforced by opt/check_opt.py (diff hunks only inside those functions and statements, plus new private functions called only from them); scripts/core/simulation_snapshot.gd is listed by OPT_CONTRACT_T1 but is not to be changed." + }, + "native_contract": { + "executor": "Root role only, after the worker submits S_opt (currently the Desktop governor by user delegation)", + "common_arguments": { + "readonly": "/Users/korizatou114/Projects/TheTree-managed-worktrees/p28-01-perf-baseline/.runtime/P28-01-COLLECTOR/build/p28-01-readonly", + "fixture": "artifacts/original-completion-2026-10-02/p28-current1299-runtime-scale-build-candidate-native-r01/fixture/reference.variant (eb4f7700...)", + "engine": "/Applications/Godot.app/Contents/MacOS/Godot (c7cccbf8...)" }, - "register_task_contract": { - "id": "P28-02-OPT", - "title": "意味を保つ軽量化:T1 snapshot の変換・コピーの改善(原 P28-02 の完了の条件)", - "requirement_ids": [ - "P28-02", - "P28" - ], - "acceptance_ids": [ - "P28-02-OPT1", - "P28-02-OPT2", - "P28-02-OPT3", - "P28-02-OPT4", - "P28-02-OPT5", - "P28-02-OPT6", - "P28-02-OPT7", - "P28-02-OPT8", - "P28-02-OPT9", - "P28-02-OPT10", - "P28-02-OPT11", - "P28-02-OPT12" - ], - "spec_ref": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md", - "base_commit": "TBD: actual main SHA that adds opt/SPEC.md and opt/TASK_INSTRUCTIONS.md", - "worker": "codex", - "worker_note": "The registered worker field codex is not the actual actor: the Runner implementer services do not include Claude, so the field is kept as for EQ S5/S6. No new Codex (or Astra) implementation run will be started. The actual implementer is the Claude Opus 5.5 Desktop governor under the user delegation, recorded honestly in each owner submit receipt; Runner submit makes the commits.", - "allowed_paths": [ - "autoload/simulation_runtime.gd", - "scripts/core/simulation_snapshot.gd", - "scripts/world/world_service.gd", - "scripts/world/route_subslot_path_adapter.gd", - "scripts/world/path_service.gd", - "scripts/core/command_queue.gd", - "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/**" - ], - "depends_on": [], - "resource_locks": [ - "p28-02-opt" - ], - "validation_ids": [ - "p28-02-opt-unit", - "p28-02-opt-eq-native-verify", - "p28-02-opt-diag-native-verify", - "p28-02-opt-native-verify" - ], - "max_repair_attempts": null, - "allowed_paths_note": "Runner allowed_paths are file-level. The allowed sites inside each file are fixed by opt/SPEC.md §2 and enforced by opt/check_opt.py (diff hunks only inside those functions and statements, plus new private functions called only from them); scripts/core/simulation_snapshot.gd is listed by OPT_CONTRACT_T1 but is not to be changed." + "runs_on_S_opt": [ + "eq/run_eq.py --run --opt-changed --output artifacts/original-completion-2026-10-02/p28-02-opt/eq-after--r01", + "diag/diag_p28_02.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/phase-after--r01", + "p28-01/collector/collect_p28_01.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/frame-after--r0{1,2,3}", + "p28-01/restart/probe/restart_pair.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/restart-after--r01", + "tools/run_all_tests.py --project-root --godot --output artifacts/original-completion-2026-10-02/p28-02-opt/full-roster--r01" + ], + "before_records": { + "EQ": "artifacts/original-completion-2026-10-02/p28-02-root-control-r01/native-9adbbee-r01 (S_eq, version before; qualified on Q_eq 4e34e52)", + "phase": "DIAG native bundle of S d6ce6dd (reused when the source map, DIAG files, engine, fixture and settings match)", + "frame": "full9 db9d613 (reused as one run) + artifacts/original-completion-2026-10-02/p28-02-opt/frame-before-r02 and -r03 (run on main 44bce91, product source map 651f7036..., summary FRAME_BEFORE_R02_R03_SUMMARY.json; P1 x1 averages 487.037 / 481.987 ms, P2 x3 P95 5126.595 / 5145.149 ms)" }, - "native_contract": { - "executor": "Root role only, after the worker submits S_opt (currently the Desktop governor by user delegation)", - "common_arguments": { - "readonly": "/Users/korizatou114/Projects/TheTree-managed-worktrees/p28-01-perf-baseline/.runtime/P28-01-COLLECTOR/build/p28-01-readonly", - "fixture": "artifacts/original-completion-2026-10-02/p28-current1299-runtime-scale-build-candidate-native-r01/fixture/reference.variant (eb4f7700...)", - "engine": "/Applications/Godot.app/Contents/MacOS/Godot (c7cccbf8...)" - }, - "runs_on_S_opt": [ - "eq/run_eq.py --run --opt-changed --output artifacts/original-completion-2026-10-02/p28-02-opt/eq-after--r01", - "diag/diag_p28_02.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/phase-after--r01", - "p28-01/collector/collect_p28_01.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/frame-after--r0{1,2,3}", - "p28-01/restart/probe/restart_pair.py --run --output artifacts/original-completion-2026-10-02/p28-02-opt/restart-after--r01", - "tools/run_all_tests.py --project-root --godot --output artifacts/original-completion-2026-10-02/p28-02-opt/full-roster--r01" - ], - "before_records": { - "EQ": "artifacts/original-completion-2026-10-02/p28-02-root-control-r01/native-9adbbee-r01 (S_eq, version before; qualified on Q_eq 4e34e52)", - "phase": "DIAG native bundle of S d6ce6dd (reused when the source map, DIAG files, engine, fixture and settings match)", - "frame": "full9 db9d613 (reused as one run) + artifacts/original-completion-2026-10-02/p28-02-opt/frame-before-r02 and -r03 (run on main 44bce91, product source map 651f7036..., summary FRAME_BEFORE_R02_R03_SUMMARY.json; P1 x1 averages 487.037 / 481.987 ms, P2 x3 P95 5126.595 / 5145.149 ms)" - }, - "measured_source_rule": "Every after value is recorded as run on S_opt, never as measured on Q (OPT_CONTRACT_T1 §5)." - }, - "credit": "EQ, DIAG add 0. P28-02 moves 23->24 only after the OPT final, the whole-unit independent review of the original work/acceptance, cross-cutting 6 and U1/U2, and the ledger. The P28 package stays in progress (P27, P28-03 pending).", - "improvement_rule": "Formally completed EQ SPEC §4 (lines 76-79): improvement claimed only when (a) I11 is 改善 and none of (a)(b-1)(b-2) is 悪化; (b) need not improve if not worse. OPT_CONTRACT_T1 §4 line 83 differs; EQ SPEC line 6 states its §3-§5 fix and replace that judgment, so EQ SPEC §4 is used unchanged (opt/SPEC.md §5).", - "decision_D1": { - "option": "B", - "where": "opt/SPEC.md §3", - "basis": "Root implementation decision applying the existing user scope (prioritize defect fixes needed for the target acceptance), the Opus implementation delegation and the main update permission; not a claim of a new human statement", - "content": "load_from_path failure path stops recording its performance telemetry sample; success load and other operations keep their telemetry; the failure event SAVE_LOAD_FAILED, latest_save_operation_result and save_operation_completed stay; the frozen E3 rule (S/K/C unchanged across a rejection) is unchanged; option A (excluding telemetry from E3 K) is not adopted", - "unapproved_criterion_change": false - } + "measured_source_rule": "Every after value is recorded as run on S_opt, never as measured on Q (OPT_CONTRACT_T1 §5)." + }, + "credit": "EQ, DIAG add 0. P28-02 moves 23->24 only after the OPT final, the whole-unit independent review of the original work/acceptance, cross-cutting 6 and U1/U2, and the ledger. The P28 package stays in progress (P27, P28-03 pending).", + "improvement_rule": "Formally completed EQ SPEC §4 (lines 76-79): improvement claimed only when (a) I11 is 改善 and none of (a)(b-1)(b-2) is 悪化; (b) need not improve if not worse. OPT_CONTRACT_T1 §4 line 83 differs; EQ SPEC line 6 states its §3-§5 fix and replace that judgment, so EQ SPEC §4 is used unchanged (opt/SPEC.md §5).", + "decision_D1": { + "option": "B", + "where": "opt/SPEC.md §3", + "basis": "Root implementation decision applying the existing user scope (prioritize defect fixes needed for the target acceptance), the Opus implementation delegation and the main update permission; not a claim of a new human statement", + "content": "load_from_path failure path stops recording its performance telemetry sample; success load and other operations keep their telemetry; the failure event SAVE_LOAD_FAILED, latest_save_operation_result and save_operation_completed stay; the frozen E3 rule (S/K/C unchanged across a rejection) is unchanged; option A (excluding telemetry from E3 K) is not adopted", + "unapproved_criterion_change": false, + "extended_r04": "the migration attempt of a rejected load_from_path records no save sample either; an accepted load keeps it, recorded after _finish_load_operation (opt/SPEC.md §2, §3)" + }, + "r03_failure": { + "project": "the-tree-p28-02-opt", + "task": "P28-02-OPT", + "S": "f651ce174eef0d8a0c77fbcc2a23bd59fa6c53c9", + "state": "repair_pending (kept)", + "formal_validation_report": "/Users/korizatou114/Library/Application Support/agent-control/the-tree-p28-02-opt/runs/cbfbca0ed70c4f73a0a393f4cf4cdeff-validation.json", + "summary": "artifacts/original-completion-2026-10-02/p28-02-root-control-r01/FORMAL_VALIDATE_F651CE1_SUMMARY.json", + "cause": "E3/load_from_path/out_of_range: the save sample of the migration attempt (R and O), outside the r03 §2/§3 and the r03 table" + }, + "carry_over": "The new W takes the S f651ce1 product changes and OPT tools by SHA (Root control folder CARRY_OVER_F651CE1_TO_R04.json) and adds only the r04 differences." } diff --git a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ROOT_PROPOSAL_BYTE_TRANSFER.json b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ROOT_PROPOSAL_BYTE_TRANSFER.json index e7f43c7..95c553d 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ROOT_PROPOSAL_BYTE_TRANSFER.json +++ b/docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ROOT_PROPOSAL_BYTE_TRANSFER.json @@ -1,56 +1,63 @@ { - "at_jst": "2026-10-22T11:17:04.576266+09:00", + "at_jst": "2026-10-22T16:15:16.268339+09:00", "actual_Opus_governor_session": "local_a7f85421-3eed-4482-8030-c0dca669573a", - "scope": "P28-02-OPT registration documents r03 (decision D1 = option B); docs only; original P28-02 conditions and the frozen EQ unchanged; original credit zero", + "scope": "P28-02-OPT registration documents r04 (Root decision option 1: new continuing registration the-tree-p28-02-opt-r04 / P28-02-OPT-R04; decision D1 extended to the save sample of the migration attempt of a rejected load_from_path); docs only; original P28-02 conditions and the frozen EQ unchanged; original credit zero", "source_manifest": { - "path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/MANIFEST.json", - "sha256": "2d556634012cc6c717358eb3f472ee704242b285372ce4a0e9b72fa64f729b75" + "path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/MANIFEST.json", + "sha256": "eb439554794a1e7b78d4f77a220dd43eb9036614909efaff646ffce3a3e4c302" }, + "candidate_manifest_sha256": "21f18ae1937df87cf5095bce5d42d55bdb8b814c694f9e7e641b01411b52e78b", "kept_candidates": [ "opt-registration-proposal-r01", - "opt-registration-proposal-r02" + "opt-registration-proposal-r02", + "opt-registration-proposal-r03", + "opt-registration-proposal-r04" ], + "replaces_in_main": { + "r03_commit": "a916841bfcd92b7d2ebc016d0b183e3f52ef6485", + "r03_task": "the-tree-p28-02-opt / P28-02-OPT (repair_pending, kept)" + }, "copies": [ { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/SPEC.md", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/SPEC.md", - "bytes": 20639, - "sha256": "6441437c73ad6d224def596653c3638df947efc3efd1162590149d6591b2b0f0", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/SPEC.md", + "bytes": 25627, + "sha256": "f76d0610922ddd9eb7f360bdb3c7e2dd878fd87d798b7eede5589d4e52c1a965", "byte_identical": true }, { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/TASK_INSTRUCTIONS.md", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/TASK_INSTRUCTIONS.md", - "bytes": 5639, - "sha256": "6d0f2b38bb15d00e3e96bd1b269569df5961841fb1d9b82df89b249f1ec9c6b7", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/TASK_INSTRUCTIONS.md", + "bytes": 6424, + "sha256": "862a46bcd3b0248c634d0a71fd91c3f89de570c466e7a0dc8c249159286209a6", "byte_identical": true }, { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/ACCEPTANCE_BASELINE.json", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/ACCEPTANCE_BASELINE.json", - "bytes": 7203, - "sha256": "7fe6146d9ee749bbe9aaeea7b9e9930c9703220a3badbc0ac177878251865b18", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/ACCEPTANCE_BASELINE.json", + "bytes": 7380, + "sha256": "1b02ec584a8d5b4005c1b3b049f56ab813b688725cda39fa17723e2d9668015b", "byte_identical": true }, { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/REGISTRATION_PROPOSAL.json", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/REGISTRATION_PROPOSAL.json", - "bytes": 8913, - "sha256": "31390ec5476cbf8e25bbe00966da18a53f5611926f110e366fe0140e07ff9aa7", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/REGISTRATION_PROPOSAL.json", + "bytes": 10076, + "sha256": "a3ba7aef20c58f286959986513d5b5902574a9815031b04beb95893c21e84902", "byte_identical": true }, { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/CONFIG_PROPOSAL.json", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/CONFIG_PROPOSAL.json", - "bytes": 1230, - "sha256": "f308ba92682f0e1509a3a52aa98634fd80e8a89070a408b1948881f3b4cb1bd9", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/CONFIG_PROPOSAL.json", + "bytes": 1234, + "sha256": "559cfe41e3168e486cae04e9a5fc8f15debc7ec031e472d54614bdc2368f0775", "byte_identical": true }, { "target": "docs/plans/original-completion-2026-10-02/execution/p28-02/opt/registration/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json", - "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r03/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json", - "bytes": 160508, - "sha256": "3bd40d64dfacfa1cd81a130e67b278673b4621b9f5face8e71d63042faf2403d", + "source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-02-root-control-r01/opt-registration-proposal-r04-final/BEFORE_DEFECT_ALLOWED_DIFFERENCES.json", + "bytes": 179981, + "sha256": "a763f0110284326afa5f9001a72261dcd1b9c729c5dd97f9cd82598b841ac9de", "byte_identical": true } ],